/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to NEWS

  • Committer: Andrew Bennetts
  • Date: 2009-10-02 06:12:20 UTC
  • mto: This revision was merged to the branch mainline in revision 4732.
  • Revision ID: andrew.bennetts@canonical.com-20091002061220-tzyahxlz33ws2ppg
Update test_decorators, add docstring.

Show diffs side-by-side

added added

removed removed

Lines of Context:
2
2
Bazaar Release Notes
3
3
####################
4
4
 
5
 
.. contents:: List of Releases
6
 
   :depth: 1
7
 
 
8
 
bzr 2.2b3
9
 
#########
10
 
 
11
 
:2.2b3: NOT RELEASED YET
12
 
 
13
 
Compatibility Breaks
14
 
********************
15
 
 
16
 
* An API break has been made to the lock_write method of ``Branch`` and
17
 
  ``Repository`` objects; they now return ``branch.BranchWriteLockResult``
18
 
  and ``repository.RepositoryWriteLockResult`` objects. This makes
19
 
  changing the API in future easier and permits some cleaner calling code.
20
 
  The lock_read method has also changed from having no defined return
21
 
  value to returning ``LogicalLockResult`` objects.
22
 
  (Robert Collins)
23
 
 
24
 
New Features
25
 
************
26
 
 
27
 
* ``bzr commit`` accepts ``-p`` (for "patch") as a shorter name for
28
 
  ``--show-diff``.
