Generalize reporting [was (controversial) Renaming 'bzr' => 'bz']
John Yates
jyates at netezza.com
Wed Jun 13 15:47:48 BST 2007
Ian Clatworthy wrote:
> Wichmann, Mats D wrote:
> > Robert Collins wrote:
> >> What do you think of having bzr ls be the preferred way to query
> >> these individual things? e.g.
> >>
> >> bzr ls --ignored
> >> bzr ls --removed
> >
> > I could get used to that - doesn't seem a bad approch.
>
> Yeah - I like it a lot. It's a bit of extra typing but that's no drama
> in a script. It could also generalise nicely to get just the filtering
> of interest, e.g.
>
> bzr ls --removed --added
ClearCase had a very nice approach to the general problem of reporting.
Mercurial seems headed in the same direction though they have not taken
it as far yet (see Chapter 11 - http://hgbook.red-bean.com/hgbook.pdf).
The ClearCase approach was to provide a clean framework for expressing
fairly arbitrary queries and for formatting the results. A certain
number of the most common queries were exposed via a layer of aliasing.
Reporting was the purview of the show command:
show <domain> <criteria> <format>
Mercurial has embraced programmable formatting and, based on my hazy
memories of ClearCase, I would say has taken it significantly farther.
In the limit I envision presenting each domain as an SQL queriable table.
Even without any join functionality an SQL select query still offers a
very rich set of capabilities: where conditions, group by, order by,
limit, etc. Combined with something like Mercurial templates and styles
this would satisfy nearly any integration or reporting requirement.
I have not looked at monotone but it would not surprise me if, because
their implementation is based on sqllite, they don't get most of this
functionality for free.
/john
More information about the bazaar
mailing list