[MERGE] Implement generic stacking rather than pack-internals based stacking.
John Arbash Meinel
john at arbash-meinel.com
Wed Jun 25 15:03:25 BST 2008
-----BEGIN PGP SIGNED MESSAGE-----
Robert Collins wrote:
| This is now ready for final review. This patch contains:
| - a Development1 format which is stackable on any repository with
| matching serialiser and model
| - various tests and refactoring to support that..
| Attached is a full bundle, and a plain text diff of the incremental
| changes (which show the removal of the changes made to be able to use
| the internals of packs, back to doing purely interface based stacking).
| AFAIK this is all reviewed and good to go except for the incremental
| change that I've attached.
- - total_revisions = self._local_revision_index().key_count()
- - total_packs = len(list(collection for collection, sizes in
- - self._names.values() if collection is self))
+ total_revisions = self.revision_index.combined_index.key_count()
+ total_packs = len(self._names)
^- This seems to be counting all revisions in all packs, but only using
the names from the local packs. Seems a little odd.
Also, in general having the api be:
Is a bit strange. What is self.revision_index if it isn't the combined
index? I suppose if this is all just a plain "revert" to rip out all the
places that you were stacking in the internal structures, then there
isn't much for you to really do about it.
(Though this was only reviewing the "internals-to-generic.patch".
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
-----END PGP SIGNATURE-----
More information about the bazaar