[RFC] proposed changes to log UI
John Arbash Meinel
john at arbash-meinel.com
Tue Jan 13 15:28:18 GMT 2009
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1
Ian Clatworthy wrote:
> As currently implemented, log is O(history). I'd like
> to make some UI changes so that it can be refactored
> to use a more intelligent approach by default for
> common operations.
>
> 1. If a single revision is given, I just want to log it,
> not all the revisions merging it to mainline. If you
> want the latter, perhaps -v ought to be required?
I'll mention that other people pushed to have "bzr log -c XX" do this,
to be 'compatible' with bzr diff -c output.
Certainly, IMO, 'bzr log -r XXX' should show a single revision, while
"bzr log -c XXX" should show the revision and what other revisions it
merged. I'm not sure if we could get away with switching them or not.
(A lot of the sys admins seem to use 'bzr diff -c' a lot, and want to
have a compatible 'bzr log -c'. It may just be that -c didn't work for
'bzr log', and they don't care if it shows extra revisions or not.)
>
> 2. I want to make --short the default format. (Many of us
> do this already as it provides the best signal:noise
> ratio and performance for most of the workflows that
> Bazaar encourages.)
I *long* while back I asked to make "bzr log --short -r -10..-1" the
default. Shortly thereafter we got aliases, and I stopped pushing for it
because I've aliased it that way on every system I come across...
The #1 reason to not do this, is because it is incompatible with other
systems. 'svn log' and 'cvs log' spit out a lot of info going all the
way back in history.
So:
a) I like --short a lot.
b) I feel like we should be splitting out the differences from --short
and --long
So you have a way to say "bzr log --only-mainline
--verbose-revisions", which gives the --short revisions, but the
--long formatting.
c) We should be cautious about being different from other systems, but
if it means we play to our strengths that can still be a good way
to go.
>
> 3. If a revision range is given and the log format only
> supports mainline revisions, I don't want to check that
> the revisions are on the mainline by default. This check
> is O(history) and, IMO, ought to only be done if a
> new option (--strict say) is specified.
I guess I don't quite understand what you mean by this one. If I do:
bzr log --short -r -10..revid:XXXX
What should be displayed? How do we decide the revision numbers? Do we
just start walking the left-hand history of XXXX or do we walk the
history of branch.last_revision() and expect to run into XXXX?
Do we walk both and go until they intersect? And then notice if they are
actually diverged versus both mainline?
>
> Thoughts?
>
> Ian C.
>
>
John
=:->
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (Cygwin)
Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org
iEYEARECAAYFAklssxIACgkQJdeBCYSNAAMxXwCfU1bYLzSnFPJp30+tiTF4hUq/
mLkAn1w8uM36IXhrXxZcMzQHrFwKFNWn
=igAk
-----END PGP SIGNATURE-----
More information about the bazaar
mailing list