plans for 0.0.6 release

Nicholas Nethercote njn at cs.utexas.edu
Wed Jun 1 16:39:17 BST 2005


On Thu, 2 Jun 2005, Michael Ellerman wrote:

> The to syntax will only take 1 or 3 arguments, either "-r x" or "-r x to y".
> If you want to specify an open ended range you can use either "start" or
> "now" (maybe "end").
>
> And you're right, for all those millions of people out there who have files
> called "to" it might look a bit funny when they type "bzr log -r 10 to". But
> it's well defined what it means.
>
> Anyway we can argue about it more when I get it written the way I want. Which
> might be next week at this rate.

While I'm being opinionated...

- Why have multiple syntaxes for specifying revision ranges?  KISS,
   please!  For users, developers, and documentation writers.

- I think the "to" syntax is horrid -- ambiguous and thus error-prone both
   to implement and use, and inconsistent with every other command line
   option in the universe.  "4 to 5" might look nice and Python-ish, but
   Python-style syntax doesn't mix well with shell syntax.

- I think using '-' as a range operator is bad.  '-' is already used
   to introduce options (ie. -r), and also in some revision names, so why
   overload it with another meaning?  It just makes command lines harder to
   parse (for humans and machines).  I mentally parse "-r4-5" as "-r4 -5".

- I quite like ':' as a range operator, it works fine in Subversion.  But
   if ':' has another use in revision names, then avoiding overloading
   it is a good idea.

- This leaves '..' which seems best:  it's intuitive, easy to read, easy
   to implement and doesn't have any prior meaning, AFAIK.  And I don't
   recall anyone else complaining about it.

Apologies for butting in, but sometimes outsiders can provide a useful 
perspective in these kinds of matters.

Nick




More information about the bazaar mailing list