Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
13 messages Options
Reply | Threaded
Open this post in threaded view
|

Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
Status: Accepted
Owner: [hidden email]
Labels: Type-Bug Targe-Trait Milestone-2.0

New issue 7025 by [hidden email]: Monticello does not load Trait  
related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025

See Issue 7024

it is supposed to change one method in the trait and remove 2 methods (same  
selector) from
the class that imports that trait.

If you merge the change, it instead adds methods to all classes as local  
methods.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
Issue 7025: Monticello does not load Trait related method deletions  
correctly
http://code.google.com/p/pharo/issues/detail?id=7025

This issue is now blocking issue pharo:7024.
See http://code.google.com/p/pharo/issues/detail?id=7024

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
In reply to this post by pharo
Updates:
        Cc: [hidden email]
        Labels: -Targe-Trait Target-Trait

Comment #2 on issue 7025 by [hidden email]: Monticello does not load  
Trait related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025

How do I reproduce this?


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
In reply to this post by pharo
Issue 7025: Monticello does not load Trait related method deletions  
correctly
http://code.google.com/p/pharo/issues/detail?id=7025

This issue is now blocking issue pharo:7446.
See http://code.google.com/p/pharo/issues/detail?id=7446

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
In reply to this post by pharo

Comment #4 on issue 7025 by [hidden email]: Monticello does not load  
Trait related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025

I'm looking this one.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
Updates:
        Labels: Target-RPackage

Comment #5 on issue 7025 by ukodrag: Monticello does not load Trait related  
method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025

The problem is in RPackage (Monticello uses RPackage models for patches  
creation).

Now the RPackage checks if the method that was deleted belongs to a class  
or to a trait. So as it was deleted already, it's not being found in a  
class, considered to be originated from a trait and so not being deleted  
from a model's method.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
Updates:
        Labels: Importance-High

Comment #6 on issue 7025 by [hidden email]: Monticello does not load  
Trait related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025

(No comment was entered for this change.)


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
In reply to this post by pharo
Issue 7025: Monticello does not load Trait related method deletions  
correctly
http://code.google.com/p/pharo/issues/detail?id=7025

This issue is now blocking issue pharo:7465.
See http://code.google.com/p/pharo/issues/detail?id=7465

--
You received this message because you are listed in the owner
or CC fields of this issue, or because you starred this issue.
You may adjust your issue notification preferences at:
http://code.google.com/hosting/settings

_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
In reply to this post by pharo

Comment #8 on issue 7025 by [hidden email]: Monticello does not load  
Trait related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025

During the sprint today we worked a lot in this issue with Yuriy, and we  
could finally fix it. I have it in an image... we have to create a cs to  
make it installable.


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
In reply to this post by pharo
Updates:
        Status: FixReviewNeeded

Comment #10 on issue 7025 by [hidden email]: Monticello does not load  
Trait related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025

Here is the change set. Manually checked in 20535. We added a test to  
reproduce this bug.

Martin and Yuriy

Attachments:
        Slice7025.cs  5.9 KB


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
Updates:
        Status: MonkeyIsChecking

Comment #11 on issue 7025 by [hidden email]: Monticello does not  
load Trait related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025#c11

The Monkey is currently checking this issue. Please don't change it!


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
Updates:
        Status: WorkNeeded

Comment #12 on issue 7025 by [hidden email]: Monticello does not  
load Trait related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025#c12

Monkey went bananas:
--------------------
Error while loading  
SLICE-Issue-7025-Monticello-does-not-load-Trait-related-method-deletions-correctly-MartinDias.1  
from http://ss3.gemstone.com/ss/PharoInbox:
        MessageNotUnderstood: MethodRemoved  
class>>methodRemoved:selector:protocol:class:
  1: MethodRemoved class(Object)>>doesNotUnderstand:  
