[RFC] Repository fasçade

Jelmer Vernooij jelmer at vernstok.nl
Tue Jul 17 23:31:42 BST 2007


Hi Aaron,

On Tue, 2007-07-17 at 17:58 -0400, Aaron Bentley wrote:
> There are at least two major changes planned in terms of the repository API:
> 1. the repository stacking API
> 2. the elimination of versionedfile from the public interface
> 
> The repository stacking API involves implementing the repository API
> anew, on top of a collection of repositories.  The smaller the
> repository API, the easier this work is.
> 
> I expect that removing all traces of versionedfiles from the repository
> API will be difficult.
I am less pessimistic. Other than the fact that InterRepository seems to
depend on VersionedFiles, it's not actually too bad at the moment.
bzr-svn gets away with not implementing any of the *weave* methods in
Repository.

> Therefore, perhaps it makes sense to start from the opposite direction,
> and implement a new repository API.  StackedRepository would be one
> implementation, and we can either implement the new API on our existing
> repositories, or create a new RepositoryFascade class to wrap
> implementations of the current API.
I think that's a good idea.

I'd rather just name it VersionedFileRepository though, that's a much
clearer name imho. I also think that could be implemented by making
VersionedFileRepository a subclass of Repository that contains all the
versionedfile-specific methods and is the base class for KnitRepository,
WeaveRepository, etc.

Cheers,

Jelmer
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 307 bytes
Desc: This is a digitally signed message part
Url : https://lists.ubuntu.com/archives/bazaar/attachments/20070718/85bf0046/attachment.pgp 


More information about the bazaar mailing list