~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to NEWS

  • Committer: Andrew Bennetts
  • Date: 2009-10-26 06:44:40 UTC
  • mfrom: (4634.77.9 2.0)
  • mto: This revision was merged to the branch mainline in revision 4770.
  • Revision ID: andrew.bennetts@canonical.com-20091026064440-06u7tpg7l6sjkh8h
Merge lp:bzr/2.0 into lp:bzr.

Show diffs side-by-side

added added

removed removed

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