in Pharo4.0,Latest update: #40581: push down -> DNU
Hi When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs. realClass ^baseClass realClass theMetaClass dnu: theMetaClass while baseClass is a class realClass -> nil the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :( Stef
In fact I tried on another class that I did not renamed And I get the same behavior. Now what is really strange is that I did AA renamed into CC and when I do a push down on XX which has nothing to do with AA or CC the ^baseClass realClass -> self name = CC so I do not get how this is possible. Stef Le 29/3/15 21:09, stepharo a écrit :
Hi
When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs.
realClass
^baseClass realClass theMetaClass
dnu: theMetaClass
while baseClass is a class realClass -> nil
the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :(
Stef
In fact this is even worse (BTW I used the latest Pillar image) I renamed AA into CC and then CC into DD and now self name = CC We broke something and I find surprising that we do not have test covering refactorings after all these years. We broke already two times refactorings and this is a bad signal. Stef Le 29/3/15 21:14, stepharo a écrit :
In fact I tried on another class that I did not renamed And I get the same behavior. Now what is really strange is that I did
AA renamed into CC
and when I do a push down on XX which has nothing to do with AA or CC the
^baseClass realClass -> self name = CC
so I do not get how this is possible.
Stef
Le 29/3/15 21:09, stepharo a écrit :
Hi
When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs.
realClass
^baseClass realClass theMetaClass
dnu: theMetaClass
while baseClass is a class realClass -> nil
the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :(
Stef
Le 29/03/2015 21:18, stepharo a écrit :
In fact this is even worse (BTW I used the latest Pillar image)
I renamed AA into CC and then CC into DD and now self name = CC We broke something and I find surprising that we do not have test covering refactorings after all these years.
Do you mean that RBRenameClassTest covers nothing? Thierry
We broke already two times refactorings and this is a bad signal. Stef
Le 29/3/15 21:14, stepharo a écrit :
In fact I tried on another class that I did not renamed And I get the same behavior. Now what is really strange is that I did
AA renamed into CC
and when I do a push down on XX which has nothing to do with AA or CC the
^baseClass realClass -> self name = CC
so I do not get how this is possible.
Stef
Le 29/3/15 21:09, stepharo a écrit :
Hi
When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs.
realClass
^baseClass realClass theMetaClass
dnu: theMetaClass
while baseClass is a class realClass -> nil
the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :(
Stef
Le 29/3/15 21:30, Thierry Goubier a écrit :
Le 29/03/2015 21:18, stepharo a écrit :
In fact this is even worse (BTW I used the latest Pillar image)
I renamed AA into CC and then CC into DD and now self name = CC We broke something and I find surprising that we do not have test covering refactorings after all these years.
Do you mean that RBRenameClassTest covers nothing?
I do not know. But what is clear is that - Refactoring should not be difficult to test well - we break them regularly
Thierry
We broke already two times refactorings and this is a bad signal. Stef
Le 29/3/15 21:14, stepharo a écrit :
In fact I tried on another class that I did not renamed And I get the same behavior. Now what is really strange is that I did
AA renamed into CC
and when I do a push down on XX which has nothing to do with AA or CC the
^baseClass realClass -> self name = CC
so I do not get how this is possible.
Stef
Le 29/3/15 21:09, stepharo a écrit :
Hi
When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs.
realClass
^baseClass realClass theMetaClass
dnu: theMetaClass
while baseClass is a class realClass -> nil
the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :(
Stef
This bug is really severe Once we have it it breaks loading MC files too. Le 29/3/15 21:09, stepharo a écrit :
Hi
When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs.
realClass
^baseClass realClass theMetaClass
dnu: theMetaClass
while baseClass is a class realClass -> nil
the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :(
Stef
I can not reproduce this error, do you use refactoring from the Nautilus menu? 2015-03-30 8:47 GMT+02:00 stepharo <stepharo@free.fr>:
This bug is really severe Once we have it it breaks loading MC files too.
Le 29/3/15 21:09, stepharo a écrit :
Hi
When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs.
realClass
^baseClass realClass theMetaClass
dnu: theMetaClass
while baseClass is a class realClass -> nil
the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :(
Stef
I also cannot reproduce this. In 40586... 1. To AnnouncementsHelp I added method #y 2. Right-clicking on #y > Refactoring > Push down 3. Clicked <Ok> in the Changes Browser 4. Observed #y had moved from AnnouncementsHelp to both subclasses. Repeated for existing AnnouncementsHelp-class>>introduction. cheers -ben On Mon, Mar 30, 2015 at 3:03 PM, Nicolai Hess <nicolaihess@web.de> wrote:
I can not reproduce this error, do you use refactoring from the Nautilus menu?
2015-03-30 8:47 GMT+02:00 stepharo <stepharo@free.fr>:
This bug is really severe Once we have it it breaks loading MC files too.
Le 29/3/15 21:09, stepharo a écrit :
Hi
When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs.
realClass
^baseClass realClass theMetaClass
dnu: theMetaClass
while baseClass is a class realClass -> nil
the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :(
Stef
Yes this is really strange because I tried to reproduce it in 4.0 and 4.0 plus pillar and I could not. However I was really not doing anything special. So we can probably close this issue but it was annoying. Stef Le 30/3/15 15:48, Ben Coman a écrit :
I also cannot reproduce this. In 40586... 1. To AnnouncementsHelp I added method #y 2. Right-clicking on #y > Refactoring > Push down 3. Clicked <Ok> in the Changes Browser 4. Observed #y had moved from AnnouncementsHelp to both subclasses.
Repeated for existing AnnouncementsHelp-class>>introduction.
cheers -ben
On Mon, Mar 30, 2015 at 3:03 PM, Nicolai Hess <nicolaihess@web.de <mailto:nicolaihess@web.de>> wrote:
I can not reproduce this error, do you use refactoring from the Nautilus menu?
2015-03-30 8:47 GMT+02:00 stepharo <stepharo@free.fr <mailto:stepharo@free.fr>>:
This bug is really severe Once we have it it breaks loading MC files too.
Le 29/3/15 21:09, stepharo a écrit :
Hi
When I select an instance method and use push down in a subclass without obvious conflicts. I get two DNUs.
realClass
^baseClass realClass theMetaClass
dnu: theMetaClass
while baseClass is a class realClass -> nil
the environement does not contain the class. Now I did a class rename before and I wonder if it is not the one that is broken :(
Stef
participants (4)
-
Ben Coman -
Nicolai Hess -
stepharo -
Thierry Goubier