[MERGE] Add a smart method method that can pull a set of revisions in a single request
Aaron Bentley
aaron.bentley at utoronto.ca
Tue Aug 14 22:34:30 BST 2007
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Andrew Bennetts wrote:
> The attached bundle adds a 'Repository.fetch_revisions' smart request that can
> transfer many revisions in a single request, and uses it for fetching from a
> RemoteRepository.
I'm kinda disappointed not to see support for converting data from one
repo format to another.
Also, you appear to be using the naïve approach to determining what file
versions need to be shipped: fileids_altered_by_revision_ids. This
won't work with bzr.dev due to bogus old data. But Bundle Format 4 does
solve this. See BundleWriteOperation.iter_file_revisions_aggressive.
Maybe you should use Bundle 4 instead of writing your own data stream.
It would be smaller, too.
> I've attached a bundle and a diff. The bundle is the complete branch that can
> apply to bzr.dev, including the dependent branches. The diff shows just the
> changes introduced by this branch that aren't in the already submitted branches.
Specifying -r no longer creates unmergeable bundles. So I think you
could have just done that. On the other hand, it's the first time I've
seen someone send a bundle without a preview patch, so that's kinda
cool. On the gripping hand, your patch doesn't show up in Bundle Buggy
(which only shows the first patch).
> + def insert_data_stream(self, stream):
> + self._ensure_real()
> + self._real_repository.insert_data_stream(stream)
I do hope you're planning on fixing push...
Aaron
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.6 (GNU/Linux)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iD8DBQFGwh/m0F+nu1YWqI0RAvqKAJ44ozs/ajNtPc8DKsxGChwCVdxuOACgiaw6
jAgo7NF35Sm91PrFMnvb89Y=
=CzLy
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list