[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Monotone-devel] roster restrictions and implicitly included parent
Re: [Monotone-devel] roster restrictions and implicitly included parent directories
Wed, 01 Mar 2006 22:27:12 -0700
Mozilla Thunderbird 1.0.7 (X11/20060205)
Nathaniel Smith wrote:
I don't understand from this what exactly your patch does -- it
sounds like it simply removes the klugey workaround we put in, and
then instead of making a proper fix, it just changes the tests so
they don't run into the problematic cases? :-) E.g., with your patch,
erm... yeah, that is in fact what it currently does. I realized that I
had missed this (rather important) bit somewhat belatedly. :-/
if I run 'monotone st --brief foo', like in your example above, do I
now get an invariant failure? If not, why not?
At the moment you will (hopefully) get an invariant failure. Certainly I
would expect I(has_root(..)) to trip if the root directory is missing.
I'm not sure if the current roster sanity checks require that every node
in a roster has a parent in that roster and that only one node has the
null node as its parent. It would surprise me a bit if this wasn't the
I imagine the right thing to do here is to issue a friendly error
listing the directories that must be included for the resulting roster
to be valid. The unfortunate part of this is that there is no nice way,
at the moment, to include a specific directory and none of its children.
(recall that --depth=0 means all direct children of any listed directories).
I'll have another look at this and see where we might detect
restrictions that produce invalid rosters.