PackageInfo ... where?

Avi Bryant avi at beta4.com
Sat Oct 11 04:27:53 UTC 2003


On Sat, 11 Oct 2003, Doug Way wrote:

> One further step that could be taken at some point (might be too
> "aggressive" right now) would be to have a further restricted package
> type which would be defined as a PackageInfo package is (new classes
> plus loose methods), but it would not allow methods to be overwritten
> upon loading.  Such a package type would be trivially unloadable.  This
> is roughly how Envy packages worked (and Ginsu modules, I think).
> Unload capability would be pretty nice. :-)

Monticello does now provide unload, and is somewhat smart about it, in
that it will revert overriden methods.  In the long run this feature could
be pushed down into the PackageInfo level (I'm imagining a Package class
with methods to add/remove classes and methods, which would ensure that
the items were categorized correctly on add, and would revert to older
versions if possible on remove).

Unload still isn't completely safe, in that if package B has class
extensions or overrides on a class in package A, you shouldn't be able to
unload package A without first unloading package B - which  Monticello
doesn't enforce.



More information about the Squeak-dev mailing list