~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to NEWS

  • Committer: John Arbash Meinel
  • Date: 2010-02-17 17:11:16 UTC
  • mfrom: (4797.2.17 2.1)
  • mto: (4797.2.18 2.1)
  • mto: This revision was merged to the branch mainline in revision 5055.
  • Revision ID: john@arbash-meinel.com-20100217171116-h7t9223ystbnx5h8
merge bzr.2.1 in preparation for NEWS entry.

Show diffs side-by-side

added added

removed removed

Lines of Context:
6
6
   :depth: 1
7
7
 
8
8
 
9
 
bzr 2.1.0b2 (not released yet)
10
 
##############################
 
9
bzr 2.1.1
 
10
#########
 
11
 
 
12
:2.1.1: not released yet
 
13
 
 
14
Bug Fixes
 
15
*********
 
16
 
 
17
* Register SIGWINCH handler only when creating a ``TextUIFactory``; avoids
 
18
  problems importing bzrlib from a non-main thread.
 
19
  (Elliot Murphy, #521989)
 
20
 
 
21
 
 
22
bzr 2.1.0
 
23
#########
 
24
 
 
25
:Codename: Strasbourg
 
26
:2.1.0: 2010-02-11
 
27
 
 
28
This release marks our second long-term-stable series. The Bazaar team
 
29
has decided that we will continue to make bugfix-only 2.0.x and 2.1.x
 
30
releases, along with 2.2 development releases. 
 
31
 
 
32
This is a fairly incremental update, focusing on polish and bugfixing.
 
33
There are no changes for supported disk formats. Key updates include
 
34
reduced memory consumption for many operations, a new per-file merge
 
35
hook, ignore patterns can now include '!' to exclude files, globbing
 
36
support for all commands on Windows, and support for addressing home
 
37
directories via ``bzr+ssh://host/~/`` syntax.
 
38
 
 
39
Users are encouraged to upgrade from the 2.0 stable series.
 
40
 
 
41
Bug Fixes
 
42
*********
 
43
 
 
44
* Don't require testtools to use sftp.
 
45
  (Vincent Ladeuil, #516183)
 
46
 
 
47
* Fix "AttributeError in Inter1and2Helper" during fetch.
 
48
  (Martin Pool, #513432)
 
49
 
 
50
* Ignore ``KeyError`` from ``remove_index`` during ``_abort_write_group``
 
51
  in a pack repository, which can happen harmlessly if the abort occurs during
 
52
  finishing the write group.  Also use ``bzrlib.cleanup`` so that any
 
53
  other errors that occur while aborting the individual packs won't be
 
54
  hidden by secondary failures when removing the corresponding indices.
 
55
  (Andrew Bennetts, #423015)
 
56
  
 
57
* Using the ``bzrlib.chk_map`` module from within multiple threads at the
 
58
  same time was broken due to race conditions with a module level page
 
59
  cache. This shows up as a KeyError in the ``bzrlib.lru_cache`` code with
 
60
  ``bzrlib.chk_map`` in the backtrace, and can be triggered without using
 
61
  the same high level objects such as ``bzrlib.repository.Repository``
 
62
  from different threads. chk_map now uses a thread local cache which may
 
63
  increase memory pressure on processes using threads.
 
64
  (Robert Collins, John Arbash Meinel, #514090)
 
65
 
 
66
* The new ``merge_file_content`` should now be ok with tests to avoid
 
67
  regressions.
 
68
  (Vincent Ladeuil, #515597)
 
69
  
 
70
Internals
 
71
*********
 
72
 
 
73
* Use ``bzrlib.cleanup`` rather than less robust ``try``/``finally``
 
74
  blocks in several places in ``bzrlib.merge``.  This avoids masking prior
 
75
  errors when errors like ``ImmortalPendingDeletion`` occur during cleanup
 
76
  in ``do_merge``.
 
77
  (Andrew Bennetts, #517275)
 
78
 
 
79
API Changes
 
80
***********
 
81
 
 
82
* The ``remove_index`` method of
 
83
  ``bzrlib.repofmt.pack_repo.AggregateIndex`` no longer takes a ``pack``
 
84
  argument.  This argument was always ignored.
 
85
  (Andrew Bennetts, #423015)
 
86
 
 
87
bzr 2.1.0rc2
 
88
############
 
89
 
 
90
:Codename: after the bubbles
 
91
:2.1.0rc2: 2010-01-29
 
92
 
 
93
This is a quick-turn-around to update a small issue with our new per-file
 
94
merge hook. We expect no major changes from this to the final 2.1.0.
 
95
 
 
96
API Changes
 
97
***********
 
98
 
 
99
* The new ``merge_file_content`` hook point has been altered to provide a
 
100
  better API where state for extensions can be stored rather than the
 
101
  too-simple function based approach. This fixes a performance regression
 
102
  where branch configuration would be parsed per-file during merge. As
 
103
  part of this the included news_merger has been refactored into a base
 
104
  helper class ``bzrlib.merge.ConfigurableFileMerger``.
 
105
  (Robert Collins, John Arbash Meinel, #513822)
 
106
 
 
107
 
 
108
bzr 2.1.0rc1
 
109
############
 
110
 
 
111
:Codename: the 'new' stable
 
112
:2.1.0rc1: 2009-01-21
 
113
 
 
114
This is the first stable release candidate for Bazaar's 2.1 series. From
 
115
this point onwards, the 2.1 series will be considered stable (as the 2.0
 
116
series) and only bugfixes are expected to be incorporated. The dozen or so
 
117
bugfixes in the 2.0.4 release are also included in this release (along
 
118
with more than 15 more bugfixes). Some of the interesting features are
 
119
support for per-file merge hooks, ``bzr unshelve --preview``, support
 
120
for using ! in ignore files to exclude files from being ignored, a small
 
121
memory leak was squashed, and many ``ObjectNotLocked`` errors were fixed.
 
122
This looks to be a very good start for a new stable series.
 
123
 
 
124
 
 
125
New Features
 
126
************
 
127
 
 
128
* Add bug information to log output when available.
 
129
  (Neil Martinsen-Burrell, Guillermo Gonzalez, #251729)
 
130
 
 
131
* Added ``merge_file_content`` hook point to ``Merger``, allowing plugins
 
132
  to register custom merge logic, e.g. to provide smarter merging for
 
133
  particular files.
 
134
 
 
135
* Bazaar now includes the ``news_merge`` plugin.  It is disabled by
 
136
  default, to enable it add a ``news_merge_files`` option to your
 
137
  configuration.  Consult ``bzr help news_merge`` for more information.
 
138
  (Andrew Bennetts)
 
139
  
 
140
* ``bzr branch`` now takes a ``--bind`` option. This lets you
 
141
  branch and bind all in one command. (Ian Clatworthy)
 
142
 
 
143
* ``bzr switch`` now takes a ``--revision`` option, to allow switching to
 
144
  a specific revision of a branch. (Daniel Watkins, #183559)
 
145
 
 
146
* ``bzr unshelve --preview`` can now be used to show how a patch on the
 
147
  shelf would be applied to the working tree.
 
148
  (Guilherme Salgado, #308122)
 
149
 
 
150
* ``bzr update`` now takes a ``--revision`` argument. This lets you
 
151
  change the revision of the working tree to any revision in the
 
152
  ancestry of the current or master branch. (Matthieu Moy, Mark Hammond,
 
153
  Martin Pool, #45719)
 
154
 
 
155
* ``-Dbytes`` can now be used to display the total number of bytes
 
156
  transferred for the current command. This information is always logged
 
157
  to ``.bzr.log`` for later inspection. (John Arbash Meinel)
 
158
 
 
159
* New ignore patterns.  Patterns prefixed with '!' are exceptions to 
 
160
  ignore patterns and take precedence over regular ignores.  Such 
 
161
  exceptions are used to specify files that should be versioned which 
 
162
  would otherwise be ignored.  Patterns prefixed with '!!' act as regular 
 
163
  ignore patterns, but have highest precedence, even over the '!' 
 
164
  exception patterns. (John Whitley, #428031)
 
165
 
 
166
* The ``supress_warnings`` configuration option has been introduced to disable
 
167
  various warnings (it currently only supports the ``format_deprecation``
 
168
  warning). The new option can be set in any of the following locations:
 
169
  ``bazaar.conf``, ``locations.conf`` and/or ``branch.conf``.
 
170
  (Ted Gould, Matthew Fuller, Vincent Ladeuil)
 
171
 
 
172
Bug Fixes
 
173
*********
 
174
 
 
175
* Always show a message if an OS error occurs while trying to run a
 
176
  user-specified commit message editor.
 
177
  (Martin Pool, #504842)
 
178
 
 
179
* ``bzr diff`` will now use the epoch when it is unable to determine 
 
180
  the timestamp of a file, if the revision it was introduced in is a
 
181
  ghost. (Jelmer Vernooij, #295611)
 
182
 
 
183
* ``bzr switch -b`` can now create branches that are located using directory
 
184
  services such as ``lp:``, even when the branch name doesn't contain a
 
185
  '/'.  (Neil Martinsen-Burrell, #495263)
 
186
 
 
187
* ``bzr unshelve`` has improved messages about what it is doing.
 
188
  (Neil Martinsen-Burrell, #496917)
 
189
 
 
190
* Concurrent autopacking is more resilient to already-renamed pack files.
 
191
  If we find that a file we are about to obsolete is already obsoleted, we
 
192
  do not try to rename it, and we leave the file in ``obsolete_packs``.
 
193
  The code is also fault tolerant if a file goes missing, assuming that
 
194
  another process already removed the file.
 
195
  (John Arbash Meinel, Gareth White, #507557)
 
196
 
 
197
* Fix "Too many concurrent requests" in reconcile when network connection
 
198
  fails.  (Andrew Bennetts, #503878)
 
199
 
 
200
* Fixed a side effect mutation of ``RemoteBzrDirFormat._network_name``
 
201
  that caused some tests to fail when run in a non-default order.
 
202
  Probably no user impact.  (Martin Pool, #504102)
 
203
 
 
204
* Fixed ``ObjectNotLocked`` error in ``bzr cat -rbranch:../foo FILE``.
 
205
  (Andrew Bennetts, #506274)
 
206
 
 
207
* FTP transports support Unicode paths by encoding/decoding them as utf8.
 
208
  (Vincent Ladeuil, #472161)
 
209
 
 
210
* Listen to the SIGWINCH signal to update the terminal width.
 
211
  (Vincent Ladeuil, #316357)
 
212
 
 
213
* Progress bars are now hidden when ``--quiet`` is given.
 
214
  (Martin Pool, #320035)
 
215
 
 
216
* ``SilentUIFactory`` now supports ``make_output_stream`` and discards
 
217
  whatever is written to it.  This un-breaks some plugin tests that
 
218
  depended on this behaviour.
 
219
  (Martin Pool, #499757)
 
220
 
 
221
* When operations update the working tree, all affected files should end
 
222
  up with the same mtime. (eg. when versioning a generated file, if you
 
223
  update the source and the generated file together, the generated file
 
224
  should appear up-to-date.)
 
225
  (John Arbash Meinel, Martin <gzlist>, #488724)
 
226
 
 
227
Improvements
 
228
************
 
229
 
 
230
* Added ``add_cleanup`` and ``cleanup_now`` to ``bzrlib.command.Command``.
 
231
  All the builtin commands now use ``add_cleanup`` rather than
 
232
  ``try``/``finally`` blocks where applicable as it is simpler and more
 
233
  robust.  (Andrew Bennetts)
 
234
 
 
235
* All except a small number of storage formats are now hidden, making
 
236
  the help for numerous commands far more digestible. (Ian Clatworthy)
 
237
 
 
238
* Attempts to open a shared repository as a branch (e.g. ``bzr branch
 
239
  path/to/repo``) will now include "location is a repository" as a hint in
 
240
  the error message.  (Brian de Alwis, Andrew Bennetts, #440952)
 
241
 
 
242
* Push will now inform the user when they are trying to push to a foreign 
 
243
  VCS for which roundtripping is not supported, and will suggest them to 
 
244
  use dpush. (Jelmer Vernooij)
 
245
 
 
246
* The version of bzr being run is now written to the log file.
 
247
  (__monty__, #257170)
 
248
 
 
249
* Transport network activity indicator is shown more of the time when
 
250
  Bazaar is doing network IO.
 
251
  (Martin Pool)
 
252
 
 
253
Documentation
 
254
*************
 
255
 
 
256
* Add documentation on creating merges with more than one parent.
 
257
  (Neil Martinsen-Burrell, #481526)
 
258
 
 
259
* Better explain the --uncommitted option of merge.
 
260
  (Neil Martinsen-Burrell, #505088)
 
261
 
 
262
* Improve discussion of pending merges in the documentation for
 
263
  ``revert``.  (Neil Martinsen-Burrell, #505093)
 
264
 
 
265
* Improved help for ``bzr send``. 
 
266
  (Martin Pool, Bojan Nikolic)
 
267
 
 
268
* There is a System Administrator's Guide in ``doc/en/admin-guide``,
 
269
  including discussions of installation, relevant plugins, security and 
 
270
  backup. (Neil Martinsen-Burrell)
 
271
 
 
272
* The ``conflicts`` help topic has been renamed to ``conflict-types``.
 
273
  (Ian Clatworthy)
 
274
 
 
275
* The User Reference is now presented as a series of topics.
 
276
  Many of the included topics have link and format tweaks applied.
 
277
  (Ian Clatworthy)
 
278
 
 
279
API Changes
 
280
***********
 
281
 
 
282
* Added ``cachedproperty`` decorator to ``bzrlib.decorators``.
 
283
  (Andrew Bennetts)
 
284
 
 
285
* Many test features were renamed from ``FooFeature`` to ``foo_feature``
 
286
  to be consistent with instances being lower case and classes being
 
287
  CamelCase. For the features that were more likely to be used, we added a
 
288
  deprecation thunk, but not all. (John Arbash Meinel)
 
289
 
 
290
* Merger classes (such as ``Merge3Merger``) now expect a ``this_branch``
 
291
  parameter in their constructors, and provide ``this_branch`` as an
 
292
  attribute. (Andrew Bennetts)
 
293
  
 
294
* The Branch hooks pre_change_branch_tip no longer masks exceptions raised
 
295
  by plugins - the original exceptions are now preserved. (Robert Collins)
 
296
 
 
297
* The Transport ``Server.tearDown`` method is now renamed to
 
298
  ``stop_server`` and ``setUp`` to ``start_server`` for consistency with
 
299
  our normal naming pattern, and to avoid confusion with Python's
 
300
  ``TestCase.tearDown``.  (Martin Pool)
 
301
 
 
302
* ``WorkingTree.update`` implementations must now accept a ``revision``
 
303
  parameter.
 
304
 
 
305
Internals
 
306
*********
 
307
 
 
308
* Added ``BzrDir.open_branchV3`` smart server request, which can receive
 
309
  a string of details (such as "location is a repository") as part of a
 
310
  ``nobranch`` response.  (Andrew Bennetts, #440952)
 
311
  
 
312
* New helper osutils.UnicodeOrBytesToBytesWriter which encodes unicode
 
313
  objects but passes str objects straight through. This is used for
 
314
  selftest but may be useful for diff and other operations that generate
 
315
  mixed output. (Robert Collins)
 
316
 
 
317
* New exception ``NoRoundtrippingSupport``, for use by foreign branch 
 
318
  plugins. (Jelmer Vernooij)
 
319
 
 
320
Testing
 
321
*******
 
322
 
 
323
* ``bzrlib.tests.permute_for_extension`` is a helper that simplifies
 
324
  running all tests in the current module, once against a pure python
 
325
  implementation, and once against an extension (pyrex/C) implementation.
 
326
  It can be used to dramatically simplify the implementation of
 
327
  ``load_tests``.  (John Arbash Meinel)
 
328
 
 
329
* ``bzrlib.tests.TestCase`` now subclasses ``testtools.testcase.TestCase``.
 
330
  This permits features in testtools such as getUniqueInteger and
 
331
  getUniqueString to be used. Because of this, testtools version 0.9.2 or
 
332
  newer is now a dependency to run bzr selftest. Running with versions of
 
333
  testtools less than 0.9.2 will cause bzr to error while loading the test
 
334
  suite. (Robert Collins)
 
335
 
 
336
* Shell-like tests now support the command "mv" for moving files.  The
 
337
  syntax for ``mv file1 file2``, ``mv dir1 dir2`` and ``mv file dir`` is
 
338
  supported.  (Neil Martinsen-Burrell)
 
339
 
 
340
* The test progress bar no longer distinguishes tests that 'errored' from
 
341
  tests that 'failed' - they're all just failures.
 
342
  (Martin Pool)
 
343
 
 
344
 
 
345
bzr 2.0.5 (not released yet)
 
346
############################
11
347
 
12
348
:Codename:
13
 
:2.1.0b2: ???
 
349
:2.0.5:
 
350
 
 
351
Bug Fixes
 
352
*********
 
353
 
 
354
* Handle renames correctly when there are files or directories that 
 
355
  differ only in case.  (Chris Jones, Martin Pool, #368931)
 
356
 
 
357
* If ``bzr push --create-prefix`` triggers an unexpected ``NoSuchFile``
 
358
  error, report that error rather than failing with an unhelpful
 
359
  ``UnboundLocalError``.
 
360
  (Andrew Bennetts, #423563)
 
361
 
 
362
Documentation
 
363
*************
 
364
 
 
365
* Added ``location-alias`` help topic.
 
366
  (Andrew Bennetts, #337834)
 
367
 
 
368
bzr 2.0.4
 
369
#########
 
370
 
 
371
:Codename: smooth sailing
 
372
:2.0.4: 2010-01-21
 
373
 
 
374
The fourth bugfix-only release in the 2.0 series contains more than a
 
375
dozen bugfixes relative to 2.0.3. The primary focus is on handling
 
376
interruptions and concurrent operations more cleanly, there is also a fair
 
377
improvement to ``bzr export`` when exporting a remote branch.
 
378
 
 
379
 
 
380
Bug Fixes
 
381
*********
 
382
 
 
383
* ``bzr annotate`` on another branch with ``-r branch:...`` no longer
 
384
  fails with an ``ObjectNotLocked`` error.  (Andrew Bennetts, #496590)
 
385
 
 
386
* ``bzr export dir`` now requests all file content as a record stream,
 
387
  rather than requsting the file content one file-at-a-time. This can make
 
388
  exporting over the network significantly faster (54min => 9min in one
 
389
  case). (John Arbash Meinel, #343218)
 
390
 
 
391
* ``bzr serve`` no longer slowly leaks memory. The compiled
 
392
  ``bzrlib.bencode.Encoder()`` class was using ``__del__`` to cleanup and
 
393
  free resources, and it should have been using ``__dealloc__``.
 
394
  This will likely have an impact on any other process that is serving for
 
395
  an extended period of time.  (John Arbash Meinel, #494406)
 
396
 
 
397
* Check for SIGINT (Ctrl-C) and other signals immediately if ``readdir``
 
398
  returns ``EINTR`` by calling ``PyErr_CheckSignals``.  This affected the
 
399
  optional ``_readdir_pyx`` extension.  (Andrew Bennetts, #495023)
 
400
 
 
401
* Concurrent autopacks will no longer lose a newly created pack file.
 
402
  There was a race condition, where if the reload happened at the right
 
403
  time, the second packer would forget the name of the newly added pack
 
404
  file. (John Arbash Meinel, Gareth White, #507566)
 
405
 
 
406
* Give a clearer message if the lockdir disappears after being apparently
 
407
  successfully taken.  (Martin Pool, #498378)
 
408
 
 
409
* Give a warning when fetching between repositories (local or remote) with
 
410
  sufficiently different formats that the content will need to be
 
411
  serialized (ie ``InterDifferingSerializer`` or ``inventory-deltas``), so
 
412
  the user has a clue that upgrading could make it faster.
 
413
  (Martin Pool, #456077)
 
414
 
 
415
* If we fail to open ``~/.bzr.log`` write a clear message to stderr rather
 
416
  than using ``warning()``. The log file is opened before logging is set
 
417
  up, and it leads to very confusing: 'no handlers for "bzr"' messages for
 
418
  users, rather than something nicer.
 
419
  (John Arbash Meinel, Barry Warsaw, #503886)
 
420
 
 
421
* Refuse to build with any Pyrex 0.9.4 release, as they have known bugs.
 
422
  (Martin Pool, John Arbash Meinel, #449372)
 
423
 
 
424
* ``setup.py bdist_rpm`` now properly finds extra files needed for the
 
425
  build. (there is still the distutils bug
 
426
  http://bugs.python.org/issue644744) (Joe Julian, #175839)
 
427
 
 
428
* The 2a format wasn't properly restarting autopacks when something
 
429
  changed underneath it (like another autopack). Now concurrent
 
430
  autopackers will properly succeed. (John Arbash Meinel, #495000)
 
431
 
 
432
* ``TreeTransform`` can now handle when a delta says that the file id for
 
433
  the tree root changes. Rather than trying to rename your working
 
434
  directory, or failing early saying that you can't have multiple
 
435
  tree roots. This also fixes revert, update, and pull when the root id
 
436
  changes.  (John Arbash Meinel, #494269, #504390)
 
437
 
 
438
* ``_update_current_block`` no longer suppresses exceptions, so ^C at just
 
439
  the right time will get propagated, rather than silently failing to move
 
440
  the block pointer. (John Arbash Meinel, Gareth White, #495023)
 
441
 
 
442
Testing
 
443
*******
 
444
 
 
445
* We have a new ``test_source`` that ensures all pyrex ``cdef`` functions
 
446
  handle exceptions somehow. (Possibly by setting ``# cannot_raise``
 
447
  rather than an ``except ?:`` clause.) This should help prevent bugs like
 
448
  bug #495023. (John Arbash Meinel)
 
449
 
 
450
 
 
451
bzr 2.1.0b4
 
452
###########
 
453
 
 
454
:Codename: san francisco airport
 
455
:2.1.0b4: 2009-12-14
 
456
 
 
457
The fourth beta release in the 2.1 series brings with it a significant
 
458
number of bugfixes (~20). The test suite is once again (finally) "green"
 
459
on Windows, and should remain that way for future releases. There are a
 
460
few performance related updates (faster upgrade and log), and several UI
 
461
tweaks. There has also been a significant number of tweaks to the runtime
 
462
documentation. 2.1.0b4 include everything from the 2.0.3 release.
14
463
 
15
464
 
16
465
Compatibility Breaks
17
466
********************
18
467
 
19
 
New Features
20
 
************
 
468
* The BZR_SSH environmental variable may now be set to the path of a secure
 
469
  shell client. If currently set to the value ``ssh`` it will now guess the
 
470
  vendor of the program with that name, to restore the old behaviour that
 
471
  indicated the SSH Corporation client use ``sshcorp`` instead as the magic
 
472
  string. (Martin <gzlist@googlemail.com>, #176292)
 
473
 
 
474
New Features
 
475
************
 
476
 
 
477
* ``bzr commit`` now has a ``--commit-time`` option.
 
478
  (Alexander Sack, #459276)
 
479
 
 
480
* ``-Dhpss`` now increases logging done when run on the bzr server,
 
481
  similarly to how it works on the client. (John Arbash Meinel)
 
482
 
 
483
* New option ``bzr unshelve --keep`` applies the changes and leaves them
 
484
  on the shelf.  (Martin Pool, Oscar Fuentes, #492091)
 
485
 
 
486
* The ``BZR_COLUMNS`` envrionment variable can be set to force bzr to
 
487
  respect a given terminal width. This can be useful when output is
 
488
  redirected or in obscure cases where the default value is not
 
489
  appropriate. Pagers can use it to get a better control of the line
 
490
  lengths. 
 
491
  (Vincent Ladeuil)
 
492
 
 
493
* The new command ``bzr lp-mirror`` will request that Launchpad update its
 
494
  mirror of a local branch. This command will only function if launchpadlib
 
495
  is installed.
 
496
  (Jonathan Lange)
 
497
 
 
498
 
 
499
Bug Fixes
 
500
*********
 
501
 
 
502
* After renaming a file, the dirstate could accidentally reference
 
503
  ``source\\path`` rather than ``source/path`` on Windows. This might be a
 
504
  source of some dirstate-related failures. (John Arbash Meinel)
 
505
 
 
506
* ``bzr commit`` now detects commit messages that looks like file names
 
507
  and issues a warning.
 
508
  (Gioele Barabucci, #73073)
 
509
 
 
510
* ``bzr ignore /`` no longer causes an IndexError. (Gorder Tyler, #456036)
 
511
 
 
512
* ``bzr log -n0 -rN`` should not return revisions beyond its merged revisions.
 
513
  (#325618, #484109, Marius Kruger)
 
514
 
 
515
* ``bzr merge --weave`` and ``--lca`` will now create ``.BASE`` files for
 
516
  files with conflicts (similar to ``--merge3``). The contents of the file
 
517
  is a synthesis of all bases used for the merge.
 
518
  (John Arbash Meinel, #40412)
 
519
 
 
520
* ``bzr mv --quiet`` really is quiet now.  (Gordon Tyler, #271790)
 
521
 
 
522
* ``bzr serve`` is more clear about the risk of supplying --allow-writes.
 
523
  (Robert Collins, #84659)
 
524
 
 
525
* ``bzr serve --quiet`` really is quiet now.  (Gordon Tyler, #252834)
 
526
 
 
527
* Fix bug with redirected URLs over authenticated HTTP.
 
528
  (Glen Mailer, Neil Martinsen-Burrell, Vincent Ladeuil, #395714)
 
529
 
 
530
* Interactive merge doesn't leave branch locks behind.  (Aaron Bentley)
 
531
 
 
532
* Lots of bugfixes for the test suite on Windows. We should once again
 
533
  have a test suite with no failures on Windows. (John Arbash Meinel)
 
534
 
 
535
* ``osutils.terminal_width()`` obeys the BZR_COLUMNS environment
 
536
  variable but returns None if the terminal is not a tty (when output is
 
537
  redirected for example). Also fixes its usage under OSes that doesn't
 
538
  provide termios.TIOCGWINSZ. Make sure the corresponding tests runs on
 
539
  windows too.
 
540
  (Joke de Buhr, Vincent Ladeuil, #353370, #62539)
 
541
  (John Arbash Meinel, Vincent Ladeuil, #492561)
 
542
 
 
543
* Terminate ssh subprocesses when no references to them remain, fixing
 
544
  subprocess and file descriptor leaks.  (Andrew Bennetts, #426662)
 
545
  
 
546
* The ``--hardlink`` option of ``bzr branch`` and ``bzr checkout`` now
 
547
  works for 2a format trees.  Only files unaffected by content filters
 
548
  will be hardlinked.  (Andrew Bennetts, #408193)
 
549
 
 
550
* The new glob expansion on Windows would replace all ``\`` characters
 
551
  with ``/`` even if it there wasn't a glob to expand, the arg was quoted,
 
552
  etc. Now only change slashes if there is something being glob expanded.
 
553
  (John Arbash Meinel, #485771)
 
554
 
 
555
* Use our faster ``KnownGraph.heads()`` functionality when computing the
 
556
  new rich-root heads. This can cut a conversion time in half (mysql from
 
557
  13.5h => 6.2h) (John Arbash Meinel, #487632)
 
558
 
 
559
* When launching a external diff tool via bzr diff --using, temporary files
 
560
  are no longer created, rather, the path to the file in the working tree is
 
561
  passed to the external diff tool. This allows the file to be edited if the
 
562
  diff tool provides for this. (Gary van der Merwe, #490738)
 
563
  
 
564
* The launchpad-open command can now be used from a subdirectory of a
 
565
  branch, not just from the root of the branch. 
 
566
  (Neil Martinsen-Burrell, #489102)
 
567
 
 
568
 
 
569
Improvements
 
570
************
 
571
 
 
572
* ``bzr log`` is now faster. (Ian Clatworthy)
 
573
 
 
574
* ``bzr update`` provides feedback on which branch it is up to date with.
 
575
  (Neil Martinsen-Burrell)
 
576
 
 
577
* ``bzr upgrade`` from pre-2a to 2a can be significantly faster (4x).
 
578
  For details see the xml8 patch and heads() improvements.
 
579
  (John Arbash Meinel)
 
580
 
 
581
* ``bzrlib.urlutils.local_path_from_url`` now accepts
 
582
  'file://localhost/' as well as 'file:///' URLs on POSIX.  (Michael
 
583
  Hudson)
 
584
 
 
585
* The progress bar now shows only a spinner and per-operation counts,
 
586
  not an overall progress bar.  The previous bar was often not correlated
 
587
  with real overall operation progress, either because the operations take
 
588
  nonlinear time, or because at the start of the operation Bazaar couldn't
 
589
  estimate how much work there was to do.  (Martin Pool)
 
590
 
 
591
Documentation
 
592
*************
 
593
 
 
594
* Lots of documentation tweaks for inline help topics and command help
 
595
  information.
 
596
 
 
597
API Changes
 
598
***********
 
599
 
 
600
* ``bzrlib.textui`` (vestigial module) removed.  (Martin Pool)
 
601
 
 
602
* The Launchpad plugin now has a function ``login`` which will log in to
 
603
  Launchpad with launchpadlib, and ``load_branch`` which will return the
 
604
  Launchpad Branch object corresponding to a given Bazaar Branch object.
 
605
  (Jonathan Lange)
 
606
 
 
607
Internals
 
608
*********
 
609
 
 
610
* New test Feature: ``ModuleAvailableFeature``. It is designed to make it
 
611
  easier to handle what tests you want to run based on what modules can be
 
612
  imported. (Rather than lots of custom-implemented features that were
 
613
  basically copy-and-pasted.) (John Arbash Meinel)
 
614
 
 
615
* ``osutils.timer_func()`` can be used to get either ``time.time()`` or
 
616
  ``time.clock()`` when you want to do performance timing.
 
617
  ``time.time()`` is limited to 15ms resolution on Windows, but
 
618
  ``time.clock()`` gives CPU and not wall-clock time on other platforms.
 
619
  (John Arbash Meinel)
 
620
 
 
621
* Several code paths that were calling ``Transport.get().read()`` have
 
622
  been changed to the equalivent ``Transport.get_bytes()``. The main
 
623
  difference is that the latter will explicitly call ``file.close()``,
 
624
  rather than expecting the garbage collector to handle it. This helps
 
625
  with some race conditions on Windows during the test suite and sftp
 
626
  tests. (John Arbash Meinel)
 
627
 
 
628
Testing
 
629
*******
 
630
 
 
631
* TestCaseWithMemoryTransport no longer sets $HOME and $BZR_HOME to
 
632
  unicode strings. (Michael Hudson, #464174)
 
633
 
 
634
 
 
635
bzr 2.0.3
 
636
#########
 
637
 
 
638
:Codename: little italy
 
639
:2.0.3: 2009-12-14
 
640
 
 
641
 
 
642
The third stable release of Bazaar has a small handful of bugfixes. As
 
643
expected, this has no internal or external compatibility changes versus
 
644
2.0.2 (or 2.0.0).
 
645
 
 
646
Bug Fixes
 
647
*********
 
648
 
 
649
* ``bzr push --use-existing-dir`` no longer crashes if the directory
 
650
  exists but contains an invalid ``.bzr`` directory.
 
651
  (Andrew Bennetts, #423563)
 
652
 
 
653
* Content filters are now applied correctly after pull, merge and switch.
 
654
  (Ian Clatworthy, #385879)
 
655
 
 
656
* Fix a potential segfault in the groupcompress hash map handling code.
 
657
  When inserting new entries, if the final hash bucket was empty, we could
 
658
  end up trying to access if ``(last_entry+1)->ptr == NULL``.
 
659
  (John Arbash Meinel, #490228)
 
660
 
 
661
* Improve "Binary files differ" hunk handling.  (Aaron Bentley, #436325)
 
662
 
 
663
 
 
664
bzr 2.1.0b3
 
665
###########
 
666
 
 
667
:Codename: after sprint recovery
 
668
:2.1.0b3: 2009-11-16
 
669
 
 
670
This release was pushed up from its normal release cycle due to a
 
671
regression in python 2.4 compatibility in 2.1.0b2.  Since this regression
 
672
was caught before 2.1.0b2 was officially announced, the full changelog
 
673
includes both 2.1.0b3 and 2.1.0b2 changes.
 
674
 
 
675
Highlights of 2.1.0b3 are: new globbing code for all commands on Windows,
 
676
the test suite now conforms to python's trunk enhanced semantics (skip,
 
677
etc.), and ``bzr info -v`` will now report the correct branch and repo
 
678
formats for Remote objects.
 
679
 
 
680
 
 
681
New Features
 
682
************
 
683
 
 
684
* Users can define a shelve editor to provide shelf functionality at a
 
685
  granularity finer than per-patch-hunk. (Aaron Bentley)
 
686
 
 
687
Bug Fixes
 
688
*********
 
689
 
 
690
* Fix for shell completion and short options.  (Benoît PIERRE)
 
691
 
 
692
* Hooks daughter classes should always call the base constructor.
 
693
  (Alexander Belchenko, Vincent Ladeuil, #389648) 
 
694
 
 
695
* Improve "Binary files differ" hunk handling.  (Aaron Bentley, #436325)
 
696
 
 
697
* On Windows, do glob expansion at the command-line level (as is usually
 
698
  done in bash, etc.) This means that *all* commands get glob expansion
 
699
  (bzr status, bzr add, bzr mv, etc). It uses a custom command line
 
700
  parser, which allows us to know if a given section was quoted. It means
 
701
  you can now do ``bzr ignore "*.py"``.
 
702
  (John Arbash Meinel, #425510, #426410, #194450)
 
703
 
 
704
* Sanitize commit messages that come in from the '-m' flag. We translate
 
705
  '\r\n' => '\n' and a plain '\r' => '\n'. The storage layer doesn't
 
706
  allow those because XML store silently translate it anyway. (The parser
 
707
  auto-translates \r\n => \n in ways that are hard for us to catch.)
 
708
 
 
709
* Show correct branch and repository format descriptions in 
 
710
  ``bzr info -v`` on a smart server location.  (Andrew Bennetts, #196080)
 
711
 
 
712
* The fix for bug #186920 accidentally broke compatibility with python
 
713
  2.4.  (Vincent Ladeuil, #475585)
 
714
 
 
715
* Using ``Repository.get_commit_builder().record_iter_changes()`` now
 
716
  correctly sets ``self.inv_sha1`` to a sha1 string and
 
717
  ``self.new_inventory`` to an Inventory instance after calling
 
718
  ``self.finish_inventory()``. (Previously it accidently set both values
 
719
  as a tuple on ``self.inv_sha1``. This was missed because
 
720
  ``repo.add_revision`` ignores the supplied inventory sha1 and recomputes
 
721
  the sha1 from the repo directly. (John Arbash Meinel)
 
722
 
 
723
* Shelve command refuse to run if there is no real terminal.
 
724
  (Alexander Belchenko)
 
725
 
 
726
* Avoid unnecessarily flushing of trace file; it's now unbuffered at the
 
727
  Python level.  (Martin Pool)
 
728
 
 
729
Documentation
 
730
*************
 
731
 
 
732
* Include Japanese translations for documentation (Inada Naoki)
 
733
 
 
734
* New API ``ui_factory.make_output_stream`` to be used for sending bulk
 
735
  (rather than user-interaction) data to stdout.  This automatically
 
736
  coordinates with progress bars or other terminal activity, and can be
 
737
  overridden by GUIs.
 
738
  (Martin Pool, 493944)
 
739
 
 
740
Internals
 
741
*********
 
742
 
 
743
* Some of the core groupcompress functionality now releases the GIL before
 
744
  operation. Similar to how zlib and bz2 operate without the GIL in the
 
745
  core compression and decompression routines. (John Arbash Meinel)
 
746
 
 
747
Testing
 
748
*******
 
749
 
 
750
* -Dhpssvfs will now trigger on ``RemoteBzrDir._ensure_real``, providing
 
751
  more debugging of VFS access triggers. (Robert Collins)
 
752
 
 
753
* KnownFailure is now signalled to ``ExtendedTestResult`` using the same
 
754
  method that Python 2.7 uses - ``addExpectedFailure``. (Robert Collins)
 
755
 
 
756
* ``--parallel=fork`` is now compatible with --subunit.
 
757
  (Robert Collins, Vincent Ladeuil, #419776)
 
758
 
 
759
* Reporting of failures shows test ids not descriptions and thus shows
 
760
  parameterised tests correctly. (Robert Collins)
 
761
 
 
762
* TestNotApplicable is now handled within the TestCase.run method rather
 
763
  than being looked for within ``ExtendedTestResult.addError``. This
 
764
  provides better handling with other ``TestResult`` objects, degrading to
 
765
  sucess rather than error. (Robert Collins)
 
766
 
 
767
* The private method ``_testConcluded`` on ``ExtendedTestResult`` has been
 
768
  removed - it was empty and unused. (Robert Collins)
 
769
 
 
770
* UnavailableFeature is now handled within the TestCase.run method rather
 
771
  than being looked for within addError. If the Result object does not
 
772
  have an addNotSupported method, addSkip is attempted instead, and
 
773
  failing that addSuccess. (Robert Collins)
 
774
 
 
775
* When a TestResult does not have an addSkip method, skipped tests are now
 
776
  reported as successful tests, rather than as errors. This change is
 
777
  to make it possible to get a clean test run with a less capable
 
778
  TestResult. (Robert Collins)
 
779
 
 
780
 
 
781
 
 
782
bzr 2.1.0b2
 
783
###########
 
784
 
 
785
:Codename: a load off my mind
 
786
:2.1.0b2: 2009-11-02
 
787
 
 
788
This is our second feature-filled release since 2.0, pushing us down the
 
789
path to a 2.1.0. Once again, all bugfixes in 2.0.2 are present in 2.1.0b2.
 
790
 
 
791
Key highlights in this release are: improved handling of
 
792
failures-during-cleanup for commit, fixing a long-standing bug with
 
793
``bzr+http`` and shared repositories, all ``lp:`` urls to be resolved
 
794
behind proxies, and a new StaticTuple datatype, allowing us to reduce
 
795
memory consumption (50%) and garbage collector overhead (40% faster) for
 
796
many operations.
 
797
 
 
798
* A new ``--concurrency`` option has been added as well as an associated
 
799
  BZR_CONCURRENCY environment variable to specify the number of
 
800
  processes that can be run concurrently when running ``bzr selftest``. The
 
801
  command-line option overrides the environment variable if both are
 
802
  specified. If none is specified. the number of processes is obtained
 
803
  from the OS as before.  (Matt Nordhoff, Vincent Ladeuil)
21
804
 
22
805
Bug Fixes
23
806
*********
25
808
* ``bzr+http`` servers no longer give spurious jail break errors when
26
809
  serving branches inside a shared repository.  (Andrew Bennetts, #348308)
27
810
 
 
811
* Errors during commit are handled more robustly so that knock-on errors
 
812
  are less likely to occur, and will not obscure the original error if
 
813
  they do occur.  This fixes some causes of ``TooManyConcurrentRequests``
 
814
  and similar errors.  (Andrew Bennetts, #429747, #243391)
 
815
 
 
816
* Launchpad urls can now be resolved from behind proxies.
 
817
  (Gordon Tyler, Vincent Ladeuil, #186920)
 
818
 
 
819
* Reduce the strictness for StaticTuple, instead add a debug flag
 
820
  ``-Dstatic_tuple`` which will change apis to be strict and raise errors.
 
821
  This way, most users won't see failures, but developers can improve
 
822
  internals. (John Arbash Meinel, #471193)
 
823
 
28
824
* TreeTransform.adjust_path updates the limbo paths of descendants of adjusted
29
825
  files.  (Aaron Bentley)
30
826
 
 
827
* Unicode paths are now handled correctly and consistently by the smart
 
828
  server.  (Andrew Bennetts, Michael Hudson, #458762)
 
829
 
31
830
Improvements
32
831
************
33
832
 
37
836
  (John Arbash Meinel)
38
837
 
39
838
* Peak memory under certain operations has been reduced significantly.
 
839
  (eg, 'bzr branch launchpad standalone' is cut in half)
40
840
  (John Arbash Meinel)
41
841
 
42
842
Documentation
43
843
*************
44
844
 
 
845
* Filtered views user documentation upgraded to refer to format 2a
 
846
  instead of pre-2.0 formats. (Ian Clatworthy)
 
847
 
45
848
API Changes
46
849
***********
47
850
 
62
865
  (John Arbash Meinel)
63
866
 
64
867
* ``bzrlib._static_tuple_c.StaticTuple`` is now available and used by
65
 
  the btree index parser. This class functions similarly to ``tuple``
66
 
  objects. However, it can only point to a limited collection of types.
67
 
  (Currently StaticTuple, str, unicode, None, bool, int, long, float, and
68
 
  not subclasses).  This allows us to remove it from the garbage collector
69
 
  (it cannot be in a cycle), it also allows us to intern the objects. In
70
 
  testing, this can reduce peak memory by 20-40%, and significantly
71
 
  improve performance by removing objects from being inspected by the
72
 
  garbage collector.  (John Arbash Meinel)
 
868
  the btree index parser and the chk map parser. This class functions
 
869
  similarly to ``tuple`` objects. However, it can only point to a limited
 
870
  collection of types.  (Currently StaticTuple, str, unicode, None, bool,
 
871
  int, long, float, but not subclasses).  This allows us to remove it from
 
872
  the garbage collector (it cannot be in a cycle), it also allows us to
 
873
  intern the objects. In testing, this can reduce peak memory by 20-40%,
 
874
  and significantly improve performance by removing objects from being
 
875
  inspected by the garbage collector.  (John Arbash Meinel)
73
876
 
74
877
* ``GroupCompressBlock._ensure_content()`` will now release the
75
878
  ``zlib.decompressobj()`` when the first request is for all of the
85
888
  peak memory for initial copies (~200MB). (John Arbash Meinel)
86
889
 
87
890
 
88
 
Testing
89
 
*******
90
 
 
91
 
 
92
 
bzr 2.0.2 (not released yet)
93
 
############################
94
 
 
95
 
:Codename:
96
 
:2.0.2: ???
97
 
 
98
 
Compatibility Breaks
99
 
********************
100
 
 
101
 
New Features
102
 
************
 
891
bzr 2.0.2
 
892
#########
 
893
 
 
894
:Codename: after the scare
 
895
:2.0.2: 2009-11-02
 
896
 
 
897
The second in our "let's keep the stable bugfixes flowing" series. As
 
898
expected this has a few (~9) bugfixes relative to 2.0.1, and no major api
 
899
changes or features.
103
900
 
104
901
Bug Fixes
105
902
*********
107
904
* Avoid "NoneType has no attribute st_mode" error when files disappear
108
905
  from a directory while it's being read.  (Martin Pool, #446033)
109
906
 
 
907
* Content filters are now applied correctly after revert.
 
908
  (Ian Clatworthy)
 
909
 
 
910
* Diff parsing handles "Binary files differ" hunks.  (Aaron Bentley, #436325)
 
911
 
 
912
* Fetching from stacked pre-2a repository via a smart server no longer
 
913
  fails intermittently with "second push failed to complete".
 
914
  (Andrew Bennetts, #437626)
 
915
 
 
916
* Fix typos left after test_selftest refactoring.
 
917
  (Vincent Ladeuil, Matt Nordhoff, #461149)
 
918
 
 
919
* Fixed ``ObjectNotLocked`` errors during ``bzr log -r NNN somefile``.
 
920
  (Andrew Bennetts, #445171)
 
921
  
 
922
* PreviewTree file names are not limited by the encoding of the temp
 
923
  directory's filesystem. (Aaron Bentley, #436794)
 
924
 
110
925
Improvements
111
926
************
112
927
 
 
928
* ``bzr log`` now read-locks branches exactly once, so makes better use of
 
929
  data caches.  (Andrew Bennetts)
 
930
 
113
931
Documentation
114
932
*************
115
933
 
116
 
API Changes
117
 
***********
118
 
 
119
 
Internals
120
 
*********
121
 
 
122
 
Testing
123
 
*******
 
934
* Filtered views user documentation upgraded to refer to format 2a
 
935
  instead of pre-2.0 formats. (Ian Clatworthy)
124
936
 
125
937
 
126
938
bzr 2.1.0b1
229
1041
Improvements
230
1042
************
231
1043
 
 
1044
* Revision specifiers can now be given in a more DWIM form, without
 
1045
  needing explicit prefixes for specifiers like tags or revision id's.
 
1046
  See ``bzr help revisionspec`` for full details.  (Matthew Fuller)
 
1047
 
232
1048
* Bazaar gives a warning before exiting, and writes into ``.bzr.log``, if 
233
1049
  compiled extensions can't be loaded.  This typically indicates a
234
1050
  packaging or installation problem.  In this case Bazaar will keep
607
1423
* ``bzr shelve`` and ``bzr unshelve`` now work on windows.
608
1424
  (Robert Collins, #305006)
609
1425
 
610
 
* Commit of specific files no longer prevents using the the iter_changes
 
1426
* Commit of specific files no longer prevents using the iter_changes
611
1427
  codepath. On 2a repositories, commit of specific files should now be as
612
1428
  fast, or slightly faster, than a full commit. (Robert Collins)
613
1429
 
1376
2192
************
1377
2193
 
1378
2194
* A new repository format ``2a`` has been added.  This is a beta release
1379
 
  of the the brisbane-core (aka group-compress) project.  This format now
 
2195
  of the brisbane-core (aka group-compress) project.  This format now
1380
2196
  suitable for wider testing by advanced users willing to deal with some
1381
2197
  bugs.  We would appreciate test reports, either positive or negative.
1382
2198
  Format 2a is substantially smaller and faster for many operations on
2105
2921
 
2106
2922
* Added ``bzrlib.inventory_delta`` module.  This will be used for
2107
2923
  serializing and deserializing inventory deltas for more efficient
2108
 
  streaming on the the network.  (Robert Collins, Andrew Bennetts)
 
2924
  streaming on the network.  (Robert Collins, Andrew Bennetts)
2109
2925
 
2110
2926
* ``Branch._get_config`` has been added, which splits out access to the
2111
2927
  specific config file from the branch. This is used to let RemoteBranch
2300
3116
* Multiple authors for a commit can now be recorded by using the "--author"
2301
3117
  option multiple times. (James Westby, #185772)
2302
3118
 
2303
 
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernoij)
 
3119
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernooij)
2304
3120
 
2305
3121
* New command ``bzr launchpad-open`` opens a Launchpad web page for that
2306
3122
  branch in your web browser, as long as the branch is on Launchpad at all.
4829
5645
  exception. (Andrew Bennetts)
4830
5646
 
4831
5647
* New ``--debugflag``/``-E`` option to ``bzr selftest`` for setting
4832
 
  options for debugging tests, these are complementary to the the -D
 
5648
  options for debugging tests, these are complementary to the -D
4833
5649
  options.  The ``-Dselftest_debug`` global option has been replaced by the
4834
5650
  ``-E=allow_debug`` option for selftest. (Andrew Bennetts)
4835
5651