#methodRemoved:selector:protocol:class:
  2: SystemAnnouncer>>methodRemoved:selector:inProtocol:class:
  3: Metaclass(ClassDescription)>>removeSelector:
  4: MCMethodDefinition>>removeSelector:fromClass:
  5: MCMethodDefinition>>unload
  6: [:ea | ea unload] in [additions
                        do: [:ea | self loadClassDefinition: ea]
                        displayingProgress: 'Loading classes...'.
                additions
                        do: [:ea | self tryToLoad: ea]
                        displayingProgress: 'Compiling methods...'.
                removals
                        do: [:ea | ea unload]
                        displayingProgress: 'Cleaning up...'.
                self shouldWarnAboutErrors
                        ifTrue: [self warnAboutErrors].
                errorDefinitions
                        do: [:ea | ea addMethodAdditionTo: methodAdditions]
                        displayingProgress: 'Reloading...'.
                methodAdditions
                        do: [:each | each installMethod].
                methodAdditions
                        do: [:each | each notifyObservers].
                additions
                        do: [:ea | ea
                                        postloadOver: (self obsoletionFor: ea)]
                        displayingProgress: 'Initializing...'] in [[additions
                        do: [:ea | self loadClassDefinition: ea]
                        displayingProgress: 'Loading classes...'.
                additions
                        do: [:ea | self tryToLoad: ea]
                        displayingProgress: 'Compiling methods...'.
                removals
                        do: [:ea | ea unload]
                        displayingProgress: 'Cleaning up...'.
                self shouldWarnAboutErrors
                        ifTrue: [self warnAboutErrors].
                errorDefinitions
                        do: [:ea | ea addMethodAdditionTo: methodAdditions]
                        displayingProgress: 'Reloading...'.
                methodAdditions
                        do: [:each | each installMethod].
                methodAdditions
                        do: [:each | each notifyObservers].
                additions
                        do: [:ea | ea
                                        postloadOver: (self obsoletionFor: ea)]
                        displayingProgress: 'Initializing...']
                        on: InMidstOfFileinNotification
                        do: [:n | n resume: true]] in MCPackageLoader>>basicLoad
  7: [:each |
        | newLabel |
        (count = 0
                                or: [count + 1 = size
                                                or: [(Time millisecondsSince: lastUpdate)
                                                                >= msecs]])
                        ifTrue: [bar current: count.
                                oldLabel = (newLabel := (labelBlock cull: each)
                                                                        ifNil: [oldLabel])
                                        ifFalse: [ProgressNotification signal: '' extra: (oldLabel :=  
newLabel)].
                                lastUpdate := Time millisecondClockValue].
                aBlock value: each.
                count := count + 1] in [:bar |
        labelBlock := aStringOrBlock isString
                                        ifTrue: [bar label: aStringOrBlock.
                                                [:item | aStringOrBlock]]
                                        ifFalse: [aStringOrBlock].
                self
                        do: [:each |
                                | newLabel |
                                (count = 0
                                                or: [count + 1 = size
                                                                or: [(Time millisecondsSince: lastUpdate)
                                                                                >= msecs]])
                                        ifTrue: [bar current: count.
                                                oldLabel = (newLabel := (labelBlock cull: each)
                                                                                        ifNil: [oldLabel])
                                                        ifFalse: [ProgressNotification signal: '' extra: (oldLabel :=  
newLabel)].
                                                lastUpdate := Time millisecondClockValue].
                                aBlock value: each.
                                count := count + 1]] in  
OrderedCollection(Collection)>>do:displayingProgress:every:
  8: OrderedCollection>>do:
  9: [:bar |
        labelBlock := aStringOrBlock isString
                                        ifTrue: [bar label: aStringOrBlock.
                                                [:item | aStringOrBlock]]
                                        ifFalse: [aStringOrBlock].
                self
                        do: [:each |
                                | newLabel |
                                (count = 0
                                                or: [count + 1 = size
                                                                or: [(Time millisecondsSince: lastUpdate)
                                                                                >= msecs]])
                                        ifTrue: [bar current: count.
                                                oldLabel = (newLabel := (labelBlock cull: each)
                                                                                        ifNil: [oldLabel])
                                                        ifFalse: [ProgressNotification signal: '' extra: (oldLabel :=  
newLabel)].
                                                lastUpdate := Time millisecondClockValue].
                                aBlock value: each.
                                count := count + 1]] in  
