Higher level methods in bzrlib for library users

vila v.ladeuil+lp at free.fr
Wed Dec 22 13:03:49 GMT 2010


>>>>> Max Kanat-Alexander <mkanat at bugzilla.org> writes:

    > On 12/02/2010 01:04 PM, Tim Penhey wrote:
    >> What I'm proposing is that we create a number of higher level methods in
    >> bzrlib for library users.

    > 	This would actually be great for loggerhead. There's a
    > lot of stuff like this right now in loggerhead.history.

    > 	Also what I'd really like to see is the Branch object
    > become a central way to interact with everything (at least for
    > the most common operations), so I don't have to wonder whether I
    > need a Repository, Tree, Branch, or Inventory for the common
    > things I want to do.

That would be a bit extreme...

I think Tree, Branch, Repository are the main ones and should be used as
such, going from tree -> branch -> repository is easy enough:

  wt.branch.repository


Especially if you don't try to deal with broken setups.

There are use cases for going from a repo to its associated branches,
but that's far less common and probably not needed to start with (there
are already public methods for that).

I agree wholeheartedly with the goal, and I agree with Martin and Tim
that the best way to achieve that is to file bugs with the
functions/methods you're missing the much to start the game.

Nobody proposed a tag so far, but we already have an 'api' one and given
the bugs that are already using it, I think it's appropriate.

Given the level where these methods/functions should operate we will
probably have to very clearly define which *encoding* should be used when
dealing with paths, urls and the like, there is actually far too much
grey areas in this respect and defining such a public API sounds like a
good occasion to address them.

           Vincent

--1BE28180ACF.1291399330/axe--




More information about the bazaar mailing list