~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

(vila) Calling super() instead of mentioning the base class in setUp avoid
 mistakes. (Vincent Ladeuil)

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.5.2
 
9
#########
 
10
 
 
11
:2.5.2: 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
Improvements
 
24
************
 
25
 
 
26
.. Improvements to existing commands, especially improved performance 
 
27
   or memory usage, or better results.
 
28
 
 
29
Bug Fixes
 
30
*********
 
31
 
 
32
.. Fixes for situations where bzr would previously crash or give incorrect
 
33
   or undesirable results.
 
34
 
 
35
* ``bzr config`` properly handles aliases and references in the
 
36
  ``--directory`` parameter (Vincent Ladeuil, Wouter van Heyst, #947049)
 
37
 
 
38
* Revert use of --no-tty when gpg signing commits. (Jelmer Vernooij, #1014570)
 
39
 
 
40
Documentation
 
41
*************
 
42
 
 
43
.. Improved or updated documentation.
 
44
 
 
45
API Changes
 
46
***********
 
47
 
 
48
.. Changes that may require updates in plugins or other code that uses
 
49
   bzrlib.
 
50
 
 
51
Internals
 
52
*********
 
53
 
 
54
.. Major internal changes, unlikely to be visible to users or plugin 
 
55
   developers, but interesting for bzr developers.
 
56
 
 
57
Testing
 
58
*******
 
59
 
 
60
.. Fixes and changes that are only relevant to bzr's test framework and 
 
61
   suite.  This can include new facilities for writing tests, fixes to 
 
62
   spurious test failures and changes to the way things should be tested.
 
63
 
 
64
 
 
65
bzr 2.5.1
 
66
#########
 
67
 
 
68
:2.5.1: 2012-05-22
 
69
 
 
70
This is a bugfix release. Most of the bugs dealt with https and colocated
 
71
branches glitches. Upgrading is recommended for all users of earlier 2.5
 
72
releases.
 
73
 
 
74
External Compatibility Breaks
 
75
*****************************
 
76
 
 
77
None.
 
78
 
 
79
New Features
 
80
************
 
81
 
 
82
None.
 
83
 
 
84
Improvements
 
85
************
 
86
 
 
87
* ``bzr rmbranch`` now supports removing colocated branches.
 
88
  (Jelmer Vernooij, #920653)
 
89
 
 
90
* ``bzr rmbranch`` no longer removes active branches unless ``--force``
 
91
  is specified. (Jelmer Vernooij, #922953)
 
92
 
 
93
Bug Fixes
 
94
*********
 
95
 
 
96
* Connecting with HTTPS via HTTP now correctly uses the host name of the
 
97
  destination rather than the proxy when checking certificates.
 
98
  (Martin Packman, #944696)
 
99
 
 
100
* Fixed merge tool availability checking and invocation to search the
 
101
  Windows App Path registry in addition to the PATH. (Gordon Tyler, #939605)
 
102
 
 
103
* Fixed problem with getting errors about failing to open /dev/tty when using
 
104
  Bazaar Explorer to sign commits. (Mark Grandi, #847388)
 
105
 
 
106
* Fix UnicodeEncodeError when translated progress task messages contain
 
107
  non-ascii text. (Martin Packman, #966934)
 
108
 
 
109
* Make sure configuration options can provide their own help topic.
 
110
  (Jelmer Vernooij, #941672)
 
111
 
 
112
Documentation
 
113
*************
 
114
 
 
115
* The alpha-quality texinfo sphinx builder has been deprecated. Sphinx >=
 
116
  1.1.2 now provides a better one. Most of the documentation can now be
 
117
  generated to the texinfo format with ``make texinfo-sphinx``. This will
 
118
  generate both the ``.texi`` files and the ``.info`` ones.
 
119
  (Vincent Ladeuil, #940164)
 
120
 
 
121
API Changes
 
122
***********
 
123
 
 
124
None.
 
125
 
 
126
Testing
 
127
*******
 
128
 
 
129
* Add support for pyftpdlib >= 0.7.0 and drop support for previous pyftpdlib
 
130
  versions. (Vincent Ladeuil, #956027)
 
131
 
 
132
* Run smoketest for setup.py isolated in a tempdir. (Martin Packman, #140874)
 
133
 
 
134
 
 
135
bzr 2.5.0
 
136
#########
 
137
 
 
138
:Codename: Phillip
 
139
:2.5.0: 2012-02-24
 
140
 
 
141
This release marks the start of a new long-term-stable series. From here, we
 
142
will only make bugfix releases on the 2.5 series (2.5.1, etc, and support it
 
143
until April 2017), while 2.6 will become our new development series.
 
144
 
 
145
This is a bugfix and polish release over the 2.4 series, with a large number
 
146
of bugs fixed (~170 for the 2.5 series alone). The 2.5 series provides a
 
147
faster smart protocol implementation for many operations, basic support for
 
148
colocated branches. We have started translating bzr with the 2.5 series:
 
149
https://translations.launchpad.net/bzr, more than 20 languages have already
 
150
been registered but these are the early days, contributions welcome.
 
151
 
 
152
Only a few bugfixes have been included since 2.5b6 so all known fixed bugs
 
153
are included here.
 
154
 
 
155
Users are encouraged to upgrade from the other stable series.
 
156
 
 
157
 
 
158
External Compatibility Breaks
 
159
*****************************
 
160
 
 
161
None.
 
162
 
 
163
New Features
 
164
************
 
165
 
 
166
None.
 
167
 
 
168
Improvements
 
169
************
 
170
 
 
171
* The names of colocated branches are used as branch nicks if no nick is
 
172
  specified. (Aaron Bentley)
 
173
 
 
174
Bug Fixes
 
175
*********
 
176
 
 
177
* Show locks in ``bzr info`` on control directories without a
 
178
  repository. (Jelmer Vernooij, #936767)
 
179
 
 
180
* Disable ssl certificate verification on osx and windows until a native
 
181
  access to the the root certificates is provided there.
 
182
  (Vincent Ladeuil, #929179)
 
183
 
 
184
Testing
 
185
*******
 
186
 
 
187
* Stop depending on the particular CPython ordering of dictionary keys
 
188
  when testing the result of BzrDir.get_branches.
 
189
  (Wouter van Heyst)
 
190
 
 
191
bzr 2.5b6
 
192
#########
 
193
 
 
194
:2.5b6: 2012-02-02
 
195
 
 
196
This is the sixth (and last (really)) beta of the 2.5 series, leading to a
 
197
2.5.0 release in March 2012. Beta releases are suitable for everyday use
 
198
but may cause some incompatibilities with plugins.
 
199
 
 
200
This introduces the support for colocated branches into the '2a' format in a
 
201
backward compatible way, fix more glitches in the colocated UI, verify https
 
202
certificates for the urllib https client implementation, fix some more
 
203
unicode issues and more.
 
204
 
 
205
All bugs fixed in previous series known at the time of this release are
 
206
included.
 
207
 
 
208
External Compatibility Breaks
 
209
*****************************
 
210
 
 
211
None.
 
212
 
 
213
New Features
 
214
************
 
215
 
 
216
* Support for colocated branches is now available in the default
 
217
  format ("2a"). (Jelmer Vernooij)
 
218
 
 
219
Improvements
 
220
************
 
221
 
 
222
* ``bzr switch -b`` in a standalone tree will now create a colocated branch.
 
223
  (Jelmer Vernooij, #918197)
 
224
 
 
225
* ``bzr info`` now reports when there are present (but unused) colocated
 
226
  branches. (Jelmer Vernooij, #891646)
 
227
 
 
228
* Checkouts can now be into target directories that already have
 
229
  a control directory (but no branch or working tree).
 
230
  (Jelmer Vernooij, #913980)
 
231
 
 
232
* Colocated branches can now have names including forward slashes, to
 
233
  allow for namespaces. (Jelmer Vernooij, #907980)
 
234
 
 
235
* New HPSS call for ``BzrDir.get_branches``. (Jelmer Vernooij, #894460)
 
236
 
 
237
* Checkouts of colocated branches are now always lightweight.
 
238
  (Jelmer Vernooij, #918828)
 
239
 
 
240
Bug Fixes
 
241
*********
 
242
 
 
243
* ``bzr branch`` now fetches revisions when branching into an empty
 
244
  control directory. (Jelmer Vernooij, #905594)
 
245
 
 
246
* A sane default is provided for ``ssl.ca_certs`` which should points to the
 
247
  Certificate Authority bundle for supported platforms.
 
248
  (Vincent Ladeuil, #920455)
 
249
 
 
250
* ``bzr branch`` generates correct target branch locations again if not
 
251
  specified. (Jelmer Vernooij, #919218)
 
252
 
 
253
* ``bzr send`` works on treeless branches again.
 
254
  (Jelmer Vernooij, #921591)
 
255
 
 
256
* ``bzr version`` no longer throws a UnicodeDecodeError if the .bzr.log path
 
257
  contains non-ascii characters. (Martin Packman, #312841)
 
258
 
 
259
* Support scripts that don't call bzrlib.initialize() but still call run_bzr().
 
260
  (Vincent Ladeuil, #917733)
 
261
 
 
262
* Test for equality instead of object identity where ROOT_PARENT is concerned.
 
263
  (Wouter van Heyst, #881142)
 
264
 
 
265
* urllib-based HTTPS client connections now verify the server certificate
 
266
  validity as well as the hostname.
 
267
  (Jelmer Vernooij, Vincent Ladeuil, #651161)
 
268
 
 
269
 
 
270
API Changes
 
271
***********
 
272
 
 
273
* ``config.config_dir`` and related functions now always return paths as
 
274
  unicode. (Martin Packman, #825826)
 
275
 
 
276
* ``ControlDir`` now has a new method ``set_branch_reference`` which can
 
277
  be used for setting branch references. (Jelmer Vernooij)
 
278
 
 
279
* ``ControlDir.destroy_branch`` now raises ``NotBranchError`` rather than
 
280
  ``NoSuchFile`` if the branch didn't exist. (Jelmer Vernooij, #921693)
 
281
 
 
282
Internals
 
283
*********
 
284
 
 
285
* A new matcher ``RevisionHistoryMatches`` has been added. (Jelmer Vernooij)
 
286
 
 
287
* Add new module ``bzrlib.url_policy_open``. (Jelmer Vernooij, #850843)
 
288
 
 
289
* ``MutableTree`` has two new hooks ``pre_transform`` and
 
290
  ``post_transform`` that are called for tree transform operations.
 
291
  (Jelmer Vernooij, #912084)
 
292
 
 
293
 
 
294
Testing
 
295
*******
 
296
 
 
297
* Be more careful about closing open files for pypy interoperability.
 
298
  (Wouter van Heyst)
 
299
 
 
300
bzr 2.5b5
 
301
#########
 
302
 
 
303
:2.5b5: 2012-01-12
 
304
 
 
305
This is the fifth (and last) beta of the 2.5 series, leading to a 2.5.0
 
306
release in February 2012. Beta releases are suitable for everyday use but
 
307
may cause some incompatibilities with plugins.
 
308
 
 
309
This release includes many improvements in the smart server, UI polish for
 
310
the colocated branches, enhancements to the config framework and more
 
311
internal uses, bug fixes related to unicode and locale support and more.
 
312
 
 
313
All bug fixed in previous series known at the time of this release are
 
314
included.
 
315
 
 
316
External Compatibility Breaks
 
317
*****************************
 
318
 
 
319
* The '.bzr/branch/email' file is no longer read to determine the users'
 
320
  identity. Instead, the 'email' setting in '.bzr/branch/branch.conf'
 
321
  should be used. (Jelmer Vernooij, #903894)
 
322
 
 
323
New Features
 
324
************
 
325
 
 
326
* "bzr mkdir" now includes -p (--parents) option for recursively adding
 
327
  parent directories.
 
328
  (Jared Hance, Jelmer Vernooij, #253529)
 
329
 
 
330
* ``config.Option`` can now declare ``override_from_env``, a list of
 
331
  environment variables which, when set, that takes precedence over values
 
332
  defined in configuration files. (Vincent Ladeuil, #907279)
 
333
 
 
334
Improvements
 
335
************
 
336
 
 
337
* New HPSS call for ``Repository.reconcile``. (Jelmer Vernooij, #894455)
 
338
 
 
339
* Merge now has two new hooks ``pre_merge`` and ``post_merge``
 
340
  that are called before and after a merge and can make
 
341
  additional modifications to the trees involved.
 
342
  (Jelmer Vernooij, #906877)
 
343
 
 
344
* Override the value returned by ``sys.getfilesystemencoding()`` for the bzr
 
345
  script to utf-8 when it would otherwise be ascii on a posix system. This
 
346
  will mean bzr works with non-ascii files when no locale or an incorrect
 
347
  locale is set. (Martin Packman, #794353)
 
348
 
 
349
* ``bzr branches`` now indicates the active colocated branch.
 
350
  (Jelmer Vernooij, #891667)
 
351
 
 
352
* ``bzr push`` now suggests using :parent if there is a parent location
 
353
  set. (Jelmer Vernooij)
 
354
 
 
355
* ``bzr send`` now only opens a single connection, rather than two,
 
356
  to the target branch.  (Jelmer Vernooij)
 
357
 
 
358
Bug Fixes
 
359
*********
 
360
 
 
361
* Allow configuration option default value to be a python callable at
 
362
  registration. (Vincent Ladeuil, #832064)
 
363
 
 
364
* ``bzr config`` will now display the section ``[DEFAULT]`` used in
 
365
  ``bazaar.conf``. (Vincent Ladeuil, #907268)
 
366
 
 
367
* Configuration stores can now provides a specific quoting mechanism. This
 
368
  is required to workaround ``configobj`` conflating quoting and list values
 
369
  automatic conversion. (Vincent Ladeuil, #906897)
 
370
 
 
371
* Create obsolete_packs directory when repacking if it does not
 
372
  exist. (Jonathan Riddell, Jelmer Vernooij, #314314)
 
373
 
 
374
* Fallback to the slower ``bzr log`` implementation when displaying a range
 
375
  of revisions whose ancestry is not obviously on the same developement
 
376
  line. (Vincent Ladeuil, #904744)
 
377
 
 
378
* Make lazy imports resilient when resolved concurrently from multiple
 
379
  threads. Now the stand-in object will behave as a proxy for the real object
 
380
  after the initial access, rather than throwing. Assigning the object to
 
381
  multiple names should still be avoided. (Martin von Gagern, #396819)
 
382
 
 
383
* Not setting ``gpg_signing_key`` or setting it to ``default`` will use the
 
384
  user email (obtained from the ``email`` configuration option or its
 
385
  default value). (Vincent Ladeuil, Jelmer Vernooij, #904550)
 
386
 
 
387
* Prevent spurious InconsistentDelta error when committing a move of a
 
388
  non-ascii directory with contents. (Rory Yorke, #185211)
 
389
 
 
390
* Properly ignore '\n' in an option reference since this cannot be part of a
 
391
  config option identifier. (Vincent Ladeuil, #902125)
 
392
 
 
393
* Make sure that the bzr probers are always registered when
 
394
  bzrlib.workingtree is imported. (Jelmer Vernooij, #905218)
 
395
 
 
396
* Report mistake trying to move a removed file with a non-ascii name without
 
397
  UnicodeEncodeError being raised. (Martin Packman, #898541)
 
398
 
 
399
* Safely unquote configuration values in weird edge cases (a section seen as
 
400
  a dictionary which is not a supported use case for the configuration
 
401
  stacks). (Vincent Ladeuil, #908050)
 
402
 
 
403
* Stop altering ``sys.platform`` on OSX when initialising the locale.
 
404
  (Martin Packman, #570495)
 
405
 
 
406
* Uncommit no longer removes tags if they are part of the working
 
407
  trees pending merges. (Jelmer Vernooij, #905462)
 
408
 
 
409
API Changes
 
410
***********
 
411
 
 
412
* ``Config.signature_needed``, ``Config.signing_policy``,
 
413
  ``Config.gpg_signing_key``, ``Config.gpg_signing_command``,
 
414
  ``Config.checking_policy`` and ``Config.post_commit`` are now deprecated.
 
415
  (Jelmer Vernooij)
 
416
 
 
417
* ``Repository.get_commit_builder`` now takes a ``config_stack``
 
418
  rather than a ``config`` argument. (Jelmer Vernooij)
 
419
 
 
420
* Scripts using bzrlib should now ensure setlocale is called on posix
 
421
  platforms if they need a non-ascii user encoding. (Martin Packman)
 
422
 
 
423
* Send formats now accept a new optional argument ``submit_branch``,
 
424
  which can be None or a Branch object for the submit branch location.
 
425
  (Jelmer Vernooij)
 
426
 
 
427
* ``VersionedFileRepository.add_revision`` no longer takes a ``config``
 
428
  argument. (Jelmer Vernooij)
 
429
 
 
430
Internals
 
431
*********
 
432
 
 
433
* Add HPSS call for ``Branch.get_checkout_format``. (Jelmer Vernooij, #894459)
 
434
 
 
435
* Add HPSS call for ``Repository.pack``. (Jelmer Vernooij, #894461)
 
436
 
 
437
* Add HPSS calls for ``Repository.iter_files_bytes``, speeding up
 
438
  several commands including ``bzr export`` and ``bzr co --lightweight``.
 
439
  (Jelmer Vernooij, #608640)
 
440
 
 
441
* All bzr control directories, branch formats, repository formats and
 
442
  working tree formats now support feature flags, which are
 
443
  serialized in their respective format files. See
 
444
  ``doc/developers/feature-flags.txt`` for details.
 
445
  (Jelmer Vernooij)
 
446
 
 
447
* ``bzrlib.urlutils`` now includes ``quote`` and ``unquote`` functions,
 
448
  rather than importing them from ``urllib``. This prevents loading
 
449
  of the ``socket``, ``ssl`` and ``urllib`` modules for
 
450
  local bzr operations. (Jelmer Vernooij)
 
451
 
 
452
* Configuration options can be SI units by using ``int_SI_from_unicode`` as
 
453
  their ``convert_from_unicode`` helper. (Vincent Ladeuil)
 
454
 
 
455
* Configuration stacks can now use ``StartingPathMatcher`` to select the
 
456
  sections matching a location while respecting the order chosen by the user
 
457
  in the configuration file: from generic sections to specific
 
458
  sections. (Vincent Ladeuil, #832046).
 
459
 
 
460
* Configuration stores can now save incremental changes by using
 
461
  ``save_changes()`` instead of ``save()``. This reduces the number or
 
462
  required input/outputs and allows stores to be shared between
 
463
  stacks. (Vincent Ladeuil)
 
464
 
 
465
* ControlDir now has a get_branches method that returns a dictionary
 
466
  whose keys are the names of the branches and whose values are the
 
467
  branches themselves. The active branch uses the key None.
 
468
  (Neil Martinsen-Burrell)
 
469
 
 
470
* Helper ``osutils.path_from_environ`` added for extracting a unicode path
 
471
  from an environment variable. (Martin Packman, #832028)
 
472
 
 
473
* Helper ``win32utils.get_environ_unicode`` added for avoiding encoding
 
474
  problems with ``os.environ.get`` use. (Martin Packman, #262874) 
 
475
 
 
476
* Lazy imports can now only be absolute. (Jelmer Vernooij)
 
477
 
 
478
* Merge3Mergers now have an optional ``other_branch`` argument
 
479
  which contains the branch from which the ``other_tree``
 
480
  was obtained, if any. (Jelmer Vernooij)
 
481
 
 
482
* MutableTree now has a hook ``post_build_tree`` which is called after
 
483
  a new mutable tree has been created. (Jelmer Vernooij, #912765)
 
484
 
 
485
* New HPSS call ``BzrDir.checkout_metadir``. (Jelmer Vernooij, #894459)
 
486
 
 
487
* New HPSS call ``VersionedFileRepository.get_inventories``,
 
488
  speeding up various commands including ``bzr export``,
 
489
  ``bzr checkout`` and ``bzr cat``. (Jelmer Vernooij, #608640)
 
490
 
 
491
* The ``ConfigCommandLineStore`` is now supported by ``bzr config`` and is
 
492
  seen as single no-name section of configuration options. (Vincent Ladeuil)
 
493
 
 
494
Testing
 
495
*******
 
496
 
 
497
* New matcher ``ContainsNoVfsCalls`` which filters a list of HPSS
 
498
  calls for VFS requests. (Jelmer Vernooij)
 
499
 
 
500
* New ``MemoryStack`` class allows for diskless tests and locally injected
 
501
  configuration stacks.  Lower level tests for predefined set of options can
 
502
  be written without setting up configuration files. (Vincent Ladeuil)
 
503
 
 
504
 
 
505
bzr 2.5b4
 
506
#########
 
507
 
 
508
:2.5b4: 2011-12-08
 
509
 
 
510
This is the fourth beta of the 2.5 series, leading to a 2.5.0 release in
 
511
February 2012. Beta releases are suitable for everyday use but may cause
 
512
some incompatibilities with plugins.
 
513
 
 
514
This release includes many improvements in the smart server, UI polish for
 
515
the colocated branches, optimizations for revision specifiers to avoid
 
516
history sized operations, enhancements to the config framework, bug fixes
 
517
related to unicode paths and more.
 
518
 
 
519
All bug fixed in previous series known at the time of this release are
 
520
included.
 
521
 
 
522
External Compatibility Breaks
 
523
*****************************
 
524
 
 
525
None.
 
526
 
 
527
New Features
 
528
************
 
529
 
 
530
* Provides a ``po_merge`` plugin to automatically merge ``.po`` files with
 
531
  ``msgmerge``. See ``bzr help po_merge`` for details.
 
532
  (Vincent Ladeuil, #884270)
 
533
 
 
534
Improvements
 
535
************
 
536
 
 
537
* ``bzr branch --stacked`` now only makes a single connection to the remote
 
538
  server rather than three. (Jelmer Vernooij, #444293)
 
539
 
 
540
* ``bzr export --uncommitted`` will export the uncommitted tree.
 
541
  (Jelmer Vernooij, #555613)
 
542
 
 
543
* ``bzr rmbranch`` can now remove colocated branches.
 
544
  (Jelmer Vernooij, #831464)
 
545
 
 
546
* ``bzr status`` no longer shows shelves if files are specified.
 
547
  (Francis Devereux)
 
548
 
 
549
* ``bzr switch`` now accepts colocated branch names to switch to.
 
550
  (Jelmer Vernooij, #826814)
 
551
 
 
552
* Plugins can now register additional "location aliases".
 
553
  (Jelmer Vernooij)
 
554
 
 
555
* Revision specifiers will now only browse as much history as they
 
556
  need to, rather than grabbing the whole history unnecessarily in some
 
557
  cases. (Jelmer Vernooij)
 
558
 
 
559
* When using ``bzr switch`` to switch to a sibling of the current
 
560
  branch, the relative branch name should no longer be url-encoded.
 
561
  (Jelmer Vernooij)
 
562
 
 
563
Bug Fixes
 
564
*********
 
565
 
 
566
* A new section local option ``basename`` is available to help support some
 
567
  ``bzr-pipeline`` workflows and more generally help mapping local paths to
 
568
  remote ones. See ``bzr help configuration`` for more details.
 
569
  (Vincent Ladeuil, #843211)
 
570
 
 
571
* Add HPSS call for looking up revision numbers from revision ids on
 
572
  remote repositories. (Jelmer Vernooij, #640253)
 
573
 
 
574
* Add HPSS call for retrieving file contents from remote repositories.
 
575
  Should improve performance for lightweight checkouts and exports of
 
576
  from remote repositories.  (Jelmer Vernooij, #368717, #762330, #608640)
 
577
 
 
578
* Allow lazy compiled patterns from ``bzrlib.lazy_regex`` to be
 
579
  pickled. (Jelmer Vernooij, #893149)
 
580
 
 
581
* ``bzr info`` no longer shows empty output if only a control
 
582
  directory is present. (Jelmer Vernooij, #159098)
 
583
 
 
584
* Cope with missing revision ids being specified to
 
585
  ``Repository.gather_stats`` HPSS call. (Jelmer Vernooij, #411290)
 
586
 
 
587
* Fix test failures on windows related to locations.conf handling.
 
588
  (Vincent Ladeuil, #892992)
 
589
 
 
590
* Fixed parsing of the timestamp given to ``commit --commit-time``. Now
 
591
  prohibits several invalid strings, reads the correct number of seconds,
 
592
  and gives a better error message if the time zone offset is not given.
 
593
  (Matt Giuca, #892657)
 
594
 
 
595
* Give meaningful file/line references when reporting deprecation warnings
 
596
  for _CompatabilityThunkFeature based test features.
 
597
  (Vincent Ladeuil, #897718)
 
598
 
 
599
* Make reporting of mistakes involving unversioned files with non-ascii
 
600
  filenames work again without 'Unprintable exception' being shown.
 
601
  (Martin Packman, #898408)
 
602
 
 
603
* Provide names for lazily registered hooks. 
 
604
  (Neil Martinsen-Burrell, #894609)
 
605
 
 
606
* Raise BadIndexKey exception in btree_index when a key is too large, fixing 
 
607
  an infinite recursion issue. (Shannon Weyrick, #720853)
 
608
 
 
609
* Resolve regression from colocated branch path handling, by ensuring that
 
610
  unreserved characters are unquoted in URLs. (Martin Packman, #842223)
 
611
 
 
612
* Split segments from URLs for colocated branches without assuming the
 
613
  combined form is valid. (Martin Packman, #842233)
 
614
 
 
615
* Support looking up revision numbers by revision id in empty branches.
 
616
  (Jelmer Vernooij, #535031)
 
617
 
 
618
* Support verifying signatures on remote repositories.
 
619
  (Jelmer Vernooij, #889694)
 
620
 
 
621
* Teach the bzr client how to reconnect if we get ``ConnectionReset``
 
622
  while making an RPC request. This doesn't handle all possible network
 
623
  disconnects, but it should at least handle when the server is asked to
 
624
  shutdown gracefully. (John Arbash Meinel, #819604)
 
625
 
 
626
* When a remote format is unknown, bzr will now print a single-line error
 
627
  message rather than a backtrace. (Jelmer Vernooij, #687226)
 
628
 
 
629
API Changes
 
630
***********
 
631
 
 
632
* ``BzrDir.open_branch`` and ``BranchFormat.open`` now take an optional
 
633
  ``possible_transports`` argument. (Jelmer Vernooij)
 
634
 
 
635
* New method ``Transport.set_segment_parameter``.  (Jelmer Vernooij)
 
636
 
 
637
* ``Repository.verify_revision`` has been renamed to
 
638
  ``Repository.verify_revision_signature``. (Jelmer Vernooij)
 
639
 
 
640
* ``RevisionSpec.wants_revision_history`` now defaults to ``False`` and
 
641
  is deprecated. The ``revs`` argument of
 
642
  ``RevisionInfo.from_revision_id`` is now deprecated. (Jelmer Vernooij)
 
643
 
 
644
* ``Tree.get_file_by_path`` is now deprecated. Use ``Tree.get_file`` instead.
 
645
  (Jelmer Vernooij, #666897)
 
646
 
 
647
* Some global options for use with commands have been removed, construct
 
648
  an ``Option`` with the name instead. (Martin Packman)
 
649
 
 
650
* The unused exception ``HistoryMissing`` has been removed.
 
651
  (Jelmer Vernooij)
 
652
 
 
653
Internals
 
654
*********
 
655
 
 
656
* Add HPSS call for ``Repository.pack``. (Jelmer Vernooij, #894461)
 
657
 
 
658
* ``bzr config`` uses the new configuration implementation.
 
659
  (Vincent Ladeuil)
 
660
 
 
661
* Custom HPSS error handlers can now be installed in the smart server client
 
662
  using the ``error_translators`` and ``no_context_error_translators``
 
663
  registries. (Jelmer Vernooij)
 
664
 
 
665
* New HPSS calls ``Repository.has_signature_for_revision_id``,
 
666
  ``Repository.make_working_trees``, ``BzrDir.destroy_repository``,
 
667
  ``BzrDir.has_workingtree``, ``Repository.get_physical_lock_status``,
 
668
  ``Branch.get_physical_lock_status``,
 
669
  ``Branch.put_config_file``, ``Branch.break_lock``,
 
670
  ``BzrDir.destroy_branch``, ``Repository.break_lock``,
 
671
  ``VersionedFileRepository.get_serializer_format``,
 
672
  ``Repository.all_revision_ids``, ``Repository.start_write_group``,
 
673
  ``Repository.commit_write_group``, ``Repository.abort_write_group``
 
674
  ``Repository.check_write_group``, ``Repository.iter_revisions``,
 
675
  ``Repository.add_signature_revision_text`` and
 
676
  ``Repository.get_revision_signature_text``.
 
677
  (Jelmer Vernooij)
 
678
 
 
679
* ``RemoteBranch.get_config_stack`` and ``RemoteBzrDir.get_config_stack``
 
680
  will now use HPSS calls where possible. (Jelmer Vernooij)
 
681
 
 
682
* The registry of merge types has been moved to ``merge`` from ``option`` but
 
683
  ``merge.get_merge_type_registry`` remains as an accessor. (Martin Packman)
 
684
 
 
685
Testing
 
686
*******
 
687
 
 
688
* Avoid failures in test_transform when OS error messages are localised.
 
689
  (Martin Packman, #891582)
 
690
 
 
691
* Tests are now subject to a time limit: by default 300s, and 120s when
 
692
  run from 'make check', controlled by the `selftest.timeout`
 
693
  configuration option.  This is currently not supported on Windows.
 
694
  (Martin Pool)
 
695
 
 
696
bzr 2.5b3
 
697
#########
 
698
 
 
699
:2.5b3: 2011-11-10
 
700
 
 
701
This is the third beta of the 2.5 series, leading to a 2.5.0 release in
 
702
February 2012. Beta releases are suitable for everyday use but may cause
 
703
some incompatibilities with plugins.
 
704
 
 
705
This release includes log options for ``push`` and ``pull``, more UI polish
 
706
for colocated branches, a better and more coherent implementation for UI
 
707
dialogs, enhancements to the config framework and more.
 
708
 
 
709
This release includes all bug fixed in previous series known at the time of
 
710
this release.
 
711
 
 
712
External Compatibility Breaks
 
713
*****************************
 
714
 
 
715
None
 
716
 
 
717
New Features
 
718
************
 
719
 
 
720
* The ``log_format`` configuration can be used with ``-Olog_format=line`` to
 
721
  change the format ``push`` and ``pull`` use to display the
 
722
  revisions. I.e.: ``bzr pull -v -Olog_format=short`` will use the ``short``
 
723
  format instead of the default ``long`` one. (Vincent Ladeuil, #861472)
 
724
 
 
725
* The new config scheme allows an alternative syntax for the 'appenpath'
 
726
  policy relying on option expansion and defining a new 'relpath' option
 
727
  local to a section. Instead of using '<option>:policy=appendpath', the
 
728
  option value can de defined as 'option=xxxx/{relpath}'.
 
729
  (Vincent Ladeuil, #832013)
 
730
 
 
731
Improvements
 
732
************
 
733
 
 
734
* ``bzr info -v`` now shows the number of colocated branches
 
735
  for control directories that support them.
 
736
  (Jelmer Vernooij, #863285)
 
737
 
 
738
* ``bzr version-info`` now takes a ``--revision`` argument.
 
739
  (Jelmer Vernooij, #238705)
 
740
 
 
741
* ``bzr revno`` now takes a ``--revision`` argument.
 
742
  (Jelmer Vernooij, #870649)
 
743
 
 
744
* ``bzr serve`` now can serve from URLs rather than just from the
 
745
  file system. I.e.: ``bzr serve -d lp:bzr`` or
 
746
  ``bzr serve -d file:///data/bzr`` (Jelmer Vernooij)
 
747
 
 
748
* all input prompts are now char-based when possible, and can be forced to
 
749
  line-based mode by setting the ``BZR_TEXTUI_INPUT`` environment variable
 
750
  to 'line-based'. This replace the previous shelf UI only patch using
 
751
  ``INSIDE_EMACS``. (Benoît Pierre)
 
752
 
 
753
Bug Fixes
 
754
*********
 
755
 
 
756
* ``bzr info`` now shows the master branch location too for
 
757
  treeless local branches. (Jelmer Vernooij, #258355)
 
758
 
 
759
* ``bzr mkdir --quiet`` now does not print a line for every created
 
760
  directory. (Martin von Gagern, #869915)
 
761
 
 
762
* ``bzr mv`` does not crash when attempting to move the root of a
 
763
  branch. (Jonathan Riddell, #809728)
 
764
 
 
765
* ``bzr shelve`` now use ``UIFactory.choose`` for input handling, making
 
766
  it usable when creating a custom ``UIFactory`` implementation. (Benoît
 
767
  Pierre)
 
768
 
 
769
* ``bzr clean-tree`` now use ``UIFactory.get_boolean`` for confirmation
 
770
  prompt, making it usable when using a custom ``UIFactory``
 
771
  implementation. (Benoît Pierre)
 
772
 
 
773
* If sending a crash through Apport fails report the Apport failure to
 
774
  bzr.log rather than stderr. (Jonathan Riddell, #766735)
 
775
 
 
776
* ``bzr upgrade`` no longer treats 'already up-to-date' exceptions as
 
777
  errors. (Benoît Pierre, #716560).
 
778
 
 
779
* ``bzr version-info`` no longer populates the clean state for custom
 
780
  templates unless {clean} is explicitly asked for.
 
781
  (Lawrence Mitchell, #882541)
 
782
 
 
783
* Fix finding the CPU count when using Python >= 2.6 on BSD-based systems.
 
784
  (Jelmer Vernooij, #887151)
 
785
 
 
786
* ``WorkingTree.clone()`` now supports its ``revision_id`` being set
 
787
  to the null revision. (Jelmer Vernooij, #876423)
 
788
 
 
789
* ``WorkingTree.pull`` can now pull ``NULL_REVISION``.
 
790
  (Jelmer Vernooij, #887556)
 
791
 
 
792
API Changes
 
793
***********
 
794
 
 
795
* ``Branch.revision_history`` is now deprecated. (Jelmer Vernooij, #799519)
 
796
 
 
797
* Methods ``add`` and ``items`` of ``LRUCache`` and ``LRUSizeCache`` are
 
798
  deprecated. Use normal dict-style access instead. (Martin Packman)
 
799
 
 
800
* New flag ``RepositoryFormat.supports_unreferenced_revisions`` which
 
801
  indicates whether revisions can be present in a repository without
 
802
  being referenced from e.g. a branch history at the same time.
 
803
  (Jelmer Vernooij)
 
804
 
 
805
* ``UIFactory.choose`` has been added: prompt the user for a list of
 
806
  choices. (Benoît Pierre)
 
807
 
 
808
Internals
 
809
*********
 
810
 
 
811
* ``ControlDirFormat`` now has a new method ``supports_transport``
 
812
  which format implementations can use whether or not they can access
 
813
  a control dir over a particular transport. (Jelmer Vernooij)
 
814
 
 
815
* ``BranchBuilder.build_commit`` now take ``parent_ids`` and
 
816
  ``allow_leftmost_as_ghost`` arguments.  (Jelmer Vernooij)
 
817
 
 
818
Testing
 
819
*******
 
820
 
 
821
* Ensure TestCase instances are deallocated immediately after running where
 
822
  possible. This greatly reduces the peak resource needs of a full test suite
 
823
  run. The new ``-Euncollected_cases`` selftest flag will add failures if any
 
824
  case which persists pasts its expected lifetime. (Martin Packman, #613247)
 
825
 
 
826
* Report exceptions from child processes during fork instead of swallowing the
 
827
  error and reporting that everything went okay. (Martin Packman, #804130)
 
828
 
 
829
 
 
830
bzr 2.5b2
 
831
#########
 
832
 
 
833
This is the second beta of the 2.5 series, leading to a 2.5.0 release in
 
834
February 2012. Beta releases are suitable for everyday use but may cause some
 
835
incompatibilities with plugins.
 
836
 
 
837
This release includes more filtering options for ``bzr log``, idle
 
838
connections handling for ``bzr serve``, a ``development-colo`` experimental
 
839
format to flesh out the colocated branches UI, better support for foreign
 
840
formats, enhancements to the config framework and more.
 
841
 
 
842
This release includes all bug fixed in previous series known at the time of
 
843
this release.
 
844
 
 
845
:2.5b2: 2011-10-06
 
846
 
 
847
External Compatibility Breaks
 
848
*****************************
 
849
 
 
850
None
 
851
 
 
852
New Features
 
853
************
 
854
 
 
855
* A new ``-O`` standard option (common to all commands) have been added. It
 
856
  provides a value for a config option in the ``-Oname=value`` form that
 
857
  takes precedence over all definitions found in config files.  It can be
 
858
  used multiple times to override different options.
 
859
  (Vincent Ladeuil, #491196)
 
860
 
 
861
* ``bzr log`` now has an option called ``--omit-merges`` to omit
 
862
  those commits that merged branches, i.e. those having more than one
 
863
  parent.
 
864
  In order to avoid confusion, the previous command line option
 
865
  ``--include-merges`` has been renamed to ``--include-merged``.
 
866
  The old name of the command line option will still be accepted.
 
867
  The name change also affects ``bzr missing``.
 
868
  (Martin von Gagern)
 
869
 
 
870
* ``bzr serve`` will now disconnect clients if they have not issued an RPC
 
871
  request after 5minutes. On POSIX platforms, this will also happen for
 
872
  ``bzr serve --inet``. This can be overridden with the configuration
 
873
  variable ``serve.client_timeout`` or in the command line parameter
 
874
  ``bzr serve --client-timeout=X``. Further, it is possible to request
 
875
  ``bzr serve [--inet]`` to shutdown gracefully by sending SIGHUP. It will
 
876
  finish the current request, and then close the connection.
 
877
  (John Arbash Meinel, #824797, #795025)
 
878
 
 
879
* The new experimental format ``development-colo`` supports colocated
 
880
  branches. This format will eventually be merged back into the ``2a``
 
881
  format when it has stabilized and there is adequate UI support for
 
882
  colocated branches.
 
883
  (Jelmer Vernooij, #831481)
 
884
 
 
885
Improvements
 
886
************
 
887
 
 
888
* Fixed a bug where ``bzr tags -r x..y`` loaded the branch history once for
 
889
  every revision in the range; it's now much faster. (Vincent Ladeuil, #857335)
 
890
 
 
891
* ``bzr info -v`` can now be run against branches that don't support
 
892
  ``last_revision_info``, in which case the branch information will simply
 
893
  not be displayed. (Jelmer Vernooij)
 
894
 
 
895
Bug Fixes
 
896
*********
 
897
 
 
898
* ``bzr shelve`` can now be used in emacs shells as the input handling is
 
899
  turned into a line-based one when ``INSIDE_EMACS`` is set (which is the
 
900
  case for all recent emacs versions). (Vincent Ladeuil, #856261)
 
901
 
 
902
* ``bzr tags`` can now be used against remote repositories that do
 
903
  not provide access to the revision graph. (Jelmer Vernooij, #858942)
 
904
 
 
905
* ``bzr update PATH`` will stop if you seem to be asking it to update
 
906
  anything less than a whole tree, because that's not supported by ``bzr``'s
 
907
  concept that the whole tree has a single basis revision.  Previously, it
 
908
  would go ahead and update the whole tree, which was surprising.
 
909
  (Martin Pool, #557886)
 
910
 
 
911
* Don't crash if ``bzrlib.initialize()`` has not been called while accessing
 
912
  configs.  (Vincent Ladeuil, #863401)
 
913
 
 
914
* Redirects between http and https no longer discard path information
 
915
  in some cases. (Jelmer Vernooij, #853765)
 
916
 
 
917
* The ``--overwrite`` argument to ``bzr push`` and ``bzr pull`` no longer
 
918
  reports all tags as changed. (Jelmer Vernooij, #845396)
 
919
 
 
920
* ``WorkingTree.get_file_mtime`` now raises NoSuchId if a file id is
 
921
  specified that is unknown. (Jelmer Vernooij, #847435)
 
922
 
 
923
 
 
924
API Changes
 
925
***********
 
926
 
 
927
* ``Branch.get_revision_delta`` has been deprecated. Use
 
928
  ``Repository.get_revision_delta`` instead. (Jelmer Vernooij, #859712)
 
929
 
 
930
* Plugins that implement custom protocols for ``bzr serve`` should now
 
931
  also take an argument ``timeout``. This is used by the the bzr protocol
 
932
  to close a connection if a client has been idle for more than X seconds.
 
933
  (Default 5minutes). (John Arbash Meinel)
 
934
 
 
935
* ``Repository.fileids_altered_by_revision_ids`` has been moved to
 
936
  ``VersionedFileRepository`` and is no longer part of the standard
 
937
  ``Repository`` interface. (Jelmer Vernooij)
 
938
 
 
939
* The argument ``include_merges`` to ``missing.find_unmerged`` has
 
940
  been renamed to ``include_merged``. The old name is still supported
 
941
  for now but will cause a deprecation warning. (Martin von Gagern)
 
942
 
 
943
* The new method ``ControlDirFormat.is_initializable()`` returns a boolean
 
944
  indicating whether or not it is possible to use any of the
 
945
  initialization methods of that format to create a new control dir.
 
946
  (Jelmer Vernooij)
 
947
 
 
948
Internals
 
949
*********
 
950
 
 
951
* ``Branch`` objects can now use a config stack with the newly introduced
 
952
  ``get_config_stack()``. Both ``get_config`` and ``get_config_stack`` can
 
953
  be used for the same branch but it's recommended to stick to one for a
 
954
  given option.
 
955
 
 
956
Testing
 
957
*******
 
958
 
 
959
* Test scripts can now use ``bzr shelve`` and provide their input as
 
960
  complete lines. (Vincent Ladeuil, #856261)
 
961
 
 
962
* Really corrupt the pack file without depending on a special length or value.
 
963
  (Vincent Ladeuil, #807032)
 
964
 
 
965
 
 
966
bzr 2.5b1
 
967
#########
 
968
 
 
969
:2.5b1: 2011-09-15
 
970
 
 
971
This is the first beta of the 2.5 series, leading up to a 2.5.0
 
972
release in February 2012.
 
973
 
 
974
This release includes better support for gpg signing, better support for
 
975
i18n (mostly command help and error messages), more options to filter ``bzr
 
976
log`` output, more support for colocated branches ("location,branch=XXX"
 
977
syntax), better feedback on updated tags for various commands, faster
 
978
branching into an empty repository, enhancements to the config framework and
 
979
more.
 
980
 
 
981
Beta releases are suitable for everyday use but may cause some
 
982
incompatibilities with plugins.  Some plugins may need small updates to work
 
983
with 2.5b1.
 
984
 
 
985
External Compatibility Breaks
 
986
*****************************
 
987
 
 
988
None
 
989
 
 
990
New Features
 
991
************
 
992
 
 
993
* A ``from_unicode`` parameter can be specified when registering a config
 
994
  option. This implements boolean, integer and list config options when the
 
995
  provided ``bool_from_store``, ``int_from_store`` and ``list_from_store``
 
996
  are used for this parameter.  (Vincent Ladeuil)
 
997
 
 
998
* Accessing a packaging branch on Launchpad (eg, ``lp:ubuntu/bzr``) now
 
999
  checks to see if the most recent published source package version for
 
1000
  that project is present in the branch tags. This should help developers
 
1001
  trust whether the packaging branch is up-to-date and can be used for new
 
1002
  changes. The level of verbosity is controlled by the config item
 
1003
  ``launchpad.packaging_verbosity``. It can be set to one of
 
1004
 
 
1005
  off
 
1006
    disable all checks
 
1007
 
 
1008
 
 
1009
  minimal
 
1010
    only display if the branch is out-of-date
 
1011
 
 
1012
  short
 
1013
    also display single-line up-to-date and missing,
 
1014
 
 
1015
 
 
1016
  all
 
1017
    (default) display multi-line content for all states
 
1018
 
 
1019
 
 
1020
  (John Arbash Meinel, #609187, #812928)
 
1021
 
 
1022
* Add a config option gpg_signing_key for setting which GPG key should
 
1023
  be used to sign commits. Also default to using the gpg user identity
 
1024
  which matches user_email() as set by whoami.
 
1025
  (Jonathan Riddell, #68501)
 
1026
 
 
1027
* An ``invalid`` parameter can be specified when registering a config option
 
1028
  to decide what should be done when invalid values are
 
1029
  encountered. 'warning' and 'error' will respectively emit a warning and
 
1030
  ignore the value or errors out. (Vincent Ladeuil)
 
1031
 
 
1032
* bzr add now skips large files in recursive mode. The default "large"
 
1033
  size is 20MB, and is configurable via the add.maximum_file_size
 
1034
  option. A value of 0 disables skipping. Named items passed to add are
 
1035
  never skipped. (Shannon Weyrick, #54624)
 
1036
 
 
1037
* ``bzr help configuration/<option>`` display the help for ``option`` for
 
1038
  all registered configuration options. (Vincent Ladeuil, #747050)
 
1039
 
 
1040
* ``bzr log -m`` now matches message, author, committer and bugs instead
 
1041
  of just matching the message.  ``--message`` keeps its original meaning,
 
1042
  while ``--match-message, --match-author, --match-committer`` and
 
1043
  ``--match-bugs`` match each of those fields. (Jacek Sieka)
 
1044
 
 
1045
* ``config.Option`` can now declare ``default_from_env``, a list of
 
1046
  environment variables to get a default value from. (Vincent Ladeuil)
 
1047
 
 
1048
* ``config.NameMatcher`` can be used to implement config stores and stacks
 
1049
  that need to provide specific option values for arbitrary unique IDs (svn
 
1050
  repository UUIDs, etc).  (Vincent Ladeuil, #843638)
 
1051
 
 
1052
* New builtin ``bzr branches`` command, which lists all colocated branches
 
1053
  in a directory. (Jelmer Vernooij, #826820)
 
1054
 
 
1055
* Relative local paths can now be specified in URL syntax by using the
 
1056
  "file:" prefix.  (Jelmer Vernooij)
 
1057
 
 
1058
* Report commits signed with expired keys in ``verify-signatures``.
 
1059
  (Jonathan Riddell, #804254)
 
1060
 
 
1061
* Translations are now enabled for command help, errors and globally
 
1062
  for any message using ``gettext`` given on output.  (Jonathan Riddell,
 
1063
  INADA Naoki, #83941)
 
1064
 
 
1065
Improvements
 
1066
************
 
1067
 
 
1068
* ``bzr add`` will now warn about nested subtrees that are skipped.
 
1069
  (Jelmer Vernooij, #187342)
 
1070
 
 
1071
* ``bzr commit -m ''`` can now be used to force an empty commit message.
 
1072
  Entering an empty commit message in the message editor still triggers
 
1073
  an error. (Jelmer Vernooij)
 
1074
 
 
1075
* ``bzr pull`` will now mention how many tags it has updated.
 
1076
  (Jelmer Vernooij, #164450)
 
1077
 
 
1078
* ``bzr tag`` no longer errors if a tag already exists but refers to the
 
1079
  same revision, and will mention when a tag has been updated
 
1080
  rather than created. (Jelmer Vernooij, #381203)
 
1081
 
 
1082
* ``bzr uncommit`` will now remove tags that refer to removed revisions.
 
1083
  The ``--keep-tags`` option can be used to prevent this behaviour.
 
1084
  (Jelmer Vernooij, #605814)
 
1085
 
 
1086
* Do not run i18n initialisation twice. (Jonathan Riddell)
 
1087
 
 
1088
* Install translation .mo files. (Jonathan Riddell)
 
1089
 
 
1090
* Locations printed by ``bzr upgrade`` are now formatted before display.
 
1091
  (Jelmer Vernooij)
 
1092
 
 
1093
* ``Repository.get_parent_map`` now estimates the size of the returned
 
1094
  content more accurately. This means that we get closer to the desired
 
1095
  64kB/request. For repositories converted from svn, this can be an
 
1096
  improvement of approx 5:1 in round trips to discover the whole history.
 
1097
  (John Arbash Meinel)
 
1098
 
 
1099
* Support a ``bugtracker`` option which is used by ``bzr commit --fixes``
 
1100
  if no bug tracker was specified on the command line.
 
1101
  (Jelmer Vernooij, #334860)
 
1102
 
 
1103
* Use ``gettext.NullTranslations`` in i18n to allow use of i18n even when
 
1104
  translations are not turned on. (Jonathan Riddell)
 
1105
 
 
1106
Bug Fixes
 
1107
*********
 
1108
 
 
1109
* ``bzr commit`` now correctly reports missing files as "removed", not
 
1110
  "modified". (Jelmer Vernooij, #553955)
 
1111
 
 
1112
* ``bzr reconfigure`` will now allow multiple non-conflicting requests
 
1113
  in a single invocation, e.g. ``--branch`` and ``--use-shared``.
 
1114
  (Martin von Gagern, #842993)
 
1115
 
 
1116
* A call to CHKInventory's filter-method will not result in a
 
1117
  DuplicateFileId error, if you move a subfolder and change a file in
 
1118
  that subfolder.
 
1119
  (Bastian Bowe, #809901)
 
1120
 
 
1121
* Branching from a stacked branch no longer does a ``get_parent_map``
 
1122
  request for each revisions that is in the stacked-on repository while
 
1123
  determining what revisions need to be fetched. This mostly impacts
 
1124
  branching initialy into an empty shared repository when the source is
 
1125
  not the development focus.  (John Arbash Meinel, #388269)
 
1126
 
 
1127
* Decode ``BZR_HOME`` with fs encoding on posix platforms to avoid unicode
 
1128
  errors.  (Vincent Ladeuil, #822571)
 
1129
 
 
1130
* Fix fallout from URL handling changes in 2.5 that caused an IndexError to be
 
1131
  raised whenever a transport at the drive root was opened on windows.
 
1132
  (Martin [gz], #841322)
 
1133
 
 
1134
* Fixed loading of external merge tools from config to properly decode
 
1135
  command-lines which contain embedded quotes. (Gordon Tyler, #828803)
 
1136
 
 
1137
* Rather than an error being raised, a warning is now printed when the
 
1138
  current user does not have permission to read a configuration file.
 
1139
  (Jelmer Vernooij, #837324)
 
1140
 
 
1141
* The pull command will now always use separate connections for the
 
1142
  case where the destination is a heavyweight checkout of some remote
 
1143
  branch on the same host as the source branch.
 
1144
  (Martin von Gagern, #483661)
 
1145
 
 
1146
* TreeTransformBase.fixup_new_roots no longer forces trees to have a root, so
 
1147
  operations that use it, like merge, can now create trees without a root.
 
1148
  (Aaron Bentley)
 
1149
 
 
1150
Documentation
 
1151
*************
 
1152
 
 
1153
* Release instructions refreshed. (Vincent Ladeuil)
 
1154
 
 
1155
API Changes
 
1156
***********
 
1157
 
 
1158
* ``BranchFormat.initialize`` now takes a ``append_revisions_only``
 
1159
  argument. (Jelmer Vernooij)
 
1160
 
 
1161
* ``Branch._get_checkout_format`` now takes a ``lightweight`` argument
 
1162
  which indicates if the format should be for a lightweight or a
 
1163
  heavyweight checkout. (Jelmer Vernooij)
 
1164
 
 
1165
* ``ControlDir.create_branch`` now takes a ``append_revisions_only`` argument.
 
1166
  (Jelmer Vernooij)
 
1167
 
 
1168
* New class ``URL`` in ``bzrlib.utils`` for managing parsed URLs.
 
1169
  (Jelmer Vernooij)
 
1170
 
 
1171
* New method ``Config.get_user_option_as_int_from_SI`` added for expanding a
 
1172
  value in SI format (i.e. "20MB", "1GB") into its integer equivalent. 
 
1173
  (Shannon Weyrick)
 
1174
 
 
1175
* New method ``InterTree.file_content_matches`` which checks that
 
1176
  two files in different trees have the same contents.
 
1177
  (Jelmer Vernooij)
 
1178
 
 
1179
* New method ``Tree.get_file_verifier`` which allows tree implementations
 
1180
  to return non-sha1 checksums to verify files.
 
1181
  (Jelmer Vernooij, #720831)
 
1182
 
 
1183
* New methods ``get_transport_from_path`` and ``get_transport_from_url``
 
1184
  have been added that only support opening from a path or a URL,
 
1185
  unlike ``get_transport``. (Jelmer Vernooij)
 
1186
 
 
1187
* New registry ``OptionRegistry`` specialized for configuration options.
 
1188
  (Vincent Ladeuil)
 
1189
 
 
1190
* Remove ``AtomicFile.closed`` which has been deprecated in bzr 0.10.
 
1191
  (Vincent Ladeuil)
 
1192
 
 
1193
* Remove ``commands._builtin_commands``, ``commands.shlex_split_unicode``,
 
1194
  ``Command._maybe_expand_globs`` and ``Command.run_direct`` deprecated in
 
1195
  2.10 and 2.2.0. (Vincent Ladeuil)
 
1196
 
 
1197
* Remove ``diff.get_trees_and_branches_to_diff`` deprecated in 2.2.0.
 
1198
 
 
1199
* Remove ``log.calculate_view_revisions``, ``log._filter_revision_range``,
 
1200
  ``log.get_view_revisions`` which have been deprecated in bzr 2.1.0. Also
 
1201
  remove ``log.show_one_log`` which was never properly deprecated but wasn't
 
1202
  used and is easy to inline if needed. (Vincent Ladeuil)
 
1203
 
 
1204
* Remove ``trace.info``, ``trace.error`` and ``trace.show_log_error``
 
1205
  deprecated in 2.1.0. (Vincent Ladeuil)
 
1206
 
 
1207
* Remove ``TransportListRegistry.set_default_transport``, as the concept of
 
1208
  a default transport is currently unused. (Jelmer Vernooij)
 
1209
 
 
1210
* Remove ``UIFactory.warn_cross_format_fetch`` and
 
1211
  ``UIFactory.warn_experimental_format_fetch`` in favor of
 
1212
  ``UIFactory.show_user_warning``. (Jelmer Vernooij)
 
1213
 
 
1214
* ``Tags`` containers can now declare whether they support versioned
 
1215
  tags and whether tags can refer to ghost tags.
 
1216
  (Jelmer Vernooij)
 
1217
 
 
1218
* ``Tags.merge_to`` now returns a dictionary with the updated tags
 
1219
  and a set of conflicts, rather than just conflicts. (Jelmer Vernooij)
 
1220
 
 
1221
* There is a new class `ContentFilterTree` that provides a facade for 
 
1222
  content filtering.  The `filtered` parameter to `export` is deprecated 
 
1223
  in favor of passing a filtered tree, and the specific exporter plugins
 
1224
  no longer support it.
 
1225
  (Martin Pool)
 
1226
 
 
1227
* ``Transport`` now has a ``_parsed_url`` attribute instead of
 
1228
  separate ``_user``, ``_password``, ``_port``, ``_scheme``, ``_host``
 
1229
  and ``_path`` attributes. Proxies are provided for the moment but
 
1230
  may be removed in the future. (Jelmer Vernooij)
 
1231
 
 
1232
Internals
 
1233
*********
 
1234
 
 
1235
* A new debug flag ``hpss_client_no_vfs`` will now cause the HPSS client
 
1236
  to raise a ``HpssVfsRequestNotAllowed`` exception when a VFS request
 
1237
  is attempted. (Jelmer Vernooij)
 
1238
 
 
1239
* New method ``ControlDir._get_selected_branch`` which returns the
 
1240
  colocated branch selected using path segment parameters.
 
1241
  (Jelmer Vernooij, #380871)
 
1242
 
 
1243
Testing
 
1244
*******
 
1245
 
 
1246
* Blackbox tests (including test scripts) can be debugged interactively (see
 
1247
  bzrlib.debug.BzrPdb for details). (Vincent Ladeuil)
 
1248
 
 
1249
* `BranchBuilder.build_snapshot` now supports a "flush" action.  This
 
1250
  cleanly and reliably allows tests using `BranchBuilder` to construct
 
1251
  branches that e.g. rename files out of a directory and unversion that
 
1252
  directory in the same revision.  Previously some changes were impossible
 
1253
  due to the order that `build_snapshot` performs its actions.
 
1254
  (Andrew Bennetts)
 
1255
 
 
1256
* Don't require ``os.fdatasync`` to be defined on all supported OSes
 
1257
  (BSD-based OSes don't define it).  (Vincent Ladeuil, #822649)
 
1258
 
 
1259
* Fix compatibility with testtools 0.9.12. (Jelmer Vernooij, #815423)
 
1260
 
 
1261
* ``LockDir`` can now be run when the local hostname is ``localhost``.
 
1262
  (Jelmer Vernooij, #825994)
 
1263
 
 
1264
* ``ModuleAvailableFeature`` won't try to import already imported modules,
 
1265
  allowing it to be used for modules with side-effects.
 
1266
  (Vincent Ladeuil, #712474)
 
1267
 
 
1268
* Output time stamps while running ``make check`` to get better timings from
 
1269
  pqm.  (Vincent Ladeuil, #837926)
 
1270
 
 
1271
* `TestCaseWithMemoryTransport` is faster now: `_check_safety_net` now
 
1272
  just compares the bytes in the dirstate file to its pristine state,
 
1273
  rather than opening the WorkingTree and calling ``last_revision()``.
 
1274
  This reduces the overall test suite time by about 10% on my laptop.
 
1275
  (Andrew Bennetts)
 
1276
 
 
1277
* Update `TestCase.knownFailure` to the testtools way of handling expected
 
1278
  failures to resolve Python 2.7 incompatibility. (Martin [gz], #607400)
 
1279
 
 
1280
..
 
1281
   vim: tw=74 ft=rst ff=unix