log uses inclusive revision ranges; inconsistent with other commands
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Bazaar |
Fix Released
|
Medium
|
Vincent Ladeuil |
Bug Description
bzr log -r "before:
shows two revisions, while other bzr commands (e.g. diif, merge) select just one.
bzr log -r "revid:x..revid:x"
shows one revision, while other bzr commands show nothing.
This seems to be documented in bzr help revisionspec somehow, but it is annoying and non-intuitive anyway.
BTW, mentioned documentation seems to be wrong about the numbers in example "bzr diff -r 3647..3649".
bzr version
Bazaar (bzr) 1.10
Python interpreter: /usr/bin/python 2.5.2
Python standard library: /usr/lib/python2.5
bzrlib: /usr/lib/
Bazaar configuration: /home2/
Bazaar log file: /home2/
Copyright 2005, 2006, 2007, 2008 Canonical Ltd.
http://
bzr comes with ABSOLUTELY NO WARRANTY. bzr is free software, and
you may use, modify and redistribute it under the terms of the GNU
General Public License version 2 or later.
bzr plugins
danny_plugins
Danny's Plugins
difftools 0.91
External diff tools plugin for Bazaar
fix277537
Fix wrong order in inventory parents for specified revisions.
gtk 0.96.0.dev.1
Graphical support for Bazaar using GTK.
launchpad
Launchpad.net integration plugin for Bazaar.
mysql 0.4.1
MySQL/Sun org workflow helpers
tetard
(no description)
Related branches
- Andrew Bennetts: Needs Fixing
-
Diff: 428 lines (+189/-17)8 files modifiedNEWS (+7/-1)
bzrlib/branch.py (+16/-2)
bzrlib/builtins.py (+14/-2)
bzrlib/log.py (+35/-11)
bzrlib/tests/blackbox/test_log.py (+12/-0)
bzrlib/tests/per_branch/test_iter_merge_sorted_revisions.py (+44/-0)
bzrlib/tests/per_repository_reference/__init__.py (+1/-1)
bzrlib/tests/test_log.py (+60/-0)
Changed in bzr: | |
status: | Confirmed → In Progress |
Changed in bzr: | |
assignee: | Marius Kruger (amanica) → Vincent Ladeuil (vila) |
Changed in bzr: | |
milestone: | none → 2.2b2 |
Changed in bzr: | |
milestone: | none → 2.2b3 |
status: | In Progress → Fix Released |
A patch to fix the documentation of revisionspec was applied to bzr.dev (trunk) a few days ago.
It's true that log treats ranges slightly differently to most other commands but that's by design:
* log shows the results *from* X to Y inclusive
* most other commands show the differences *between* X and Y.
In the words, the behaviour is different because the intent of the commands is different.
I think it is unlikely that we'll want to change the code but the documentation explaining the reasoning behind this difference needs work. I'm leaving this bug open accordingly.