11
:2.5b1: NOT RELEASED YET
13
External Compatibility Breaks
14
*****************************
16
.. These may require users to change the way they use Bazaar.
21
.. New commands, options, etc that users may wish to try out.
23
* A ``from_unicode`` parameter can be specified when registering a config
24
option. This implements boolean and integer config options when the
25
provided ``bool_from_store`` and ``int_from_store`` are used.
28
* A ``from_unicode`` parameter can be specified when registering a config
29
option. This implements boolean, integer and list config options when the
30
provided ``bool_from_store``, ``int_from_store`` and ``list_from_store``
31
are used for this parameter. (Vincent Ladeuil)
33
* Accessing a packaging branch on Launchpad (eg, ``lp:ubuntu/bzr``) now
34
checks to see if the most recent published source package version for
35
that project is present in the branch tags. This should help developers
36
trust whether the packaging branch is up-to-date and can be used for new
37
changes. The level of verbosity is controlled by the config item
38
``launchpad.packaging_verbosity``. It can be set to one of
45
only display if the branch is out-of-date
48
also display single-line up-to-date and missing,
52
(default) display multi-line content for all states
55
(John Arbash Meinel, #609187, #812928)
57
* Add a config option gpg_signing_key for setting which GPG key should
58
be used to sign commits. Also default to using the gpg user identity
59
which matches user_email() as set by whoami. (Jonathan Riddell,
62
* An ``invalid`` parameter can be specified when registering a config option
63
to decide what should be done when invalid values are
64
encountered. 'warning' and 'eeror' will respectively emit a warning and
65
ignore the value or errors out. (Vincent Ladeuil)
67
* ``bzr help configuration/<option>`` display the help for ``option`` for
68
all registered configuration options. (Vincent Ladeuil, #747050)
70
* bzr log -m now matches message, author, committer and bugs instead
71
of just matching the message. --message keeps its original meaning,
72
while --match-message, --match-author, --match-committer and
73
--match-bugs match each of those fields.
75
* New builtin ``bzr branches`` command, which lists all colocated branches
76
in a directory. (Jelmer Vernooij, #826820)
78
* Relative local paths can now be specified in URL syntax by using the
79
"file:" prefix. (Jelmer Vernooij)
84
.. Improvements to existing commands, especially improved performance
85
or memory usage, or better results.
87
* ``bzr commit -m ''`` can now be used to force an empty commit message.
88
Entering an empty commit message in the message editor still triggers
89
an error. (Jelmer Vernooij)
94
.. Fixes for situations where bzr would previously crash or give incorrect
95
or undesirable results.
97
* A call to CHKInventory's filter-method will not result in a
98
DuplicateFileId error, if you move a subfolder and change a file in
100
(Bastian Bowe, #809901)
102
* Decode ``BZR_HOME`` with fs encoding on posix platforms to avoid unicode
103
errors. (Vincent Ladeuil, #822571)
105
* Fix i18n use when no environment variables are set. (Jelmer Vernooij, #810701)
107
* TreeTransformBase.fixup_new_roots no longer forces trees to have a root, so
108
operations that use it, like merge, can now create trees without a root.
114
.. Improved or updated documentation.
116
* Release instructions refreshed. (Vincent Ladeuil)
121
.. Changes that may require updates in plugins or other code that uses
124
* New class ``URL`` in ``bzrlib.utils`` for managing parsed URLs.
127
* New methods ``get_transport_from_path`` and ``get_transport_from_url``
128
have been added that only support opening from a path or a URL,
129
unlike ``get_transport``. (Jelmer Vernooij)
131
* New method ``Tree.get_file_verifier`` which allows tree implementations
132
to return non-sha1 checksums to verify files.
133
(Jelmer Vernooij, #720831)
135
* New method ``InterTree.file_content_matches`` which checks that
136
two files in different trees have the same contents.
139
* New registry ``OptionRegistry`` specialized for configuration options.
142
* Remove ``AtomicFile.closed`` which has been deprecated in bzr 0.10.
145
* Remove ``commands._builtin_commands``, ``commands.shlex_split_unicode``,
146
``Command._maybe_expand_globs`` and ``Command.run_direct`` deprecated in
147
2.10 and 2.2.0. (Vincent Ladeuil)
149
* Remove ``diff.get_trees_and_branches_to_diff`` deprecated in 2.2.0.
151
* Remove ``log.calculate_view_revisions``, ``log._filter_revision_range``,
152
``log.get_view_revisions`` which have been deprecated in bzr 2.1.0. Also
153
remove ``log.show_one_log`` which was never properly deprecated but wasn't
154
used and is easy to inline if needed. (Vincent Ladeuil)
156
* Remove ``trace.info``, ``trace.error`` and ``trace.show_log_error``
157
deprecated in 2.1.0. (Vincent Ladeuil)
159
* Remove ``TransportListRegistry.set_default_transport``, as the concept of
160
a default transport is currently unused. (Jelmer Vernooij)
162
* Remove ``UIFactory.warn_cross_format_fetch`` and
163
``UIFactory.warn_experimental_format_fetch`` in favor of
164
``UIFactory.show_user_warning``. (Jelmer Vernooij)
166
* There is a new class `ContentFilterTree` that provides a facade for
167
content filtering. The `filtered` parameter to `export` is deprecated
168
in favor of passing a filtered tree, and the specific exporter plugins
169
no longer support it.
172
* ``Transport`` now has a ``_parsed_url`` attribute instead of
173
separate ``_user``, ``_password``, ``_port``, ``_scheme``, ``_host``
174
and ``_path`` attributes. Proxies are provided for the moment but
175
may be removed in the future. (Jelmer Vernooij)
181
.. Major internal changes, unlikely to be visible to users or plugin
182
developers, but interesting for bzr developers.
184
* New method ``ControlDir._get_selected_branch`` which returns the
185
colocated branch selected using path segment parameters.
186
(Jelmer Vernooij, #380871)
191
.. Fixes and changes that are only relevant to bzr's test framework and
192
suite. This can include new facilities for writing tests, fixes to
193
spurious test failures and changes to the way things should be tested.
195
* `BranchBuilder.build_snapshot` now supports a "flush" action. This
196
cleanly and reliably allows tests using `BranchBuilder` to construct
197
branches that e.g. rename files out of a directory and unversion that
198
directory in the same revision. Previously some changes were impossible
199
due to the order that `build_snapshot` performs its actions.
202
* Don't require ``os.fdatasync`` to be defined on all supported OSes
203
(BSD-based OSes don't define it). (Vincent Ladeuil, #822649)
205
* Fix compatibility with testtools 0.9.12. (Jelmer Vernooij, #815423)
207
* ``LockDir`` can now be run when the local hostname is ``localhost``.
208
(Jelmer Vernooij, #825994)
210
* ``ModuleAvailableFeature`` won't try to import already imported modules,
211
allowing it to be used for modules with side-effects.
212
(Vincent Ladeuil, #712474)
214
* `TestCaseWithMemoryTransport` is faster now: `_check_safety_net` now
215
just compares the bytes in the dirstate file to its pristine state,
216
rather than opening the WorkingTree and calling ``last_revision()``.
217
This reduces the overall test suite time by about 10% on my laptop.
220
* Update `TestCase.knownFailure` to the testtools way of handling expected
221
failures to resolve Python 2.7 incompatibility. (Martin [gz], #607400)
224
vim: tw=74 ft=rst ff=unix