Class category changes are not being properly added to the default changeset in Squeak 3.7 (and 3.8, 3.9).
The attached test case will pass in Squeak 3.6, and fail in Squeak 3.[7-9].
The effect of this bug is that class category reorganizations are lost when managing code with change sets.
- Dave
On Mon, Jan 24, 2005 at 11:33:59PM -0500, David T. Lewis wrote:
Class category changes are not being properly added to the default changeset in Squeak 3.7 (and 3.8, 3.9).
The attached test case will pass in Squeak 3.6, and fail in Squeak 3.[7-9].
The effect of this bug is that class category reorganizations are lost when managing code with change sets.
- Dave
I have also entered this on Mantis as #0000845.
The problem appears to be related to one of the KCP changes, so perhaps someone on the KCP team could take a look.
The bug appears to have been introduced by a change to ClassBuilder>>recompile:from:to:mutate:
The change record is stamped: 'NS 1/21/2004 09:53 ClassBuilder recompile:from:to:mutate:'
It was introduced into the image as part of the SystemChangeHooks change set:
'From Squeak3.7alpha of ''11 September 2003'' [latest update: #5623] on 28 January 2004 at 11:12:37 am'!
"Change Set: SystemChangeHooks Date: 2 August 2003 Author: Roel Wuyts
Nathanael is defending his PhD the 2nd of february so I guess he can have a look after.
Stef
On 25 janv. 05, at 12:45, David T. Lewis wrote:
On Mon, Jan 24, 2005 at 11:33:59PM -0500, David T. Lewis wrote:
Class category changes are not being properly added to the default changeset in Squeak 3.7 (and 3.8, 3.9).
The attached test case will pass in Squeak 3.6, and fail in Squeak 3.[7-9].
The effect of this bug is that class category reorganizations are lost when managing code with change sets.
- Dave
I have also entered this on Mantis as #0000845.
The problem appears to be related to one of the KCP changes, so perhaps someone on the KCP team could take a look.
The bug appears to have been introduced by a change to ClassBuilder>>recompile:from:to:mutate:
The change record is stamped: 'NS 1/21/2004 09:53 ClassBuilder recompile:from:to:mutate:'
It was introduced into the image as part of the SystemChangeHooks change set:
'From Squeak3.7alpha of ''11 September 2003'' [latest update: #5623] on 28 January 2004 at 11:12:37 am'!
"Change Set: SystemChangeHooks Date: 2 August 2003 Author: Roel Wuyts
I have attached an updated test case to document this bug.
This version of the test case has a workaround to avoid an unrelated nanobuglet. The workaround is needed to correctly verify a fix that Nathanael Schaerli is providing. Compulsive bughunters may refer to ChangeSetClassChangesTest>>isDefinition:equivalentTo: for an explanation of the nanobuglet.
Dave
On Mon, Jan 24, 2005 at 11:33:59PM -0500, David T. Lewis wrote:
Class category changes are not being properly added to the default changeset in Squeak 3.7 (and 3.8, 3.9).
The attached test case will pass in Squeak 3.6, and fail in Squeak 3.[7-9].
The effect of this bug is that class category reorganizations are lost when managing code with change sets.
- Dave
Hi Dave and all
I have attached a changeset fixing the bug that class category changes are not properly added to the changeset. I have tested it in Squeak 3.8g (6548) and it successfully passes Dave's tests.
Cheers, Nathanael
-----Original Message----- From: squeak-dev-bounces@lists.squeakfoundation.org [mailto:squeak-dev-bounces@lists.squeakfoundation.org] On Behalf Of David T. Lewis Sent: Samstag, 19. Februar 2005 19:46 To: The general-purpose Squeak developers list; n.schaerli@gmx.net Subject: Re: [BUG][TEST] ChangeSet losing class category changes in Squeak3.7+
I have attached an updated test case to document this bug.
This version of the test case has a workaround to avoid an unrelated nanobuglet. The workaround is needed to correctly verify a fix that Nathanael Schaerli is providing. Compulsive bughunters may refer to ChangeSetClassChangesTest>>isDefinition:equivalentTo: for an explanation of the nanobuglet.
Dave
On Mon, Jan 24, 2005 at 11:33:59PM -0500, David T. Lewis wrote:
Class category changes are not being properly added to the default changeset in Squeak 3.7 (and 3.8, 3.9).
The attached test case will pass in Squeak 3.6, and fail in Squeak 3.[7-9].
The effect of this bug is that class category
reorganizations are lost
when managing code with change sets.
- Dave
On Mon, Feb 21, 2005 at 08:55:44AM +0100, Nathanael Schärli wrote:
Hi Dave and all
I have attached a changeset fixing the bug that class category changes are not properly added to the changeset. I have tested it in Squeak 3.8g (6548) and it successfully passes Dave's tests.
Cheers, Nathanael
This fixes the problem. Thanks Nathanael!
Dave
squeak-dev@lists.squeakfoundation.org