29
 
  (Parth Malwankar, #571467)
30
 
  
31
 
* ``bzr ignore`` now supports a ``--default-rules`` option that displays
32
 
  the default ignore rules used by bzr. The flag ``--old-default-rules``
33
 
  is no longer supported by ``ignore``.
34
 
  (Parth Malwankar, #538703)
35
 
 
36
 
* ``bzr pack`` now supports a ``--clean-obsolete-packs`` option that
37
 
  can save disk space by deleting obsolete pack files created during the
38
 
  pack operation.
39
 
  (Parth Malwankar, #304320)
40
 
 
41
 
Bug Fixes
42
 
*********
43
 
 
44
 
* ``.bazaar``, ``.bazaar/bazaar.conf`` and ``.bzr.log`` inherit user and
45
 
  group ownership from the containing directory. This allow bzr to work
46
 
  better with sudo.
47
 
  (Martin <gzlist@googlemail.com>, Parth Malwankar, #376388)
48
 
 
49
 
* ``bzr log --exclude-common-ancestry -r X..Y`` displays the revisions that
50
 
  are part of Y ancestry but not part of X ancestry (aka the graph
51
 
  difference).
52
 
  (Vincent Ladeuil, #320119)
53
 
 
54
 
* ``bzr selftest --parallel=fork`` wait for its children avoiding zombies.
55
 
  (Vincent Ladeuil, #566670)
56
 
 
57
 
* ``bzr selftest`` should not use ui.note() since it's not unicode safe.
58
 
  (Vincent Ladeuil, #563997)
59
 
 
60
 
* Don't mention --no-strict when we just issue the warning about unclean trees.
61
 
  (Vincent Ladeuil, #401599)
62
 
 
63
 
* Fixed ``AssertionError`` when accessing smart servers running Bazaar
64
 
  versions before 1.6.
65
 
  (Andrew Bennetts, #528041)
66
 
 
67
 
* Reduce peak memory by one copy of compressed text.
68
 
  (John Arbash Meinel, #566940)
69
 
 
70
 
* Show the filenames when a file rename fails so that the error will be
71
 
  more comprehensible.
72
 
  (Martin Pool, #491763)
73
 
 
74
 
Improvements
75
 
************
76
 
 
77
 
* ``append_revisions_only`` will now be interpreted as a boolean and a
78
 
  warning emitted if illegal values are used. Note that for projects
79
 
  that needs to maintain compatibility with previsous bzr versions,
80
 
  only 'True' and 'False' strings must be used (previous versions of
81
 
  bzr will interpret all strings differing from 'True'
82
 
  (case-sensitive) as false.
83
 
  (Brian de Alwis, Vincent Ladeuil)
84
 
 
85
 
* ``Config.get_user_option_as_bool`` will now warn if a value cannot
86
 
  be interpreted as a boolean.
87
 
  (Vincent Ladeuil)
88
 
 
89
 
Documentation
90
 
*************
91
 
 
92
 
API Changes
93
 
***********
94
 
 
95
 
* Added ``bzrlib.merge.PerFileMerger``, a more convenient way to write
96
 
  some kinds of ``merge_file_content`` hook functions.
97
 
  (Andrew Bennetts)
98
 
  
99
 
* `BzrDir`, `Branch`, `Repository` and `WorkingTree` now all support `user_url`,
100
 
  `user_transport`, `control_url` and `control_transport` members pointing
101
 
  respectively to the directory containing the ``.bzr`` control directory, 
102
 
  and to the directory within ``.bzr`` used for the particular component.
103
 
  All of them inherit from `ControlComponent` which provides default
104
 
  implementations.
105
 
  (Martin Pool)
106
 
 
107
 
* Lock methods on ``Tree``, ``Branch`` and ``Repository`` are now
108
 
  expected to return an object which can be used to unlock them. This reduces
109
 
  duplicate code when using cleanups. The previous 'tokens's returned by
110
 
  ``Branch.lock_write`` and ``Repository.lock_write`` are now attributes
111
 
  on the result of the lock_write. ``repository.RepositoryWriteLockResult``
112
 
  and ``branch.BranchWriteLockResult`` document this. (Robert Collins)
113
 
 
114
 
Internals
115
 
*********
116
 
 
117
 
* ``log._get_info_for_log_files`` now takes an add_cleanup callable.
118
 
  (Robert Collins)
119
 
 
120
 
* ``_remember_remote_is_before`` no longer raises AssertionError when
121
 
  suboptimal network behaviour is noticed; instead it just mutters to the
122
 
  log file (and warns the user if they have set the ``hpss`` debug flag).
123
 
  This was causing unnecessary aborts for performance bugs that are minor
124
 
  at worst.
125
 
  (Andrew Bennetts, #528041)
126
 
 
127
 
* Permit bzr to run under ``python -OO`` which reduces the size of bytecode
128
 
  files loaded from disk. To ensure docstrings needed for help are never
129
 
  stripped, the prefix ``__doc__ =`` should now be used.
130
 
  (Martin <gzlist@googlemail.com>)
131
 
 
132
 
Testing
133
 
*******
134
 
 
135
 
* Added ``bzrlib.tests.matchers`` as a place to put matchers, along with
136
 
  our first in-tree matcher. See the module docstring for details.
137
 
  (Robert Collins)
138
 
 
139
 
* ``bzr selftest --parallel=subprocess`` now works correctly on win32.
140
 
   (Gordon Tyler, #551332)
141
 
 
142
 
* Workaround ``Crypto.Random`` check leading to spurious test
143
 
  failures on Lucid, FreeBSD and gentoo.  
144
 
  (Vincent Ladeuil, #528436)
145
 
 
146
 
bzr 2.2b2
147
 
#########
148
 
 
149
 
:2.2b2: 2010-04-16
150
 
 
151
 
This is a somewhat early second beta of the 2.2 series, to fix a python2.4
152
 
incompatibility in the 2.2b1 release.  It also includes a swag of
153
 
performance, usability and correctness improvements: test feedback on all
154
 
of these would be welcome.
155
 
 
156
 
 
157
 
New Features
158
 
************
159
 
 
160
 
* ``bzr diff`` now supports a --format option, which can be used to 
161
 
  select alternative diff formats. (Jelmer Vernooij, #555994)
162
 
 
163
 
Bug Fixes
164
 
*********
165
 
 
166
 
* ``bzr dpush``, ``bzr push`` and ``bzr send`` will now issue a warning
167
 
  instead of failing when dirty trees are involved. The corresponding
168
 
  ``dpush_strict``, ``push_strict`` and ``send_strict`` should be set to
169
 
  True explicitly to get the previous behaviour.  
170
 
  (Vincent Ladeuil, #519319)
171
 
 
172
 
* ``bzr export`` to tar file does not fail if any parent directory
173
 
  contains unicode characters. This works around upstream Python bug
174
 
  http://bugs.python.org/issue8396 .
175
 
  (Parth Malwankar, #413406)
176
 
 
177
 
* ``bzr switch`` does not die if a ConfigurableFileMerger is used.
178
 
  (Aaron Bentley, #559436)
179
 
 
180
 
* ``bzr update`` when a pending merge in the working tree has been merged
181
 
  into the master branch will no longer claim that old commits have become
182
 
  pending merges. (Robert Collins, #562079)
183
 
 
184
 
* ``bzrlib.mutabletree.MutableTree.commit`` will now support a passed in
185
 
  config as in previous versions of bzrlib. (Robert Collins)
186
 
 
187
 
* Fix glitch in the warning about unclean trees display.
188
 
  (Vincent Ladeuil, #562665)
189
 
 
190
 
* Fixed Python2.4 incompatibilities in the bzr2.2b1 source tarball.
191
 
  (Martin Pool)
192
 
 
193
 
* Help messages generated by ``RegistryOption.from_kwargs`` list the
194
 
  switches in alphabetical order, rather than in an undefined order.
195
 
  (Martin von Gagern, #559409)
196
 
 
197
 
* Make sure the ``ExecutablePath`` and ``InterpreterPath`` are set in
198
 
  Apport crash reports, to avoid "This problem report applies to a program
199
 
  which is not installed any more" error.
200
 
  (Martin Pool, James Westby, #528114)
201
 
 
202
 
* Reset ``siginterrupt`` flag to False every time we handle a signal
203
 
  installed with ``set_signal_handler(..., restart_syscall=True)`` (from
204
 
  ``bzrlib.osutils``.  Reduces the likelihood of "Interrupted System Call"
205
 
  errors after two window resizes.
206
 
  (Andrew Bennetts)
207
 
 
208
 
* When invoked with a range revision, ``bzr log`` doesn't show revisions
209
 
  that are not part of the Y revisions ancestry anymore when invoked with
210
 
  -rX..Y.
211
 
  (Vincent Ladeuil, #474807)
212
 
 
213
 
* Properly handle ``param_name`` attribute for ``ListOption``.
214
 
  (Martin von Gagern, 387117)
215
 
 
216
 
Improvements
217
 
************
218
 
 
219
 
* ``bzr commit`` will prompt before using a commit message that was
220
 
  generated by a template and not edited by the user.
221
 
  (Robert Collins, #530265)
222
 
 
223
 
* ``bzr diff`` read-locks the trees and branches only once, saving about
224
 
  10-20ms on ``bzr diff`` in a bzr.dev tree.
225
 
  (Andrew Bennetts)
226
 
 
227
 
* ``bzr missing`` read-locks the branches only once.
228
 
  (Andrew Bennetts)
229
 
  
230
 
* ``bzr pull`` locks the branches and tree only once.
231
 
  (Andrew Bennetts)
232
 
  
233
 
* Index lookups in pack repositories search recently hit pack files first.  
234
 
  In repositories with many pack files this can greatly reduce the
235
 
  number of files accessed, the number of bytes read, and the number of
236
 
  read calls.  An incremental pull via plain HTTP takes half the time and
237
 
  bytes for a moderately large repository.  (Andrew Bennetts)
238
 
 
239
 
* Index lookups only re-order the indexes when the hit files aren't
240
 
  already first. Reduces the cost of reordering
241
 
  (John Arbash Meinel, #562429)
242
 
 
243
 
* Less code is loaded at startup.  (Cold-cache start time is about 10-20%
244
 
  less.)
245
 
  (Martin Pool, #553017)
246
 
 
247
 
API Changes
248
 
***********
249
 
 
250
 
* ``bzrlib.diff.get_trees_and_branches_to_diff`` is deprecated.  Use
251
 
  ``get_trees_and_branches_to_diff_locked`` instead.
252
 
  (Andrew Bennetts)
253
 
  
254
 
Internals
255
 
*********
256
 
 
257
 
* ``bzrlib.commands.Command.run_direct`` is no longer needed - the pre
258
 
  2.1 method of calling run() to perform testing or direct use via the API
259
 
  is now possible again. As part of this, the _operation attribute on
260
 
  Command is now transient and only exists for the duration of ``run()``.
261
 
  (Robert Collins)
262
 
 
263
 
bzr 2.2.0b1
264
 
###########
265
 
 
266
 
:2.2.0b1: 2010-04-01
267
 
 
268
 
Compatibility Breaks
269
 
********************
270
 
 
271
 
* BTreeGraphIndex can now take an offset to indicate that the data starts
272
 
  somewhere other than then beginning of the file. (John Arbash Meinel)
273
 
 
274
 
* Deleted very old hidden commands ``versionedfile-list``,
275
 
  ``weave-plan-merge``, ``weave-merge-text``.
276
 
  (Martin Pool)
277
 
 
278
 
* ``Repository.get_inventory_sha1()`` and ``Repository.get_revision_xml()`` 
279
 
  have been removed. (Jelmer Vernooij)
280
 
 
281
 
* ``Repository.get_revision_inventory()`` has been removed in favor of
282
 
  ``Repository.get_inventory()``. (Jelmer Vernooij)
283
 
 
284
 
* All test servers have been moved out of the bzrlib.transport hierarchy to
285
 
  bzrlib.tests.test_server *except* for MemoryServer, ChrootServer and
286
 
  PathFilteringServer. ``bzrlib`` users may encounter test failures that can
287
 
  be fixed by updating the related imports from ``bzrlib.transport.xxx`` to
288
 
  ``bzrlib.tests.test_server``.
289
 
  (Vincent Ladeuil)
290
 
 
291
 
* ``BranchReferenceFormat.initialize()`` now takes an optional name argument
292
 
  as its second parameter, for consistency with the initialize() method of
293
 
  other formats. (Jelmer Vernooij)
294
 
 
295
 
New Features
296
 
************
297
 
 
298
 
* Added ``bzr remove-branch`` command that can remove a local or remote 
299
 
  branch. (Jelmer Vernooij, #276295)
300
 
 
301
 
* ``bzr export`` now takes an optional argument ``--per-file-timestamps``
302
 
  to set file mtimes to the last timestamp of the last revision in which
303
 
  they were changed rather than the current time. (Jelmer Vernooij)
304
 
 
305
 
* If the Apport crash-reporting tool is available, bzr crashes are now
306
 
  stored into the ``/var/crash`` apport spool directory, and the user is
307
 
  invited to report them to the developers from there, either
308
 
  automatically or by running ``apport-bug``.  No information is sent
309
 
  without specific permission from the user.  (Martin Pool, #515052)
310
 
 
311
 
* Parsing of command lines, for example in ``diff --using``, no longer
312
 
  treats backslash as an escape character on Windows.   (Gordon Tyler,
313
 
  #392248)
314
 
 
315
 
* Plugins can be disabled by defining ``BZR_DISABLE_PLUGINS`` as
316
 
  a list of plugin names separated by ':' (';' on windows).
317
 
  (Vincent Ladeuil, #411413)
318
 
 
319
 
* Plugins can be loaded from arbitrary locations by defining
320
 
  ``BZR_PLUGINS_AT`` as a list of name@path separated by ':' (';' on
321
 
  windows). This takes precedence over ``BZR_PLUGIN_PATH`` for the
322
 
  specified plugins. This is targeted at plugin developers for punctual
323
 
  needs and *not* intended to replace ``BZR_PLUGIN_PATH``.  
324
 
  (Vincent Ladeuil, #82693)
325
 
 
326
 
* Tag names can now be determined automatically by ``automatic_tag_name`` 
327
 
  hooks on ``Branch`` if they are not specified on the command line.
328
 
  (Jelmer Vernooij)
329
 
 
330
 
* Tree-shape conflicts can be resolved by providing ``--take-this`` and
331
 
  ``--take-other`` to the ``bzr resolve`` command. Just marking the conflict
332
 
  as resolved is still accessible via the ``--done`` default action.
333
 
  (Vincent Ladeuil)
334
 
 
335
 
* Merges can be proposed on Launchpad with the new lp-propose-merge command.
336
 
  (Aaron Bentley, Jonathan Lange)
337
 
 
338
 
Bug Fixes
339
 
*********
340
 
 
341
 
* Added docstring for ``Tree.iter_changes``
342
 
  (John Arbash Meinel, #304182)
343
 
 
344
 
* Allow additional arguments to
345
 
  ``RemoteRepository.add_inventory_by_delta()``. (Jelmer Vernooij, #532631)
346
 
 
347
 
* Allow exporting a single file using ``bzr export``.
348
 
  (Michal Junák, #511987)
349
 
 
350
 
* Allow syscalls to automatically restart when ``TextUIFactory``'s
351
 
  SIGWINCH handler is invoked, avoiding ``EINTR`` errors during blocking
352
 
  IO, which are often poorly handled by Python's libraries and parts of
353
 
  bzrlib.  (Andrew Bennetts, #496813)
354
 
 
355
 
* Avoid infinite recursion when probing for apport.
356
 
  (Vincent Ladeuil, #516934)
357
 
 
358
 
* Avoid ``malloc(0)`` in ``patiencediff``, which is non-portable.
359
 
  (Martin Pool, #331095)
360
 
 
361
 
* Avoid truncating svn URLs.
362
 
  (Martin Pool, Martin von Gagern, #545185)
363
 
 
364
 
* ``bzr add`` will not add conflict related files unless explicitly required.
365
 
  (Vincent Ladeuil, #322767, #414589)
366
 
 
367
 
* ``bzr dump-btree`` now works on ``*.cix`` and ``*.six`` files.  Those
368
 
  indices do not have reference lists, so ``dump-btree`` will simply show
369
 
  ``None`` instead.  (Andrew Bennetts, #488607)
370
 
 
371
 
* ``bzr help`` will no longer trigger the get_missing_command hook when
372
 
  doing a topic lookup. This avoids prompting (like 'no command plugins/loom,
373
 
  did you mean log?') when getting help. In future we may trigger the hook 
374
 
  deliberately when no help topics match from any help index.
375
 
  (Robert Collins, #396261)
376
 
 
377
 
* ``bzr log -n0 -r..A.B.C`` should not crash but just consider the None
378
 
  revspec as representing the first revision of the branch.
379
 
  (Vincent Ladeuil, #519862)
380
 
 
381
 
* ``bzr remove-tree`` can now remove multiple working trees.
382
 
  (Jared Hance, Andrew Bennetts, #253137)
383
 
 
384
 
* ``bzr resolve --take-this`` and ``--take-other`` now correctly renames
385
 
  the kept file on content conflicts where one side deleted the file.
386
 
  (Vincent Ladeuil, #529968)
387
 
 
388
 
* ``bzr upgrade`` now creates the ``backup.bzr`` directory with the same
389
 
  permissions as ``.bzr`` directory on a POSIX OS.
390
 
  (Parth Malwankar, #262450)
391
 
 
392
 
* ``bzr upgrade`` now names backup directory as ``backup.bzr.~N~`` instead
393
 
  of ``backup.bzr``. This directory is ignored by bzr commands such as
394
 
  ``add``.
395
 
  (Parth Malwankar, #335033, #300001)
396
 
 
397
 
* Cope with non-utf8 characters inside ``.bzrignore``.
398
 
  (Jason Spashett, #183504)
399
 
 
400
 
* Correctly interpret "451 Rename/move failure: Directory not empty" from
401
 
  ftp servers while trying to take a lock.
402
 
  (Martin Pool, #528722)
403
 
 
404
 
* DirStateRevisionTree.kind() was returning wrong result when 'kind'
405
 
  changes occured between the workingtree and one of its parents.
406
 
  (Vincent Ladeuil, #535547)
407
 
 
408
 
* Fix ``log`` to better check ancestors even if merged revisions are involved.
409
 
  (Vincent Ladeuil, #476293)
410
 
 
411
 
* Loading a plugin from a given path with ``BZR_PLUGINS_AT`` doesn't depend
412
 
  on os.lisdir() order and is now reliable.
413
 
  (Vincent Ladeuil, #552922).
414
 
 
415
 
* Many IO operations that returned ``EINTR`` were retried even if it
416
 
  wasn't safe to do so via careless use of ``until_no_eintr``.  Bazaar now
417
 
  only retries operations that are safe to retry, and in some cases has
418
 
  switched to operations that can be retried (e.g. ``sock.send`` rather than
419
 
  ``sock.sendall``).
420
 
  (Andrew Bennetts, Martin <gzlist@googlemail.com>, #496813)
421
 
 
422
 
* Path conflicts now support --take-this and --take-other even when a
423
 
  deletion is involved.
424
 
  (Vincent Ladeuil, #531967)
425
 
 
426
 
* Network transfer amounts and rates are now displayed in SI units according
427
 
  to the Ubuntu Units Policy <https://wiki.ubuntu.com/UnitsPolicy>.
428
 
  (Gordon Tyler, #514399)
429
 
 
430
 
* Support kind markers for socket and fifo filesystem objects. This
431
 
  prevents ``bzr status --short`` from crashing when those files are
432
 
  present.  (John Arbash Meinel, #303275)
433
 
 
434
 
* ``bzr mkdir DIR`` will not create DIR unless DIR's parent is a versioned
435
 
   directory. (Parth Malwankar, #138600)
436
 
 
437
 
* SSH child processes will now ignore SIGQUIT on nix systems so breaking into
438
 
  the debugger won't kill the session.
439
 
  (Martin <gzlist@googlemail.com>, #162502)
440
 
 
441
 
* Tolerate patches with leading noise in ``bzr-handle-patch``.
442
 
  (Toshio Kuratomi, Martin Pool, #502076)
443
 
 
444
 
* ``update -r`` now supports updating to revisions that are not on
445
 
  mainline (i.e. it supports dotted revisions).
446
 
  (Parth Malwankar, #517800)
447
 
 
448
 
* Use first apparent author not committer in GNU Changelog format.
449
 
  (Martin von Gagern, #513322)
450
 
 
451
 
API Changes
452
 
***********
453
 
 
454
 
* ``bzrlib.merge_directive._BaseMergeDirective`` has been renamed to 
455
 
  ``bzrlib.merge_directive.BaseMergeDirective`` and is now public.
456
 
  (Jelmer Vernooij)
457
 
 
458
 
* ``BranchFormat.initialize`` now takes an optional ``name`` of the colocated 
459
 
  branch to create. (Jelmer Vernooij)
460
 
 
461
 
* ``BzrDir.get_branch_transport`` now takes an optional ``name`` of the 
462
 
  colocated branch to open. (Jelmer Vernooij)
463
 
 
464
 
* Added ``bzrlib.osutils.set_signal_handler``, a convenience function that
465
 
  can set a signal handler and call ``signal.siginterrupt(signum,
466
 
  False)`` for it, if the platform and Python version supports it.
467
 
  (Andrew Bennetts, #496813)
468
 
 
469
 
* New ``bzrlib.initialize`` is recommended for programs using bzrlib to 
470
 
  run when starting up; it sets up several things that previously needed
471
 
  to be done separately.
472
 
  (Martin Pool, #507710)
473
 
 
474
 
* Exporters now support a ``per_file_timestamps`` argument to write out the 
475
 
  timestamp of the commit in which a file revision was introduced.
476
 
  (Jelmer Vernooij)
477
 
 
478
 
* New method ``BzrDir.list_branches()`` that returns a sequence of branches 
479
 
  present in a control directory. (Jelmer Vernooij)
480
 
 
481
 
* New method ``Repository.get_known_graph_ancestry()``. 
482
 
  (Jelmer Vernooij, #495502)
483
 
 
484
 
* New transport methods ``readlink``, ``symlink`` and ``hardlink``.
485
 
  (Neil Santos)
486
 
 
487
 
* Remove unused ``CommandFailed`` exception.
488
 
  (Martin Pool)
489
 
 
490
 
Internals
491
 
*********
492
 
 
493
 
* ``bzrlib.branchbuilder.BranchBuilder.build_snapshot`` now accepts a
494
 
  ``message_callback`` in the same way that commit does. (Robert Collins)
495
 
 
496
 
* ``bzrlib.builtins.Commit.run`` raises ``bzrlib.errors.BoundBranchOutOfDate``
497
 
  rather than ``bzrlib.errors.BzrCommandError`` when the bound branch is out
498
 
  of date. (Gary van der Merwe)
499
 
 
500
 
* ``bzrlib.commands.run_bzr`` is more extensible: callers can supply the
501
 
  functions to load or disable plugins if they wish to use a different
502
 
  plugin mechanism; the --help, --version and no-command name code paths
503
 
  now use the generic pluggable command lookup infrastructure.
504
 
  (Robert Collins)
505
 
 
506
 
* ``bzrlib.errors.BoundBranchOutOfDate`` has a new field ``extra_help``
507
 
  which can be set to add extra help to the error. (Gary van der Merwe)
508
 
 
509
 
* New method ``Branch.automatic_tag_name`` that can be used to find the
510
 
  tag name for a particular revision automatically. (Jelmer Vernooij)
511
 
 
512
 
* The methods ``BzrDir.create_branch()``, ``BzrDir.destroy_branch()`` and 
513
 
  ``BzrDir.open_branch()`` now take an optional ``name`` argument. 
514
 
  (Jelmer Vernooij)
515
 
 
516
 
Testing
517
 
*******
518
 
 
519
 
* bzr now has a ``.testr.conf`` file in its source tree configured
520
 
  appropriately for running tests with Testrepository
521
 
  (``https://launchpad.net/testrepository``). (Robert Collins)
522
 
 
523
 
* Documentation about testing with ``subunit`` has been tweaked.
524
 
  (Robert Collins)
525
 
 
526
 
* Known failures has been added for resolve --take-other on ParentLoop
527
 
  conflicts. This reflects bug #537956 without fixing it.
528
 
  (Vincent Ladeuil)
529
 
 
530
 
* New ``bzrlib.tests.test_import_tariff`` can make assertions about what
531
 
  Python modules are loaded, to guard against startup time or library
532
 
  dependency regressions.
533
 
  (Martin Pool)
534
 
 
535
 
* PQM will now run with subunit output. To analyze a PQM error use
536
 
  tribunal, or cat log | subunit-filter | subunit2pyunit. (Robert Collins)
537
 
 
538
 
* Stop sending apport crash files to ``.cache`` in the directory from
539
 
  which ``bzr selftest`` was run.  (Martin Pool, #422350)
540
 
 
541
 
* Tests no longer fail if "close() called during concurrent
542
 
  operation on the same file object" occurs when closing the log file
543
 
  (which can happen if a thread tries to write to the log file at the
544
 
  wrong moment).  An warning will be written to ``stderr`` when this
545
 
  happens, and another warning will be written if the log file could not
546
 
  be closed after retrying 100 times.  (Andrew Bennetts, #531746)
547
 
 
548
 
bzr 2.1.2
549
 
#########
550
 
 
551
 
:2.1.2: NOT RELEASED YET
552
 
 
553
 
Bug Fixes
554
 
*********
555
 
 
556
 
* ``bzr switch`` does not die if a ConfigurableFileMerger is used.
557
 
  (Aaron Bentley, #559436)
558
 
 
559
 
* Fixed ``AssertionError`` when accessing smart servers running Bazaar
560
 
  versions before 1.6.
561
 
  (Andrew Bennetts, #528041)
562
 
 
563
 
* Reset ``siginterrupt`` flag to False every time we handle a signal
564
 
  installed with ``set_signal_handler(..., restart_syscall=True)`` (from
565
 
  ``bzrlib.osutils``.  Reduces the likelihood of "Interrupted System Call"
566
 
  errors after two window resizes.
567
 
  (Andrew Bennetts)
568
 
 
569
 
Internals
570
 
*********
571
 
 
572
 
* ``_remember_remote_is_before`` no longer raises AssertionError when
573
 
  suboptimal network behaviour is noticed; instead it just mutters to the
574
 
  log file (and warns the user if they have set the ``hpss`` debug flag).
575
 
  This was causing unnecessary aborts for performance bugs that are minor
576
 
  at worst.
577
 
  (Andrew Bennetts, #528041)
578
 
 
579
 
 
580
 
bzr 2.1.1
581
 
#########
582
 
 
583
 
:2.1.1: 2010-03-24
584
 
 
585
 
This is a small bugfix release.  Upgrading is recommended for anyone
586
 
running 2.1.0 or earlier.
587
 
 
588
 
Bug Fixes
589
 
*********
590
 
 
591
 
* Allow syscalls to automatically restart when ``TextUIFactory``'s
592
 
  SIGWINCH handler is invoked, avoiding ``EINTR`` errors during blocking
593
 
  IO, which are often poorly handled by Python's libraries and parts of
594
 
  bzrlib.  (Andrew Bennetts, #496813)
595
 
 
596
 
* Avoid ``malloc(0)`` in ``patiencediff``, which is non-portable.
597
 
  (Martin Pool, #331095)
598
 
 
599
 
* Fix plugin packaging on Windows. (Ian Clatworthy, #524162)
600
 
 
601
 
* Fix stub sftp test server to call os.getcwdu().
602
 
  (Vincent Ladeuil, #526221, #526353)
603
 
 
604
 
* Fixed CHM generation by moving the NEWS section template into
605
 
  a separate file. (Ian Clatworthy, #524184)
606
 
 
607
 
* Merge correctly when this_tree is not a WorkingTree.  (Aaron Bentley)
608
 
 
609
 
* Register SIGWINCH handler only when creating a ``TextUIFactory``; avoids
610
 
  problems importing bzrlib from a non-main thread.
611
 
  (Elliot Murphy, #521989)
612
 
 
613
 
* Repositories accessed via a smart server now reject being stacked on a
614
 
  repository in an incompatible format, as is the case when accessing them
615
 
  via other methods.  This was causing fetches from those repositories via
616
 
  a smart server (e.g. using ``bzr branch``) to receive invalid data.
617
 
  (Andrew Bennetts, #562380)
618
 
 
619
 
* Standardize the error handling when creating a new ``StaticTuple``
620
 
  (problems will raise TypeError). (Matt Nordhoff, #457979)
621
 
 
622
 
* Warn if pyrex is too old to compile the new ``SimpleSet`` and
623
 
  ``StaticTuple`` extensions, rather than having the build fail randomly.
624
 
  (John Arbash Meinel, #449776)
625
 
 
626
 
Documentation
627
 
*************
628
 
 
629
 
* Added a link to the Desktop Guide. (Ian Clatworthy)
630
 
 
631
 
* Added What's New in Bazaar 2.1 document. (Ian Clatworthy)
632
 
 
633
 
* Drop Google Analytics from the core docs as they caused problems
634
 
  in the CHM files. (Ian Clatworthy, #502010)
635
 
 
636
 
API Changes
637
 
***********
638
 
 
639
 
* Added ``bzrlib.osutils.set_signal_handler``, a convenience function that
640
 
  can set a signal handler and call ``signal.siginterrupt(signum,
641
 
  False)`` for it, if the platform and Python version supports it.
642
 
  (Andrew Bennetts, #496813)
643
 
 
644
 
 
645
 
bzr 2.1.0
646
 
#########
647
 
 
648
 
:Codename: Strasbourg
649
 
:2.1.0: 2010-02-11
650
 
 
651
 
This release marks our second long-term-stable series. The Bazaar team
652
 
has decided that we will continue to make bugfix-only 2.0.x and 2.1.x
653
 
releases, along with 2.2 development releases. 
654
 
 
655
 
This is a fairly incremental update, focusing on polish and bugfixing.
656
 
There are no changes for supported disk formats. Key updates include
657
 
reduced memory consumption for many operations, a new per-file merge
658
 
hook, ignore patterns can now include '!' to exclude files, globbing
659
 
support for all commands on Windows, and support for addressing home
660
 
directories via ``bzr+ssh://host/~/`` syntax.
661
 
 
662
 
Users are encouraged to upgrade from the 2.0 stable series.
663
 
 
664
 
Bug Fixes
665
 
*********
666
 
 
667
 
* Don't require testtools to use sftp.
668
 
  (Vincent Ladeuil, #516183)
669
 
 
670
 
* Fix "AttributeError in Inter1and2Helper" during fetch.
671
 
  (Martin Pool, #513432)
672
 
 
673
 
* ``bzr update`` performs the two merges in a more logical order and will stop
674
 
  when it encounters conflicts.  
675
 
  (Gerard Krol, #113809)
676
 
 
677
 
* Give a better error message when doing ``bzr bind`` in an already bound
678
 
  branch.  (Neil Martinsen-Burrell, #513063)
679
 
 
680
 
* Ignore ``KeyError`` from ``remove_index`` during ``_abort_write_group``
681
 
  in a pack repository, which can happen harmlessly if the abort occurs during
682
 
  finishing the write group.  Also use ``bzrlib.cleanup`` so that any
683
 
  other errors that occur while aborting the individual packs won't be
684
 
  hidden by secondary failures when removing the corresponding indices.
685
 
  (Andrew Bennetts, #423015)
686
 
 
687
 
* Set the mtime of files exported to a directory by ``bzr export`` all to
688
 
  the same value to avoid confusing ``make`` and other date-based build
689
 
  systems. (Robert Collins, #515631)
690
 
 
691
 
Improvements
692
 
************
693
 
 
694
 
* Fetching into experimental formats will now print a warning. (Jelmer
695
 
  Vernooij)
696
 
 
697
 
API Changes
698
 
***********
699
 
 
700
 
* ``Repository.deserialise_inventory`` has been renamed to 
701
 
  ``Repository._deserialise_inventory`` to indicate it is private.
702
 
  (Jelmer Vernooij)
703
 
 
704
 
* ``Repository.get_inventory_xml`` has been renamed to 
705
 
  ``Repository._get_inventory_xml`` to indicate it is private. 
706
 
  (Jelmer Vernooij)
707
 
 
708
 
* ``Repository.serialise_inventory`` has been renamed to 
709
 
  ``Repository._serialise_inventory`` to indicate it is private.
710
 
 
711
 
* Using the ``bzrlib.chk_map`` module from within multiple threads at the
712
 
  same time was broken due to race conditions with a module level page
713
 
  cache. This shows up as a KeyError in the ``bzrlib.lru_cache`` code with
714
 
  ``bzrlib.chk_map`` in the backtrace, and can be triggered without using
715
 
  the same high level objects such as ``bzrlib.repository.Repository``
716
 
  from different threads. chk_map now uses a thread local cache which may
717
 
  increase memory pressure on processes using threads.
718
 
  (Robert Collins, John Arbash Meinel, #514090)
719
 
 
720
 
* The new ``merge_file_content`` should now be ok with tests to avoid
721
 
  regressions.
722
 
  (Vincent Ladeuil, #515597)
723
 
 
724
 
Internals
725
 
*********
726
 
 
727
 
* Use ``bzrlib.cleanup`` rather than less robust ``try``/``finally``
728
 
  blocks in several places in ``bzrlib.merge``.  This avoids masking prior
729
 
  errors when errors like ``ImmortalPendingDeletion`` occur during cleanup
730
 
  in ``do_merge``.
731
 
  (Andrew Bennetts, #517275)
732
 
 
733
 
API Changes
734
 
***********
735
 
 
736
 
* The ``remove_index`` method of
737
 
  ``bzrlib.repofmt.pack_repo.AggregateIndex`` no longer takes a ``pack``
738
 
  argument.  This argument was always ignored.
739
 
  (Andrew Bennetts, #423015)
740
 
 
741
 
bzr 2.1.0rc2
742
 
############
743
 
 
744
 
:Codename: after the bubbles
745
 
:2.1.0rc2: 2010-01-29
746
 
 
747
 
This is a quick-turn-around to update a small issue with our new per-file
748
 
merge hook. We expect no major changes from this to the final 2.1.0.
749
 
 
750
 
API Changes
751
 
***********
752
 
 
753
 
* The new ``merge_file_content`` hook point has been altered to provide a
754
 
  better API where state for extensions can be stored rather than the
755
 
  too-simple function based approach. This fixes a performance regression
756
 
  where branch configuration would be parsed per-file during merge. As
757
 
  part of this the included news_merger has been refactored into a base
758
 
  helper class ``bzrlib.merge.ConfigurableFileMerger``.
759
 
  (Robert Collins, John Arbash Meinel, #513822)
760
 
 
761
 
 
762
 
bzr 2.1.0rc1
763
 
############
764
 
 
765
 
:Codename: the 'new' stable
766
 
:2.1.0rc1: 2009-01-21
767
 
 
768
 
This is the first stable release candidate for Bazaar's 2.1 series. From
769
 
this point onwards, the 2.1 series will be considered stable (as the 2.0
770
 
series) and only bugfixes are expected to be incorporated. The dozen or so
771
 
bugfixes in the 2.0.4 release are also included in this release (along
772
 
with more than 15 more bugfixes). Some of the interesting features are
773
 
support for per-file merge hooks, ``bzr unshelve --preview``, support
774
 
for using ! in ignore files to exclude files from being ignored, a small
775
 
memory leak was squashed, and many ``ObjectNotLocked`` errors were fixed.
776
 
This looks to be a very good start for a new stable series.
777
 
 
778
 
 
779
 
New Features
780
 
************
781
 
 
782
 
* Add bug information to log output when available.
783
 
  (Neil Martinsen-Burrell, Guillermo Gonzalez, #251729)
784
 
 
785
 
* Added ``merge_file_content`` hook point to ``Merger``, allowing plugins
786
 
  to register custom merge logic, e.g. to provide smarter merging for
787
 
  particular files.
788
 
 
789
 
* Bazaar now includes the ``news_merge`` plugin.  It is disabled by
790
 
  default, to enable it add a ``news_merge_files`` option to your
791
 
  configuration.  Consult ``bzr help news_merge`` for more information.
792
 
  (Andrew Bennetts)
793
 
  
794
 
* ``bzr branch`` now takes a ``--bind`` option. This lets you
795
 
  branch and bind all in one command. (Ian Clatworthy)
796
 
 
797
 
* ``bzr switch`` now takes a ``--revision`` option, to allow switching to
798
 
  a specific revision of a branch. (Daniel Watkins, #183559)
799
 
 
800
 
* ``bzr unshelve --preview`` can now be used to show how a patch on the
801
 
  shelf would be applied to the working tree.
802
 
  (Guilherme Salgado, #308122)
803
 
 
804
 
* ``bzr update`` now takes a ``--revision`` argument. This lets you
805
 
  change the revision of the working tree to any revision in the
806
 
  ancestry of the current or master branch. (Matthieu Moy, Mark Hammond,
807
 
  Martin Pool, #45719)
808
 
 
809
 
* ``-Dbytes`` can now be used to display the total number of bytes
810
 
  transferred for the current command. This information is always logged
811
 
  to ``.bzr.log`` for later inspection. (John Arbash Meinel)
812
 
 
813
 
* New ignore patterns.  Patterns prefixed with '!' are exceptions to 
814
 
  ignore patterns and take precedence over regular ignores.  Such 
815
 
  exceptions are used to specify files that should be versioned which 
816
 
  would otherwise be ignored.  Patterns prefixed with '!!' act as regular 
817
 
  ignore patterns, but have highest precedence, even over the '!' 
818
 
  exception patterns. (John Whitley, #428031)
819
 
 
820
 
* The ``supress_warnings`` configuration option has been introduced to disable
821
 
  various warnings (it currently only supports the ``format_deprecation``
822
 
  warning). The new option can be set in any of the following locations:
823
 
  ``bazaar.conf``, ``locations.conf`` and/or ``branch.conf``.
824
 
  (Ted Gould, Matthew Fuller, Vincent Ladeuil)
825
 
 
826
 
Bug Fixes
827
 
*********
828
 
 
829
 
* Always show a message if an OS error occurs while trying to run a
830
 
  user-specified commit message editor.
831
 
  (Martin Pool, #504842)
832
 
 
833
 
* ``bzr diff`` will now use the epoch when it is unable to determine 
834
 
  the timestamp of a file, if the revision it was introduced in is a
835
 
  ghost. (Jelmer Vernooij, #295611)
836
 
 
837
 
* ``bzr switch -b`` can now create branches that are located using directory
838
 
  services such as ``lp:``, even when the branch name doesn't contain a
839
 
  '/'.  (Neil Martinsen-Burrell, #495263)
840
 
 
841
 
* ``bzr unshelve`` has improved messages about what it is doing.
842
 
  (Neil Martinsen-Burrell, #496917)
843
 
 
844
 
* Concurrent autopacking is more resilient to already-renamed pack files.
845
 
  If we find that a file we are about to obsolete is already obsoleted, we
846
 
  do not try to rename it, and we leave the file in ``obsolete_packs``.
847
 
  The code is also fault tolerant if a file goes missing, assuming that
848
 
  another process already removed the file.
849
 
  (John Arbash Meinel, Gareth White, #507557)
850
 
 
851
 
* Fix "Too many concurrent requests" in reconcile when network connection
852
 
  fails.  (Andrew Bennetts, #503878)
853
 
 
854
 
* Fixed a side effect mutation of ``RemoteBzrDirFormat._network_name``
855
 
  that caused some tests to fail when run in a non-default order.
856
 
  Probably no user impact.  (Martin Pool, #504102)
857
 
 
858
 
* Fixed ``ObjectNotLocked`` error in ``bzr cat -rbranch:../foo FILE``.
859
 
  (Andrew Bennetts, #506274)
860
 
 
861
 
* FTP transports support Unicode paths by encoding/decoding them as utf8.
862
 
  (Vincent Ladeuil, #472161)
863
 
 
864
 
* Listen to the SIGWINCH signal to update the terminal width.
865
 
  (Vincent Ladeuil, #316357)
866
 
 
867
 
* Progress bars are now hidden when ``--quiet`` is given.
868
 
  (Martin Pool, #320035)
869
 
 
870
 
* ``SilentUIFactory`` now supports ``make_output_stream`` and discards
871
 
  whatever is written to it.  This un-breaks some plugin tests that
872
 
  depended on this behaviour.
873
 
  (Martin Pool, #499757)
874
 
 
875
 
* When operations update the working tree, all affected files should end
876
 
  up with the same mtime. (eg. when versioning a generated file, if you
877
 
  update the source and the generated file together, the generated file
878
 
  should appear up-to-date.)
879
 
  (John Arbash Meinel, Martin <gzlist>, #488724)
880
 
 
881
 
Improvements
882
 
************
883
 
 
884
 
* Added ``add_cleanup`` and ``cleanup_now`` to ``bzrlib.command.Command``.
885
 
  All the builtin commands now use ``add_cleanup`` rather than
886
 
  ``try``/``finally`` blocks where applicable as it is simpler and more
887
 
  robust.  (Andrew Bennetts)
888
 
 
889
 
* All except a small number of storage formats are now hidden, making
890
 
  the help for numerous commands far more digestible. (Ian Clatworthy)
891
 
 
892
 
* Attempts to open a shared repository as a branch (e.g. ``bzr branch
893
 
  path/to/repo``) will now include "location is a repository" as a hint in
894
 
  the error message.  (Brian de Alwis, Andrew Bennetts, #440952)
895
 
 
896
 
* Push will now inform the user when they are trying to push to a foreign 
897
 
  VCS for which roundtripping is not supported, and will suggest them to 
898
 
  use dpush. (Jelmer Vernooij)
899
 
 
900
 
* The version of bzr being run is now written to the log file.
901
 
  (__monty__, #257170)
902
 
 
903
 
* Transport network activity indicator is shown more of the time when
904
 
  Bazaar is doing network IO.
905
 
  (Martin Pool)
906
 
 
907
 
Documentation
908
 
*************
909
 
 
910
 
* Add documentation on creating merges with more than one parent.
911
 
  (Neil Martinsen-Burrell, #481526)
912
 
 
913
 
* Better explain the --uncommitted option of merge.
914
 
  (Neil Martinsen-Burrell, #505088)
915
 
 
916
 
* Improve discussion of pending merges in the documentation for
917
 
  ``revert``.  (Neil Martinsen-Burrell, #505093)
918
 
 
919
 
* Improved help for ``bzr send``. 
920
 
  (Martin Pool, Bojan Nikolic)
921
 
 
922
 
* There is a System Administrator's Guide in ``doc/en/admin-guide``,
923
 
  including discussions of installation, relevant plugins, security and 
924
 
  backup. (Neil Martinsen-Burrell)
925
 
 
926
 
* The ``conflicts`` help topic has been renamed to ``conflict-types``.
927
 
  (Ian Clatworthy)
928
 
 
929
 
* The User Reference is now presented as a series of topics.
930
 
  Many of the included topics have link and format tweaks applied.
931
 
  (Ian Clatworthy)
932
 
 
933
 
API Changes
934
 
***********
935
 
 
936
 
* Added ``cachedproperty`` decorator to ``bzrlib.decorators``.
937
 
  (Andrew Bennetts)
938
 
 
939
 
* Many test features were renamed from ``FooFeature`` to ``foo_feature``
940
 
  to be consistent with instances being lower case and classes being
941
 
  CamelCase. For the features that were more likely to be used, we added a
942
 
  deprecation thunk, but not all. (John Arbash Meinel)
943
 
 
944
 
* Merger classes (such as ``Merge3Merger``) now expect a ``this_branch``
945
 
  parameter in their constructors, and provide ``this_branch`` as an
946
 
  attribute. (Andrew Bennetts)
947
 
  
948
 
* The Branch hooks pre_change_branch_tip no longer masks exceptions raised
949
 
  by plugins - the original exceptions are now preserved. (Robert Collins)
950
 
 
951
 
* The Transport ``Server.tearDown`` method is now renamed to
952
 
  ``stop_server`` and ``setUp`` to ``start_server`` for consistency with
953
 
  our normal naming pattern, and to avoid confusion with Python's
954
 
  ``TestCase.tearDown``.  (Martin Pool)
955
 
 
956
 
* ``WorkingTree.update`` implementations must now accept a ``revision``
957
 
  parameter.
958
 
 
959
 
Internals
960
 
*********
961
 
 
962
 
* Added ``BzrDir.open_branchV3`` smart server request, which can receive
963
 
  a string of details (such as "location is a repository") as part of a
964
 
  ``nobranch`` response.  (Andrew Bennetts, #440952)
965
 
  
966
 
* New helper osutils.UnicodeOrBytesToBytesWriter which encodes unicode
967
 
  objects but passes str objects straight through. This is used for
968
 
  selftest but may be useful for diff and other operations that generate
969
 
  mixed output. (Robert Collins)
970
 
 
971
 
* New exception ``NoRoundtrippingSupport``, for use by foreign branch 
972
 
  plugins. (Jelmer Vernooij)
973
 
 
974
 
Testing
975
 
*******
976
 
 
977
 
* ``bzrlib.tests.permute_for_extension`` is a helper that simplifies
978
 
  running all tests in the current module, once against a pure python
979
 
  implementation, and once against an extension (pyrex/C) implementation.
980
 
  It can be used to dramatically simplify the implementation of
981
 
  ``load_tests``.  (John Arbash Meinel)
982
 
 
983
 
* ``bzrlib.tests.TestCase`` now subclasses ``testtools.testcase.TestCase``.
984
 
  This permits features in testtools such as getUniqueInteger and
985
 
  getUniqueString to be used. Because of this, testtools version 0.9.2 or
986
 
  newer is now a dependency to run bzr selftest. Running with versions of
987
 
  testtools less than 0.9.2 will cause bzr to error while loading the test
988
 
  suite. (Robert Collins)
989
 
 
990
 
* Shell-like tests now support the command "mv" for moving files.  The
991
 
  syntax for ``mv file1 file2``, ``mv dir1 dir2`` and ``mv file dir`` is
992
 
  supported.  (Neil Martinsen-Burrell)
993
 
 
994
 
* The test progress bar no longer distinguishes tests that 'errored' from
995
 
  tests that 'failed' - they're all just failures.
996
 
  (Martin Pool)
997
 
 
998
 
bzr 2.0.6
999
 
#########
1000
 
 
1001
 
:2.0.6: NOT RELEASED YET
1002
 
 
1003
 
Bug Fixes
1004
 
*********
1005
 
 
1006
 
* Additional merges after an unrelated branch has been merged with its
1007
 
  history no longer crash when deleted files are involved.
1008
 
  (Vincent Ladeuil, John Arbash Meinel, #375898)
1009
 
 
1010
 
* ``bzr revert`` now only takes write lock on working tree, instead of on 
1011
 
  both working tree and branch.
1012
 
  (Danny van Heumen, #498409)
1013
 
 
1014
 
* ``bzr upgrade`` now creates the ``backup.bzr`` directory with the same
1015
 
  permissions as ``.bzr`` directory on a POSIX OS.
1016
 
  (Parth Malwankar, #262450)
1017
 
 
1018
 
* Repositories accessed via a smart server now reject being stacked on a
1019
 
  repository in an incompatible format, as is the case when accessing them
1020
 
  via other methods.  This was causing fetches from those repositories via
1021
 
  a smart server (e.g. using ``bzr branch``) to receive invalid data.
1022
 
  (Andrew Bennetts, #562380)
1023
 
 
1024
 
bzr 2.0.5
1025
 
#########
1026
 
 
1027
 
:2.0.5: 2010-03-23
1028
 
 
1029
 
This fifth release in our 2.0 series addresses several user-inconvenience
1030
 
bugs.  None are critical, but upgrading is recommended for all users on
1031
 
earlier 2.0 releases.
1032
 
 
1033
 
Bug Fixes
1034
 
*********
1035
 
 
1036
 
* Avoid ``malloc(0)`` in ``patiencediff``, which is non-portable.
1037
 
  (Martin Pool, #331095)
1038
 
 
1039
 
* Concurrent autopacking is more resilient to already-renamed pack files.
1040
 
  If we find that a file we are about to obsolete is already obsoleted, we
1041
 
  do not try to rename it, and we leave the file in ``obsolete_packs``.
1042
 
  The code is also fault tolerant if a file goes missing, assuming that
1043
 
  another process already removed the file.
1044
 
  (John Arbash Meinel, Gareth White, #507557)
1045
 
 
1046
 
* Cope with the lockdir ``held/info`` file being empty, which seems to
1047
 
  happen fairly often if the process is suddenly interrupted while taking
1048
 
  a lock.
1049
 
  (Martin Pool, #185103)
1050
 
 
1051
 
* Give the warning about potentially slow cross-format fetches much
1052
 
  earlier on in the fetch operation.  Don't show this message during
1053
 
  upgrades, and show the correct format indication for remote
1054
 
  repositories.
1055
 
  (Martin Pool, #456077, #515356, #513157)
1056
 
 
1057
 
* Handle renames correctly when there are files or directories that 
1058
 
  differ only in case.  (Chris Jones, Martin Pool, #368931)
1059
 
 
1060
 
* If ``bzr push --create-prefix`` triggers an unexpected ``NoSuchFile``
1061
 
  error, report that error rather than failing with an unhelpful
1062
 
  ``UnboundLocalError``.
1063
 
  (Andrew Bennetts, #423563)
1064
 
 
1065
 
* Running ``bzr`` command without any arguments now shows bzr
1066
 
  version number along with rest of the help text.
1067
 
  (Parth Malwankar, #369501)
1068
 
 
1069
 
* Use osutils.O_NOINHERIT for some files on win32 to avoid PermissionDenied
1070
 
  errors.
1071
 
  (Inada Naoki, #524560)
1072
 
 
1073
 
Documentation
1074
 
*************
1075
 
 
1076
 
* Added ``location-alias`` help topic.
1077
 
  (Andrew Bennetts, #337834)
1078
 
 
1079
 
* Fixed CHM generation by moving the NEWS section template into
1080
 
  a separate file. (Ian Clatworthy, #524184)
1081
 
 
1082
 
 
1083
 
bzr 2.0.4
1084
 
#########
1085
 
 
1086
 
:Codename: smooth sailing
1087
 
:2.0.4: 2010-01-21
1088
 
 
1089
 
The fourth bugfix-only release in the 2.0 series contains more than a
1090
 
dozen bugfixes relative to 2.0.3. The primary focus is on handling
1091
 
interruptions and concurrent operations more cleanly, there is also a fair
1092
 
improvement to ``bzr export`` when exporting a remote branch.
1093
 
 
1094
 
 
1095
 
Bug Fixes
1096
 
*********
1097
 
 
1098
 
* ``bzr annotate`` on another branch with ``-r branch:...`` no longer
1099
 
  fails with an ``ObjectNotLocked`` error.  (Andrew Bennetts, #496590)
1100
 
 
1101
 
* ``bzr export dir`` now requests all file content as a record stream,
1102
 
  rather than requsting the file content one file-at-a-time. This can make
1103
 
  exporting over the network significantly faster (54min => 9min in one
1104
 
  case). (John Arbash Meinel, #343218)
1105
 
 
1106
 
* ``bzr serve`` no longer slowly leaks memory. The compiled
1107
 
  ``bzrlib.bencode.Encoder()`` class was using ``__del__`` to cleanup and
1108
 
  free resources, and it should have been using ``__dealloc__``.
1109
 
  This will likely have an impact on any other process that is serving for
1110
 
  an extended period of time.  (John Arbash Meinel, #494406)
1111
 
 
1112
 
* Check for SIGINT (Ctrl-C) and other signals immediately if ``readdir``
1113
 
  returns ``EINTR`` by calling ``PyErr_CheckSignals``.  This affected the
1114
 
  optional ``_readdir_pyx`` extension.  (Andrew Bennetts, #495023)
1115
 
 
1116
 
* Concurrent autopacks will no longer lose a newly created pack file.
1117
 
  There was a race condition, where if the reload happened at the right
1118
 
  time, the second packer would forget the name of the newly added pack
1119
 
  file. (John Arbash Meinel, Gareth White, #507566)
1120
 
 
1121
 
* Give a clearer message if the lockdir disappears after being apparently
1122
 
  successfully taken.  (Martin Pool, #498378)
1123
 
 
1124
 
* Give a warning when fetching between repositories (local or remote) with
1125
 
  sufficiently different formats that the content will need to be
1126
 
  serialized (ie ``InterDifferingSerializer`` or ``inventory-deltas``), so
1127
 
  the user has a clue that upgrading could make it faster.
1128
 
  (Martin Pool, #456077)
1129
 
 
1130
 
* If we fail to open ``~/.bzr.log`` write a clear message to stderr rather
1131
 
  than using ``warning()``. The log file is opened before logging is set
1132
 
  up, and it leads to very confusing: 'no handlers for "bzr"' messages for
1133
 
  users, rather than something nicer.
1134
 
  (John Arbash Meinel, Barry Warsaw, #503886)
1135
 
 
1136
 
* Refuse to build with any Pyrex 0.9.4 release, as they have known bugs.
1137
 
  (Martin Pool, John Arbash Meinel, #449372)
1138
 
 
1139
 
* ``setup.py bdist_rpm`` now properly finds extra files needed for the
1140
 
  build. (there is still the distutils bug
1141
 
  http://bugs.python.org/issue644744) (Joe Julian, #175839)
1142
 
 
1143
 
* The 2a format wasn't properly restarting autopacks when something
1144
 
  changed underneath it (like another autopack). Now concurrent
1145
 
  autopackers will properly succeed. (John Arbash Meinel, #495000)
1146
 
 
1147
 
* ``TreeTransform`` can now handle when a delta says that the file id for
1148
 
  the tree root changes. Rather than trying to rename your working
1149
 
  directory, or failing early saying that you can't have multiple
1150
 
  tree roots. This also fixes revert, update, and pull when the root id
1151
 
  changes.  (John Arbash Meinel, #494269, #504390)
1152
 
 
1153
 
* ``_update_current_block`` no longer suppresses exceptions, so ^C at just
1154
 
  the right time will get propagated, rather than silently failing to move
1155
 
  the block pointer. (John Arbash Meinel, Gareth White, #495023)
1156
 
 
1157
 
Testing
1158
 
*******
1159
 
 
1160
 
* We have a new ``test_source`` that ensures all pyrex ``cdef`` functions
1161
 
  handle exceptions somehow. (Possibly by setting ``# cannot_raise``
1162
 
  rather than an ``except ?:`` clause.) This should help prevent bugs like
1163
 
  bug #495023. (John Arbash Meinel)
1164
 
 
1165
 
 
1166
 
bzr 2.1.0b4
1167
 
###########
1168
 
 
1169
 
:Codename: san francisco airport
1170
 
:2.1.0b4: 2009-12-14
1171
 
 
1172
 
The fourth beta release in the 2.1 series brings with it a significant
1173
 
number of bugfixes (~20). The test suite is once again (finally) "green"
1174
 
on Windows, and should remain that way for future releases. There are a
1175
 
few performance related updates (faster upgrade and log), and several UI
1176
 
tweaks. There has also been a significant number of tweaks to the runtime
1177
 
documentation. 2.1.0b4 include everything from the 2.0.3 release.
1178
 
 
1179
 
 
1180
 
Compatibility Breaks
1181
 
********************
1182
 
 
1183
 
* The BZR_SSH environmental variable may now be set to the path of a secure
1184
 
  shell client. If currently set to the value ``ssh`` it will now guess the
1185
 
  vendor of the program with that name, to restore the old behaviour that
1186
 
  indicated the SSH Corporation client use ``sshcorp`` instead as the magic
1187
 
  string. (Martin <gzlist@googlemail.com>, #176292)
1188
 
 
1189
 
New Features
1190
 
************
1191
 
 
1192
 
* ``bzr commit`` now has a ``--commit-time`` option.
1193
 
  (Alexander Sack, #459276)
1194
 
 
1195
 
* ``-Dhpss`` now increases logging done when run on the bzr server,
1196
 
  similarly to how it works on the client. (John Arbash Meinel)
1197
 
 
1198
 
* New option ``bzr unshelve --keep`` applies the changes and leaves them
1199
 
  on the shelf.  (Martin Pool, Oscar Fuentes, #492091)
1200
 
 
1201
 
* The ``BZR_COLUMNS`` envrionment variable can be set to force bzr to
1202
 
  respect a given terminal width. This can be useful when output is
1203
 
  redirected or in obscure cases where the default value is not
1204
 
  appropriate. Pagers can use it to get a better control of the line
1205
 
  lengths. 
1206
 
  (Vincent Ladeuil)
1207
 
 
1208
 
* The new command ``bzr lp-mirror`` will request that Launchpad update its
1209
 
  mirror of a local branch. This command will only function if launchpadlib
1210
 
  is installed.
1211
 
  (Jonathan Lange)
1212
 
 
1213
 
 
1214
 
Bug Fixes
1215
 
*********
1216
 
 
1217
 
* After renaming a file, the dirstate could accidentally reference
1218
 
  ``source\\path`` rather than ``source/path`` on Windows. This might be a
1219
 
  source of some dirstate-related failures. (John Arbash Meinel)
1220
 
 
1221
 
* ``bzr commit`` now detects commit messages that looks like file names
1222
 
  and issues a warning.
1223
 
  (Gioele Barabucci, #73073)
1224
 
 
1225
 
* ``bzr ignore /`` no longer causes an IndexError. (Gorden Tyler, #456036)
1226
 
 
1227
 
* ``bzr log -n0 -rN`` should not return revisions beyond its merged revisions.
1228
 
  (#325618, #484109, Marius Kruger)
1229
 
 
1230
 
* ``bzr merge --weave`` and ``--lca`` will now create ``.BASE`` files for
1231
 
  files with conflicts (similar to ``--merge3``). The contents of the file
1232
 
  is a synthesis of all bases used for the merge.
1233
 
  (John Arbash Meinel, #40412)
1234
 
 
1235
 
* ``bzr mv --quiet`` really is quiet now.  (Gordon Tyler, #271790)
1236
 
 
1237
 
* ``bzr serve`` is more clear about the risk of supplying --allow-writes.
1238
 
  (Robert Collins, #84659)
1239
 
 
1240
 
* ``bzr serve --quiet`` really is quiet now.  (Gordon Tyler, #252834)
1241
 
 
1242
 
* Fix bug with redirected URLs over authenticated HTTP.
1243
 
  (Glen Mailer, Neil Martinsen-Burrell, Vincent Ladeuil, #395714)
1244
 
 
1245
 
* Interactive merge doesn't leave branch locks behind.  (Aaron Bentley)
1246
 
 
1247
 
* Lots of bugfixes for the test suite on Windows. We should once again
1248
 
  have a test suite with no failures on Windows. (John Arbash Meinel)
1249
 
 
1250
 
* ``osutils.terminal_width()`` obeys the BZR_COLUMNS environment
1251
 
  variable but returns None if the terminal is not a tty (when output is
1252
 
  redirected for example). Also fixes its usage under OSes that doesn't
1253
 
  provide termios.TIOCGWINSZ. Make sure the corresponding tests runs on
1254
 
  windows too.
1255
 
  (Joke de Buhr, Vincent Ladeuil, #353370, #62539)
1256
 
  (John Arbash Meinel, Vincent Ladeuil, #492561)
1257
 
 
1258
 
* Terminate ssh subprocesses when no references to them remain, fixing
1259
 
  subprocess and file descriptor leaks.  (Andrew Bennetts, #426662)
1260
 
  
1261
 
* The ``--hardlink`` option of ``bzr branch`` and ``bzr checkout`` now
1262
 
  works for 2a format trees.  Only files unaffected by content filters
1263
 
  will be hardlinked.  (Andrew Bennetts, #408193)
1264
 
 
1265
 
* The new glob expansion on Windows would replace all ``\`` characters
1266
 
  with ``/`` even if it there wasn't a glob to expand, the arg was quoted,
1267
 
  etc. Now only change slashes if there is something being glob expanded.
1268
 
  (John Arbash Meinel, #485771)
1269
 
 
1270
 
* Use our faster ``KnownGraph.heads()`` functionality when computing the
1271
 
  new rich-root heads. This can cut a conversion time in half (mysql from
1272
 
  13.5h => 6.2h) (John Arbash Meinel, #487632)
1273
 
 
1274
 
* When launching a external diff tool via bzr diff --using, temporary files
1275
 
  are no longer created, rather, the path to the file in the working tree is
1276
 
  passed to the external diff tool. This allows the file to be edited if the
1277
 
  diff tool provides for this. (Gary van der Merwe, #490738)
1278
 
  
1279
 
* The launchpad-open command can now be used from a subdirectory of a
1280
 
  branch, not just from the root of the branch. 
1281
 
  (Neil Martinsen-Burrell, #489102)
1282
 
 
1283
 
 
1284
 
Improvements
1285
 
************
1286
 
 
1287
 
* ``bzr log`` is now faster. (Ian Clatworthy)
1288
 
 
1289
 
* ``bzr update`` provides feedback on which branch it is up to date with.
1290
 
  (Neil Martinsen-Burrell)
1291
 
 
1292
 
* ``bzr upgrade`` from pre-2a to 2a can be significantly faster (4x).
1293
 
  For details see the xml8 patch and heads() improvements.
1294
 
  (John Arbash Meinel)
1295
 
 
1296
 
* ``bzrlib.urlutils.local_path_from_url`` now accepts
1297
 
  'file://localhost/' as well as 'file:///' URLs on POSIX.  (Michael
1298
 
  Hudson)
1299
 
 
1300
 
* The progress bar now shows only a spinner and per-operation counts,
1301
 
  not an overall progress bar.  The previous bar was often not correlated
1302
 
  with real overall operation progress, either because the operations take
1303
 
  nonlinear time, or because at the start of the operation Bazaar couldn't
1304
 
  estimate how much work there was to do.  (Martin Pool)
1305
 
 
1306
 
Documentation
1307
 
*************
1308
 
 
1309
 
* Lots of documentation tweaks for inline help topics and command help
1310
 
  information.
1311
 
 
1312
 
API Changes
1313
 
***********
1314
 
 
1315
 
* ``bzrlib.textui`` (vestigial module) removed.  (Martin Pool)
1316
 
 
1317
 
* The Launchpad plugin now has a function ``login`` which will log in to
1318
 
  Launchpad with launchpadlib, and ``load_branch`` which will return the
1319
 
  Launchpad Branch object corresponding to a given Bazaar Branch object.
1320
 
  (Jonathan Lange)
1321
 
 
1322
 
Internals
1323
 
*********
1324
 
 
1325
 
* New test Feature: ``ModuleAvailableFeature``. It is designed to make it
1326
 
  easier to handle what tests you want to run based on what modules can be
1327
 
  imported. (Rather than lots of custom-implemented features that were
1328
 
  basically copy-and-pasted.) (John Arbash Meinel)
1329
 
 
1330
 
* ``osutils.timer_func()`` can be used to get either ``time.time()`` or
1331
 
  ``time.clock()`` when you want to do performance timing.
1332
 
  ``time.time()`` is limited to 15ms resolution on Windows, but
1333
 
  ``time.clock()`` gives CPU and not wall-clock time on other platforms.
1334
 
  (John Arbash Meinel)
1335
 
 
1336
 
* Several code paths that were calling ``Transport.get().read()`` have
1337
 
  been changed to the equalivent ``Transport.get_bytes()``. The main
1338
 
  difference is that the latter will explicitly call ``file.close()``,
1339
 
  rather than expecting the garbage collector to handle it. This helps
1340
 
  with some race conditions on Windows during the test suite and sftp
1341
 
  tests. (John Arbash Meinel)
1342
 
 
1343
 
Testing
1344
 
*******
1345
 
 
1346
 
* TestCaseWithMemoryTransport no longer sets $HOME and $BZR_HOME to
1347
 
  unicode strings. (Michael Hudson, #464174)
1348
 
 
1349
 
 
1350
 
bzr 2.0.3
1351
 
#########
1352
 
 
1353
 
:Codename: little italy
1354
 
:2.0.3: 2009-12-14
1355
 
 
1356
 
 
1357
 
The third stable release of Bazaar has a small handful of bugfixes. As
1358
 
expected, this has no internal or external compatibility changes versus
1359
 
2.0.2 (or 2.0.0).
1360
 
 
1361
 
Bug Fixes
1362
 
*********
1363
 
 
1364
 
* ``bzr push --use-existing-dir`` no longer crashes if the directory
1365
 
  exists but contains an invalid ``.bzr`` directory.
1366
 
  (Andrew Bennetts, #423563)
1367
 
 
1368
 
* Content filters are now applied correctly after pull, merge and switch.
1369
 
  (Ian Clatworthy, #385879)
1370
 
 
1371
 
* Fix a potential segfault in the groupcompress hash map handling code.
1372
 
  When inserting new entries, if the final hash bucket was empty, we could
1373
 
  end up trying to access if ``(last_entry+1)->ptr == NULL``.
1374
 
  (John Arbash Meinel, #490228)
1375
 
 
1376
 
* Improve "Binary files differ" hunk handling.  (Aaron Bentley, #436325)
1377
 
 
1378
 
 
1379
 
bzr 2.1.0b3
1380
 
###########
1381
 
 
1382
 
:Codename: after sprint recovery
1383
 
:2.1.0b3: 2009-11-16
1384
 
 
1385
 
This release was pushed up from its normal release cycle due to a
1386
 
regression in python 2.4 compatibility in 2.1.0b2.  Since this regression
1387
 
was caught before 2.1.0b2 was officially announced, the full changelog
1388
 
includes both 2.1.0b3 and 2.1.0b2 changes.
1389
 
 
1390
 
Highlights of 2.1.0b3 are: new globbing code for all commands on Windows,
1391
 
the test suite now conforms to python's trunk enhanced semantics (skip,
1392
 
etc.), and ``bzr info -v`` will now report the correct branch and repo
1393
 
formats for Remote objects.
1394
 
 
1395
 
 
1396
 
New Features
1397
 
************
1398
 
 
1399
 
* Users can define a shelve editor to provide shelf functionality at a
1400
 
  granularity finer than per-patch-hunk. (Aaron Bentley)
1401
 
 
1402
 
Bug Fixes
1403
 
*********
1404
 
 
1405
 
* Fix for shell completion and short options.  (Benoît PIERRE)
1406
 
 
1407
 
* Fix ``bzr --profile-imports`` with Python 2.6.  (Martin Pool)
1408
 
 
1409
 
* Hooks daughter classes should always call the base constructor.
1410
 
  (Alexander Belchenko, Vincent Ladeuil, #389648) 
1411
 
 
1412
 
* Improve "Binary files differ" hunk handling.  (Aaron Bentley, #436325)
1413
 
 
1414
 
* On Windows, do glob expansion at the command-line level (as is usually
1415
 
  done in bash, etc.) This means that *all* commands get glob expansion
1416
 
  (bzr status, bzr add, bzr mv, etc). It uses a custom command line
1417
 
  parser, which allows us to know if a given section was quoted. It means
1418
 
  you can now do ``bzr ignore "*.py"``.
1419
 
  (John Arbash Meinel, #425510, #426410, #194450)
1420
 
 
1421
 
* Sanitize commit messages that come in from the '-m' flag. We translate
1422
 
  '\r\n' => '\n' and a plain '\r' => '\n'. The storage layer doesn't
1423
 
  allow those because XML store silently translate it anyway. (The parser
1424
 
  auto-translates \r\n => \n in ways that are hard for us to catch.)
1425
 
 
1426
 
* Show correct branch and repository format descriptions in 
1427
 
  ``bzr info -v`` on a smart server location.  (Andrew Bennetts, #196080)
1428
 
 
1429
 
* The fix for bug #186920 accidentally broke compatibility with python
1430
 
  2.4.  (Vincent Ladeuil, #475585)
1431
 
 
1432
 
* Using ``Repository.get_commit_builder().record_iter_changes()`` now
1433
 
  correctly sets ``self.inv_sha1`` to a sha1 string and
1434
 
  ``self.new_inventory`` to an Inventory instance after calling
1435
 
  ``self.finish_inventory()``. (Previously it accidently set both values
1436
 
  as a tuple on ``self.inv_sha1``. This was missed because
1437
 
  ``repo.add_revision`` ignores the supplied inventory sha1 and recomputes
1438
 
  the sha1 from the repo directly. (John Arbash Meinel)
1439
 
 
1440
 
* Shelve command refuse to run if there is no real terminal.
1441
 
  (Alexander Belchenko)
1442
 
 
1443
 
* Avoid unnecessarily flushing of trace file; it's now unbuffered at the
1444
 
  Python level.  (Martin Pool)
1445
 
 
1446
 
Documentation
1447
 
*************
1448
 
 
1449
 
* Include Japanese translations for documentation (Inada Naoki)
1450
 
 
1451
 
* New API ``ui_factory.make_output_stream`` to be used for sending bulk
1452
 
  (rather than user-interaction) data to stdout.  This automatically
1453
 
  coordinates with progress bars or other terminal activity, and can be
1454
 
  overridden by GUIs.
1455
 
  (Martin Pool, 493944)
1456
 
 
1457
 
Internals
1458
 
*********
1459
 
 
1460
 
* Some of the core groupcompress functionality now releases the GIL before
1461
 
  operation. Similar to how zlib and bz2 operate without the GIL in the
1462
 
  core compression and decompression routines. (John Arbash Meinel)
1463
 
 
1464
 
Testing
1465
 
*******
1466
 
 
1467
 
* -Dhpssvfs will now trigger on ``RemoteBzrDir._ensure_real``, providing
1468
 
  more debugging of VFS access triggers. (Robert Collins)
1469
 
 
1470
 
* KnownFailure is now signalled to ``ExtendedTestResult`` using the same
1471
 
  method that Python 2.7 uses - ``addExpectedFailure``. (Robert Collins)
1472
 
 
1473
 
* ``--parallel=fork`` is now compatible with --subunit.
1474
 
  (Robert Collins, Vincent Ladeuil, #419776)
1475
 
 
1476
 
* Reporting of failures shows test ids not descriptions and thus shows
1477
 
  parameterised tests correctly. (Robert Collins)
1478
 
 
1479
 
* TestNotApplicable is now handled within the TestCase.run method rather
1480
 
  than being looked for within ``ExtendedTestResult.addError``. This
1481
 
  provides better handling with other ``TestResult`` objects, degrading to
1482
 
  sucess rather than error. (Robert Collins)
1483
 
 
1484
 
* The private method ``_testConcluded`` on ``ExtendedTestResult`` has been
1485
 
  removed - it was empty and unused. (Robert Collins)
1486
 
 
1487
 
* UnavailableFeature is now handled within the TestCase.run method rather
1488
 
  than being looked for within addError. If the Result object does not
1489
 
  have an addNotSupported method, addSkip is attempted instead, and
1490
 
  failing that addSuccess. (Robert Collins)
1491
 
 
1492
 
* When a TestResult does not have an addSkip method, skipped tests are now
1493
 
  reported as successful tests, rather than as errors. This change is
1494
 
  to make it possible to get a clean test run with a less capable
1495
 
  TestResult. (Robert Collins)
1496
 
 
1497
 
 
1498
 
 
1499
 
bzr 2.1.0b2
1500
 
###########
1501
 
 
1502
 
:Codename: a load off my mind
1503
 
:2.1.0b2: 2009-11-02
1504
 
 
1505
 
This is our second feature-filled release since 2.0, pushing us down the
1506
 
path to a 2.1.0. Once again, all bugfixes in 2.0.2 are present in 2.1.0b2.
1507
 
 
1508
 
Key highlights in this release are: improved handling of
1509
 
failures-during-cleanup for commit, fixing a long-standing bug with
1510
 
``bzr+http`` and shared repositories, all ``lp:`` urls to be resolved
1511
 
behind proxies, and a new StaticTuple datatype, allowing us to reduce
1512
 
memory consumption (50%) and garbage collector overhead (40% faster) for
1513
 
many operations.
1514
 
 
1515
 
* A new ``--concurrency`` option has been added as well as an associated
1516
 
  BZR_CONCURRENCY environment variable to specify the number of
1517
 
  processes that can be run concurrently when running ``bzr selftest``. The
1518
 
  command-line option overrides the environment variable if both are
1519
 
  specified. If none is specified. the number of processes is obtained
1520
 
  from the OS as before.  (Matt Nordhoff, Vincent Ladeuil)
1521
 
 
1522
 
Bug Fixes
1523
 
*********
1524
 
 
1525
 
* ``bzr+http`` servers no longer give spurious jail break errors when
1526
 
  serving branches inside a shared repository.  (Andrew Bennetts, #348308)
1527
 
 
1528
 
* Errors during commit are handled more robustly so that knock-on errors
1529
 
  are less likely to occur, and will not obscure the original error if
1530
 
  they do occur.  This fixes some causes of ``TooManyConcurrentRequests``
1531
 
  and similar errors.  (Andrew Bennetts, #429747, #243391)
1532
 
 
1533
 
* Launchpad urls can now be resolved from behind proxies.
1534
 
  (Gordon Tyler, Vincent Ladeuil, #186920)
1535
 
 
1536
 
* Reduce the strictness for StaticTuple, instead add a debug flag
1537
 
  ``-Dstatic_tuple`` which will change apis to be strict and raise errors.
1538
 
  This way, most users won't see failures, but developers can improve
1539
 
  internals. (John Arbash Meinel, #471193)
1540
 
 
1541
 
* TreeTransform.adjust_path updates the limbo paths of descendants of adjusted
1542
 
  files.  (Aaron Bentley)
1543
 
 
1544
 
* Unicode paths are now handled correctly and consistently by the smart
1545
 
  server.  (Andrew Bennetts, Michael Hudson, #458762)
1546
 
 
1547
 
Improvements
1548
 
************
1549
 
 
1550
 
* When reading index files, we now use a ``StaticTuple`` rather than a
1551
 
  plain ``tuple`` object. This generally gives a 20% decrease in peak
1552
 
  memory, and can give a performance boost up to 40% on large projects.
1553
 
  (John Arbash Meinel)
1554
 
 
1555
 
* Peak memory under certain operations has been reduced significantly.
1556
 
  (eg, 'bzr branch launchpad standalone' is cut in half)
1557
 
  (John Arbash Meinel)
1558
 
 
1559
 
Documentation
1560
 
*************
1561
 
 
1562
 
* Filtered views user documentation upgraded to refer to format 2a
1563
 
  instead of pre-2.0 formats. (Ian Clatworthy)
1564
 
 
1565
 
API Changes
1566
 
***********
1567
 
 
1568
 
* Remove deprecated ``CLIUIFactory``.  (Martin Pool)
1569
 
 
1570
 
* ``UIFactory`` now has new ``show_error``, ``show_message`` and
1571
 
  ``show_warning`` methods, which can be hooked by non-text UIs.  
1572
 
  (Martin Pool)
1573
 
 
1574
 
Internals
1575
 
*********
1576
 
 
1577
 
* Added ``bzrlib._simple_set_pyx``. This is a hybrid between a Set and a
1578
 
  Dict (it only holds keys, but you can lookup the object located at a
1579
 
  given key). It has significantly reduced memory consumption versus the
1580
 
  builtin objects (1/2 the size of Set, 1/3rd the size of Dict). This is
1581
 
  used as the interning structure for StaticTuple objects.
1582
 
  (John Arbash Meinel)
1583
 
 
1584
 
* ``bzrlib._static_tuple_c.StaticTuple`` is now available and used by
1585
 
  the btree index parser and the chk map parser. This class functions
1586
 
  similarly to ``tuple`` objects. However, it can only point to a limited
1587
 
  collection of types.  (Currently StaticTuple, str, unicode, None, bool,
1588
 
  int, long, float, but not subclasses).  This allows us to remove it from
1589
 
  the garbage collector (it cannot be in a cycle), it also allows us to
1590
 
  intern the objects. In testing, this can reduce peak memory by 20-40%,
1591
 
  and significantly improve performance by removing objects from being
1592
 
  inspected by the garbage collector.  (John Arbash Meinel)
1593
 
 
1594
 
* ``GroupCompressBlock._ensure_content()`` will now release the
1595
 
  ``zlib.decompressobj()`` when the first request is for all of the
1596
 
  content. (Previously it would only be released if you made a request for
1597
 
  part of the content, and then all of it later.) This turns out to be a
1598
 
  significant memory savings, as a ``zstream`` carries around approx 260kB
1599
 
  of internal state and buffers. (For branching bzr.dev this drops peak
1600
 
  memory from 382MB => 345MB.) (John Arbash Meinel)
1601
 
 
1602
 
* When streaming content between ``2a`` format repositories, we now clear
1603
 
  caches from earlier versioned files. (So 'revisions' is cleared when we
1604
 
  start reading 'inventories', etc.) This can have a significant impact on
1605
 
  peak memory for initial copies (~200MB). (John Arbash Meinel)
1606
 
 
1607
 
 
1608
 
bzr 2.0.2
1609
 
#########
1610
 
 
1611
 
:Codename: after the scare
1612
 
:2.0.2: 2009-11-02
1613
 
 
1614
 
The second in our "let's keep the stable bugfixes flowing" series. As
1615
 
expected this has a few (~9) bugfixes relative to 2.0.1, and no major api
1616
 
changes or features.
1617
 
 
1618
 
Bug Fixes
1619
 
*********
1620
 
 
1621
 
* Avoid "NoneType has no attribute st_mode" error when files disappear
1622
 
  from a directory while it's being read.  (Martin Pool, #446033)
1623
 
 
1624
 
* Content filters are now applied correctly after revert.
1625
 
  (Ian Clatworthy)
1626
 
 
1627
 
* Diff parsing handles "Binary files differ" hunks.  (Aaron Bentley, #436325)
1628
 
 
1629
 
* Fetching from stacked pre-2a repository via a smart server no longer
1630
 
  fails intermittently with "second push failed to complete".
1631
 
  (Andrew Bennetts, #437626)
1632
 
 
1633
 
* Fix typos left after test_selftest refactoring.
1634
 
  (Vincent Ladeuil, Matt Nordhoff, #461149)
1635
 
 
1636
 
* Fixed ``ObjectNotLocked`` errors during ``bzr log -r NNN somefile``.
1637
 
  (Andrew Bennetts, #445171)
1638
 
  
1639
 
* PreviewTree file names are not limited by the encoding of the temp
1640
 
  directory's filesystem. (Aaron Bentley, #436794)
1641
 
 
1642
 
Improvements
1643
 
************
1644
 
 
1645
 
* ``bzr log`` now read-locks branches exactly once, so makes better use of
1646
 
  data caches.  (Andrew Bennetts)
1647
 
 
1648
 
Documentation
1649
 
*************
1650
 
 
1651
 
* Filtered views user documentation upgraded to refer to format 2a
1652
 
  instead of pre-2.0 formats. (Ian Clatworthy)
1653
 
 
1654
 
 
1655
 
bzr 2.1.0b1
1656
 
###########
1657
 
 
1658
 
:Codename: While the cat is away
1659
 
:2.1.0b1: 2009-10-14
1660
 
 
1661
 
This is the first development release in the new split "stable" and
1662
 
"development" series. As such, the release is a snapshot of bzr.dev
1663
 
without creating a release candidate first. This release includes a
1664
 
fair amount of internal changes, with deprecated code being removed,
1665
 
and several new feature developments. People looking for a stable code
1666
 
base with only bugfixes should focus on the 2.0.1 release. All bugfixes
1667
 
present in 2.0.1 are present in 2.1.0b1.
1668
 
 
1669
 
Highlights include support for ``bzr+ssh://host/~/homedir`` style urls,
1670
 
finer control over the plugin search path via extended BZR_PLUGIN_PATH
1671
 
syntax, visible warnings when extension modules fail to load, and improved
1672
 
error handling during unlocking.
1673
 
 
1674
 
 
1675
 
New Features
1676
 
************
1677
 
 
1678
 
* Bazaar can now send mail through Apple OS X Mail.app. 
1679
 
  (Brian de Alwis)
1680
 
 
1681
 
* ``bzr+ssh`` and ``bzr`` paths can now be relative to home directories
1682
 
  specified in the URL.  Paths starting with a path segment of ``~`` are
1683
 
  relative to the home directory of the user running the server, and paths
1684
 
  starting with ``~user`` are relative to the home directory of the named
1685
 
  user.  For example, for a user "bob" with a home directory of
1686
 
  ``/home/bob``, these URLs are all equivalent:
1687
 
 
1688
 
  * ``bzr+ssh://bob@host/~/repo``
1689
 
  * ``bzr+ssh://bob@host/~bob/repo``
1690
 
  * ``bzr+ssh://bob@host/home/bob/repo``
1691
 
 
1692
 
  If ``bzr serve`` was invoked with a ``--directory`` argument, then no
1693
 
  home directories outside that directory will be accessible via this
1694
 
  method.
1695
 
 
1696
 
  This is a feature of ``bzr serve``, so pre-2.1 clients will
1697
 
  automatically benefit from this feature when ``bzr`` on the server is
1698
 
  upgraded.  (Andrew Bennetts, #109143)
1699
 
 
1700
 
* Extensions can now be compiled if either Cython or Pyrex is available.
1701
 
  Currently Pyrex is preferred, but that may change in the future.
1702
 
  (Arkanes)
1703
 
 
1704
 
* Give more control on BZR_PLUGIN_PATH by providing a way to refer to or
1705
 
  disable the user, site and core plugin directories.
1706
 
  (Vincent Ladeuil, #412930, #316192, #145612)
1707
 
 
1708
 
Bug Fixes
1709
 
*********
1710
 
 
1711
 
* Bazaar's native protocol code now correctly handles EINTR, which most
1712
 
  noticeably occurs if you break in to the debugger while connected to a
1713
 
  bzr+ssh server.  You can now can continue from the debugger (by typing
1714
 
  'c') and the process continues.  However, note that pressing C-\ in the
1715
 
  shell may still kill the SSH process, which is bug 162509, so you must
1716
 
  sent a signal to the bzr process specifically, for example by typing
1717
 
  ``kill -QUIT PID`` in another shell.  (Martin Pool, #341535)
1718
 
 
1719
 
* ``bzr add`` in a tree that has files with ``\r`` or ``\n`` in the
1720
 
  filename will issue a warning and skip over those files.
1721
 
  (Robert Collins, #3918)
1722
 
 
1723
 
* ``bzr dpush`` now aborts if uncommitted changes (including pending merges)
1724
 
  are present in the working tree. The configuration option ``dpush_strict``
1725
 
  can be used to set the default for this behavior.
1726
 
  (Vincent Ladeuil, #438158)
1727
 
 
1728
 
* ``bzr merge`` and ``bzr remove-tree`` now requires --force if pending
1729
 
  merges are present in the working tree.
1730
 
  (Vincent Ladeuil, #426344)
1731
 
 
1732
 
* Clearer message when Bazaar runs out of memory, instead of a ``MemoryError``
1733
 
  traceback.  (Martin Pool, #109115)
1734
 
 
1735
 
* Don't give a warning on Windows when failing to import ``_readdir_pyx``
1736
 
  as it is never built. (John Arbash Meinel, #430645)
1737
 
 
1738
 
* Don't restrict the command name used to run the test suite.
1739
 
  (Vincent Ladeuil, #419950)
1740
 
 
1741
 
* ftp transports were built differently when the kerberos python module was
1742
 
  present leading to obscure failures related to ASCII/BINARY modes.
1743
 
  (Vincent Ladeuil, #443041)
1744
 
 
1745
 
* Network streams now decode adjacent records of the same type into a
1746
 
  single stream, reducing layering churn. (Robert Collins)
1747
 
 
1748
 
* PreviewTree behaves correctly when get_file_mtime is invoked on an unmodified
1749
 
  file. (Aaron Bentley, #251532)
1750
 
 
1751
 
* Registry objects should not use iteritems() when asked to use items().
1752
 
  (Vincent Ladeuil, #430510)
1753
 
 
1754
 
* Weave based repositories couldn't be cloned when committers were using
1755
 
  domains or user ids embedding '.sig'. Now they can.
1756
 
  (Matthew Fuller, Vincent Ladeuil, #430868)
1757
 
 
1758
 
Improvements
1759
 
************
1760
 
 
1761
 
* Revision specifiers can now be given in a more DWIM form, without
1762
 
  needing explicit prefixes for specifiers like tags or revision id's.
1763
 
  See ``bzr help revisionspec`` for full details.  (Matthew Fuller)
1764
 
 
1765
 
* Bazaar gives a warning before exiting, and writes into ``.bzr.log``, if 
1766
 
  compiled extensions can't be loaded.  This typically indicates a
1767
 
  packaging or installation problem.  In this case Bazaar will keep
1768
 
  running using pure-Python versions, but this may be substantially
1769
 
  slower.  The warning can be disabled by setting
1770
 
  ``ignore_missing_extensions = True`` in ``bazaar.conf``.
1771
 
  See also <https://answers.launchpad.net/bzr/+faq/703>.
1772
 
  (Martin Pool, #406113, #430529)
1773
 
 
1774
 
* Secondary errors that occur during Branch.unlock and Repository.unlock
1775
 
  no longer obscure the original error.  These methods now use a new
1776
 
  decorator, ``only_raises``.  This fixes many causes of
1777
 
  ``TooManyConcurrentRequests`` and similar errors.
1778
 
  (Andrew Bennetts, #429747)
1779
 
 
1780
 
Documentation
1781
 
*************
1782
 
 
1783
 
* Describe the new shell-like test feature. (Vincent Ladeuil)
1784
 
 
1785
 
* Help on hooks no longer says 'Not deprecated' for hooks that are
1786
 
  currently supported. (Ian Clatworthy, #422415)
1787
 
 
1788
 
API Changes
1789
 
***********
1790
 
 
1791
 
* ``bzrlib.user_encoding`` has been removed; use
1792
 
  ``bzrlib.osutils.get_user_encoding`` instead.  (Martin Pool)
1793
 
 
1794
 
* ``bzrlib.tests`` now uses ``stopTestRun`` for its ``TestResult``
1795
 
  subclasses - the same as python's unittest module. (Robert Collins)
1796
 
  
1797
 
* ``diff._get_trees_to_diff`` has been renamed to 
1798
 
  ``diff.get_trees_and_branches_to_diff``. It is now a public API, and it 
1799
 
  returns the old and new branches. (Gary van der Merwe)
1800
 
 
1801
 
* ``bzrlib.trace.log_error``, ``error`` and ``info`` have been deprecated.
1802
 
  (Martin Pool)
1803
 
 
1804
 
* ``MutableTree.has_changes()`` does not require a tree parameter anymore. It
1805
 
  now defaults to comparing to the basis tree. It now checks for pending
1806
 
  merges too.  ``Merger.check_basis`` has been deprecated and replaced by the
1807
 
  corresponding has_changes() calls. ``Merge.compare_basis``,
1808
 
  ``Merger.file_revisions`` and ``Merger.ensure_revision_trees`` have also
1809
 
  been deprecated.
1810
 
  (Vincent Ladeuil, #440631)
1811
 
 
1812
 
* ``ProgressTask.note`` is deprecated.
1813
 
  (Martin Pool)
1814
 
 
1815
 
Internals
1816
 
*********
1817
 
 
1818
 
* Added ``-Drelock`` debug flag.  It will ``note`` a message every time a
1819
 
  repository or branch object is unlocked then relocked the same way.
1820
 
  (Andrew Bennetts)
1821
 
  
1822
 
* ``BTreeLeafParser.extract_key`` has been tweaked slightly to reduce
1823
 
  mallocs while parsing the index (approx 3=>1 mallocs per key read).
1824
 
  This results in a 10% speedup while reading an index.
1825
 
  (John Arbash Meinel)
1826
 
 
1827
 
* The ``bzrlib.lsprof`` module has a new class ``BzrProfiler`` which makes
1828
 
  profiling in some situations like callbacks and generators easier.
1829
 
  (Robert Collins)
1830
 
 
1831
 
Testing
1832
 
*******
1833
 
 
1834
 
* Passing ``--lsprof-tests -v`` to bzr selftest will cause lsprof output to
1835
 
  be output for every test. Note that this is very verbose! (Robert Collins)
1836
 
 
1837
 
* Setting ``BZR_TEST_PDB=1`` when running selftest will cause a pdb
1838
 
  post_mortem to be triggered when a test failure occurs. (Robert Collins)
1839
 
 
1840
 
* Shell-like tests can now be written. Code in ``bzrlib/tests/script.py`` ,
1841
 
  documentation in ``developers/testing.txt`` for details.
1842
 
  (Vincent Ladeuil)
1843
 
 
1844
 
* Some tests could end up with the same id, that was dormant for
1845
 
  a long time.
1846
 
  (Vincent Ladeuil, #442980)
1847
 
 
1848
 
* Stop showing the number of tests due to missing features in the test
1849
 
  progress bar.  (Martin Pool)
1850
 
 
1851
 
* Test parameterisation now does a shallow copy, not a deep copy of the test
1852
 
  to be parameterised. This is not expected to break external use of test
1853
 
  parameterisation, and is substantially faster. (Robert Collins)
1854
 
 
1855
 
* Tests that try to open a bzr dir on an arbitrary transport will now
1856
 
  fail unless they have explicitly permitted the transport via
1857
 
  ``self.permit_url``. The standard test factories such as ``self.get_url``
1858
 
  will permit the urls they provide automatically, so only exceptional
1859
 
  tests should need to do this. (Robert Collins)
1860
 
 
1861
 
* The break-in test no longer cares about clean shutdown of the child,
1862
 
  instead it is happy if the debugger starts up. (Robert  Collins)
1863
 
 
1864
 
* The full test suite is expected to pass when the C extensions are not
1865
 
  present. (Vincent Ladeuil, #430749)
1866
 
 
1867
 
 
1868
 
bzr 2.0.1
1869
 
#########
1870
 
 
1871
 
:Codename: Stability First
1872
 
:2.0.1: 2009-10-14
1873
 
 
1874
 
The first of our new ongoing bugfix-only stable releases has arrived. It
1875
 
includes a collection of 12 bugfixes applied to bzr 2.0.0, but does not
1876
 
include any of the feature development in the 2.1.0 series.
1877
 
 
 
5
2.0 series (not released)
 
6
#########################
 
7
 
 
8
Compatibility Breaks
 
9
********************
 
10
 
 
11
New Features
 
12
************
1878
13
 
1879
14
Bug Fixes
1880
15
*********
1887
22
  ``keyboard-interactive`` auth but not ``password`` auth when using
1888
23
  Paramiko.   (Andrew Bennetts, #433846)
1889
24
 
1890
 
* Fixed fetches from a stacked branch on a smart server that were failing
1891
 
  with some combinations of remote and local formats.  This was causing
1892
 
  "unknown object type identifier 60" errors.  (Andrew Bennetts, #427736)
1893
 
 
1894
 
* Fixed ``ObjectNotLocked`` errors when doing some log and diff operations
1895
 
  on branches via a smart server.  (Andrew Bennetts, #389413)
1896
 
 
1897
 
* Handle things like ``bzr add foo`` and ``bzr rm foo`` when the tree is
1898
 
  at the root of a drive. ``osutils._cicp_canonical_relpath`` always
1899
 
  assumed that ``abspath()`` returned a path that did not have a trailing
1900
 
  ``/``, but that is not true when working at the root of the filesystem.
1901
 
  (John Arbash Meinel, Jason Spashett, #322807)
1902
 
 
1903
 
* Hide deprecation warnings for 'final' releases for python2.6.
1904
 
  (John Arbash Meinel, #440062)
 
25
Improvements
 
26
************
 
27
 
 
28
Documentation
 
29
*************
 
30
 
 
31
API Changes
 
32
***********
 
33
 
 
34
Internals
 
35
*********
 
36
 
 
37
Testing
 
38
*******
 
39
 
 
40
bzr 2.0.1
 
41
##########
 
42
 
 
43
Bug Fixes
 
44
*********
1905
45
 
1906
46
* Improve the time for ``bzr log DIR`` for 2a format repositories.
1907
47
  We had been using the same code path as for <2a formats, which required
1912
52
  object when doing a merge, and there is limbo, or pending-deletions
1913
53
  directory.  (Gary van der Merwe, #427773)
1914
54
 
1915
 
* Occasional IndexError on renamed files have been fixed. Operations that
1916
 
  set a full inventory in the working tree will now go via the
1917
 
  apply_inventory_delta code path which is simpler and easier to
1918
 
  understand than dirstates set_state_from_inventory method. This may
1919
 
  have a small performance impact on operations built on _write_inventory,
1920
 
  but such operations are already doing full tree scans, so no radical
1921
 
  performance change should be observed. (Robert Collins, #403322)
1922
 
 
1923
55
* Retrieving file text or mtime from a _PreviewTree has good performance when
1924
56
  there are many changes.  (Aaron Bentley)
1925
57
 
1926
 
* The CHK index pages now use an unlimited cache size. With a limited
1927
 
  cache and a large project, the random access of chk pages could cause us
1928
 
  to download the entire cix file many times.
1929
 
  (John Arbash Meinel, #402623)
1930
 
 
1931
 
* When a file kind becomes unversionable after being added, a sensible
1932
 
  error will be shown instead of a traceback. (Robert Collins, #438569)
1933
 
 
1934
 
Documentation
1935
 
*************
1936
 
 
1937
 
* Improved README. (Ian Clatworthy)
1938
 
 
1939
 
* Improved upgrade documentation for Launchpad branches.
1940
 
  (Barry Warsaw)
1941
 
 
1942
58
 
1943
59
bzr 2.0.0
1944
60
#########
1968
84
  to "land in 2.0.0". (Changes how bzrlib._format_version_tuple() handles
1969
85
  micro = 0.) (John Arbash Meinel)
1970
86
 
1971
 
 
1972
87
bzr 2.0.0rc2
1973
88
############
1974
89
 
2025
140
  ghosts in its mainline.  (Evaluating None as a tuple is bad.)
2026
141
  (John Arbash Meinel, #419241)
2027
142
 
 
143
* Fix a segmentation fault when computing the ``merge_sort`` of a graph
 
144
  that has a ghost in the mainline ancestry.
 
145
  (John Arbash Meinel, #419241)
 
146
 
2028
147
* ``groupcompress`` sort order is now more stable, rather than relying on
2029
148
  ``topo_sort`` ordering. The implementation is now
2030
149
  ``KnownGraph.gc_sort``. (John Arbash Meinel)
2092
211
Bug Fixes
2093
212
*********
2094
213
 
2095
 
* Further tweaks to handling of ``bzr add`` messages about ignored files.
2096
 
  (Jason Spashett, #76616)
2097
 
 
2098
214
* Fetches were being requested in 'groupcompress' order, but weren't
2099
215
  recombining the groups. Thus they would 'fragment' to get the correct
2100
216
  order, but not 'recombine' to actually benefit from it. Until we get
2140
256
* ``bzr shelve`` and ``bzr unshelve`` now work on windows.
2141
257
  (Robert Collins, #305006)
2142
258
 
2143
 
* Commit of specific files no longer prevents using the iter_changes
 
259
* Commit of specific files no longer prevents using the the iter_changes
2144
260
  codepath. On 2a repositories, commit of specific files should now be as
2145
261
  fast, or slightly faster, than a full commit. (Robert Collins)
2146
262
 
2164
280
  classes changed to manage lock lifetime of the trees they open in a way
2165
281
  consistent with reader-exclusive locks. (Robert Collins, #305006)
2166
282
 
 
283
Internals
 
284
*********
 
285
 
2167
286
Testing
2168
287
*******
2169
288
 
2210
329
  a tree with content filtering where the size of the canonical form
2211
330
  cannot be cheaply determined.  (Martin Pool)
2212
331
 
2213
 
* When manually creating transport servers in test cases, a new helper
2214
 
  ``TestCase.start_server`` that registers a cleanup and starts the server
2215
 
  should be used. (Robert Collins)
2216
332
 
2217
333
bzr 1.18
2218
334
########
2550
666
  ``countTestsCases``. (Robert Collins)
2551
667
 
2552
668
 
2553
 
bzr 1.17.1 (unreleased)
2554
 
#######################
2555
 
 
2556
 
Bug Fixes
2557
 
*********
2558
 
 
2559
 
* The optional ``_knit_load_data_pyx`` C extension was never being
2560
 
  imported.  This caused significant slowdowns when reading data from
2561
 
  knit format repositories.  (Andrew Bennetts, #405653)
2562
 
  
2563
 
 
2564
669
bzr 1.17
2565
670
########
2566
671
:Codename: so-late-its-brunch
2909
1014
************
2910
1015
 
2911
1016
* A new repository format ``2a`` has been added.  This is a beta release
2912
 
  of the brisbane-core (aka group-compress) project.  This format now
 
1017
  of the the brisbane-core (aka group-compress) project.  This format now
2913
1018
  suitable for wider testing by advanced users willing to deal with some
2914
1019
  bugs.  We would appreciate test reports, either positive or negative.
2915
1020
  Format 2a is substantially smaller and faster for many operations on
3061
1166
Testing
3062
1167
*******
3063
1168
 
3064
 
* ``make check`` no longer repeats the test run in ``LANG=C``.
3065
 
  (Martin Pool, #386180)
3066
 
 
3067
1169
* The number of cores is now correctly detected on OSX. (John Szakmeister)
3068
1170
 
3069
1171
* The number of cores is also detected on Solaris and win32. (Vincent Ladeuil)
3638
1740
 
3639
1741
* Added ``bzrlib.inventory_delta`` module.  This will be used for
3640
1742
  serializing and deserializing inventory deltas for more efficient
3641
 
  streaming on the network.  (Robert Collins, Andrew Bennetts)
 
1743
  streaming on the the network.  (Robert Collins, Andrew Bennetts)
3642
1744
 
3643
1745
* ``Branch._get_config`` has been added, which splits out access to the
3644
1746
  specific config file from the branch. This is used to let RemoteBranch
3833
1935
* Multiple authors for a commit can now be recorded by using the "--author"
3834
1936
  option multiple times. (James Westby, #185772)
3835
1937
 
3836
 
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernooij)
 
1938
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernoij)
3837
1939
 
3838
1940
* New command ``bzr launchpad-open`` opens a Launchpad web page for that
3839
1941
  branch in your web browser, as long as the branch is on Launchpad at all.
6362
4464
  exception. (Andrew Bennetts)
6363
4465
 
6364
4466
* New ``--debugflag``/``-E`` option to ``bzr selftest`` for setting
6365
 
  options for debugging tests, these are complementary to the -D
 
4467
  options for debugging tests, these are complementary to the the -D
6366
4468
  options.  The ``-Dselftest_debug`` global option has been replaced by the
6367
4469
  ``-E=allow_debug`` option for selftest. (Andrew Bennetts)
6368
4470
 
7117
5219
  checkouts.  (Aaron Bentley, #182040)
7118
5220
 
7119
5221
* Stop polluting /tmp when running selftest.
7120
 
  (Vincent Ladeuil, #123363)
 
5222
  (Vincent Ladeuil, #123623)
7121
5223
 
7122
5224
* Switch from NFKC => NFC for normalization checks. NFC allows a few
7123
5225
  more characters which should be considered valid.
12559
10661
* Storage of local versions: init, add, remove, rm, info, log,
12560
10662
  diff, status, etc.
12561
10663
 
12562
 
 
12563
10664
..
12564
 
   vim: tw=74 ft=rst ff=unix encoding=utf-8
 
10665
   vim: tw=74 ft=rst ff=unix