Thanks Fernando, On Apr 1, 2013, at 11:51 PM, Fernando Olivero <fernando.oliv...@usi.ch> wrote:
> Ciao Roberto, > > Whenever you remove a class that is still referenced in the system, an > ObsoleteClass takes the place of the removed class. In the late-bound > spirit of Smalltalk, the system allows removing the classes and > dealing with the current references later. I see. I'm not sure I agree with this philosophy, but I see the point. > If i may question the source of your problem: "a Dictionary > (containing receivers of method calls, i.e., classes) that I need to > serialize in a file (i.e., using Fuel)", are you sure you need to > serialize the actual classes? or just the names? or even a description > of the class within Ring? Think about what you are modeling with a > Dictionary that holds <messages,set of receivers>, and maybe try to > reify that concept. I totally agree with you Fernando. That was just a quick and dirty prototype ;) > Fernando > > > > > On Mon, Apr 1, 2013 at 9:58 PM, Max Leske <maxle...@gmail.com> wrote: >> I've had the same problem just recently but am stuck in a bit of work right >> now. I hope to elaborate at length tomorrow. >> >> Quick fix: if you *need* to serialize those classes, simply change the code >> so that fuel serializes them. To fix obsolete classes you need to remove all >> references to it, be it in a dictionary or in a compiled method where you >> used the class name. >> Can you post the list of classes that are obsolete? >> >> Cheers, >> Max >> >> >> >> On 01.04.2013, at 16:51, roberto.mine...@usi.ch wrote: >> >>> Hi, >>> >>> I'm getting crazy about obsolete behaviors and any help here is really >>> appreciated. >>> >>> In a nutshell, I have a Dictionary (containing receivers of method calls, >>> i.e., classes) that I need to serialize in a file (i.e., using Fuel). >>> >>> Fuel returns an error in FLGlobalClassCluster>>#serializeGlobalClass:on: >>> complaining that I'm trying to serialize an obsolete class. >>> >>> Now my question is, apart from executing this small piece of code... >>> >>> SmalltalkImage current fixObsoleteReferences. >>> SystemNavigation new obsoleteBehaviors size > 0 >>> ifTrue: [ SystemNavigation new obsoleteBehaviors inspect.] >>> >>> …in which I discovered to have many obsolete references, how can I "browse" >>> and eventually kill such references? >>> >>> For me the entire "behavior" of obsolete classes is obscure and I don't >>> know how those classes are originated. >>> More important, I also don't know how to eliminate them. >>> >>> Thanks in advance, >>> Roberto >>> >>> >> >> >