OrderedCollection(Collection)>>do:displayingProgress:every:
10: BlockClosure>>cull:
        ...Test Results:
-------------
Passed: 7692
        CollectionsTests-Arrayed (553)
        CollectionsTests-Atomic (12)
        CollectionsTests-Sequenceable (912)
        CollectionsTests-SplitJoin (27)
        CollectionsTests-Stack (16)
        CollectionsTests-Streams (37)
        CollectionsTests-Strings (611)
        CollectionsTests-Support (12)
        CollectionsTests-Unordered (1954)
        CollectionsTests-Weak (739)
        CompilerTests (173)
        KernelTests-Chronology (1186)
        KernelTests-Classes (137)
        KernelTests-Exception (5)
        KernelTests-Methods (311)
        KernelTests-Numbers (554)
        KernelTests-Objects (173)
        KernelTests-Pragmas (6)
        KernelTests-Processes (76)
        RPackage-SystemIntegration (70)
        SUnit-Core-Extensions (3)
        SUnit-Core-Utilities (3)
        SUnit-Tests-Core (78)
        Tests-Traits (41)
        Tests-Traits-MOP (3)

Errors: 83
        ArrayLiteralTest>>#testByteArrayBase
        ArrayLiteralTest>>#testByteArrayEmpty
        ArrayLiteralTest>>#testByteArrayLiteral
        ArrayLiteralTest>>#testByteArrayLong
        ArrayLiteralTest>>#testByteArrayRange
        ArrayLiteralTest>>#testByteArrayWithinArray
        ArrayLiteralTest>>#testReservedIdentifiers
        ArrayLiteralTest>>#testSymbols
        MethodPragmaTest>>#testAllNamedFromTo
        MethodPragmaTest>>#testAllNamedFromToSortedByArgument
        MethodPragmaTest>>#testAllNamedFromToSortedUsing
        MethodPragmaTest>>#testAllNamedIn
        MethodPragmaTest>>#testAllNamedInSortedByArgument
        MethodPragmaTest>>#testAllNamedInSortedUsing
        MethodPragmaTest>>#testCompileArray
        MethodPragmaTest>>#testCompileBinary
        MethodPragmaTest>>#testCompileCharacter
        MethodPragmaTest>>#testCompileEmpty
        MethodPragmaTest>>#testCompileFull
        MethodPragmaTest>>#testCompileNumber
        MethodPragmaTest>>#testCompileString
        MethodPragmaTest>>#testCompileSymbol
        MethodPragmaTest>>#testCompileTemps
        MethodPragmaTest>>#testCompileValue
        MethodPragmaTest>>#testMethod
        MethodPragmaTest>>#testMethodClass
        MethodPragmaTest>>#testNoPragma
        MethodPragmaTest>>#testPrimitiveIndexed1
        MethodPragmaTest>>#testPrimitiveIndexed2
        MethodPragmaTest>>#testPrimitiveNamed1
        MethodPragmaTest>>#testPrimitiveNamed2
        MethodPragmaTest>>#testSelector
         
RPackageTraitSynchronisationTest>>#testRemoveMethodComingFromTraitDoesNotRemoveMethodFromTraitPackage
        RPackageTraitSynchronisationTest>>#testRemoveTraitMethod
        TraitFileOutTest>>#testRemovingMethods
        TraitCompositionTest>>#testAliasCompositions
         
RPackageClassesSynchronisationTest>>#testReorganizeClassByRemovingClassicCategoryRemoveMethodsFromTheParentPackage
         
