~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/en/release-notes/bzr-2.5.txt

  • Committer: Patch Queue Manager
  • Date: 2011-10-09 13:52:06 UTC
  • mfrom: (6202.1.3 revno-revision)
  • Revision ID: pqm@pqm.ubuntu.com-20111009135206-t3utsln6mtzv9eut
(jelmer) Add a --revision argument to 'bzr revno'. (Jelmer Vernooij)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
####################
 
2
Bazaar Release Notes
 
3
####################
 
4
 
 
5
.. toctree::
 
6
   :maxdepth: 1
 
7
 
 
8
bzr 2.5b3
 
9
#########
 
10
 
 
11
:2.5b3: NOT RELEASED YET
 
12
 
 
13
External Compatibility Breaks
 
14
*****************************
 
15
 
 
16
.. These may require users to change the way they use Bazaar.
 
17
 
 
18
New Features
 
19
************
 
20
 
 
21
.. New commands, options, etc that users may wish to try out.
 
22
 
 
23
* The ``log_format`` configuration can be used with ``-Olog_format=line`` to
 
24
  change the format ``push`` and ``pull`` use to display the
 
25
  revisions. I.e.: ``bzr pull -v -Olog_format=short`` will use the ``short``
 
26
  format instead of the default ``long`` one. (Vincent Ladeuil, #861472)
 
27
 
 
28
Improvements
 
29
************
 
30
 
 
31
.. Improvements to existing commands, especially improved performance 
 
32
   or memory usage, or better results.
 
33
 
 
34
* ``bzr version-info`` now takes a ``--revision`` argument.
 
35
  (Jelmer Vernooij, #238705)
 
36
 
 
37
* ``bzr revno`` now takes a ``--revision`` argument.
 
38
  (Jelmer Vernooij, #870649)
 
39
 
 
40
Bug Fixes
 
41
*********
 
42
 
 
43
.. Fixes for situations where bzr would previously crash or give incorrect
 
44
   or undesirable results.
 
45
 
 
46
* ``bzr mkdir --quiet`` now does not print a line for every created
 
47
  directory. (Martin von Gagern, #869915)
 
48
 
 
49
Documentation
 
50
*************
 
51
 
 
52
.. Improved or updated documentation.
 
53
 
 
54
API Changes
 
55
***********
 
56
 
 
57
.. Changes that may require updates in plugins or other code that uses
 
58
   bzrlib.
 
59
 
 
60
Internals
 
61
*********
 
62
 
 
63
.. Major internal changes, unlikely to be visible to users or plugin 
 
64
   developers, but interesting for bzr developers.
 
65
 
 
66
Testing
 
67
*******
 
68
 
 
69
.. Fixes and changes that are only relevant to bzr's test framework and 
 
70
   suite.  This can include new facilities for writing tests, fixes to 
 
71
   spurious test failures and changes to the way things should be tested.
 
72
 
 
73
 
 
74
bzr 2.5b2
 
75
#########
 
76
 
 
77
This is the second beta of the 2.5 series, leading to a 2.5.0 release in
 
78
February 2012. Beta releases are suitable for everyday use but may cause some
 
79
incompatibilities with plugins.
 
80
 
 
81
This release includes more filtering options for ``bzr log``, idle
 
82
connections handling for ``bzr serve``, a ``development-colo`` experimental
 
83
format to flesh out the colocated branches UI, better support for foreign
 
84
formats, enhancements to the config framework and more.
 
85
 
 
86
This release includes all bug fixed in previous series known at the time of
 
87
this release.
 
88
 
 
89
:2.5b2: 2011-10-06
 
90
 
 
91
External Compatibility Breaks
 
92
*****************************
 
93
 
 
94
None
 
95
 
 
96
New Features
 
97
************
 
98
 
 
99
* A new ``-O`` standard option (common to all commands) have been added. It
 
100
  provides a value for a config option in the ``-Oname=value`` form that
 
101
  takes precedence over all definitions found in config files.  It can be
 
102
  used multiple times to override different options.
 
103
  (Vincent Ladeuil, #491196)
 
104
 
 
105
* ``bzr log`` now has an option called ``--omit-merges`` to omit
 
106
  those commits that merged branches, i.e. those having more than one
 
107
  parent.
 
108
  In order to avoid confusion, the previous command line option
 
109
  ``--include-merges`` has been renamed to ``--include-merged``.
 
110
  The old name of the command line option will still be accepted.
 
111
  The name change also affects ``bzr missing``.
 
112
  (Martin von Gagern)
 
113
 
 
114
* ``bzr serve`` will now disconnect clients if they have not issued an RPC
 
115
  request after 5minutes. On POSIX platforms, this will also happen for
 
116
  ``bzr serve --inet``. This can be overridden with the configuration
 
117
  variable ``serve.client_timeout`` or in the command line parameter
 
118
  ``bzr serve --client-timeout=X``. Further, it is possible to request
 
119
  ``bzr serve [--inet]`` to shutdown gracefully by sending SIGHUP. It will
 
120
  finish the current request, and then close the connection.
 
121
  (John Arbash Meinel, #824797, #795025)
 
122
 
 
123
* The new experimental format ``development-colo`` supports colocated
 
124
  branches. This format will eventually be merged back into the ``2a``
 
125
  format when it has stabilized and there is adequate UI support for
 
126
  colocated branches.
 
127
  (Jelmer Vernooij, #831481)
 
128
 
 
129
Improvements
 
130
************
 
131
 
 
132
* Fixed a bug where ``bzr tags -r x..y`` loaded the branch history once for
 
133
  every revision in the range; it's now much faster. (Vincent Ladeuil, #857335)
 
134
 
 
135
* ``bzr info -v`` can now be run against branches that don't support
 
136
  ``last_revision_info``, in which case the branch information will simply
 
137
  not be displayed. (Jelmer Vernooij)
 
138
 
 
139
Bug Fixes
 
140
*********
 
141
 
 
142
* ``bzr shelve`` can now be used in emacs shells as the input handling is
 
143
  turned into a line-based one when ``INSIDE_EMACS`` is set (which is the
 
144
  case for all recent emacs versions). (Vincent Ladeuil, #856261)
 
145
 
 
146
* ``bzr tags`` can now be used against remote repositories that do
 
147
  not provide access to the revision graph. (Jelmer Vernooij, #858942)
 
148
 
 
149
* ``bzr update PATH`` will stop if you seem to be asking it to update
 
150
  anything less than a whole tree, because that's not supported by ``bzr``'s
 
151
  concept that the whole tree has a single basis revision.  Previously, it
 
152
  would go ahead and update the whole tree, which was surprising.
 
153
  (Martin Pool, #557886)
 
154
 
 
155
* Don't crash if ``bzrlib.initialize()`` has not been called while accessing
 
156
  configs.  (Vincent Ladeuil, #863401)
 
157
 
 
158
* Redirects between http and https no longer discard path information
 
159
  in some cases. (Jelmer Vernooij, #853765)
 
160
 
 
161
* The ``--overwrite`` argument to ``bzr push`` and ``bzr pull`` no longer
 
162
  reports all tags as changed. (Jelmer Vernooij, #845396)
 
163
 
 
164
* ``WorkingTree.get_file_mtime`` now raises NoSuchId if a file id is
 
165
  specified that is unknown. (Jelmer Vernooij, #847435)
 
166
 
 
167
 
 
168
API Changes
 
169
***********
 
170
 
 
171
* ``Branch.get_revision_delta`` has been deprecated. Use
 
172
  ``Repository.get_revision_delta`` instead. (Jelmer Vernooij, #859712)
 
173
 
 
174
* Plugins that implement custom protocols for ``bzr serve`` should now
 
175
  also take an argument ``timeout``. This is used by the the bzr protocol
 
176
  to close a connection if a client has been idle for more than X seconds.
 
177
  (Default 5minutes). (John Arbash Meinel)
 
178
 
 
179
* ``Repository.fileids_altered_by_revision_ids`` has been moved to
 
180
  ``VersionedFileRepository`` and is no longer part of the standard
 
181
  ``Repository`` interface. (Jelmer Vernooij)
 
182
 
 
183
* The argument ``include_merges`` to ``missing.find_unmerged`` has
 
184
  been renamed to ``include_merged``. The old name is still supported
 
185
  for now but will cause a deprecation warning. (Martin von Gagern)
 
186
 
 
187
* The new method ``ControlDirFormat.is_initializable()`` returns a boolean
 
188
  indicating whether or not it is possible to use any of the
 
189
  initialization methods of that format to create a new control dir.
 
190
  (Jelmer Vernooij)
 
191
 
 
192
Internals
 
193
*********
 
194
 
 
195
* ``Branch`` objects can now use a config stack with the newly introduced
 
196
  ``get_config_stack()``. Both ``get_config`` and ``get_config_stack`` can
 
197
  be used for the same branch but it's recommended to stick to one for a
 
198
  given option.
 
199
 
 
200
Testing
 
201
*******
 
202
 
 
203
* Test scripts can now use ``bzr shelve`` and provide their input as
 
204
  complete lines. (Vincent Ladeuil, #856261)
 
205
 
 
206
* Really corrupt the pack file without depending on a special length or value.
 
207
  (Vincent Ladeuil, #807032)
 
208
 
 
209
 
 
210
bzr 2.5b1
 
211
#########
 
212
 
 
213
:2.5b1: 2011-09-15
 
214
 
 
215
This is the first beta of the 2.5 series, leading up to a 2.5.0
 
216
release in February 2012.
 
217
 
 
218
This release includes better support for gpg signing, better support for
 
219
i18n (mostly command help and error messages), more options to filter ``bzr
 
220
log`` output, more support for colocated branches ("location,branch=XXX"
 
221
syntax), better feedback on updated tags for various commands, faster
 
222
branching into an empty repository, enhancements to the config framework and
 
223
more.
 
224
 
 
225
Beta releases are suitable for everyday use but may cause some
 
226
incompatibilities with plugins.  Some plugins may need small updates to work
 
227
with 2.5b1.
 
228
 
 
229
External Compatibility Breaks
 
230
*****************************
 
231
 
 
232
None
 
233
 
 
234
New Features
 
235
************
 
236
 
 
237
* A ``from_unicode`` parameter can be specified when registering a config
 
238
  option. This implements boolean, integer and list config options when the
 
239
  provided ``bool_from_store``, ``int_from_store`` and ``list_from_store``
 
240
  are used for this parameter.  (Vincent Ladeuil)
 
241
 
 
242
* Accessing a packaging branch on Launchpad (eg, ``lp:ubuntu/bzr``) now
 
243
  checks to see if the most recent published source package version for
 
244
  that project is present in the branch tags. This should help developers
 
245
  trust whether the packaging branch is up-to-date and can be used for new
 
246
  changes. The level of verbosity is controlled by the config item
 
247
  ``launchpad.packaging_verbosity``. It can be set to one of
 
248
 
 
249
  off
 
250
    disable all checks
 
251
 
 
252
 
 
253
  minimal
 
254
    only display if the branch is out-of-date
 
255
 
 
256
  short
 
257
    also display single-line up-to-date and missing,
 
258
 
 
259
 
 
260
  all
 
261
    (default) display multi-line content for all states
 
262
 
 
263
 
 
264
  (John Arbash Meinel, #609187, #812928)
 
265
 
 
266
* Add a config option gpg_signing_key for setting which GPG key should
 
267
  be used to sign commits. Also default to using the gpg user identity
 
268
  which matches user_email() as set by whoami.
 
269
  (Jonathan Riddell, #68501)
 
270
 
 
271
* An ``invalid`` parameter can be specified when registering a config option
 
272
  to decide what should be done when invalid values are
 
273
  encountered. 'warning' and 'error' will respectively emit a warning and
 
274
  ignore the value or errors out. (Vincent Ladeuil)
 
275
 
 
276
* bzr add now skips large files in recursive mode. The default "large"
 
277
  size is 20MB, and is configurable via the add.maximum_file_size
 
278
  option. A value of 0 disables skipping. Named items passed to add are
 
279
  never skipped. (Shannon Weyrick, #54624)
 
280
 
 
281
* ``bzr help configuration/<option>`` display the help for ``option`` for
 
282
  all registered configuration options. (Vincent Ladeuil, #747050)
 
283
 
 
284
* ``bzr log -m`` now matches message, author, committer and bugs instead
 
285
  of just matching the message.  ``--message`` keeps its original meaning,
 
286
  while ``--match-message, --match-author, --match-committer`` and
 
287
  ``--match-bugs`` match each of those fields. (Jacek Sieka)
 
288
 
 
289
* ``config.Option`` can now declare ``default_from_env``, a list of
 
290
  environment variables to get a default value from. (Vincent Ladeuil)
 
291
 
 
292
* ``config.NameMatcher`` can be used to implement config stores and stacks
 
293
  that need to provide specific option values for arbitrary unique IDs (svn
 
294
  repository UUIDs, etc).  (Vincent Ladeuil, #843638)
 
295
 
 
296
* New builtin ``bzr branches`` command, which lists all colocated branches
 
297
  in a directory. (Jelmer Vernooij, #826820)
 
298
 
 
299
* Relative local paths can now be specified in URL syntax by using the
 
300
  "file:" prefix.  (Jelmer Vernooij)
 
301
 
 
302
* Report commits signed with expired keys in ``verify-signatures``.
 
303
  (Jonathan Riddell, #804254)
 
304
 
 
305
* Translations are now enabled for command help, errors and globally
 
306
  for any message using ``gettext`` given on output.  (Jonathan Riddell,
 
307
  INADA Naoki, #83941)
 
308
 
 
309
Improvements
 
310
************
 
311
 
 
312
* ``bzr add`` will now warn about nested subtrees that are skipped.
 
313
  (Jelmer Vernooij, #187342)
 
314
 
 
315
* ``bzr commit -m ''`` can now be used to force an empty commit message.
 
316
  Entering an empty commit message in the message editor still triggers
 
317
  an error. (Jelmer Vernooij)
 
318
 
 
319
* ``bzr pull`` will now mention how many tags it has updated.
 
320
  (Jelmer Vernooij, #164450)
 
321
 
 
322
* ``bzr tag`` no longer errors if a tag already exists but refers to the
 
323
  same revision, and will mention when a tag has been updated
 
324
  rather than created. (Jelmer Vernooij, #381203)
 
325
 
 
326
* ``bzr uncommit`` will now remove tags that refer to removed revisions.
 
327
  The ``--keep-tags`` option can be used to prevent this behaviour.
 
328
  (Jelmer Vernooij, #605814)
 
329
 
 
330
* Do not run i18n initialisation twice. (Jonathan Riddell)
 
331
 
 
332
* Install translation .mo files. (Jonathan Riddell)
 
333
 
 
334
* Locations printed by ``bzr upgrade`` are now formatted before display.
 
335
  (Jelmer Vernooij)
 
336
 
 
337
* ``Repository.get_parent_map`` now estimates the size of the returned
 
338
  content more accurately. This means that we get closer to the desired
 
339
  64kB/request. For repositories converted from svn, this can be an
 
340
  improvement of approx 5:1 in round trips to discover the whole history.
 
341
  (John Arbash Meinel)
 
342
 
 
343
* Support a ``bugtracker`` option which is used by ``bzr commit --fixes``
 
344
  if no bug tracker was specified on the command line.
 
345
  (Jelmer Vernooij, #334860)
 
346
 
 
347
* Use ``gettext.NullTranslations`` in i18n to allow use of i18n even when
 
348
  translations are not turned on. (Jonathan Riddell)
 
349
 
 
350
Bug Fixes
 
351
*********
 
352
 
 
353
* ``bzr commit`` now correctly reports missing files as "removed", not
 
354
  "modified". (Jelmer Vernooij, #553955)
 
355
 
 
356
* ``bzr reconfigure`` will now allow multiple non-conflicting requests
 
357
  in a single invocation, e.g. ``--branch`` and ``--use-shared``.
 
358
  (Martin von Gagern, #842993)
 
359
 
 
360
* A call to CHKInventory's filter-method will not result in a
 
361
  DuplicateFileId error, if you move a subfolder and change a file in
 
362
  that subfolder.
 
363
  (Bastian Bowe, #809901)
 
364
 
 
365
* Branching from a stacked branch no longer does a ``get_parent_map``
 
366
  request for each revisions that is in the stacked-on repository while
 
367
  determining what revisions need to be fetched. This mostly impacts
 
368
  branching initialy into an empty shared repository when the source is
 
369
  not the development focus.  (John Arbash Meinel, #388269)
 
370
 
 
371
* Decode ``BZR_HOME`` with fs encoding on posix platforms to avoid unicode
 
372
  errors.  (Vincent Ladeuil, #822571)
 
373
 
 
374
* Fix fallout from URL handling changes in 2.5 that caused an IndexError to be
 
375
  raised whenever a transport at the drive root was opened on windows.
 
376
  (Martin [gz], #841322)
 
377
 
 
378
* Fixed loading of external merge tools from config to properly decode
 
379
  command-lines which contain embedded quotes. (Gordon Tyler, #828803)
 
380
 
 
381
* Rather than an error being raised, a warning is now printed when the
 
382
  current user does not have permission to read a configuration file.
 
383
  (Jelmer Vernooij, #837324)
 
384
 
 
385
* The pull command will now always use separate connections for the
 
386
  case where the destination is a heavyweight checkout of some remote
 
387
  branch on the same host as the source branch.
 
388
  (Martin von Gagern, #483661)
 
389
 
 
390
* TreeTransformBase.fixup_new_roots no longer forces trees to have a root, so
 
391
  operations that use it, like merge, can now create trees without a root.
 
392
  (Aaron Bentley)
 
393
 
 
394
Documentation
 
395
*************
 
396
 
 
397
* Release instructions refreshed. (Vincent Ladeuil)
 
398
 
 
399
API Changes
 
400
***********
 
401
 
 
402
* ``BranchFormat.initialize`` now takes a ``append_revisions_only``
 
403
  argument. (Jelmer Vernooij)
 
404
 
 
405
* ``Branch._get_checkout_format`` now takes a ``lightweight`` argument
 
406
  which indicates if the format should be for a lightweight or a
 
407
  heavyweight checkout. (Jelmer Vernooij)
 
408
 
 
409
* ``ControlDir.create_branch`` now takes a ``append_revisions_only`` argument.
 
410
  (Jelmer Vernooij)
 
411
 
 
412
* New class ``URL`` in ``bzrlib.utils`` for managing parsed URLs.
 
413
  (Jelmer Vernooij)
 
414
 
 
415
* New method ``Config.get_user_option_as_int_from_SI`` added for expanding a
 
416
  value in SI format (i.e. "20MB", "1GB") into its integer equivalent. 
 
417
  (Shannon Weyrick)
 
418
 
 
419
* New method ``InterTree.file_content_matches`` which checks that
 
420
  two files in different trees have the same contents.
 
421
  (Jelmer Vernooij)
 
422
 
 
423
* New method ``Tree.get_file_verifier`` which allows tree implementations
 
424
  to return non-sha1 checksums to verify files.
 
425
  (Jelmer Vernooij, #720831)
 
426
 
 
427
* New methods ``get_transport_from_path`` and ``get_transport_from_url``
 
428
  have been added that only support opening from a path or a URL,
 
429
  unlike ``get_transport``. (Jelmer Vernooij)
 
430
 
 
431
* New registry ``OptionRegistry`` specialized for configuration options.
 
432
  (Vincent Ladeuil)
 
433
 
 
434
* Remove ``AtomicFile.closed`` which has been deprecated in bzr 0.10.
 
435
  (Vincent Ladeuil)
 
436
 
 
437
* Remove ``commands._builtin_commands``, ``commands.shlex_split_unicode``,
 
438
  ``Command._maybe_expand_globs`` and ``Command.run_direct`` deprecated in
 
439
  2.10 and 2.2.0. (Vincent Ladeuil)
 
440
 
 
441
* Remove ``diff.get_trees_and_branches_to_diff`` deprecated in 2.2.0.
 
442
 
 
443
* Remove ``log.calculate_view_revisions``, ``log._filter_revision_range``,
 
444
  ``log.get_view_revisions`` which have been deprecated in bzr 2.1.0. Also
 
445
  remove ``log.show_one_log`` which was never properly deprecated but wasn't
 
446
  used and is easy to inline if needed. (Vincent Ladeuil)
 
447
 
 
448
* Remove ``trace.info``, ``trace.error`` and ``trace.show_log_error``
 
449
  deprecated in 2.1.0. (Vincent Ladeuil)
 
450
 
 
451
* Remove ``TransportListRegistry.set_default_transport``, as the concept of
 
452
  a default transport is currently unused. (Jelmer Vernooij)
 
453
 
 
454
* Remove ``UIFactory.warn_cross_format_fetch`` and
 
455
  ``UIFactory.warn_experimental_format_fetch`` in favor of
 
456
  ``UIFactory.show_user_warning``. (Jelmer Vernooij)
 
457
 
 
458
* ``Tags`` containers can now declare whether they support versioned
 
459
  tags and whether tags can refer to ghost tags.
 
460
  (Jelmer Vernooij)
 
461
 
 
462
* ``Tags.merge_to`` now returns a dictionary with the updated tags
 
463
  and a set of conflicts, rather than just conflicts. (Jelmer Vernooij)
 
464
 
 
465
* There is a new class `ContentFilterTree` that provides a facade for 
 
466
  content filtering.  The `filtered` parameter to `export` is deprecated 
 
467
  in favor of passing a filtered tree, and the specific exporter plugins
 
468
  no longer support it.
 
469
  (Martin Pool)
 
470
 
 
471
* ``Transport`` now has a ``_parsed_url`` attribute instead of
 
472
  separate ``_user``, ``_password``, ``_port``, ``_scheme``, ``_host``
 
473
  and ``_path`` attributes. Proxies are provided for the moment but
 
474
  may be removed in the future. (Jelmer Vernooij)
 
475
 
 
476
Internals
 
477
*********
 
478
 
 
479
* A new debug flag ``hpss_client_no_vfs`` will now cause the HPSS client
 
480
  to raise a ``HpssVfsRequestNotAllowed`` exception when a VFS request
 
481
  is attempted. (Jelmer Vernooij)
 
482
 
 
483
* New method ``ControlDir._get_selected_branch`` which returns the
 
484
  colocated branch selected using path segment parameters.
 
485
  (Jelmer Vernooij, #380871)
 
486
 
 
487
Testing
 
488
*******
 
489
 
 
490
* Blackbox tests (including test scripts) can be debugged interactively (see
 
491
  bzrlib.debug.BzrPdb for details). (Vincent Ladeuil)
 
492
 
 
493
* `BranchBuilder.build_snapshot` now supports a "flush" action.  This
 
494
  cleanly and reliably allows tests using `BranchBuilder` to construct
 
495
  branches that e.g. rename files out of a directory and unversion that
 
496
  directory in the same revision.  Previously some changes were impossible
 
497
  due to the order that `build_snapshot` performs its actions.
 
498
  (Andrew Bennetts)
 
499
 
 
500
* Don't require ``os.fdatasync`` to be defined on all supported OSes
 
501
  (BSD-based OSes don't define it).  (Vincent Ladeuil, #822649)
 
502
 
 
503
* Fix compatibility with testtools 0.9.12. (Jelmer Vernooij, #815423)
 
504
 
 
505
* ``LockDir`` can now be run when the local hostname is ``localhost``.
 
506
  (Jelmer Vernooij, #825994)
 
507
 
 
508
* ``ModuleAvailableFeature`` won't try to import already imported modules,
 
509
  allowing it to be used for modules with side-effects.
 
510
  (Vincent Ladeuil, #712474)
 
511
 
 
512
* Output time stamps while running ``make check`` to get better timings from
 
513
  pqm.  (Vincent Ladeuil, #837926)
 
514
 
 
515
* `TestCaseWithMemoryTransport` is faster now: `_check_safety_net` now
 
516
  just compares the bytes in the dirstate file to its pristine state,
 
517
  rather than opening the WorkingTree and calling ``last_revision()``.
 
518
  This reduces the overall test suite time by about 10% on my laptop.
 
519
  (Andrew Bennetts)
 
520
 
 
521
* Update `TestCase.knownFailure` to the testtools way of handling expected
 
522
  failures to resolve Python 2.7 incompatibility. (Martin [gz], #607400)
 
523
 
 
524
..
 
525
   vim: tw=74 ft=rst ff=unix