[Pharo-users] Renaming a Class triggers debugger

Ben Coman btc at openinworld.com
Wed Oct 14 10:01:13 EDT 2015


That sounds like a reasonable choice.  Anyhow, with build 50384 I can
reproduce a similar error as follows...

1. Open fresh image.
2. World > Tools > Recent Messages
3. World > System Browser
4. Package pane > Add package > "AAPackage"
5. Class pane > Add class > "AAClass"
6. Protocol pane > no messages
7. Code pane > replace template with "test1" and save
8. Class pane > right-click "AAClass" > Rename > "AAClass2" > Ok
9. Code pane > replace "test1" with "test2" and save

which produces...

UndefinedObject(Object)>>doesNotUnderstand: #timeStamp
RGMethodDefinition>>stamp
[ self class parseTimestampFrom: self stamp default: DateAndTime epoch
] in RGMethodDefinition>>timeStamp
[ self at: key put: aBlock value ] in
IdentityDictionary(Dictionary)>>at:ifAbsentPut:
IdentityDictionary(Dictionary)>>at:ifAbsent:
IdentityDictionary(Dictionary)>>at:ifAbsentPut:
RGMethodDefinition(RGDefinition)>>annotationNamed:ifAbsentPut:
RGMethodDefinition>>timeStamp
[ :a :b | a timeStamp > b timeStamp ] in RecentMessageList>>open
Array(SequenceableCollection)>>mergeFirst:middle:last:into:by:
Array(SequenceableCollection)>>mergeSortFrom:to:src:dst:by:
OrderedCollection>>sort:
OrderedCollection(SequenceableCollection)>>sorted:
MultiColumnListModel(ListModel)>>items:
MessageBrowser>>messages:
...
WorldMorph>>doOneCycle

So thanks Lyn, you found a bug.  Did you get this same error, or just
similar?  Anyhow, it may be the same root cause.

However I didn't create an issue in the tracker yet, since I wasn't
sure what the title should be... anyone?

cheers -ben

On Wed, Oct 14, 2015 at 10:27 AM, Lyn Headley <laheadle at gmail.com> wrote:
> Because Pharo 4 is the latest release. Do I really have to defend this
> choice?
>
> On Tue, Oct 13, 2015 at 2:32 PM, Alexandre Bergel <alexandre.bergel at me.com>
> wrote:
>>
>> I have no idea. But why don’t you move to Pharo 5?
>>
>> Cheers,
>> Alexandre
>>
>>
>> > On Oct 13, 2015, at 4:36 PM, Lyn Headley <laheadle at gmail.com> wrote:
>> >
>> > Hello,
>> >
>> > I'm running pharo 4 and I'm having a problem. I recently renamed a
>> > class using the rename: menu item in the standard system browser (I
>> > believe it's called Nautilus) and now I am getting uncaught exceptions
>> > whenever I add or remove a method (three debugger windows pop
>> > up). Here is the stack trace; any advice?
>> >
>> > Thank you.
>> >
>> > Lyn
>> >
>> > Author: LynHeadley
>> > Date: 2015-10-13T08:51:16.837987-07:00
>> >
>> > UndefinedObject(Object)>>doesNotUnderstand: #theMetaClass
>> > RGMetaclassDefinition>>realClass
>> > RGMethodDefinition(RGElementDefinition)>>realParent
>> > RGMethodDefinition(RGElementDefinition)>>realClass
>> > RGMethodDefinition>>methodClass
>> > ByteSymbol(Symbol)>>value:
>> > OrderedCollection>>collect:
>> > MessageBrowser>>buildHierarchyForMessages:
>> > MessageBrowser>>cacheHierarchyForClasses:
>> > MessageBrowser>>messages:
>> > [
>> > (item methodClass notNil and: [ item methodClass isObsolete not ])
>> >       ifTrue: [
>> >               | sel text boolean |
>> >               boolean := textModel hasUnacceptedEdits.
>> >               boolean
>> >                       ifTrue: [ text := textModel pendingText ].
>> >               sel := listModel selectedItem.
>> >               self
>> >                       messages:
>> >                               (listModel listItems
>> >                                       add: item asFullRingDefinition;
>> >                                       yourself).
>> >               listModel setSelectedItem: sel.
>> >               boolean
>> >                       ifTrue: [ textModel pendingText: text ] ] ] in
>> > MessageBrowser>>methodAdded:
>> > WorldState>>runStepMethodsIn:
>> > WorldMorph>>runStepMethods
>> > WorldState>>doOneCycleNowFor:
>> > WorldState>>doOneCycleFor:
>> > WorldMorph>>doOneCycle
>> > [
>> > [
>> > World doOneCycle.
>> > Processor yield.
>> > false ] whileFalse: [  ] ] in MorphicUIManager>>spawnNewProcess
>> > [
>> > self value.
>> > Processor terminateActive ] in BlockClosure>>newProcess
>> >
>>
>> --
>> _,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
>> Alexandre Bergel  http://www.bergel.eu
>> ^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
>>
>>
>>
>>
>




More information about the Pharo-users mailing list