nested trees design-approach : composite trees vs iter_changes

Aaron Bentley aaron at aaronbentley.com
Tue May 5 15:30:29 BST 2009


-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Vincent Ladeuil wrote:
>>>>>> "robert" == Robert Collins <robert.collins at canonical.com> writes:
>     robert>  * Our behaviour will change in unexpected ways depending on whether
>     robert>    a CompositeTree is being used.
> 
> Key point, +1 from me.'

I don't see how that could possibly be unexpected.  If you ask for
recursion, you get it.  The same would be true with Robert's proposal.

>     robert>  * The CT design enforces 'file ids are unique' across all the nested 
>     robert>    trees; this perhaps not meant to be a long term constraint, but it 
>     robert>    is one that we can't enforce - unlike our normal behaviour users
>     robert>    will be able to make bzr break, and it won't be clear why, or how
>     robert>    they should fix it (and arguably they won't have done anything
>     robert>    wrong that would need fixing).
> 
> It also forbids using two (or more) different revisions of the
> "same" nested tree. Imagine that you want to use the nested trees
> for backward compatibility handling for example, by using a
> nested tree for each released version of a particular
> library. I'm sure other use cases exist.

Sure they do.  But I don't think they're worth handling first, before we
have anything working.


>     robert>  * it hides what's really going on/it makes the code
>     robert>  trickier to debug.
> 
> That's what tests are for isn't it ? Whether we use CT or not,
> the behaviors will have to be expressed in tests.

No, not really.  When you invoke pdb, I believe it will be harder to
tell what's going on.  You'll have tons and tons of state to worry
about, because of all the pending commits.

Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org

iEYEARECAAYFAkoATXcACgkQ0F+nu1YWqI13CACfc4OdD8qfNbqnEJ6+GaZ4MyWn
6p4AoIUtUiCYSfPTJ+wjZLbUj3XbdVU4
=dJeb
-----END PGP SIGNATURE-----



More information about the bazaar mailing list