21
21
.. New commands, options, etc that users may wish to try out.
26
.. Improvements to existing commands, especially improved performance
27
or memory usage, or better results.
32
.. Fixes for situations where bzr would previously crash or give incorrect
33
or undesirable results.
38
.. Improved or updated documentation.
43
.. Changes that may require updates in plugins or other code that uses
49
.. Major internal changes, unlikely to be visible to users or plugin
50
developers, but interesting for bzr developers.
55
.. Fixes and changes that are only relevant to bzr's test framework and
56
suite. This can include new facilities for writing tests, fixes to
57
spurious test failures and changes to the way things should be tested.
63
This is the second beta of the 2.5 series, leading to a 2.5.0 release in
64
February 2012. Beta releases are suitable for everyday use but may cause some
65
incompatibilities with plugins.
67
This release includes more filtering options for ``bzr log``, idle
68
connections handling for ``bzr serve``, a ``development-colo`` experimental
69
format to flesh out the colocated branches UI, better support for foreign
70
formats, enhancements to the config framework and more.
72
This release includes all bug fixed in previous series known at the time of
77
External Compatibility Breaks
78
*****************************
85
* A new ``-O`` standard option (common to all commands) have been added. It
86
provides a value for a config option in the ``-Oname=value`` form that
87
takes precedence over all definitions found in config files. It can be
88
used multiple times to override different options.
89
(Vincent Ladeuil, #491196)
91
* ``bzr log`` now has an option called ``--omit-merges`` to omit
92
those commits that merged branches, i.e. those having more than one
94
In order to avoid confusion, the previous command line option
95
``--include-merges`` has been renamed to ``--include-merged``.
96
The old name of the command line option will still be accepted.
97
The name change also affects ``bzr missing``.
100
* ``bzr serve`` will now disconnect clients if they have not issued an RPC
101
request after 5minutes. On POSIX platforms, this will also happen for
102
``bzr serve --inet``. This can be overridden with the configuration
103
variable ``serve.client_timeout`` or in the command line parameter
104
``bzr serve --client-timeout=X``. Further, it is possible to request
105
``bzr serve [--inet]`` to shutdown gracefully by sending SIGHUP. It will
106
finish the current request, and then close the connection.
107
(John Arbash Meinel, #824797, #795025)
109
* The new experimental format ``development-colo`` supports colocated
110
branches. This format will eventually be merged back into the ``2a``
111
format when it has stabilized and there is adequate UI support for
113
(Jelmer Vernooij, #831481)
118
* Fixed a bug where ``bzr tags -r x..y`` loaded the branch history once for
119
every revision in the range; it's now much faster. (Vincent Ladeuil, #857335)
121
* ``bzr info -v`` can now be run against branches that don't support
122
``last_revision_info``, in which case the branch information will simply
123
not be displayed. (Jelmer Vernooij)
128
* ``bzr shelve`` can now be used in emacs shells as the input handling is
129
turned into a line-based one when ``INSIDE_EMACS`` is set (which is the
130
case for all recent emacs versions). (Vincent Ladeuil, #856261)
132
* ``bzr tags`` can now be used against remote repositories that do
133
not provide access to the revision graph. (Jelmer Vernooij, #858942)
135
* ``bzr update PATH`` will stop if you seem to be asking it to update
136
anything less than a whole tree, because that's not supported by ``bzr``'s
137
concept that the whole tree has a single basis revision. Previously, it
138
would go ahead and update the whole tree, which was surprising.
139
(Martin Pool, #557886)
141
* Don't crash if ``bzrlib.initialize()`` has not been called while accessing
142
configs. (Vincent Ladeuil, #863401)
144
* Redirects between http and https no longer discard path information
145
in some cases. (Jelmer Vernooij, #853765)
147
* The ``--overwrite`` argument to ``bzr push`` and ``bzr pull`` no longer
148
reports all tags as changed. (Jelmer Vernooij, #845396)
150
* ``WorkingTree.get_file_mtime`` now raises NoSuchId if a file id is
151
specified that is unknown. (Jelmer Vernooij, #847435)
157
* ``Branch.get_revision_delta`` has been deprecated. Use
158
``Repository.get_revision_delta`` instead. (Jelmer Vernooij, #859712)
160
* Plugins that implement custom protocols for ``bzr serve`` should now
161
also take an argument ``timeout``. This is used by the the bzr protocol
162
to close a connection if a client has been idle for more than X seconds.
163
(Default 5minutes). (John Arbash Meinel)
165
* ``Repository.fileids_altered_by_revision_ids`` has been moved to
166
``VersionedFileRepository`` and is no longer part of the standard
167
``Repository`` interface. (Jelmer Vernooij)
169
* The argument ``include_merges`` to ``missing.find_unmerged`` has
170
been renamed to ``include_merged``. The old name is still supported
171
for now but will cause a deprecation warning. (Martin von Gagern)
173
* The new method ``ControlDirFormat.is_initializable()`` returns a boolean
174
indicating whether or not it is possible to use any of the
175
initialization methods of that format to create a new control dir.
181
* ``Branch`` objects can now use a config stack with the newly introduced
182
``get_config_stack()``. Both ``get_config`` and ``get_config_stack`` can
183
be used for the same branch but it's recommended to stick to one for a
189
* Test scripts can now use ``bzr shelve`` and provide their input as
190
complete lines. (Vincent Ladeuil, #856261)
192
* Really corrupt the pack file without depending on a special length or value.
193
(Vincent Ladeuil, #807032)
201
This is the first beta of the 2.5 series, leading up to a 2.5.0
202
release in February 2012.
204
This release includes better support for gpg signing, better support for
205
i18n (mostly command help and error messages), more options to filter ``bzr
206
log`` output, more support for colocated branches ("location,branch=XXX"
207
syntax), better feedback on updated tags for various commands, faster
208
branching into an empty repository, enhancements to the config framework and
211
Beta releases are suitable for everyday use but may cause some
212
incompatibilities with plugins. Some plugins may need small updates to work
215
External Compatibility Breaks
216
*****************************
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.
223
28
* A ``from_unicode`` parameter can be specified when registering a config
224
29
option. This implements boolean, integer and list config options when the
252
57
* Add a config option gpg_signing_key for setting which GPG key should
253
58
be used to sign commits. Also default to using the gpg user identity
254
which matches user_email() as set by whoami.
255
(Jonathan Riddell, #68501)
59
which matches user_email() as set by whoami. (Jonathan Riddell,
257
62
* An ``invalid`` parameter can be specified when registering a config option
258
63
to decide what should be done when invalid values are
259
encountered. 'warning' and 'error' will respectively emit a warning and
64
encountered. 'warning' and 'eeror' will respectively emit a warning and
260
65
ignore the value or errors out. (Vincent Ladeuil)
262
* bzr add now skips large files in recursive mode. The default "large"
263
size is 20MB, and is configurable via the add.maximum_file_size
264
option. A value of 0 disables skipping. Named items passed to add are
265
never skipped. (Shannon Weyrick, #54624)
267
67
* ``bzr help configuration/<option>`` display the help for ``option`` for
268
68
all registered configuration options. (Vincent Ladeuil, #747050)
270
* ``bzr log -m`` now matches message, author, committer and bugs instead
271
of just matching the message. ``--message`` keeps its original meaning,
272
while ``--match-message, --match-author, --match-committer`` and
273
``--match-bugs`` match each of those fields. (Jacek Sieka)
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.
275
75
* ``config.Option`` can now declare ``default_from_env``, a list of
276
76
environment variables to get a default value from. (Vincent Ladeuil)
285
85
* Relative local paths can now be specified in URL syntax by using the
286
86
"file:" prefix. (Jelmer Vernooij)
288
* Report commits signed with expired keys in ``verify-signatures``.
88
* Report commits signed with expired keys in "verify-signatures".
289
89
(Jonathan Riddell, #804254)
291
* Translations are now enabled for command help, errors and globally
292
for any message using ``gettext`` given on output. (Jonathan Riddell,
91
* bzr add now skips large files in recursive mode. The default "large"
92
size is 20MB, and is configurable via the add.maximum_file_size
93
option. A value of 0 disables skipping. Named items passed to add are
94
never skipped. (Shannon Weyrick, #54624)
96
* bzr now ships with translations for command help. (Jonathan
97
Riddell, INADA Naoki, #83941)
99
* bzr now ships with translations for command errors. (Jonathan
100
Riddell, INADA Naoki)
298
* ``bzr add`` will now warn about nested subtrees that are skipped.
299
(Jelmer Vernooij, #187342)
105
.. Improvements to existing commands, especially improved performance
106
or memory usage, or better results.
301
108
* ``bzr commit -m ''`` can now be used to force an empty commit message.
302
109
Entering an empty commit message in the message editor still triggers
313
120
The ``--keep-tags`` option can be used to prevent this behaviour.
314
121
(Jelmer Vernooij, #605814)
123
* Locations printed by ``bzr upgrade`` are now formatted before display.
126
* Install translation .mo files. (Jonathan Riddell)
316
128
* Do not run i18n initialisation twice. (Jonathan Riddell)
318
* Install translation .mo files. (Jonathan Riddell)
320
* Locations printed by ``bzr upgrade`` are now formatted before display.
323
* ``Repository.get_parent_map`` now estimates the size of the returned
324
content more accurately. This means that we get closer to the desired
325
64kB/request. For repositories converted from svn, this can be an
326
improvement of approx 5:1 in round trips to discover the whole history.
329
130
* Support a ``bugtracker`` option which is used by ``bzr commit --fixes``
330
131
if no bug tracker was specified on the command line.
331
132
(Jelmer Vernooij, #334860)
333
* Use ``gettext.NullTranslations`` in i18n to allow use of i18n even when
334
translations are not turned on. (Jonathan Riddell)
339
* ``bzr commit`` now correctly reports missing files as "removed", not
340
"modified". (Jelmer Vernooij, #553955)
137
.. Fixes for situations where bzr would previously crash or give incorrect
138
or undesirable results.
342
* ``bzr reconfigure`` will now allow multiple non-conflicting requests
343
in a single invocation, e.g. ``--branch`` and ``--use-shared``.
344
(Martin von Gagern, #842993)
140
* The pull command will now always use separate connections for the
141
case where the destination is a heavyweight checkout of some remote
142
branch on the same host as the source branch.
143
(Martin von Gagern, #483661)
346
145
* A call to CHKInventory's filter-method will not result in a
347
146
DuplicateFileId error, if you move a subfolder and change a file in
174
.. Improved or updated documentation.
383
176
* Release instructions refreshed. (Vincent Ladeuil)
388
* ``BranchFormat.initialize`` now takes a ``append_revisions_only``
389
argument. (Jelmer Vernooij)
391
* ``Branch._get_checkout_format`` now takes a ``lightweight`` argument
392
which indicates if the format should be for a lightweight or a
393
heavyweight checkout. (Jelmer Vernooij)
395
* ``ControlDir.create_branch`` now takes a ``append_revisions_only`` argument.
181
.. Changes that may require updates in plugins or other code that uses
398
184
* New class ``URL`` in ``bzrlib.utils`` for managing parsed URLs.
399
185
(Jelmer Vernooij)
401
* New method ``Config.get_user_option_as_int_from_SI`` added for expanding a
402
value in SI format (i.e. "20MB", "1GB") into its integer equivalent.
405
* New method ``InterTree.file_content_matches`` which checks that
406
two files in different trees have the same contents.
187
* New methods ``get_transport_from_path`` and ``get_transport_from_url``
188
have been added that only support opening from a path or a URL,
189
unlike ``get_transport``. (Jelmer Vernooij)
409
191
* New method ``Tree.get_file_verifier`` which allows tree implementations
410
192
to return non-sha1 checksums to verify files.
411
193
(Jelmer Vernooij, #720831)
413
* New methods ``get_transport_from_path`` and ``get_transport_from_url``
414
have been added that only support opening from a path or a URL,
415
unlike ``get_transport``. (Jelmer Vernooij)
195
* New method ``InterTree.file_content_matches`` which checks that
196
two files in different trees have the same contents.
417
199
* New registry ``OptionRegistry`` specialized for configuration options.
418
200
(Vincent Ladeuil)
441
223
``UIFactory.warn_experimental_format_fetch`` in favor of
442
224
``UIFactory.show_user_warning``. (Jelmer Vernooij)
444
* ``Tags`` containers can now declare whether they support versioned
445
tags and whether tags can refer to ghost tags.
448
* ``Tags.merge_to`` now returns a dictionary with the updated tags
449
and a set of conflicts, rather than just conflicts. (Jelmer Vernooij)
451
226
* There is a new class `ContentFilterTree` that provides a facade for
452
227
content filtering. The `filtered` parameter to `export` is deprecated
453
228
in favor of passing a filtered tree, and the specific exporter plugins
454
229
no longer support it.
232
* New method ``Config.get_user_option_as_int_from_SI`` added for expanding a
233
value in SI format (i.e. "20MB", "1GB") into its integer equivalent.
236
* ``Tags`` containers can now declare whether they support versioned
237
tags and whether tags can refer to ghost tags.
240
* ``Tags.merge_to`` now returns a dictionary with the updated tags
241
and a set of conflicts, rather than just conflicts. (Jelmer Vernooij)
457
243
* ``Transport`` now has a ``_parsed_url`` attribute instead of
458
244
separate ``_user``, ``_password``, ``_port``, ``_scheme``, ``_host``
459
245
and ``_path`` attributes. Proxies are provided for the moment but
460
246
may be removed in the future. (Jelmer Vernooij)
465
* A new debug flag ``hpss_client_no_vfs`` will now cause the HPSS client
252
.. Major internal changes, unlikely to be visible to users or plugin
253
developers, but interesting for bzr developers.
255
* A new debug flags ``hpss_client_no_vfs`` will now cause the HPSS client
466
256
to raise a ``HpssVfsRequestNotAllowed`` exception when a VFS request
467
257
is attempted. (Jelmer Vernooij)