RPackageClassesSynchronisationTest>>#testReorganizeClassByRemovingExtensionCategoryRemoveMethodsFromTheExtendingPackage
        MethodPragmaTest>>#testAllNamedFromTo
        MethodPragmaTest>>#testAllNamedFromToSortedByArgument
        MethodPragmaTest>>#testAllNamedFromToSortedUsing
        MethodPragmaTest>>#testAllNamedIn
        MethodPragmaTest>>#testAllNamedInSortedByArgument
        MethodPragmaTest>>#testAllNamedInSortedUsing
        MethodPragmaTest>>#testCompileArray
        MethodPragmaTest>>#testCompileBinary
        MethodPragmaTest>>#testCompileCharacter
        MethodPragmaTest>>#testCompileEmpty
        MethodPragmaTest>>#testCompileFull
        MethodPragmaTest>>#testCompileNumber
        MethodPragmaTest>>#testCompileString
        MethodPragmaTest>>#testCompileSymbol
        MethodPragmaTest>>#testCompileTemps
        MethodPragmaTest>>#testCompileValue
        MethodPragmaTest>>#testMethod
        MethodPragmaTest>>#testMethodClass
        MethodPragmaTest>>#testNoPragma
        MethodPragmaTest>>#testPrimitiveIndexed1
        MethodPragmaTest>>#testPrimitiveIndexed2
        MethodPragmaTest>>#testPrimitiveNamed1
        MethodPragmaTest>>#testPrimitiveNamed2
        MethodPragmaTest>>#testSelector
        ClassTraitTest>>#testUsers
        TraitTest>>#testAddAndRemoveMethodsFromSubtraits
        TraitTest>>#testAddAndRemoveMethodsInClassOrTrait
        TraitTest>>#testExplicitRequirement
        TraitTest>>#testRequirement
        TraitTest>>#testTraitRemovalRemovesMethods
        TraitTest>>#testUsers
        TraitMethodDescriptionTest>>#testConflictingCategories
        TraitPureBehaviorTest>>#testChangeSuperclass
        TraitPureBehaviorTest>>#testLocalSelectors
        TraitPureBehaviorTest>>#testPropagationOfChangesInTraits
        TraitPureBehaviorTest>>#testPropagationOfChangesInTraitsToAliasMethods
        TraitPureBehaviorTest>>#testPropagationWhenTraitCompositionModifications
        TraitPureBehaviorTest>>#testRemovingMethods
        TraitPureBehaviorTest>>#testTraitCompositionModifications
        TraitPureBehaviorTest>>#testUpdateWhenLocalMethodRemoved
         
RPackageMethodsSynchronisationTest>>#testRemoveMethodRemoveMethodFromItsPackage
         
RPackageExtensionMethodsSynchronisationTest>>#testRemoveAllExtensionMethodsFromMetaAndInstanceSideUpdateOrganizerExtensionsMapping
         
RPackageExtensionMethodsSynchronisationTest>>#testRemoveAllExtensionMethodsRemoveTheClassFromExtendedClasses
         
RPackageExtensionMethodsSynchronisationTest>>#testRemoveExtensionMethodDoesNotRemoveExtendingPackage
         
RPackageExtensionMethodsSynchronisationTest>>#testRemoveExtensionMethodRemoveMethodFromItsPackage


----------------------------------------------------------
Loaded Source:  
SLICE-Issue-7025-Monticello-does-not-load-Trait-related-method-deletions-correctly-MartinDias.1  
from http://ss3.gemstone.com/ss/PharoInbox"Slice7025.cs" from Comment #10
Tested using Pharo-2.0-20535-a on NBCoInterpreter  
NativeBoost-CogPlugin-IgorStasenko.15 uuid:  
44b6b681-38f1-4a9e-b6ee-8769b499576a Nov 27 2012
NBCogit NativeBoost-CogPlugin-IgorStasenko.15 uuid:  
44b6b681-38f1-4a9e-b6ee-8769b499576a Nov 27 2012
https://git.gitorious.org/cogvm/blessed.git Commit:  
40ac7e7bdec6fef0e934d2c019b86db996053912 Date: 2012-11-19 18:54:49 +0100  
By: Mariano Martinez Peck <[hidden email]> Jenkins build #146


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker
Reply | Threaded
Open this post in threaded view
|

Re: Issue 7025 in pharo: Monticello does not load Trait related method deletions correctly

pharo
Updates:
        Status: Integrated

Comment #13 on issue 7025 by [hidden email]: Monticello does not  
load Trait related method deletions correctly
http://code.google.com/p/pharo/issues/detail?id=7025

in 2.0 536


_______________________________________________
Pharo-bugtracker mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-bugtracker