Thanks for the info. I think i am on safe side of things since I dont mess with pharo internals.
You say if I override an existing method, that method cannot be recovered, but that is strange since the system does have versions for each method , so I assume here that is not that is not possible rather than none actually implemented this in a convenient way. How you can have class collision , I assumed so far that the system does not allow you to have two classes with the same name. If you have subclasses in another package then I would let them MNU. I think its kinda insane to try to protect the user from all scenarios, at least not before you deal with more pressing issues / bugs. One thing that could help here is to have something similar to when we install a project that warns us that a project depends on other projects/ classes we could have the same warning for when we remove classes. I think also its a good idea to allow user some control, for example maybe the user want to keep those subclasses and make them subclass another class instead. Yeah I will look into unloading with metacello that sounds cleaner this is an issue that really interests me. How to make my project uninstallable and automatically update-able is two areas that deeply interest me. On Fri, Nov 20, 2015 at 12:56 AM Mariano Martinez Peck < [email protected]> wrote: > To unload a package you can do it from Monticello Browser..Select the > package (left column), right click, "Unload Package". > But not that it will not work properly in cases where you have method > overrides (the original methods you override will NOT be recovered), or > class collisions (imagine your package has a class name collision with a > class name of another package)... > Then you can have instances of classes you unload...hence the Obsolete > thingy (instances are now instance of an obsolete class). > Then you can also have subclasses in ANOTHER package of classes of the > package you unload. What you do with the subclasses? and with the instances > of such subclasses? > So... order of unloading does matter across packages (in the same way that > loading does). So for unloading multiple packages you should be using > Meacello or similar. > > As you can see, it's not an easy task. > > > > > On Thu, Nov 19, 2015 at 7:23 PM, milton mamani <[email protected]> > wrote: > >> +1 >> By the way so how one can unload a project from the pharo image ? I never >> tried that one before. >> >> Use the Force Dimitris >> >> Sorry I dont have the answer for this now, but I am interested on this >> issue. >> >> 2015-11-19 18:05 GMT-04:00 Dimitris Chloupis <[email protected]>: >> >>> I prefer being a technomage to a jedi, jedies are too, well naive and >>> purists. >>> >>> By the way so how one can unload a project from the pharo image ? I >>> never tried that one before. >>> >>> On Thu, Nov 19, 2015 at 10:59 PM stepharo <[email protected]> wrote: >>> >>>> When I was getting to be a Jedi, my Yoda master (Joseph Pelrine) told me >>>> the following (yes back in 96) >>>> >>>> translated from Yoda language: >>>> >>>> you will be a real Jedi when your code will load in one click! >>>> you will be a real Jedi when your code will unload in one click and >>>> do not let shit behind it! >>>> >>>> Simple no. So when do we get real Jedi knights? >>>> >>>> Stef >>>> >>>> >> > > > -- > Mariano > http://marianopeck.wordpress.com >
