[MERGE] Remove interdependency between WorkingTree and RevisionTree

Aaron Bentley aaron.bentley at utoronto.ca
Mon Jul 17 16:20:42 BST 2006


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

John Arbash Meinel wrote:
> Aaron Bentley wrote:
>>>I'm not against having an SVNRevisionTree, I'd just like to know why, so
>>>we can determine whether RevisionTree should be adjusted to make it more
>>>generic.

> Because RevisionTree expects everything to be in a Weave (it uses
> get_*_weave() directly from the Repository).

Well, actually, it uses a VersionedFileStore.  And VersionedFileStore
provides get_lines(self, file_id, rev_id, transaction), which looks like
the ideal way to implement RevisionTree.get_lines.  Though I see it's
been deprecated.

> And creating a VersionedFile from SVN is expensive. Versus what
> RevisionTree actually needs.

But by that logic, you would expect to be able to implement a
VersionedFile that supplied what RevisionTree actually needs very
cheaply.  Or change RevisionTree to use VersionedFileStore.get_lines(),
if that's a better abstraction, and undeprecate it.

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

iD8DBQFEu6rK0F+nu1YWqI0RAvQbAJ45AZP2EyNbxBQbi2grsmD3chyEoACcDZ72
QFNW46lggPyeku2JmtgEhHs=
=LwVf
-----END PGP SIGNATURE-----




More information about the bazaar mailing list