Obsolete classes - I can find pointers to them, but how to get rid of them

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

Obsolete classes - I can find pointers to them, but how to get rid of them

Sophie424
PointerFinder reveals numerous pointers to obsolete classes. All of them
seem to originate from something that appears (in the PointerFinder window)
as either:
    #Refactoring -> Refactoring class
or
    #EventManager -> EventManager class
with lots of additional info.

I have no idea how to even reach the handles that are holding onto these
obsolete classes, them seem to be from Squeak code. Any pointers appreciated
:-)

Sophie



_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

Re: Obsolete classes - I can find pointers to them, but how to get rid of them

Herbert König
Hello Sophie,


i> PointerFinder reveals numerous pointers to obsolete classes. All of them
i> seem to originate from something that appears (in the PointerFinder window)
i> as either:
i>     #Refactoring -> Refactoring class
i> or
i>     #EventManager -> EventManager class
i> with lots of additional info.

i> I have no idea how to even reach the handles that are holding onto these
i> obsolete classes, them seem to be from Squeak code. Any pointers appreciated
i> :-)

you can search the swiki for "cleaning up junk". Also I seem to
remember this topic was discussed on squeak dev in the past. I don't
feel this is a beginners topic :-))


Cheers

Herbert                            mailto:[hidden email]

_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

Re: Obsolete classes - I can find pointers to them, but how to get rid of them

Michael Davies-2
In reply to this post by Sophie424
Ramon Leon posted a useful utility that attempts to clean up a variety
of common problems in an image:
http://onsmalltalk.com/programming/smalltalk/squeak-smalltalk-image-maintenance/

If this doesn't help, at least you know that it's not a simple problem!
_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

Re: Obsolete classes - I can find pointers to them, but how to get rid of them

keith1y
Michael Davies wrote:

> Ramon Leon posted a useful utility that attempts to clean up a variety
> of common problems in an image:
> http://onsmalltalk.com/programming/smalltalk/squeak-smalltalk-image-maintenance/
>
> If this doesn't help, at least you know that it's not a simple problem!
> _______________________________________________
> Beginners mailing list
> [hidden email]
> http://lists.squeakfoundation.org/mailman/listinfo/beginners
>
>  
This is some code from MC1.5 which I think is the most comprehensive
attempt to rehome obsolete instances.

this comes with extensive disclaimers

Keith

------


fixAllObsoleteReferences
"
self fixAllObsoleteReferences
"
(SystemNavigation default obsoleteBehaviors select: [ :c | c isMeta not ])
    do: [ :obsClass |
       
        ([obsClass nonObsoleteClass] ifError: [ nil]) ifNotNilDo:
            [ :actualClass |
               
                actualClass updateInstancesFrom: obsClass.
                obsClass becomeForward: actualClass.  
           
                ([obsClass metaclass] ifError:[nil]) ifNotNilDo:
                    [:metaClass |
                        metaClass becomeForward: actualClass class ]]].
           
        SmalltalkImage current fixObsoleteReferences
_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners
Reply | Threaded
Open this post in threaded view
|

Re: Obsolete classes - I can find pointers to them, but how to get rid of them

Edgar J. De Cleene



El 12/8/07 3:02 AM, "Keith Hodges" <[hidden email]> escribió:

> fixAllObsoleteReferences
> "
> self fixAllObsoleteReferences
> "
> (SystemNavigation default obsoleteBehaviors select: [ :c | c isMeta not ])
>     do: [ :obsClass |
>        
>         ([obsClass nonObsoleteClass] ifError: [ nil]) ifNotNilDo:
>             [ :actualClass |
>                
>                 actualClass updateInstancesFrom: obsClass.
>                 obsClass becomeForward: actualClass.
>            
>                 ([obsClass metaclass] ifError:[nil]) ifNotNilDo:
>                     [:metaClass |
>                         metaClass becomeForward: actualClass class ]]].
>            
>         SmalltalkImage current fixObsoleteReferences

Keith, made a  Mantis report with this and could go into 3.10.
Also any related to image cleanup.

Edgar


_______________________________________________
Beginners mailing list
[hidden email]
http://lists.squeakfoundation.org/mailman/listinfo/beginners