/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: Martin
  • Date: 2009-11-28 00:48:03 UTC
  • mto: This revision was merged to the branch mainline in revision 4853.
  • Revision ID: gzlist@googlemail.com-20091128004803-nirz54wazyj0waf8
MergeDirective.from_lines claims to want an iterable but currently requires a list, rewrite so it really wants an iterable

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
 
  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)
 
8
 
 
9
bzr 2.1.0b3 (not released yet)
 
10
##############################
 
11
 
 
12
:Codename:
 
13
:2.1.0b3: ???
 
14
 
 
15
Compatibility Breaks
 
16
********************
 
17
 
 
18
New Features
 
19
************
 
20
 
 
21
Bug Fixes
 
22
*********
1408
23
 
1409
24
* Hooks daughter classes should always call the base constructor.
1410
25
  (Alexander Belchenko, Vincent Ladeuil, #389648) 
1411
26
 
1412
 
* Improve "Binary files differ" hunk handling.  (Aaron Bentley, #436325)
1413
 
 
1414
27
* On Windows, do glob expansion at the command-line level (as is usually
1415
28
  done in bash, etc.) This means that *all* commands get glob expansion
1416
29
  (bzr status, bzr add, bzr mv, etc). It uses a custom command line
1423
36
  allow those because XML store silently translate it anyway. (The parser
1424
37
  auto-translates \r\n => \n in ways that are hard for us to catch.)
1425
38
 
1426
 
* Show correct branch and repository format descriptions in 
1427
 
  ``bzr info -v`` on a smart server location.  (Andrew Bennetts, #196080)
1428
 
 
1429
39
* The fix for bug #186920 accidentally broke compatibility with python
1430
40
  2.4.  (Vincent Ladeuil, #475585)
1431
41
 
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)
 
42
 
 
43
Improvements
 
44
************
1445
45
 
1446
46
Documentation
1447
47
*************
1448
48
 
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)
 
49
API Changes
 
50
***********
1456
51
 
1457
52
Internals
1458
53
*********
1459
54
 
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
55
Testing
1465
56
*******
1466
57
 
1473
64
* ``--parallel=fork`` is now compatible with --subunit.
1474
65
  (Robert Collins, Vincent Ladeuil, #419776)
1475
66
 
1476
 
* Reporting of failures shows test ids not descriptions and thus shows
1477
 
  parameterised tests correctly. (Robert Collins)
1478
 
 
1479
67
* TestNotApplicable is now handled within the TestCase.run method rather
1480
68
  than being looked for within ``ExtendedTestResult.addError``. This
1481
69
  provides better handling with other ``TestResult`` objects, degrading to
1496
84
 
1497
85
 
1498
86
 
 
87
bzr 2.0.3 (not released yet)
 
88
############################
 
89
 
 
90
:Codename: template
 
91
:2.0.3: ???
 
92
 
 
93
Compatibility Breaks
 
94
********************
 
95
 
 
96
New Features
 
97
************
 
98
 
 
99
Bug Fixes
 
100
*********
 
101
 
 
102
Improvements
 
103
************
 
104
 
 
105
Documentation
 
106
*************
 
107
 
 
108
API Changes
 
109
***********
 
110
 
 
111
Internals
 
112
*********
 
113
 
 
114
Testing
 
115
*******
 
116
 
 
117
 
1499
118
bzr 2.1.0b2
1500
119
###########
1501
120
 
1512
131
memory consumption (50%) and garbage collector overhead (40% faster) for
1513
132
many operations.
1514
133
 
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
134
Bug Fixes
1523
135
*********
1524
136
 
3833
2445
* Multiple authors for a commit can now be recorded by using the "--author"
3834
2446
  option multiple times. (James Westby, #185772)
3835
2447
 
3836
 
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernooij)
 
2448
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernoij)
3837
2449
 
3838
2450
* New command ``bzr launchpad-open`` opens a Launchpad web page for that
3839
2451
  branch in your web browser, as long as the branch is on Launchpad at all.
12560
11172
  diff, status, etc.
12561
11173
 
12562
11174
 
 
11175
bzr ?.?.? (not released yet)
 
11176
############################
 
11177
 
 
11178
:Codename: template
 
11179
:2.0.2: ???
 
11180
 
 
11181
Compatibility Breaks
 
11182
********************
 
11183
 
 
11184
New Features
 
11185
************
 
11186
 
 
11187
Bug Fixes
 
11188
*********
 
11189
 
 
11190
Improvements
 
11191
************
 
11192
 
 
11193
Documentation
 
11194
*************
 
11195
 
 
11196
API Changes
 
11197
***********
 
11198
 
 
11199
Internals
 
11200
*********
 
11201
 
 
11202
Testing
 
11203
*******
 
11204
 
 
11205
 
 
11206
 
12563
11207
..
12564
 
   vim: tw=74 ft=rst ff=unix encoding=utf-8
 
11208
   vim: tw=74 ft=rst ff=unix