Bazaar Release Notes
bzr 2.6.0
Codename: | Surprise |
2.6.0: | 2013-07-27 |
This release marks the start of a new long-term-stable series. From here, we
will only make bugfix releases on the 2.6 series (2.6.1, etc), while 2.7
will become our new development series.
This is a bugfix and polish release over the 2.5 series, with a large number
of bugs fixed (~50 for the 2.6 series alone).
All known fixed bugs are included here.
Users are encouraged to upgrade from the other stable series.
External Compatibility Breaks
- bzr lp-propose --approve now also adds an “Approve” vote to the merge
proposal. (Jonathan Lange)
New Features
- bzr switch --store now stores uncommitted changes in the branch, and
restores them when switching back to the branch. (Aaron Bentley)
- New option ‘–context’ for ‘bzr diff’ command, to configure the amount of
context (i.e. showing lines that have not changed). Also available as the
named parameter ‘context_lines’ to bzrlib.diff.internal_diff(). (Paul Nixon)
- The ‘grep’ plugin is now shipped with bzr. (Jelmer Vernooij)
- The ‘ping’ plugin is now shipped with bzr. (Jelmer Vernooij)
Improvements
- bzr help env-variables now points users at bzr help configuration
which has much more detailed information on the same stuff.
(Robert Collins)
- bzr lp-find-proposal now only cares about the revision-id that is
specified, not the branch you use. This was enabled by a new API call in
Launchpad’s web service. (Aaron Bentley)
- Implement authentication.conf password obfuscation, the password_encoding
option can now be set to base64. (Florian Dorn)
- Local configurations files (i.e. accessed on the local file system like
bazaar.conf and locations.conf) are now shared, reducing the
number of IOs when querying a configuation option. (Vincent Ladeuil,
#832042)
- bzr lp-propose --approve now correctly specifies the approved revision
and provides an “Approve” vote from the proposer, allowing for smoother
interaction with downstream merge tools. (Jonathan Lange)
Bug Fixes
- Add a progress_bar configuration option defaulting to
BZR_PROGRESS_BAR. This can be set in bazaar.conf or specified from
the command line with -Oprogress_bar=text. (Vincent Ladeuil, #388275)
- Authentication.Config now always returns unicode user names and passwords.
(Vincent Ladeuil, #514301)
- Fixed a bug where the entire contents of /etc/mailname is read in.
We only want to read in the first line so that comments could be added
and would be ignored.
(Haw Loeung, #932515)
- Fixed a syntax error in doc/ja/user-guide/http_smart_server.txt that
causes breakage with docutils 0.9.1.
(Vincent Ladeuil, Jelmer Vernooij, #1066307)
- Support utf8 characters in platform names even without looking inside the
box (Fedora’s Schrödinger’s Cat).
(Toshio Kuratomi, Vincent Ladeuil, #1195783)
- Warn when --show-base is used for pull in a treeless branch
instead of failing. It’s useless but harmless. (Vincent Ladeuil, #1022160)
- When a missing referenced chk root error is encountered, bzr now suggests
running bzr reconcile --canonicalize-chks. (Jelmer Vernooij)
- When pushing a specific revision, create the new working tree at
that revision. (#484516, Neil Martinsen-Burrell)
Documentation
- Clarify bzr config usages especially around other option references
expansion. (Vincent Ladeuil, #996401)
Internals
- Add __iter__ to http ResponseFile. (Jelmer Vernooij, #1184021)
- The launchpad plugin now requires API 1.6.0 or later. This version shipped
with Ubuntu 9.10. (Aaron Bentley)
- Better align with upstream gzip.py in tuned_gzip.py. We may lose a bit of
performance but that’s for knit and weave formats and already partly
deprecated, better keep compatibility than failing fast ;)
(Vincent Ladeuil, #1116079)
Testing
- Fix test failures occurring only with LC_ALL=C, when prompting a user,
stderr encoding should be preferred over terminal encoding if
available. (Vincent Ladeuil, #1086209)
bzr 2.6b2
This is the second beta for the 2.6 series, leading up to a 2.6.0 release in
August 2012.
This release includes minor bug fixes.
This release includes all bugs fixed in previous series known at the time of
this release.
Beta releases are suitable for everyday use but may cause some
incompatibilities with plugins. Some plugins may need small updates to work
with 2.6b2.
External Compatibility Breaks
None.
New Features
- New option --overwrite-tags for bzr pull and bzr push.
(Jelmer Vernooij, #681792)
Improvements
- Colocated branches can now be addressed using the ‘co:NAME’ rather than
the more complex ‘file://.,branch=NAME’. (Jelmer Vernooij, #833665)
Bug Fixes
- “bzr missing” now shows tag names when displaying revision information.
(#559072, Neil Martinsen-Burrell)
- Fix branch.conf saving when unlocking the branch for BranchFormat4.
(Vincent Ladeuil, #1020007)
- Implement ResponseFile.readline and ReponseFile.tell,
fixing some clones over HTTP. (Jelmer Vernooij, #963769)
- Option values set on locked branches should be saved only when the branch
is finally unlocked. (Vincent Ladeuil, #948339)
Documentation
- Document “bzr lp-propose”, “bzr register-branch” and
the other Launchpad plugin commands in bzr(1).
(Jelmer Vernooij, #843801, #163995)
- Force format registration to avoid generate_docs.py traceback when the
registry is empty. (Vincent Ladeuil, #956860)
- Generate ENVIRONMENT section in bzr(1) from known environment variable
list rather than hardcoding. (Jelmer Vernooij, #197618)
API Changes
- register_filter_stack_map and lazy_register_filter_stack_map
are noew deprecated. Instead, use filter_stacks_registry.register
and filter_stacks_registry.register_lazy.
(Jelmer Vernooij)
- Remove deprecated Branch.import_last_revision(). (Jelmer Vernooij)
- Remove deprecated RepositoryFormat.register_format.
(Jelmer Vernooij)
- Remove deprecated Repository.get_ancestry(). (Jelmer Vernooij)
- Remove deprecated Repository.iter_reverse_revision_history().
(Jelmer Vernooij)
- The previously deprecated bzrlib.annotate.annotate_file function
has been removed. (Jelmer Vernooij)
Testing
- Fix test failures by removing a remaining reference to features.sphinx
which isn’t needed anymore since we don’t test the texinfo sphinx builder
anymore either. (Vincent Ladeuil)
bzr 2.6b1
This is the first beta for the 2.6 series, leading up to a 2.6.0 release in
August 2012.
This release includes ssl certificates verification from the urllib-based
http implementation turned on by default, fixes some UI issues around
colocated branches, documentation fixes and more.
This release includes all bugs fixed in previous series known at the time of
this release.
Beta releases are suitable for everyday use but may cause some
incompatibilities with plugins. Some plugins may need small updates to work
with 2.6b1.
External Compatibility Breaks
None.
Improvements
- Access to HTTPS URLs now uses the urrllib implementation by default.
For the old pycurl-based implementation, specify https+pycurl:// as
the URL scheme when accessing a HTTPS location.
(Jelmer Vernooij, #125055)
- Add short option alias -N for --no-recurse.
(Jelmer Vernooij, #945904)
- Avoid ‘Invalid range access’ errors when whole files are retrieved with
transport.http.get() . (Vincent Ladeuil, #924746)
- bzr rmbranch now supports removing colocated branches.
(Jelmer Vernooij, #920653)
- bzr rmbranch no longer removes active branches unless --force
is specified. (Jelmer Vernooij, #922953)
- bzr verify-signatures now shows a progress bar.
(Jelmer Vernooij)
- Two new command hooks, pre_command and post_command,
provide notification before and after a command has been run.
(Brian de Alwis, Jelmer Vernooij)
Bug Fixes
- Fix bzr config display for RegistryOption values.
(Vincent Ladeuil, #930182)
Documentation
- Prevent lines of command descriptions starting with a dot to
accidentally be interpreted as a roff macro in bzr(1).
(Jelmer Vernooij, #711079)
- Properly format apostrophes in manual page. (Jelmer Vernooij, #234771)
API Changes
- GPGStrategy.do_verifications has been deprecated.
(Jelmer Vernooij)
- File ids in the Tree API can now be bytestring as previously,
or tuples of bytestrings.
(Jelmer Vernooij)
- mail_client now accepts a configuration stack object rather than
an old style Config object. (Jelmer Vernooij)
- New method Repository.verify_revision_signatures.
(Jelmer Vernooij)
- New configuration option class RegistryOption which is backed
onto a registry. (Jelmer Vernooij)
- New convenience API method WorkingTree.get_config_stack.
(Jelmer Vernooij)
- Remove
branch.PullResult.__int__ deprecated in 2.3.0,
branch.PushResult.__int__ deprecated in 2.3.0,
branch.BranchFormat.get_default_format deprecated in 2.4.0,
branch.BranchFormat.get_formats deprecated in 2.4.0,
branch.BranchFormat.set_default_format deprecated in 2.4.0,
branch.BranchFormat.register_format deprecated in 2.4.0,
branch.BranchFormat.unregister_format deprecated in 2.4.0,
bzrdir.BzrDir.generate_backup_name deprecated in 2.3.0,
bzrdir.BzrProber.register_bzrdir_format deprecated in 2.4.0,
bzrdir.BzrProber.unregister_bzrdir_format deprecated in 2.4.0,
config.Config.get_editor deprecated in 2.4.0,
hooks.known_hooks_key_to_parent_and_attribute deprecated in 2.3,
hooks.Hooks.create_hook deprecated in 2.4,
inventory.Inventory.__contains__ deprecated in 2.4.0,
merge.Merge3Merger.scalar_three_way deprecated in 2.2.0,
merge.Merge3Merger.fix_root deprecated in 2.4.0,
transform.TreeTransformBase.has_named_child deprecated in 2.3.0,
transform.get_backup_name deprecated in 2.3.0,
transform._get_backup_name deprecated in 2.3.0,
workingtree.WorkingTreeFormat.get_default_format deprecated in 2.4.0,
workingtree.WorkingTreeFormat.register_format deprecated in 2.4.0,
workingtree.WorkingTreeFormat.register_extra_format deprecated in 2.4.0,
workingtree.WorkingTreeFormat.unregister_extra_format deprecated in 2.4.0,
workingtree.WorkingTreeFormat.get_formats deprecated in 2.4.0,
workingtree.WorkingTreeFormat.set_default_format deprecated in 2.4.0,
workingtree.WorkingTreeFormat.unregister_format deprecated in 2.4.0,
(Vincent Ladeuil)
- Remove deprecated Branch.set_revision_history and
Branch.revision_history methods and the set_rh
hook on Branch. (Jelmer Vernooij)
Internals
- Tree.path2id now once again accepts a list of path elements
in addition to a path. (Jelmer Vernooij)
- Turn config option expansion on by default. The only options for which
this should be disabled are templates which should already have used
conf.get(option, expand=False) or conf.get_user_option(option,
expand=False). (Vincent Ladeuil)