Monticello bugfixes

lex at cc.gatech.edu lex at cc.gatech.edu
Tue Nov 9 18:16:08 UTC 2004


> > No, you can't do this by saving all the dirty packages. But you can do 
> > it by saving the top-level packages - that is, the packages that you'd 
> > like to reconstruct in another image. Is there some reason this isn't 
> > adequate?

Chris Muller <afunkyobject at yahoo.com> wrote:
> It probably would be if saving top-level packages automatically saved the
> entire tree, it does not seem to.  In my case, saving the top-level packages is
> not adequate because the intermediate packages ("B") referencing "C" do not get
> saved when saving the top-level packages ("A").  So if I have clean A, B and C
> (per our same example), make a change to C, then save A (or save C followed by
> saving A) *without* ever resaving B and then try to load A into a fresh image,
> Monticello reports "Can't find dependency".

Ah, we are getting there!  I have not tested closely, but I got the
impression that this particular scenario would work fine, but a slight
change would exhibit the problem.

Suppose you add another package D which C depends on.

    A
   / \
  B   C
      |
      D


Make a change to D, and then save A.  Monticello seems to check B and C,
see that they are not dirty, and then not look any further.  So, it
never even notices that D is dirty; the only package that gets saved is
A.

It would be nice if this scenario worked.  As a possible bonus, it would
be nice if A itself did not get saved if there were no changes made.


-Lex



More information about the Squeak-dev mailing list