[BUG][MC] New MC doesn't merge with old versions

Avi Bryant avi at beta4.com
Fri Aug 22 18:43:44 UTC 2003


On Fri, 22 Aug 2003, Brian Brown wrote:

> This was actually present for me in the Monticello-ab.2.mcz. The
> problem is that MCDirectoryRepository is registered via FileList
> class>>registerFileReader: and it doesn't have the requisite method
> (which is class fileReaderServicesForFile:suffix: )- MCBootstrapLoader
> and MCReader both have it, though.
>
> (Which one of those should be registered)
>
> So, in a workspace I evaluated:
> 	FileList unregisterFileReader: MCRepositoryDirectory.
>
> That will fix the problem, but won't allow loading MC packages from a
> FileList

Yes, this is a problem with updating the code (it won't happen in a clean
image). Sorry 'bout that.  The solution is just to unregister the
offending class, as you point out.

What should be registered instead are the various subclasses of MCReader;
actually, I find it odd that things didn't immediately work after you
evaluated that unregistration, since these should be already registered
from when you loaded the update.  If for some reason you need to
register them again, evaluate "MCReader initialize".

To tie this in to a recent thread: this is exactly the sort of problem
that wouldn't happen if the file list services were built from annotations
instead of #initialize-based registrations.




More information about the Squeak-dev mailing list