/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: Neil Martinsen-Burrell
  • Date: 2010-09-26 02:27:37 UTC
  • mfrom: (5424 +trunk)
  • mto: This revision was merged to the branch mainline in revision 5461.
  • Revision ID: nmb@wartburg.edu-20100926022737-cj2qvebm2mhpjzak
mergeĀ fromĀ trunk

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.2.0b1
9
 
###########
 
8
bzr 2.3b1
 
9
#########
10
10
 
11
11
:Codename: ???
12
 
:2.2.0b1: Not released yet
13
 
 
14
 
Compatibility Breaks
15
 
********************
 
12
:2.3b1: NOT RELEASED YET
 
13
 
 
14
Compatibility Breaks
 
15
********************
 
16
 
 
17
* BzrError subclasses no longer support the name "message" to be used
 
18
  as an argument for __init__ or in _fmt format specification as this
 
19
  breaks in some Python versions. errors.LockError.__init__ argument
 
20
  is now named "msg" instead of earlier "message".
 
21
  (Parth Malwankar, #603461)
 
22
 
 
23
* ``bzrlib.transform.TreeTransformBase.final_kind``,
 
24
  ``bzrlib.transform.TreeTransform.tree_kind`` and
 
25
  ``bzrlib.transform.TransformPreview.tree_kind`` now return None instead
 
26
  of raising NoSuchFile.  (Vincent Ladeuil)
 
27
 
 
28
* `decode` parameter to get() method in FtpTransport and GioTransport classes
 
29
  is deprecated. (Alexander Belchenko)
 
30
 
 
31
* `FileInWrongBranch` is deprecated in favour of `PathNotChild` and no
 
32
  longer raised.
 
33
  (Martin Pool)
 
34
 
 
35
* `tree_files` and `internal_tree_files` are now deprecated in favor of
 
36
  `WorkingTree.open_containing_paths`.
 
37
  (Martin Pool)
 
38
 
 
39
* `ControlDirFormat` and  `ControlDir` have been split out of `BzrDirFormat`
 
40
  and `BzrDir`, respectively. `ControlDirFormat`
 
41
  and `ControlDir` should be used as the base classes for new non-.bzr
 
42
  implementations.
 
43
 
 
44
  `BzrDirFormat.register_control_format` has been renamed to
 
45
  `ControlDirFormat.register_format`.
 
46
 
 
47
  `BzrDirFormat.register_server_control_format` has been removed.
 
48
 
 
49
  Probing for control directories is now done by separate objects derived
 
50
  from `bzrlib.controldir.Prober` and registered using
 
51
  `bzrlib.controldir.ControlDirFormat.register_prober` or
 
52
  `bzrlib.controldir.ControlDirFormat.register_server_prober`.
 
53
  `BzrDirFormat.probe_transport` has been moved onto `Prober`.
 
54
 
 
55
  `BzrDirFormat.register_format` has been renamed to
 
56
  `BzrProber.register_bzrdir_format`.
 
57
 
 
58
  `bzrlib.bzrdir.network_format_registry` has been moved to
 
59
  `bzrlib.controldir`.
 
60
 
 
61
  (Jelmer Vernooij)
 
62
 
 
63
* The old ``bzr selftest --benchmark`` option has been removed.
 
64
  <https://launchpad.net/bzr-usertest> is an actively-maintained
 
65
  macrobenchmark suite.
 
66
  (Martin Pool)
 
67
 
 
68
New Features
 
69
************
 
70
 
 
71
* Added ``pre_status`` and ``post_status`` hooks. This allows plugins
 
72
  to register custom handlers which will be invoked before/after the
 
73
  standard status output is displayed. (Parth Malwankar)
 
74
 
 
75
* ``bzr break-lock --config [location]`` can now break config files
 
76
  locks. (Vincent Ladeuil, #525571)
 
77
 
 
78
* ``bzrlib.config.LockableConfig`` is a base class for config files that
 
79
  needs to be protected against multiple writers. All methods that
 
80
  change a configuration variable value must be decorated with
 
81
  @needs_write_lock (set_option() for example).
 
82
  (Vincent Ladeuil,  #525571)
 
83
 
 
84
* The ``lp:`` prefix will now use your known username (from
 
85
  ``bzr launchpad-login``) to expand ``~`` to your username.  For example:
 
86
  ``bzr launchpad-login user && bzr push lp:~/project/branch`` will now
 
87
  push to ``lp:~user/project/branch``.  (John Arbash Meinel)
 
88
 
 
89
* New development format ``development8-subtree`` which is similar to the 
 
90
  ``2a`` format and adds subtree support. (Jelmer Vernooij)
 
91
 
 
92
Bug Fixes
 
93
*********
 
94
 
 
95
* Allow using both --using and --diff-options. 
 
96
  (MatthƤus G. Chajdas, #234708)
 
97
 
 
98
* Allow using non-integer bug ID with generic bug trackers.
 
99
  (Alexandre Garnier, #440472)
 
100
 
 
101
* ``bzr add SYMLINK/FILE`` now works properly when the symlink points to a
 
102
  previously-unversioned directory within the tree: the directory is
 
103
  marked versioned too.  
 
104
  (Martin Pool, #192859)
 
105
 
 
106
* ``bzr ignore PATTERNS`` exits with error if a bad pattern is supplied.
 
107
  ``InvalidPattern`` exception error message now shows faulting
 
108
  regular expression.
 
109
  (Parth Malwankar #300062)
 
110
 
 
111
* ``clean-tree`` issues a warning if it is unable to delete a file
 
112
  due to ``errno.EACCES`` instead of exiting with an error on Windows.
 
113
  (Parth Malwankar, #430785)
 
114
 
 
115
* CommitBuilder now uses the committer instead of _config.username to generate
 
116
  the revision-id.  (Aaron Bentley, #614404)
 
117
 
 
118
* Configuration files in ``${BZR_HOME}`` are now protected against
 
119
  concurrent writers by using a lock. (Vincent Ladeuil, #525571)
 
120
 
 
121
* Cope with Microsoft FTP Server and VSFTPd that return reply '250
 
122
  Directory created' when mkdir succeeds.  (Martin Pool, #224373)
 
123
 
 
124
* Decrease peak memory during ``bzr send``. The old code was caching all
 
125
  text content and all inventory strings for all revisions before
 
126
  computing the diffs. Now we only cache as long as there is a child that
 
127
  will need them. Sending 2000 bzr revisions drops from 1.2GB peak to
 
128
  256MB peak. (John Arbash Meinel, #614576)
 
129
 
 
130
* Don't print internal object name when print an invalid revision spec
 
131
  error.  (Neil Martinsen-Burrell, #598701)
 
132
 
 
133
* Don't traceback when a lockdir's ``held/info`` file is corrupt (e.g.
 
134
  contains only NUL bytes).  Instead warn the user, and allow ``bzr
 
135
  break-lock`` to remove it.  (Andrew Bennetts, #619872)
 
136
  
 
137
* ``EPIPE`` can be raised during test server shutdown. This happened on
 
138
  gentoo only so far. (Vincent Ladeuil, #627277)
 
139
 
 
140
* Errors occurring during http(s) test server starts should now be
 
141
  handled cleanly. (Vincent Ladeuil, #392402)
 
142
 
 
143
* Fix ``AttributeError on parent.children`` when adding a file under a 
 
144
  directory that was a symlink in the previous commit.
 
145
  (Martin Pool, #192859)
 
146
 
 
147
* Fix ``AttributeError: 'NoneType' object has no attribute 'close'`` in
 
148
  ``_close_ssh_proc`` when using ``bzr+ssh://``.  This was causing
 
149
  connections to pre-1.6 bzr+ssh servers to fail, and causing warnings on
 
150
  stderr in some other circumstances.  (Andrew Bennetts, #633745)
 
151
 
 
152
* Fix signature of RemoteBzrDir.create_workingtree to match that of its
 
153
  superclass.  (Neil Martinsen-Burrell, #524627)
 
154
 
 
155
* Fix spurious paramiko warning on hardy by ensuring that ``selftest``
 
156
  properly remove its warning filter. (Vincent Ladeuil, #625686)
 
157
 
 
158
* ``HTTP/1.1`` test servers now set a ``Content-Length`` header to comply
 
159
  with pedantic ``HTTP/1.1`` clients. (Vincent Ladeuil, #568421)
 
160
 
 
161
* Most of the leaked threads during selftest are now fixed, allowing the
 
162
  full test suite to pass on gentoo.
 
163
  (Vincent Ladeuil, #392127)
 
164
 
 
165
* Only call ``setlocale`` in the bzr startup script on posix systems. This
 
166
  avoids an issue with the newer windows C runtimes used by Python 2.6 and
 
167
  later which can mangle bytestrings printed to the console.
 
168
  (Martin [gz], #631350)
 
169
 
 
170
* `PathNotChild` should not give a traceback.
 
171
  (Martin Pool, #98735)
 
172
 
 
173
* ``PQM`` will no longer ignore syntax errors in submissions.
 
174
  (Vincent Ladeuil, #626667)
 
175
 
 
176
* Prevent ``CHKMap.apply_delta`` from generating non-canonical CHK maps,
 
177
  which can result in "missing referenced chk root keys" errors when
 
178
  fetching from repositories with affected revisions.
 
179
  (Andrew Bennetts, #522637)
 
180
 
 
181
* strace test-helper tests cope with the new Ubuntu policy of not allowing
 
182
  users to attach to their own processes by default.
 
183
  (Martin Pool, #626679)
 
184
 
 
185
* Test classes like ``TestCase``, ``TestLoader``, and ``TestSuite`` should
 
186
  be available from ``bzrlib.tests.*``. They used to be, but were
 
187
  accidentally removed. (John Arbash Meinel, #627438)
 
188
 
 
189
* ``Transport.stat`` on a symlink, including a transport pointing directly
 
190
  to a symlink, now returns information about the symlink.
 
191
  (Martin Pool)
 
192
 
 
193
* Wait for the SSH server to actually finish, rather than just waiting for
 
194
  it to negotiate the key exchange. (John Arbash Meinel, #626876)
 
195
 
 
196
Improvements
 
197
************
 
198
 
 
199
* ``bzr remove`` now just backs up changed files instead of exiting,
 
200
  forcing you to choose to either keep or delete them. Bazaar will now delete
 
201
  the files if they can easily be recovered using revert, otherwise they
 
202
  will be backed up (adding an extention of the form .~#~).
 
203
  (Marius Kruger, #400554)
 
204
 
 
205
* ``bzr revert`` and ``bzr status`` are up to 15% faster on large trees
 
206
  with many changes by not repeatedly building a list of all file-ids.
 
207
  (Andrew Bennetts)
 
208
 
 
209
* Decrease memory consumption when many chk index pages are loaded. (Such
 
210
  as during ``bzr co`` or ``bzr ls -R`` of a large tree.) Often we need to
 
211
  read many chk pages because the individual chk map nodes will be spread
 
212
  randomly. Peak memory for 'bzr ls -R' on a large tree dropped from 396MB
 
213
  down to 247MB, expect even more significant savings on 64-bit platforms.
 
214
  (John Arbash Meinel)
 
215
 
 
216
* ``DirState`` internals use a little bit less memory. For bzr.dev it
 
217
  drops the memory from 1MB down to about 800kB. And replaces a few
 
218
  thousand tuples and sets with StaticTuple.  (John Arbash Meinel)
 
219
 
 
220
* Inventory entries now consume less memory (on 32-bit Ubuntu file entries
 
221
  have dropped from 68 bytes to 40, and directory entries from 120 bytes
 
222
  to 48).  (Andrew Bennetts)
 
223
 
 
224
* When building new working trees, default to reading from the repository
 
225
  rather than the source tree unless explicitly requested. (via
 
226
  ``--files-from`` and ``--hardlink`` for ``bzr branch`` and
 
227
  ``bzr checkout``. Generally, 2a format repositories extract
 
228
  content faster than seeking and reading content from another tree,
 
229
  especially in cold-cache situations. (John Arbash Meinel, #607298)
 
230
 
 
231
* Add ``__pycache__`` to the default ``ignores`` file. Future releases of
 
232
  Python will use this directory to store bytecodes.
 
233
  (Andrea Corbellini, #626687)
 
234
 
 
235
Documentation
 
236
*************
 
237
 
 
238
* Added a builder/writer sphinx extension that can generate texinfo files. The
 
239
  generated files are syntactically correct but the info navigation nodes
 
240
  needs more work. (Vincent Ladeuil, #219334)
 
241
 
 
242
* First tests defined for sphinx, including a new bzrlib.tests.features.sphinx
 
243
  to make the tests conditional.
 
244
  (Vincent Ladeuil)
 
245
 
 
246
* Fix a lot of references in the docs to the old http://bazaar-vcs.org to
 
247
  the new http://bazaar.canonical.com or http://wiki.bazaar.canonical.com
 
248
  (John Arbash Meinel, #617503)
 
249
 
 
250
API Changes
 
251
***********
 
252
 
 
253
* Configuration files should now use the ``from_string`` constructor rather
 
254
  than the ``file`` parameter of the ``_get_parser`` method. The later has
 
255
  been deprecated. ``from_string`` also accept a ``save=True`` parameter to
 
256
  have the configuration file immediately written to disk. 
 
257
  (Vincent Ladeuil)
 
258
 
 
259
* Deprecate treating a `PushResult` and `PullResult` as an integer for the
 
260
  relative change in revno.
 
261
  (Martin Pool)
 
262
  `
 
263
* ``IniBaseConfig`` objects should now use the ``from_string`` constructor
 
264
  the rather than the ``file`` parameter of the ``_get_parser`` method. The
 
265
  later has been deprecated. (Vincent Ladeuil)
 
266
 
 
267
* InventoryEntry instances now raise AttributeError if you try to assign
 
268
  to attributes that are irrelevant to that kind of entry.  e.g. setting
 
269
  ``symlink_target`` on an InventoryFile will fail.  It is still okay to
 
270
  read those attributes on any kind of InventoryEntry.  The complete list
 
271
  of affected attributes is: ``executable``, ``text_id``, ``text_sha1``,
 
272
  ``text_size`` (only valid for kind == file); ``symlink_target`` (only
 
273
  valid for kind == link); and ``reference_revision`` (only valid for kind
 
274
  == tree-reference).  (Andrew Bennetts)
 
275
 
 
276
* InventoryEntry objects no longer have ``_put_in_tar`` or
 
277
  ``_put_on_disk`` methods.  (Andrew Bennetts)
 
278
 
 
279
* The ``get_filename`` parameter in the ``config.IniBaseConfig``
 
280
  constructor has been deprecated, use the ``file_name`` parameter instead.
 
281
  (Vincent Ladeuil)
 
282
 
 
283
Internals
 
284
*********
 
285
 
 
286
* Remove used and broken code path in ``BranchInitHookParams.__repr__``.
 
287
  (Andrew Bennetts)
 
288
 
 
289
Testing
 
290
*******
 
291
 
 
292
* HTTP test servers will leak less threads (and sockets) and will not hang on
 
293
  AIX anymore. (Vincent Ladeuil, #405745)
 
294
 
 
295
* Rearrange thread leak detection code to eliminate global state and make it
 
296
  possible to extend the reporting. (Marting [gz], #633462)
 
297
 
 
298
* The test suite now simply holds log files in memory, rather than writing them
 
299
  out to disk and then reading them back in and deleting them.
 
300
  (Andrew Bennetts)
 
301
 
 
302
* The way ``bzr selftest --parallel`` generates N partitions of tests to
 
303
  run in parallel has changed.  Instead of splitting the list of tests at
 
304
  N-1 points, it distributes the tests one-by-one into the partitions in a
 
305
  round robin fashion.  This reduces the total time to run the tests in
 
306
  parallel because a series of slow tests in the test suite will be
 
307
  distributed evenly among the parallel test suites, rather than slowing
 
308
  down just one suite.  (Andrew Bennetts)
 
309
 
 
310
 
 
311
bzr 2.2.1
 
312
#########
 
313
 
 
314
:Codename: ??
 
315
:2.2.1: NOT RELEASED YET
 
316
 
 
317
Bug Fixes
 
318
*********
 
319
 
 
320
* ``bzr add SYMLINK/FILE`` now works properly when the symlink points to a
 
321
  previously-unversioned directory within the tree: the directory is
 
322
  marked versioned too.
 
323
  (Martin Pool, #192859)
 
324
 
 
325
* CommitBuilder now uses the committer instead of _config.username to generate
 
326
  the revision-id.  (Aaron Bentley, #614404)
 
327
 
 
328
* Cope with Microsoft FTP server that returns reply '250 Directory
 
329
  created' when mkdir succeeds.  (Martin Pool, #224373)
 
330
 
 
331
* Don't traceback when a lockdir's ``held/info`` file is corrupt (e.g.
 
332
  contains only NUL bytes).  Instead warn the user, and allow ``bzr
 
333
  break-lock`` to remove it.  (Andrew Bennetts, #619872)
 
334
  
 
335
* Fix ``AttributeError on parent.children`` when adding a file under a
 
336
  directory that was a symlink in the previous commit.
 
337
  (Martin Pool, #192859)
 
338
 
 
339
* Fix ``AttributeError: 'NoneType' object has no attribute 'close'`` in
 
340
  ``_close_ssh_proc`` when using ``bzr+ssh://``.  This was causing
 
341
  connections to pre-1.6 bzr+ssh servers to fail, and causing warnings on
 
342
  stderr in some other circumstances.  (Andrew Bennetts, #633745)
 
343
 
 
344
* Only call ``setlocale`` in the bzr startup script on posix systems. This
 
345
  avoids an issue with the newer windows C runtimes used by Python 2.6 and
 
346
  later which can mangle bytestrings printed to the console.
 
347
  (Martin [gz], #631350)
 
348
 
 
349
Improvements
 
350
************
 
351
 
 
352
Documentation
 
353
*************
 
354
 
 
355
* Fix a lot of references in the docs to the old http://bazaar-vcs.org to
 
356
  the new http://bazaar.canonical.com or http://wiki.bazaar.canonical.com
 
357
  (John Arbash Meinel, #617503)
 
358
 
 
359
Internals
 
360
*********
 
361
 
 
362
* Remove used and broken code path in ``BranchInitHookParams.__repr__``.
 
363
  (Andrew Bennetts)
 
364
 
 
365
 
 
366
bzr 2.2
 
367
#######
 
368
 
 
369
:Codename: La Hulpe
 
370
:2.2: 2010-08-06
 
371
 
 
372
This release marks the start of another long-term-stable series. From
 
373
here, we will only make bugfix releases on the 2.2 series (2.2.1, etc),
 
374
while 2.3 will become our new development series. The 2.0 and 2.1 series
 
375
will also continue to get bugfixes. (Currently 2.0 is planned to be
 
376
supported for another 6 months.)
 
377
 
 
378
This is primarily a bugfix and polish release over the 2.1 series, with
 
379
a large number of bugs fixed (>120), and some performance improvements.
 
380
 
 
381
There are some compatibility changes in this release.  For users of bzrlib
 
382
as a library, we now request that they call ``bzrlib.initialize`` and use
 
383
the returned context manager appropriately. For commandline users we no
 
384
longer guess user identity for ``bzr commit``, users must specify their
 
385
identity using ``bzr whoami`` (you don't need to specify your identity for
 
386
readonly operations).
 
387
 
 
388
Users are encouraged to upgrade from the other stable series.
 
389
 
 
390
Compatibility Breaks
 
391
********************
 
392
 
 
393
* BzrError subclasses no longer support the name "message" to be used
 
394
  as an argument for __init__ or in _fmt format specification as this
 
395
  breaks in some Python versions. errors.LockError.__init__ argument
 
396
  is now named "msg" instead of earlier "message".
 
397
  (Parth Malwankar, #603461)
 
398
 
 
399
* The old ``bzr selftest --benchmark`` option has been removed.
 
400
  <https://launchpad.net/bzr-usertest> is an actively-maintained
 
401
  macrobenchmark suite.
 
402
  (Martin Pool)
 
403
 
 
404
Bug Fixes
 
405
*********
 
406
 
 
407
* ``bzr ignore PATTERNS`` exits with error if a bad pattern is supplied.
 
408
  ``InvalidPattern`` exception error message now shows faulting
 
409
  regular expression.
 
410
  (Parth Malwankar #300062)
 
411
 
 
412
* Configuration files in ``${BZR_HOME}`` are now written in an atomic
 
413
  way which should help avoid problems with concurrent writers.
 
414
  (Vincent Ladeuil, #525571)
 
415
 
 
416
* Don't traceback trying to unversion children files of an already
 
417
  unversioned directory.  (Vincent Ladeuil, #494221)
 
418
 
 
419
* ``HTTP/1.1`` test servers now set a ``Content-Length`` header to comply
 
420
  with pedantic ``HTTP/1.1`` clients. (Vincent Ladeuil, #568421)
 
421
 
 
422
* Progress bars prefer to truncate the text message rather than the
 
423
  counters.  The spinner is shown between the network transfer indicator
 
424
  and the progress message.  Progress bars are correctly cleared off when 
 
425
  they finish.  (Martin Pool, #611127)
 
426
 
 
427
* Recursive binding for checkouts is now detected by bzr. A clear error
 
428
  message is shown to the user. (Parth Malwankar, #405192)
 
429
 
 
430
Improvements
 
431
************
 
432
 
 
433
* Add ``bzrlib.merge.MergeIntoMerger``, which can merge part or all of a
 
434
  tree, and works with unrelated branches.  (Andrew Bennetts)
 
435
 
 
436
* Add py2exe windows target ``bzrw.exe``. This allow for starting a Bazaar
 
437
  GUI with out have a console open in the background.
 
438
  (Gary van der Merwe, #433781)
 
439
 
 
440
Documentation
 
441
*************
 
442
 
 
443
* ``bzr help patterns`` now explains case insensitive patterns and
 
444
  points to Python regular expression documentation.
 
445
  (Parth Malwankar, #594386)
 
446
 
 
447
API Changes
 
448
***********
 
449
 
 
450
* Delete ``ProgressTask.note``, which was deprecated in 2.1.
 
451
 
 
452
Testing
 
453
*******
 
454
 
 
455
* Unit test added to ensure that "message" is not uses as a format variable
 
456
  name in BzrError subclasses as this conflicts with some Python versions.
 
457
  (Parth Malwankar, #603461)
 
458
 
 
459
bzr 2.2b4
 
460
#########
 
461
 
 
462
:Codename: Monkey Magic
 
463
:2.2b4: 2004-07-09
 
464
 
 
465
 
 
466
This fourth and final beta in the 2.2 series now stabilizes the internal
 
467
APIs. Plugin authors are recommended to ensure their releases are
 
468
compatible, so that 2.2rc1 can be a true release candidate, containing
 
469
stable and compatible plugin versions. 
 
470
 
 
471
For users of bzrlib as a library, one of the primary changes is to request
 
472
that they call ``bzrlib.initialize`` and use the returned context manager
 
473
appropriately.
 
474
 
 
475
Better interaction with ``bzr-loom`` to make sure branching from a loom
 
476
even over a smart server still yields a local loom. Not to mention lots of
 
477
bugfixes over 2.2b3.
 
478
 
 
479
Compatibility Breaks
 
480
********************
 
481
 
 
482
* bzrlib library users now need to call ``__enter__`` and ``__exit__`` on
 
483
  the result of ``bzrlib.initialize``. This change was made when fixing
 
484
  the bad habit recent bzr versions have had of leaving progress bars 
 
485
  behind on the screen. That required calling another function before
 
486
  exiting the program, and it made sense to provide a full context
 
487
  manager at the same time. (Robert Collins)
 
488
 
 
489
* The ``bzr`` front end now requires a ``bzrlib.ui.ui_factory`` which is a
 
490
  context manager in the Python 2.5 and above sense. The bzrlib base class
 
491
  is such a manager, but third party UI factories which do not derive from
 
492
  ``bzrlib.ui.UIFactory`` will be incompatible with the command line front
 
493
  end.
 
494
 
 
495
* URLs like ``foo:bar/baz`` are now always parsed as a URL with scheme "foo"
 
496
  and path "bar/baz", even if bzr does not recognize "foo" as a known URL
 
497
  scheme.  Previously these URLs would be treated as local paths.
 
498
  (Gordon Tyler)
 
499
 
 
500
 
 
501
New Features
 
502
************
 
503
 
 
504
* Support ``--directory`` option for a number of additional commands:
 
505
  conflicts, merge-directive, missing, resolve, shelve, switch,
 
506
  unshelve, whoami. (Martin von Gagern, #527878)
 
507
 
 
508
Bug Fixes
 
509
*********
 
510
 
 
511
* ``bzr branch`` to a new repository with a default stacking policy no
 
512
  longer transfers the full history unnecessarily.
 
513
  (Andrew Bennetts, #597942)
 
514
 
 
515
* ``bzr init`` does not recursively scan directory contents anymore
 
516
  leading to faster init for directories with existing content.
 
517
  (Martin [gz], Parth Malwankar, #501307)
 
518
 
 
519
* ``bzr log --exclude-common-ancestry`` is now taken into account for
 
520
  linear ancetries. (Vincent Ladeuil, #575631)
 
521
 
 
522
* ``bzr log -r branch:REMOTE`` can now properly log the remote branch,
 
523
  rather than trying to fetch the data locally and failing because of a
 
524
  readonly error. (Martin von Gagern, #149270)
 
525
 
 
526
* ``bzr pull`` now works when a lp: URL is explicitly defined as the parent
 
527
  or pull location in locations.conf or branch.conf.
 
528
  (Gordon Tyler, #534787)
 
529
 
 
530
* ``bzr reconfigure --unstacked`` now works with branches accessed via a
 
531
  smart server. (Andrew Bennetts, #551525)
 
532
 
 
533
* ``BzrDir.find_branches`` should ignore branches with missing repositories.
 
534
  (Marius Kruger, Robert Collins)
 
535
 
 
536
* ``BzrDir.find_bzrdirs`` should ignore dirs that raises PermissionDenied.
 
537
  (Marius Kruger, Robert Collins)
 
538
 
 
539
* Ensure that wrong path specifications in ``BZR_PLUGINS_AT`` display
 
540
  proper error messages. (Vincent Ladeuil, #591215)
 
541
 
 
542
* Explicitly removing ``--profile-imports`` option from parsed command-line
 
543
  arguments on Windows, because bzr script does the same.
 
544
  (Alexander Belchenko, #588277)
 
545
 
 
546
* Fetching was slightly confused about the best code to use and was
 
547
  using a new code path for all branches, resulting in more lookups than
 
548
  necessary on old branches. (Robert Collins, #593515)
 
549
 
 
550
* Final fix for 'no help for command' issue. We now show a clean message
 
551
  when a command has no help, document how to set help more clearly, and
 
552
  test that all commands available to the test suite have help.
 
553
  (Robert Collins, #177500)
 
554
 
 
555
* Invalid patterns supplied to ``Globster`` or ``lazy_regex`` now raise
 
556
  ``InvalidPattern`` exception showing clear error message to the user.
 
557
  (Parth Malwankar #300062)
 
558
 
 
559
* Progress output is cleaned up when exiting.  (Aaron Bentley)
 
560
 
 
561
* Raise ValueError instead of a string exception.
 
562
  (John Arbash Meinel, #586926)
 
563
 
 
564
* Relative imports in plugins are now handled correctly when using
 
565
  BZR_PLUGINS_AT. (Vincent Ladeuil, #588959)
 
566
 
 
567
* ``ScriptRunner`` now strips off leading indentation from test scripts,
 
568
  which previously caused "SyntaxError: No command for line".
 
569
  (Martin Pool)
 
570
 
 
571
* Show unicode filenames in diff headers using terminal encoding. 
 
572
  (Alexander Belchenko, Bug #382699)
 
573
  NOTE for Windows users: If user need to save diff to file then user need to
 
574
  change encoding of the terminal to ANSI encoding with command ``chcp XXX``
 
575
  (e.g. ``chcp 1251`` for Russian Windows).
 
576
 
 
577
* URL displayed for use with ``break-lock`` when smart server sees lock
 
578
  contention are now valid. Default timeout for lock contention retry is
 
579
  now 30 seconds instead of 300 seconds.
 
580
  (Parth Malwankar, #250451)
 
581
 
 
582
* ``walkdirs`` now raises a useful message when the filenames are not using
 
583
  the filesystem encoding. (Eric Moritz, #488519)
 
584
 
 
585
* Enable debugging of bzr on windows with pdb and other tools. This was 
 
586
  broken because we call GetCommandLineW on windows. The fix adjusts the 
 
587
  command line we get to be the same length as sys.argv.
 
588
  (Jason Spashett, Alexander Belchenko, #587868)
 
589
 
 
590
Improvements
 
591
************
 
592
 
 
593
* Bazaar now reads data from SSH connections more efficiently on platforms
 
594
  that provide the ``socketpair`` function, and when using paramiko.
 
595
  (Andrew Bennetts, #590637)
 
596
 
 
597
* ``Branch.copy_content_into`` is now a convenience method dispatching to
 
598
  a ``InterBranch`` multi-method. This permits ``bzr-loom`` and other
 
599
  plugins to intercept this even when a ``RemoteBranch`` proxy is in use.
 
600
  (Robert Collins, #201613)
 
601
 
 
602
* ``Branch`` formats can now be loaded lazily by registering a
 
603
  ``MetaDirBranchFormatFactory`` rather than an actual format. This will
 
604
  cause the named format class to be loaded only when an enumeration of
 
605
  formats is needed or when the format string for the object is
 
606
  encountered. (Robert Collins, Jelmer Vernooij)
 
607
 
 
608
* The encoding that bzr uses to output things other than file content can
 
609
  now be overridden via the output_encoding configuration option.
 
610
  (Martin Pool, #340394)
 
611
 
 
612
* Use lazy imports in ``bzrlib/merge.py`` so that plugins like ``news_merge``
 
613
  do not cause modules to be loaded unnecessarily just because the plugin
 
614
  registers a merge hook.  This improves ``bzr rocks`` time by about 25%
 
615
  in a default installation (with just the core plugins).
 
616
  (Andrew Bennetts)
 
617
 
 
618
Documentation
 
619
*************
 
620
 
 
621
* Added ``regression`` tag to our tags list. (Robert Collins)
 
622
 
 
623
* Improved our release checklist to have a bit less churn and leave things
 
624
  ready-to-go for the next action (including other people doing
 
625
  development). (Robert Collins)
 
626
 
 
627
* Remove obsolete discussion of PQM in documentation about how to
 
628
  contribute to Bazaar.  (Martin Pool, #588444)
 
629
 
 
630
API Changes
 
631
***********
 
632
 
 
633
* ``bzrlib.branch.InterBranch._get_branch_formats_to_test`` now returns
 
634
  an iterable of format pairs, rather than just a single pair, permitting
 
635
  InterBranch objects that work with multiple permutations to be
 
636
  comprehensively tested. (Robert Collins)
 
637
 
 
638
* ``bzrlib.lsprof.profile`` will no longer silently generate bad threaded
 
639
  profiles when concurrent profile requests are made. Instead the profile
 
640
  requests will be serialised. Reentrant requests will now deadlock.
 
641
  (Robert Collins)
 
642
 
 
643
* ``bzrlib.knit.KnitSequenceMatcher``, which has been deprecated since
 
644
  2007, has been deleted.  Use ``PatienceSequenceMatcher`` from
 
645
  ``bzrlib.patiencediff`` instead. (Andrew Bennetts)
 
646
 
 
647
* ``bzrlib.re_compile_checked`` is now deprecated. Caller should handle
 
648
  ``bzrlib.errors.InvalidPattern`` exception thrown by ``re.match`` in
 
649
  case the default error message not suitable for the use case.
 
650
  (Parth Malwankar)
 
651
 
 
652
* ``bzrlib.tests.blackbox.ExternalBase`` is deprecated.  It provided only
 
653
  one method ``check_output``, and we now recommend checking command
 
654
  output using ``run_script``. (Martin Pool)
 
655
 
 
656
* ``bzrlib.transport.ssh.SSHVendor.connect_ssh`` now returns an object
 
657
  that implements the interface of ``bzrlib.transport.ssh.SSHConnection``.
 
658
  Third-party implementations of ``SSHVendor`` may need to be updated
 
659
  accordingly.  Similarly, any code using ``SSHConnection`` directly will
 
660
  need to be updated.  (Andrew Bennetts)
 
661
 
 
662
* The constructor of ``bzrilb.smart.medium.SmartSSHClientMedium`` has
 
663
  changed to take an ``SSHParams`` instance (replacing many individual
 
664
  values).  (Andrew Bennetts)
 
665
 
 
666
Internals
 
667
*********
 
668
 
 
669
* ``bzrlib.osutils.get_terminal_encoding`` will now only mutter its
 
670
  selection when explicitly requested; this avoids many duplicate calls
 
671
  being logged when helpers, wrappers and older code that manually calls
 
672
  it are executed it is now logged deliberately by the ui setup code.
 
673
  (Robert Collins)
 
674
 
 
675
* Improved ``bzrlib.urlutils`` to handle lp:foo/bar URLs. (Gordon Tyler)
 
676
 
 
677
* ``bzrlib._c_static_tuple.StaticTuple`` now implements ``__sizeof__``, so
 
678
  that ``sys.getsizeof`` and other memory analysis tools will report more
 
679
  accurate results. (Andrew Bennetts)
 
680
 
 
681
* The symbol_versioning module can now cleanup after itself -
 
682
  ``suppress_deprecation_warnings`` now returns a cleanup function.
 
683
  (Robert Collins)
 
684
 
 
685
Testing
 
686
*******
 
687
 
 
688
* Add ``bzrlib.tests.fixtures`` to hold code for setting up objects
 
689
  to test.  (Martin Pool)
 
690
 
 
691
* ``test_import_tariff`` now respects BZR_PLUGINS_AT and BZR_PLUGINS_DISABLE.
 
692
  (Vincent Ladeuil, #595587)
 
693
 
 
694
bzr 2.2b3
 
695
#########
 
696
 
 
697
:2.2b3: 2010-05-28
 
698
 
 
699
This third beta in the 2.2 series brings with it all the goodness of 2.1.2
 
700
and 2.0.6 (though it preceeds 2.0.6 slightly). Of particular note for
 
701
users are compatibility fixes with bzr 1.5 and below servers, a hopeful
 
702
end to the EINTR errors caused by SIGWINCH interactions, a shiny new
 
703
bash completion script and bzr will no longer guess at identity details -
 
704
it was too unreliable in reality. Use ``bzr whoami`` on every new install.
 
705
For developers we have some API changes which may impact plugins as well
 
706
as a bunch of our regular improvements to internal clarity and test
 
707
support.
 
708
 
 
709
Compatibility Breaks
 
710
********************
 
711
 
 
712
* An API break has been made to the lock_write method of ``Branch`` and
 
713
  ``Repository`` objects; they now return ``branch.BranchWriteLockResult``
 
714
  and ``repository.RepositoryWriteLockResult`` objects. This makes
 
715
  changing the API in future easier and permits some cleaner calling code.
 
716
  The lock_read method has also changed from having no defined return
 
717
  value to returning ``LogicalLockResult`` objects.
 
718
  (Robert Collins)
 
719
 
 
720
* ``bzr`` does not try to guess the username as ``username@hostname``
 
721
  and requires it to be explictly set. This can be set using ``bzr
 
722
  whoami``. (Parth Malwankar, #549310)
 
723
 
 
724
* ``bzrlib.commands.Command`` will now raise ValueError during
 
725
  construction if there is no __doc__ set. (Note, this will be reverted in
 
726
  2.2b4) (Robert Collins)
 
727
 
 
728
* The source tree no longer contains a contrib/zsh/_bzr completion
 
729
  script. The new file contrib/zsh/README suggests alternatives.
 
730
  (Martin von Gagern, #560030)
 
731
 
 
732
New Features
 
733
************
 
734
 
 
735
* ``bzr commit`` accepts ``-p`` (for "patch") as a shorter name for
 
736
  ``--show-diff``.
 
737
  (Parth Malwankar, #571467)
 
738
  
 
739
* ``bzr ignore`` now supports a ``--default-rules`` option that displays
 
740
  the default ignore rules used by bzr. The flag ``--old-default-rules``
 
741
  is no longer supported by ``ignore``.
 
742
  (Parth Malwankar, #538703)
 
743
 
 
744
* ``bzr pack`` now supports a ``--clean-obsolete-packs`` option that
 
745
  can save disk space by deleting obsolete pack files created during the
 
746
  pack operation.
 
747
  (Parth Malwankar, #304320)
 
748
 
 
749
* New command line option ``--authors`` to ``bzr log`` allows users to
 
750
  select which of the apparent authors and committer should be
 
751
  included in the log. Defaults depend on format. (Martin von Gagern, #513322)
 
752
 
 
753
* Support ``--directory`` option for a number of additional commands:
 
754
  added, annotate, bind, cat, cat-revision, clean-tree, deleted,
 
755
  export, ignore, ignored, lookup-revision, ls, modified, nick,
 
756
  re-sign, unbind, unknowns.
 
757
  (Martin von Gagern, #527878)
 
758
 
 
759
* The bash_completion plugin from the bzr-bash-completion project has
 
760
  been merged into the tree. It provides a bash-completion command and
 
761
  replaces the outdated ``contrib/bash/bzr`` script with a version
 
762
  using the plugin. (Martin von Gagern, #560030)
 
763
 
 
764
* A new transport based on GIO (the gnome i/o library) provides access to
 
765
  samba shares, webdav using gio+smb and gio+dav. It is also possible to
 
766
  use gio for some already existing transport methods as gio+file,
 
767
  gio+sftp, gio+ftp. 
 
768
  (Mattias Eriksson)
 
769
 
 
770
Bug Fixes
 
771
*********
 
772
 
 
773
* Alias information shown by ``bzr help`` is now accurate. This
 
774
  was showing an internal object name for some plugin aliases.
 
775
  (Parth Malwankar, #584650)
 
776
 
 
777
* ``.bazaar``, ``.bazaar/bazaar.conf`` and ``.bzr.log`` inherit user and
 
778
  group ownership from the containing directory. This allow bzr to work
 
779
  better with sudo.
 
780
  (Martin <gzlist@googlemail.com>, Parth Malwankar, #376388)
 
781
 
 
782
* ``bzr clean-tree`` should not delete nested bzrdirs. Required for proper
 
783
  support of bzr-externals and scmproj plugins.
 
784
  (Alexander Belchenko, bug #572098)
 
785
 
 
786
* ``bzr ignore`` will no longer add duplicate patterns to .bzrignore.
 
787
  (Gordon Tyler, #572092)
 
788
 
 
789
* ``bzr log --exclude-common-ancestry -r X..Y`` displays the revisions that
 
790
  are part of Y ancestry but not part of X ancestry (aka the graph
 
791
  difference).
 
792
  (Vincent Ladeuil, #320119)
 
793
 
 
794
* ``bzr lp-propose`` which was switched to use production Launchpad API
 
795
  servers a few commits ago has been reverted to use edge: there is a
 
796
  problem with using production which isn't trivially obvious, so we've
 
797
  filed a bug to track it, and until thats fixed will be using edge.
 
798
  (Robert Collins, #583667)
 
799
 
 
800
* ``bzr rm`` should not refuse to delete directories which contained a file
 
801
  which has been moved elsewhere in the tree after the previous commit.
 
802
  (Marius Kruger, Daniel Watkins, #129880)
 
803
 
 
804
* ``bzr selftest --parallel=fork`` wait for its children avoiding zombies.
 
805
  (Vincent Ladeuil, #566670)
 
806
 
 
807
* ``bzr selftest`` should not use ui.note() since it's not unicode safe.
 
808
  (Vincent Ladeuil, #563997)
 
809
 
 
810
* CommitBuilder refuses to create revisions whose trees have no root.
 
811
  (Aaron Bentley)
 
812
 
 
813
* Do not register a SIGWINCH signal handler, instead just poll for the
 
814
  terminal width as needed.  This avoids the "Interrupted System Call"
 
815
  problems that occur on POSIX with all currently released versions of
 
816
  Python.
 
817
  (Andrew Bennetts, #583941)
 
818
 
 
819
* Don't mention --no-strict when we just issue the warning about unclean trees.
 
820
  (Vincent Ladeuil, #401599)
 
821
 
 
822
* Fixed ``AssertionError`` when accessing smart servers running Bazaar
 
823
  versions before 1.6.
 
824
  (Andrew Bennetts, #528041)
 
825
 
 
826
* Improved progress bar for fetch (2a format only). Bazaar now shows an
 
827
  estimate of the number of records to be fetched vs actually fetched.
 
828
  (Parth Malwankar, #374740, #538868)
 
829
 
 
830
* Reduce peak memory by one copy of compressed text.
 
831
  (John Arbash Meinel, #566940)
 
832
 
 
833
* ``RemoteBranch.lock_write`` raises ``ReadOnlyError`` if called during a
 
834
  read lock, rather than causing an ``AttributeError``.
 
835
  (Andrew Bennetts, Š”анило ŠØŠµŠ³Š°Š½, #582781)
 
836
 
 
837
* Selftest was failing with testtools 0.9.3, which caused an
 
838
  AssertionError raised from a cleanUp to be reported as a Failure, not an
 
839
  Error, breaking on of our test hygiene tests.
 
840
  (Robert Collins, Vincent Ladeuil).
 
841
 
 
842
* ``set_user_option`` with a dict on remote branches no longer fails with
 
843
  an AttributeError.  There is a new ``Branch.set_config_option_dict`` RPC
 
844
  to support this efficiently.
 
845
  (Andrew Bennetts, #430382)
 
846
  
 
847
* Show the filenames when a file rename fails so that the error will be
 
848
  more comprehensible.
 
849
  (Martin Pool, #491763)
 
850
 
 
851
* Support Pyrex 0.9.9, required changing how we handle exceptions in Pyrex.
 
852
  (John Arbash Meinel, #582656)
 
853
 
 
854
* Unicode characters in aliases are now handled correctly and do not cause
 
855
  UnicodeEncodeError exception. (Parth Malwankar, #529930)
 
856
 
 
857
* Unicode commit messages that are the same as a file name no longer cause
 
858
  UnicodeEncodeError. ``ui.text.show_warning`` now handles unicode
 
859
  messages.
 
860
  (Parth Malwankar, #563646)
 
861
 
 
862
* Using bzr with `lp:` urls behind an http proxy should work.
 
863
  (Robert Collins, #558343)
 
864
 
 
865
* When passing a file to ``UTF8DirReader`` make sure to close the current
 
866
  directory file handle after the chdir fails. Otherwise when passing many
 
867
  filenames into a command line ``bzr status`` we would leak descriptors.
 
868
  (John Arbash Meinel, #583486)
 
869
 
 
870
Improvements
 
871
************
 
872
 
 
873
* ``append_revisions_only`` will now be interpreted as a boolean and a
 
874
  warning emitted if illegal values are used. Note that for projects
 
875
  that needs to maintain compatibility with previsous bzr versions,
 
876
  only 'True' and 'False' strings must be used (previous versions of
 
877
  bzr will interpret all strings differing from 'True'
 
878
  (case-sensitive) as false.
 
879
  (Brian de Alwis, Vincent Ladeuil)
 
880
 
 
881
* ``bzr ls`` now supports short options for existing long options.
 
882
  ``-k/--kind``, ``-i/--ignored``, ``-u/--unknown`` and ``-0/--null``.
 
883
  (Parth Malwankar, #181124)
 
884
 
 
885
* ``Config.get_user_option_as_bool`` will now warn if a value cannot
 
886
  be interpreted as a boolean.
 
887
  (Vincent Ladeuil)
 
888
 
 
889
* The all-in-one Windows installer will now be built with docstrings stripped
 
890
  from the library zip, reducing the size and slightly improving cold startup
 
891
  time. Bundled plugins are unchanged for the moment, but if adding other new
 
892
  plugins to an all-in-one installation, ensure they are compiled and
 
893
  installed with -O1 or help may not work. (Martin [gz])
 
894
 
 
895
API Changes
 
896
***********
 
897
 
 
898
* Added ``bzrlib.merge.PerFileMerger``, a more convenient way to write
 
899
  some kinds of ``merge_file_content`` hook functions.
 
900
  (Andrew Bennetts)
 
901
  
 
902
* `BzrDir`, `Branch`, `Repository` and `WorkingTree` now all support `user_url`,
 
903
  `user_transport`, `control_url` and `control_transport` members pointing
 
904
  respectively to the directory containing the ``.bzr`` control directory, 
 
905
  and to the directory within ``.bzr`` used for the particular component.
 
906
  All of them inherit from `ControlComponent` which provides default
 
907
  implementations.
 
908
  (Martin Pool)
 
909
 
 
910
* Lock methods on ``Tree``, ``Branch`` and ``Repository`` are now
 
911
  expected to return an object which can be used to unlock them. This reduces
 
912
  duplicate code when using cleanups. The previous 'tokens's returned by
 
913
  ``Branch.lock_write`` and ``Repository.lock_write`` are now attributes
 
914
  on the result of the lock_write. ``repository.RepositoryWriteLockResult``
 
915
  and ``branch.BranchWriteLockResult`` document this. (Robert Collins)
 
916
 
 
917
* ``Repository.refresh_data`` may now be called in a write group on
 
918
  pack-based repositories.  Older repositories will still raise an error
 
919
  in this case.  Subclasses of ``Repository`` can still override
 
920
  ``Repository._refresh_data``, but are now responsible for raising
 
921
  ``bzrlib.repository.IsInWriteGroupError`` if they do not support
 
922
  ``refresh_data`` during a write group.
 
923
  (Andrew Bennetts, #574236)
 
924
 
 
925
Internals
 
926
*********
 
927
 
 
928
* ``chk_map._bytes_to_text_key`` is now an optimized function to extract
 
929
  the (file-id, revision-id) key from a CHKInventory entry. This can
 
930
  potentially shave 5-10% time off during a large fetch. Related to bug
 
931
  #562666. (John Arbash Meinel)
 
932
 
 
933
* ``log._get_info_for_log_files`` now takes an add_cleanup callable.
 
934
  (Robert Collins)
 
935
 
 
936
* ``_remember_remote_is_before`` no longer raises AssertionError when
 
937
  suboptimal network behaviour is noticed; instead it just mutters to the
 
938
  log file (and warns the user if they have set the ``hpss`` debug flag).
 
939
  This was causing unnecessary aborts for performance bugs that are minor
 
940
  at worst.
 
941
  (Andrew Bennetts, #528041)
 
942
 
 
943
* Permit bzr to run under ``python -OO`` which reduces the size of bytecode
 
944
  files loaded from disk. To ensure docstrings needed for help are never
 
945
  stripped, the prefix ``__doc__ =`` should now be used.
 
946
  (Martin <gzlist@googlemail.com>)
 
947
 
 
948
* No longer require zlib headers to build extensions, and remove the need
 
949
  for seperate copy of zlib library on windows.
 
950
  (John Arbash Meinel, Martin <gzlist@googlemail.com>, #566923)
 
951
 
 
952
Testing
 
953
*******
 
954
 
 
955
* Added ``bzrlib.tests.matchers`` as a place to put matchers, along with
 
956
  our first in-tree matcher. See the module docstring for details.
 
957
  (Robert Collins)
 
958
 
 
959
* ``bzr selftest --parallel=subprocess`` now works correctly on win32.
 
960
   (Gordon Tyler, #551332)
 
961
 
 
962
* Workaround ``Crypto.Random`` check leading to spurious test
 
963
  failures on Lucid, FreeBSD and gentoo.  
 
964
  (Vincent Ladeuil, #528436)
 
965
 
 
966
* New class ``ExecutableFeature`` for checking the availability of
 
967
  executables on the ``PATH``. Migrated from bash_completion plugin.
 
968
  (Martin von Gagern)
 
969
 
 
970
bzr 2.2b2
 
971
#########
 
972
 
 
973
:2.2b2: 2010-04-16
 
974
 
 
975
This is a somewhat early second beta of the 2.2 series, to fix a python2.4
 
976
incompatibility in the 2.2b1 release.  It also includes a swag of
 
977
performance, usability and correctness improvements: test feedback on all
 
978
of these would be welcome.
 
979
 
 
980
 
 
981
New Features
 
982
************
 
983
 
 
984
* ``bzr diff`` now supports a --format option, which can be used to 
 
985
  select alternative diff formats. (Jelmer Vernooij, #555994)
 
986
 
 
987
Bug Fixes
 
988
*********
 
989
 
 
990
* ``bzr dpush``, ``bzr push`` and ``bzr send`` will now issue a warning
 
991
  instead of failing when dirty trees are involved. The corresponding
 
992
  ``dpush_strict``, ``push_strict`` and ``send_strict`` should be set to
 
993
  True explicitly to get the previous behaviour.  
 
994
  (Vincent Ladeuil, #519319)
 
995
 
 
996
* ``bzr export`` to tar file does not fail if any parent directory
 
997
  contains unicode characters. This works around upstream Python bug
 
998
  http://bugs.python.org/issue8396 .
 
999
  (Parth Malwankar, #413406)
 
1000
 
 
1001
* ``bzr switch`` does not die if a ConfigurableFileMerger is used.
 
1002
  (Aaron Bentley, #559436)
 
1003
 
 
1004
* ``bzr update`` when a pending merge in the working tree has been merged
 
1005
  into the master branch will no longer claim that old commits have become
 
1006
  pending merges. (Robert Collins, #562079)
 
1007
 
 
1008
* ``bzrlib.mutabletree.MutableTree.commit`` will now support a passed in
 
1009
  config as in previous versions of bzrlib. (Robert Collins)
 
1010
 
 
1011
* Fix glitch in the warning about unclean trees display.
 
1012
  (Vincent Ladeuil, #562665)
 
1013
 
 
1014
* Fixed Python2.4 incompatibilities in the bzr2.2b1 source tarball.
 
1015
  (Martin Pool)
 
1016
 
 
1017
* Help messages generated by ``RegistryOption.from_kwargs`` list the
 
1018
  switches in alphabetical order, rather than in an undefined order.
 
1019
  (Martin von Gagern, #559409)
 
1020
 
 
1021
* Make sure the ``ExecutablePath`` and ``InterpreterPath`` are set in
 
1022
  Apport crash reports, to avoid "This problem report applies to a program
 
1023
  which is not installed any more" error.
 
1024
  (Martin Pool, James Westby, #528114)
 
1025
 
 
1026
* Reset ``siginterrupt`` flag to False every time we handle a signal
 
1027
  installed with ``set_signal_handler(..., restart_syscall=True)`` (from
 
1028
  ``bzrlib.osutils``.  Reduces the likelihood of "Interrupted System Call"
 
1029
  errors compared to registering ``signal.signal`` directly.
 
1030
  (Andrew Bennetts)
 
1031
 
 
1032
* When invoked with a range revision, ``bzr log`` doesn't show revisions
 
1033
  that are not part of the Y revisions ancestry anymore when invoked with
 
1034
  -rX..Y.
 
1035
  (Vincent Ladeuil, #474807)
 
1036
 
 
1037
* Properly handle ``param_name`` attribute for ``ListOption``.
 
1038
  (Martin von Gagern, #387117)
 
1039
 
 
1040
Improvements
 
1041
************
 
1042
 
 
1043
* ``bzr commit`` will prompt before using a commit message that was
 
1044
  generated by a template and not edited by the user.
 
1045
  (Robert Collins, #530265)
 
1046
 
 
1047
* ``bzr diff`` read-locks the trees and branches only once, saving about
 
1048
  10-20ms on ``bzr diff`` in a bzr.dev tree.
 
1049
  (Andrew Bennetts)
 
1050
 
 
1051
* ``bzr missing`` read-locks the branches only once.
 
1052
  (Andrew Bennetts)
 
1053
  
 
1054
* ``bzr pull`` locks the branches and tree only once.
 
1055
  (Andrew Bennetts)
 
1056
  
 
1057
* Index lookups in pack repositories search recently hit pack files first.  
 
1058
  In repositories with many pack files this can greatly reduce the
 
1059
  number of files accessed, the number of bytes read, and the number of
 
1060
  read calls.  An incremental pull via plain HTTP takes half the time and
 
1061
  bytes for a moderately large repository.  (Andrew Bennetts)
 
1062
 
 
1063
* Index lookups only re-order the indexes when the hit files aren't
 
1064
  already first. Reduces the cost of reordering
 
1065
  (John Arbash Meinel, #562429)
 
1066
 
 
1067
* Less code is loaded at startup.  (Cold-cache start time is about 10-20%
 
1068
  less.)
 
1069
  (Martin Pool, #553017)
 
1070
 
 
1071
API Changes
 
1072
***********
 
1073
 
 
1074
* ``bzrlib.diff.get_trees_and_branches_to_diff`` is deprecated.  Use
 
1075
  ``get_trees_and_branches_to_diff_locked`` instead.
 
1076
  (Andrew Bennetts)
 
1077
 
 
1078
* ``TreeTransform.commit`` supports the full set of commit parameters, and
 
1079
  auto-determines branch nick if not supplied.  (Aaron Bentley)
 
1080
  
 
1081
Internals
 
1082
*********
 
1083
 
 
1084
* ``bzrlib.commands.Command.run_direct`` is no longer needed - the pre
 
1085
  2.1 method of calling run() to perform testing or direct use via the API
 
1086
  is now possible again. As part of this, the _operation attribute on
 
1087
  Command is now transient and only exists for the duration of ``run()``.
 
1088
  (Robert Collins)
 
1089
 
 
1090
bzr 2.2b1
 
1091
#########
 
1092
 
 
1093
:2.2b1: 2010-04-01
 
1094
 
 
1095
This is the first beta of the 2.2 series, leading up to a 2.2.0
 
1096
release in July or August.  Beta releases are suitable for everyday use
 
1097
but may cause some incompatibilities with plugins.  Some plugins may need
 
1098
small updates to work with 2.2b1.
 
1099
 
 
1100
2.2b1 includes some changes to make merge conflicts easier to understand
 
1101
and resolve.  It also removes some old unnecessary code, and loads
 
1102
somewhat less code at startup.  It starts adding a common infrastructure
 
1103
for dealing with colocated named branches, which can be implemented in
 
1104
various ways in either bzr native or foreign formats.   On Ubuntu and
 
1105
other platforms with the apport bug-reporting library, there's an easier
 
1106
path to report problems with bzr.  We plan to continue with these themes
 
1107
through the 2.2 series.
 
1108
 
 
1109
Over thirty bugs have been fixed, including in the log command, exporting
 
1110
to tarballs, restarting interrupted system calls, portability of compiled
 
1111
extensions, making backups during upgrade, and locking on ftp.
 
1112
 
 
1113
Compatibility Breaks
 
1114
********************
 
1115
 
 
1116
* BTreeGraphIndex can now take an offset to indicate that the data starts
 
1117
  somewhere other than then beginning of the file. (John Arbash Meinel)
16
1118
 
17
1119
* Deleted very old hidden commands ``versionedfile-list``,
18
1120
  ``weave-plan-merge``, ``weave-merge-text``.
19
1121
  (Martin Pool)
20
1122
 
21
 
* ``Repository.get_inventory_sha1()`` has been removed. (Jelmer Vernooij)
 
1123
* ``Repository.get_inventory_sha1()`` and ``Repository.get_revision_xml()`` 
 
1124
  have been removed. (Jelmer Vernooij)
22
1125
 
23
 
* ``Repository.get_revision_xml()`` has been removed. (Jelmer Vernooij)
 
1126
* ``Repository.get_revision_inventory()`` has been removed in favor of
 
1127
  ``Repository.get_inventory()``. (Jelmer Vernooij)
24
1128
 
25
1129
* All test servers have been moved out of the bzrlib.transport hierarchy to
26
1130
  bzrlib.tests.test_server *except* for MemoryServer, ChrootServer and
29
1133
  ``bzrlib.tests.test_server``.
30
1134
  (Vincent Ladeuil)
31
1135
 
 
1136
* ``BranchReferenceFormat.initialize()`` now takes an optional name argument
 
1137
  as its second parameter, for consistency with the initialize() method of
 
1138
  other formats. (Jelmer Vernooij)
 
1139
 
32
1140
New Features
33
1141
************
34
1142
 
 
1143
* Added ``bzr remove-branch`` command that can remove a local or remote 
 
1144
  branch. (Jelmer Vernooij, #276295)
 
1145
 
 
1146
* ``bzr export`` now takes an optional argument ``--per-file-timestamps``
 
1147
  to set file mtimes to the last timestamp of the last revision in which
 
1148
  they were changed rather than the current time. (Jelmer Vernooij)
 
1149
 
35
1150
* If the Apport crash-reporting tool is available, bzr crashes are now
36
1151
  stored into the ``/var/crash`` apport spool directory, and the user is
37
1152
  invited to report them to the developers from there, either
38
1153
  automatically or by running ``apport-bug``.  No information is sent
39
1154
  without specific permission from the user.  (Martin Pool, #515052)
40
1155
 
 
1156
* Parsing of command lines, for example in ``diff --using``, no longer
 
1157
  treats backslash as an escape character on Windows.   (Gordon Tyler,
 
1158
  #392428)
 
1159
 
 
1160
* Plugins can be disabled by defining ``BZR_DISABLE_PLUGINS`` as
 
1161
  a list of plugin names separated by ':' (';' on windows).
 
1162
  (Vincent Ladeuil, #411413)
 
1163
 
 
1164
* Plugins can be loaded from arbitrary locations by defining
 
1165
  ``BZR_PLUGINS_AT`` as a list of name@path separated by ':' (';' on
 
1166
  windows). This takes precedence over ``BZR_PLUGIN_PATH`` for the
 
1167
  specified plugins. This is targeted at plugin developers for punctual
 
1168
  needs and *not* intended to replace ``BZR_PLUGIN_PATH``.  
 
1169
  (Vincent Ladeuil, #82693)
 
1170
 
 
1171
* Tag names can now be determined automatically by ``automatic_tag_name`` 
 
1172
  hooks on ``Branch`` if they are not specified on the command line.
 
1173
  (Jelmer Vernooij)
 
1174
 
41
1175
* Tree-shape conflicts can be resolved by providing ``--take-this`` and
42
1176
  ``--take-other`` to the ``bzr resolve`` command. Just marking the conflict
43
1177
  as resolved is still accessible via the ``--done`` default action.
44
1178
  (Vincent Ladeuil)
45
1179
 
 
1180
* Merges can be proposed on Launchpad with the new lp-propose-merge command.
 
1181
  (Aaron Bentley, Jonathan Lange)
 
1182
 
46
1183
Bug Fixes
47
1184
*********
48
1185
 
49
1186
* Added docstring for ``Tree.iter_changes``
50
1187
  (John Arbash Meinel, #304182)
51
1188
 
 
1189
* Allow additional arguments to
 
1190
  ``RemoteRepository.add_inventory_by_delta()``. (Jelmer Vernooij, #532631)
 
1191
 
52
1192
* Allow exporting a single file using ``bzr export``.
53
1193
  (Michal JunĆ”k, #511987)
54
1194
 
 
1195
* Allow syscalls to automatically restart when ``TextUIFactory``'s
 
1196
  SIGWINCH handler is invoked, avoiding ``EINTR`` errors during blocking
 
1197
  IO, which are often poorly handled by Python's libraries and parts of
 
1198
  bzrlib.  (Andrew Bennetts, #496813)
 
1199
 
55
1200
* Avoid infinite recursion when probing for apport.
56
1201
  (Vincent Ladeuil, #516934)
57
1202
 
58
1203
* Avoid ``malloc(0)`` in ``patiencediff``, which is non-portable.
59
1204
  (Martin Pool, #331095)
60
1205
 
 
1206
* Avoid truncating svn URLs.
 
1207
  (Martin Pool, Martin von Gagern, #545185)
 
1208
 
61
1209
* ``bzr add`` will not add conflict related files unless explicitly required.
62
1210
  (Vincent Ladeuil, #322767, #414589)
63
1211
 
 
1212
* ``bzr dump-btree`` now works on ``*.cix`` and ``*.six`` files.  Those
 
1213
  indices do not have reference lists, so ``dump-btree`` will simply show
 
1214
  ``None`` instead.  (Andrew Bennetts, #488607)
 
1215
 
 
1216
* ``bzr help`` will no longer trigger the get_missing_command hook when
 
1217
  doing a topic lookup. This avoids prompting (like 'no command plugins/loom,
 
1218
  did you mean log?') when getting help. In future we may trigger the hook 
 
1219
  deliberately when no help topics match from any help index.
 
1220
  (Robert Collins, #396261)
 
1221
 
 
1222
* ``bzr log -n0 -r..A.B.C`` should not crash but just consider the None
 
1223
  revspec as representing the first revision of the branch.
 
1224
  (Vincent Ladeuil, #519862)
 
1225
 
64
1226
* ``bzr remove-tree`` can now remove multiple working trees.
65
1227
  (Jared Hance, Andrew Bennetts, #253137)
66
1228
 
67
 
* Fix signature of RemoteBzrDir.create_workingtree to match that of its
68
 
  superclass.  (Neil Martinsen-Burrell, #524627)
 
1229
* ``bzr resolve --take-this`` and ``--take-other`` now correctly renames
 
1230
  the kept file on content conflicts where one side deleted the file.
 
1231
  (Vincent Ladeuil, #529968)
 
1232
 
 
1233
* ``bzr upgrade`` now creates the ``backup.bzr`` directory with the same
 
1234
  permissions as ``.bzr`` directory on a POSIX OS.
 
1235
  (Parth Malwankar, #262450)
 
1236
 
 
1237
* ``bzr upgrade`` now names backup directory as ``backup.bzr.~N~`` instead
 
1238
  of ``backup.bzr``. This directory is ignored by bzr commands such as
 
1239
  ``add``.
 
1240
  (Parth Malwankar, #335033, #300001)
 
1241
 
 
1242
* Cope with non-utf8 characters inside ``.bzrignore``.
 
1243
  (Jason Spashett, #183504)
 
1244
 
 
1245
* Correctly interpret "451 Rename/move failure: Directory not empty" from
 
1246
  ftp servers while trying to take a lock.
 
1247
  (Martin Pool, #528722)
 
1248
 
 
1249
* DirStateRevisionTree.kind() was returning wrong result when 'kind'
 
1250
  changes occured between the workingtree and one of its parents.
 
1251
  (Vincent Ladeuil, #535547)
 
1252
 
 
1253
* Fix ``log`` to better check ancestors even if merged revisions are involved.
 
1254
  (Vincent Ladeuil, #476293)
 
1255
 
 
1256
* Loading a plugin from a given path with ``BZR_PLUGINS_AT`` doesn't depend
 
1257
  on os.lisdir() order and is now reliable.
 
1258
  (Vincent Ladeuil, #552922).
 
1259
 
 
1260
* Many IO operations that returned ``EINTR`` were retried even if it
 
1261
  wasn't safe to do so via careless use of ``until_no_eintr``.  Bazaar now
 
1262
  only retries operations that are safe to retry, and in some cases has
 
1263
  switched to operations that can be retried (e.g. ``sock.send`` rather than
 
1264
  ``sock.sendall``).
 
1265
  (Andrew Bennetts, Martin <gzlist@googlemail.com>, #496813)
 
1266
 
 
1267
* Path conflicts now support --take-this and --take-other even when a
 
1268
  deletion is involved.
 
1269
  (Vincent Ladeuil, #531967)
69
1270
 
70
1271
* Network transfer amounts and rates are now displayed in SI units according
71
1272
  to the Ubuntu Units Policy <https://wiki.ubuntu.com/UnitsPolicy>.
75
1276
  prevents ``bzr status --short`` from crashing when those files are
76
1277
  present.  (John Arbash Meinel, #303275)
77
1278
 
 
1279
* ``bzr mkdir DIR`` will not create DIR unless DIR's parent is a versioned
 
1280
   directory. (Parth Malwankar, #138600)
 
1281
 
 
1282
* SSH child processes will now ignore SIGQUIT on nix systems so breaking into
 
1283
  the debugger won't kill the session.
 
1284
  (Martin <gzlist@googlemail.com>, #162502)
 
1285
 
 
1286
* Tolerate patches with leading noise in ``bzr-handle-patch``.
 
1287
  (Toshio Kuratomi, Martin Pool, #502076)
 
1288
 
 
1289
* ``update -r`` now supports updating to revisions that are not on
 
1290
  mainline (i.e. it supports dotted revisions).
 
1291
  (Parth Malwankar, #517800)
 
1292
 
 
1293
* Use first apparent author not committer in GNU Changelog format.
 
1294
  (Martin von Gagern, #513322)
 
1295
 
78
1296
API Changes
79
1297
***********
80
1298
 
 
1299
* ``bzrlib.merge_directive._BaseMergeDirective`` has been renamed to 
 
1300
  ``bzrlib.merge_directive.BaseMergeDirective`` and is now public.
 
1301
  (Jelmer Vernooij)
 
1302
 
 
1303
* ``BranchFormat.initialize`` now takes an optional ``name`` of the colocated 
 
1304
  branch to create. (Jelmer Vernooij)
 
1305
 
 
1306
* ``BzrDir.get_branch_transport`` now takes an optional ``name`` of the 
 
1307
  colocated branch to open. (Jelmer Vernooij)
 
1308
 
 
1309
* Added ``bzrlib.osutils.set_signal_handler``, a convenience function that
 
1310
  can set a signal handler and call ``signal.siginterrupt(signum,
 
1311
  False)`` for it, if the platform and Python version supports it.
 
1312
  (Andrew Bennetts, #496813)
 
1313
 
81
1314
* New ``bzrlib.initialize`` is recommended for programs using bzrlib to 
82
1315
  run when starting up; it sets up several things that previously needed
83
1316
  to be done separately.
84
1317
  (Martin Pool, #507710)
85
1318
 
 
1319
* Exporters now support a ``per_file_timestamps`` argument to write out the 
 
1320
  timestamp of the commit in which a file revision was introduced.
 
1321
  (Jelmer Vernooij)
 
1322
 
 
1323
* New method ``BzrDir.list_branches()`` that returns a sequence of branches 
 
1324
  present in a control directory. (Jelmer Vernooij)
 
1325
 
 
1326
* New method ``Repository.get_known_graph_ancestry()``. 
 
1327
  (Jelmer Vernooij, #495502)
 
1328
 
 
1329
* New transport methods ``readlink``, ``symlink`` and ``hardlink``.
 
1330
  (Neil Santos)
 
1331
 
86
1332
* Remove unused ``CommandFailed`` exception.
87
1333
  (Martin Pool)
88
1334
 
 
1335
Internals
 
1336
*********
 
1337
 
 
1338
* ``bzrlib.branchbuilder.BranchBuilder.build_snapshot`` now accepts a
 
1339
  ``message_callback`` in the same way that commit does. (Robert Collins)
 
1340
 
 
1341
* ``bzrlib.builtins.Commit.run`` raises ``bzrlib.errors.BoundBranchOutOfDate``
 
1342
  rather than ``bzrlib.errors.BzrCommandError`` when the bound branch is out
 
1343
  of date. (Gary van der Merwe)
 
1344
 
 
1345
* ``bzrlib.commands.run_bzr`` is more extensible: callers can supply the
 
1346
  functions to load or disable plugins if they wish to use a different
 
1347
  plugin mechanism; the --help, --version and no-command name code paths
 
1348
  now use the generic pluggable command lookup infrastructure.
 
1349
  (Robert Collins)
 
1350
 
 
1351
* ``bzrlib.errors.BoundBranchOutOfDate`` has a new field ``extra_help``
 
1352
  which can be set to add extra help to the error. (Gary van der Merwe)
 
1353
 
 
1354
* New method ``Branch.automatic_tag_name`` that can be used to find the
 
1355
  tag name for a particular revision automatically. (Jelmer Vernooij)
 
1356
 
 
1357
* The methods ``BzrDir.create_branch()``, ``BzrDir.destroy_branch()`` and 
 
1358
  ``BzrDir.open_branch()`` now take an optional ``name`` argument. 
 
1359
  (Jelmer Vernooij)
 
1360
 
89
1361
Testing
90
1362
*******
91
1363
 
92
 
* New `bzrlib.tests.test_import_tariff` can make assertions about what
 
1364
* bzr now has a ``.testr.conf`` file in its source tree configured
 
1365
  appropriately for running tests with Testrepository
 
1366
  (``https://launchpad.net/testrepository``). (Robert Collins)
 
1367
 
 
1368
* Documentation about testing with ``subunit`` has been tweaked.
 
1369
  (Robert Collins)
 
1370
 
 
1371
* Known failures has been added for resolve --take-other on ParentLoop
 
1372
  conflicts. This reflects bug #537956 without fixing it.
 
1373
  (Vincent Ladeuil)
 
1374
 
 
1375
* New ``bzrlib.tests.test_import_tariff`` can make assertions about what
93
1376
  Python modules are loaded, to guard against startup time or library
94
1377
  dependency regressions.
95
1378
  (Martin Pool)
96
1379
 
 
1380
* PQM will now run with subunit output. To analyze a PQM error use
 
1381
  tribunal, or cat log | subunit-filter | subunit2pyunit. (Robert Collins)
 
1382
 
97
1383
* Stop sending apport crash files to ``.cache`` in the directory from
98
1384
  which ``bzr selftest`` was run.  (Martin Pool, #422350)
99
1385
 
 
1386
* Tests no longer fail if "close() called during concurrent
 
1387
  operation on the same file object" occurs when closing the log file
 
1388
  (which can happen if a thread tries to write to the log file at the
 
1389
  wrong moment).  An warning will be written to ``stderr`` when this
 
1390
  happens, and another warning will be written if the log file could not
 
1391
  be closed after retrying 100 times.  (Andrew Bennetts, #531746)
 
1392
 
 
1393
bzr 2.1.3
 
1394
#########
 
1395
 
 
1396
:Codename: Do run run
 
1397
:2.1.3: NOT RELEASED YET
 
1398
 
 
1399
Compatibility Breaks
 
1400
********************
 
1401
 
 
1402
New Features
 
1403
************
 
1404
 
 
1405
Bug Fixes
 
1406
*********
 
1407
 
 
1408
* ``bzr add SYMLINK/FILE`` now works properly when the symlink points to a
 
1409
  previously-unversioned directory within the tree: the directory is
 
1410
  marked versioned too.  
 
1411
  (Martin Pool, #192859)
 
1412
 
 
1413
* Configuration files in ``${BZR_HOME}`` are now written in an atomic
 
1414
  way which should help avoid problems with concurrent writers.
 
1415
  (Vincent Ladeuil, #525571)
 
1416
 
 
1417
* Don't traceback trying to unversion children files of an already
 
1418
  unversioned directory.  (Vincent Ladeuil, #494221)
 
1419
 
 
1420
* Don't traceback when a lockdir's ``held/info`` file is corrupt (e.g.
 
1421
  contains only NUL bytes).  Instead warn the user, and allow ``bzr
 
1422
  break-lock`` to remove it.  (Andrew Bennetts, #619872)
 
1423
  
 
1424
* Fix ``AttributeError on parent.children`` when adding a file under a 
 
1425
  directory that was a symlink in the previous commit.
 
1426
  (Martin Pool, #192859)
 
1427
 
 
1428
* Prevent ``CHKMap.apply_delta`` from generating non-canonical CHK maps,
 
1429
  which can result in "missing referenced chk root keys" errors when
 
1430
  fetching from repositories with affected revisions.
 
1431
  (Andrew Bennetts, #522637)
 
1432
 
 
1433
* Progress bars prefer to truncate the text message rather than the
 
1434
  counters.  The spinner is shown between the network transfer indicator
 
1435
  and the progress message.  (Martin Pool)
 
1436
 
 
1437
* Raise ValueError instead of a string exception.
 
1438
  (John Arbash Meinel, #586926)
 
1439
 
 
1440
* Recursive binding for checkouts is now detected by bzr. A clear error
 
1441
  message is shown to the user. (Parth Malwankar, #405192)
 
1442
 
 
1443
Improvements
 
1444
************
 
1445
 
 
1446
* Add ``bzrlib.merge.MergeIntoMerger``, which can merge part or all of a
 
1447
  tree, and works with unrelated branches.  (Andrew Bennetts)
 
1448
 
 
1449
Documentation
 
1450
*************
 
1451
 
 
1452
* ``bzr help patterns`` now explains case insensitive patterns and
 
1453
  points to Python regular expression documentation.
 
1454
  (Parth Malwankar, #594386)
 
1455
 
 
1456
API Changes
 
1457
***********
 
1458
 
 
1459
* Delete ``ProgressTask.note``, which was deprecated in 2.1.
 
1460
 
 
1461
Internals
 
1462
*********
 
1463
 
 
1464
Testing
 
1465
*******
 
1466
 
 
1467
* Unit test added to ensure that "message" is not uses as a format variable
 
1468
  name in BzrError subclasses as this conflicts with some Python versions.
 
1469
  (Parth Malwankar, #603461)
 
1470
 
 
1471
bzr 2.1.2
 
1472
#########
 
1473
 
 
1474
:2.1.2: 2010-05-28
 
1475
 
 
1476
This release fixes two critical networking issues with older servers and
 
1477
with interrupted system call errors when pushing or pulling.  We recommend
 
1478
upgrading to anyone running a 2.1.x version of bzr.
 
1479
 
 
1480
Bug Fixes
 
1481
*********
 
1482
 
 
1483
* ``bzr clean-tree`` should not delete nested bzrdirs. Required for proper
 
1484
  support of bzr-externals and scmproj plugins.
 
1485
  (Alexander Belchenko, bug #572098)
 
1486
 
 
1487
* ``bzr switch`` does not die if a ConfigurableFileMerger is used.
 
1488
  (Aaron Bentley, #559436)
 
1489
 
 
1490
* Do not register a SIGWINCH signal handler, instead just poll for the
 
1491
  terminal width as needed.  This avoids the "Interrupted System Call"
 
1492
  problems that occur on POSIX with all currently released versions of
 
1493
  Python.
 
1494
  (Andrew Bennetts, #583941)
 
1495
 
 
1496
* Fixed ``AssertionError`` when accessing smart servers running Bazaar
 
1497
  versions before 1.6.
 
1498
  (Andrew Bennetts, #528041)
 
1499
 
 
1500
* Reset ``siginterrupt`` flag to False every time we handle a signal
 
1501
  installed with ``set_signal_handler(..., restart_syscall=True)`` (from
 
1502
  ``bzrlib.osutils``.  Reduces the likelihood of "Interrupted System Call"
 
1503
  errors compared to registering ``signal.signal`` directly.
 
1504
  (Andrew Bennetts)
 
1505
 
 
1506
* Reduce peak memory by one copy of compressed text.
 
1507
  (John Arbash Meinel, #566940)
 
1508
 
 
1509
* Support Pyrex 0.9.9, required changing how we handle exceptions in Pyrex.
 
1510
  (John Arbash Meinel, #582656)
 
1511
 
 
1512
* When passing a file to ``UTF8DirReader`` make sure to close the current
 
1513
  directory file handle after the chdir fails. Otherwise when passing many
 
1514
  filenames into a command line ``bzr status`` we would leak descriptors.
 
1515
  (John Arbash Meinel, #583486)
 
1516
 
 
1517
Internals
 
1518
*********
 
1519
 
 
1520
* ``_remember_remote_is_before`` no longer raises AssertionError when
 
1521
  suboptimal network behaviour is noticed; instead it just mutters to the
 
1522
  log file (and warns the user if they have set the ``hpss`` debug flag).
 
1523
  This was causing unnecessary aborts for performance bugs that are minor
 
1524
  at worst.
 
1525
  (Andrew Bennetts, #528041)
 
1526
 
 
1527
 
 
1528
bzr 2.1.1
 
1529
#########
 
1530
 
 
1531
:2.1.1: 2010-03-24
 
1532
 
 
1533
This is a small bugfix release.  Upgrading is recommended for anyone
 
1534
running 2.1.0 or earlier.
 
1535
 
 
1536
Bug Fixes
 
1537
*********
 
1538
 
 
1539
* Allow syscalls to automatically restart when ``TextUIFactory``'s
 
1540
  SIGWINCH handler is invoked, avoiding ``EINTR`` errors during blocking
 
1541
  IO, which are often poorly handled by Python's libraries and parts of
 
1542
  bzrlib.  (Andrew Bennetts, #496813)
 
1543
 
 
1544
* Avoid ``malloc(0)`` in ``patiencediff``, which is non-portable.
 
1545
  (Martin Pool, #331095)
 
1546
 
 
1547
* Fix plugin packaging on Windows. (Ian Clatworthy, #524162)
 
1548
 
 
1549
* Fix stub sftp test server to call os.getcwdu().
 
1550
  (Vincent Ladeuil, #526221, #526353)
 
1551
 
 
1552
* Fixed CHM generation by moving the NEWS section template into
 
1553
  a separate file. (Ian Clatworthy, #524184)
 
1554
 
 
1555
* Merge correctly when this_tree is not a WorkingTree.  (Aaron Bentley)
 
1556
 
 
1557
* Register SIGWINCH handler only when creating a ``TextUIFactory``; avoids
 
1558
  problems importing bzrlib from a non-main thread.
 
1559
  (Elliot Murphy, #521989)
 
1560
 
 
1561
* Repositories accessed via a smart server now reject being stacked on a
 
1562
  repository in an incompatible format, as is the case when accessing them
 
1563
  via other methods.  This was causing fetches from those repositories via
 
1564
  a smart server (e.g. using ``bzr branch``) to receive invalid data.
 
1565
  (Andrew Bennetts, #562380)
 
1566
 
 
1567
* Standardize the error handling when creating a new ``StaticTuple``
 
1568
  (problems will raise TypeError). (Matt Nordhoff, #457979)
 
1569
 
 
1570
* Warn if pyrex is too old to compile the new ``SimpleSet`` and
 
1571
  ``StaticTuple`` extensions, rather than having the build fail randomly.
 
1572
  (John Arbash Meinel, #449776)
 
1573
 
 
1574
Documentation
 
1575
*************
 
1576
 
 
1577
* Added a link to the Desktop Guide. (Ian Clatworthy)
 
1578
 
 
1579
* Added What's New in Bazaar 2.1 document. (Ian Clatworthy)
 
1580
 
 
1581
* Drop Google Analytics from the core docs as they caused problems
 
1582
  in the CHM files. (Ian Clatworthy, #502010)
 
1583
 
 
1584
API Changes
 
1585
***********
 
1586
 
 
1587
* Added ``bzrlib.osutils.set_signal_handler``, a convenience function that
 
1588
  can set a signal handler and call ``signal.siginterrupt(signum,
 
1589
  False)`` for it, if the platform and Python version supports it.
 
1590
  (Andrew Bennetts, #496813)
 
1591
 
 
1592
 
100
1593
bzr 2.1.0
101
1594
#########
102
1595
 
129
1622
  when it encounters conflicts.  
130
1623
  (Gerard Krol, #113809)
131
1624
 
132
 
* Fix ``log`` to better check ancestors even if merged revisions are involved.
133
 
  (Vincent Ladeuil, #476293)
134
 
 
135
1625
* Give a better error message when doing ``bzr bind`` in an already bound
136
1626
  branch.  (Neil Martinsen-Burrell, #513063)
137
1627
 
453
1943
  tests that 'failed' - they're all just failures.
454
1944
  (Martin Pool)
455
1945
 
456
 
 
457
 
bzr 2.0.5 (not released yet)
458
 
############################
459
 
 
460
 
:Codename:
461
 
:2.0.5:
462
 
 
463
 
Bug Fixes
464
 
*********
 
1946
bzr 2.0.6
 
1947
#########
 
1948
 
 
1949
:2.0.6: NOT RELEASED YET
 
1950
 
 
1951
Bug Fixes
 
1952
*********
 
1953
 
 
1954
* Additional merges after an unrelated branch has been merged with its
 
1955
  history no longer crash when deleted files are involved.
 
1956
  (Vincent Ladeuil, John Arbash Meinel, #375898)
 
1957
 
 
1958
* ``bzr add SYMLINK/FILE`` now works properly when the symlink points to a
 
1959
  previously-unversioned directory within the tree: the directory is
 
1960
  marked versioned too.  
 
1961
  (Martin Pool, #192859)
 
1962
 
 
1963
* ``bzr commit SYMLINK`` now works, rather than trying to commit the
 
1964
  target of the symlink.
 
1965
  (Martin Pool, John Arbash Meinel, #128562)
 
1966
 
 
1967
* ``bzr revert`` now only takes write lock on working tree, instead of on 
 
1968
  both working tree and branch.
 
1969
  (Danny van Heumen, #498409)
 
1970
 
 
1971
* ``bzr upgrade`` now creates the ``backup.bzr`` directory with the same
 
1972
  permissions as ``.bzr`` directory on a POSIX OS.
 
1973
  (Parth Malwankar, #262450)
 
1974
 
 
1975
* Don't traceback trying to unversion children files of an already
 
1976
  unversioned directory.  (Vincent Ladeuil, #494221)
 
1977
 
 
1978
* Don't traceback when a lockdir's ``held/info`` file is corrupt (e.g.
 
1979
  contains only NUL bytes).  Instead warn the user, and allow ``bzr
 
1980
  break-lock`` to remove it.  (Andrew Bennetts, #619872)
 
1981
  
 
1982
* Fix ``AttributeError on parent.children`` when adding a file under a 
 
1983
  directory that was a symlink in the previous commit.
 
1984
  (Martin Pool, #192859)
 
1985
 
 
1986
* Prevent ``CHKMap.apply_delta`` from generating non-canonical CHK maps,
 
1987
  which can result in "missing referenced chk root keys" errors when
 
1988
  fetching from repositories with affected revisions.
 
1989
  (Andrew Bennetts, #522637)
 
1990
 
 
1991
* Raise ValueError instead of a string exception.
 
1992
  (John Arbash Meinel, #586926)
 
1993
 
 
1994
* Reduce peak memory by one copy of compressed text.
 
1995
  (John Arbash Meinel, #566940)
 
1996
 
 
1997
* Repositories accessed via a smart server now reject being stacked on a
 
1998
  repository in an incompatible format, as is the case when accessing them
 
1999
  via other methods.  This was causing fetches from those repositories via
 
2000
  a smart server (e.g. using ``bzr branch``) to receive invalid data.
 
2001
  (Andrew Bennetts, #562380)
 
2002
 
 
2003
* Selftest with versions of subunit that support ``stopTestRun`` will no longer
 
2004
  error. This error was caused by 2.0 not being updated when upstream
 
2005
  python merged the end of run patch, which chose ``stopTestRun`` rather than
 
2006
  ``done``. (Robert Collins, #571437)
 
2007
 
 
2008
* When passing a file to ``UTF8DirReader`` make sure to close the current
 
2009
  directory file handle after the chdir fails. Otherwise when passing many
 
2010
  filenames into a command line ``bzr status`` we would leak descriptors.
 
2011
  (John Arbash Meinel, #583486)
 
2012
 
 
2013
 
 
2014
Testing
 
2015
*******
 
2016
 
 
2017
* ``build_tree_contents`` can create symlinks.
 
2018
  (Martin Pool, John Arbash Meinel)
 
2019
 
 
2020
 
 
2021
bzr 2.0.5
 
2022
#########
 
2023
 
 
2024
:2.0.5: 2010-03-23
 
2025
 
 
2026
This fifth release in our 2.0 series addresses several user-inconvenience
 
2027
bugs.  None are critical, but upgrading is recommended for all users on
 
2028
earlier 2.0 releases.
 
2029
 
 
2030
Bug Fixes
 
2031
*********
 
2032
 
 
2033
* Avoid ``malloc(0)`` in ``patiencediff``, which is non-portable.
 
2034
  (Martin Pool, #331095)
 
2035
 
 
2036
* Concurrent autopacking is more resilient to already-renamed pack files.
 
2037
  If we find that a file we are about to obsolete is already obsoleted, we
 
2038
  do not try to rename it, and we leave the file in ``obsolete_packs``.
 
2039
  The code is also fault tolerant if a file goes missing, assuming that
 
2040
  another process already removed the file.
 
2041
  (John Arbash Meinel, Gareth White, #507557)
 
2042
 
 
2043
* Cope with the lockdir ``held/info`` file being empty, which seems to
 
2044
  happen fairly often if the process is suddenly interrupted while taking
 
2045
  a lock.
 
2046
  (Martin Pool, #185103)
 
2047
 
 
2048
* Give the warning about potentially slow cross-format fetches much
 
2049
  earlier on in the fetch operation.  Don't show this message during
 
2050
  upgrades, and show the correct format indication for remote
 
2051
  repositories.
 
2052
  (Martin Pool, #456077, #515356, #513157)
465
2053
 
466
2054
* Handle renames correctly when there are files or directories that 
467
2055
  differ only in case.  (Chris Jones, Martin Pool, #368931)
471
2059
  ``UnboundLocalError``.
472
2060
  (Andrew Bennetts, #423563)
473
2061
 
 
2062
* Running ``bzr`` command without any arguments now shows bzr
 
2063
  version number along with rest of the help text.
 
2064
  (Parth Malwankar, #369501)
 
2065
 
 
2066
* Use osutils.O_NOINHERIT for some files on win32 to avoid PermissionDenied
 
2067
  errors.
 
2068
  (Inada Naoki, #524560)
 
2069
 
474
2070
Documentation
475
2071
*************
476
2072
 
477
2073
* Added ``location-alias`` help topic.
478
2074
  (Andrew Bennetts, #337834)
479
2075
 
 
2076
* Fixed CHM generation by moving the NEWS section template into
 
2077
  a separate file. (Ian Clatworthy, #524184)
 
2078
 
 
2079
 
480
2080
bzr 2.0.4
481
2081
#########
482
2082
 
3117
4717
  can have a large effect on ``bzr checkout`` times. (John Arbash Meinel)
3118
4718
 
3119
4719
* selftest now supports a --parallel option, with values of 'fork' or
3120
 
  'subprocess' to run the test suite in parallel. Currently only linux
3121
 
  machine work, other platforms need patches submitted. (Robert Collins,
 
4720
  'subprocess' to run the test suite in parallel. Currently only Linux
 
4721
  machines work, other platforms need patches submitted. (Robert Collins,
3122
4722
  Vincent Ladeuil)
3123
4723
 
3124
4724
* ``tests.run_suite`` has a new parameter ``suite_decorators``, a list of 
5872
7472
 
5873
7473
* bzr main script cannot be imported (Benjamin Peterson)
5874
7474
 
5875
 
* On Linux bzr additionally looks for plugins in arch-independent site
 
7475
* On GNU/Linux bzr additionally looks for plugins in arch-independent site
5876
7476
  directory. (Toshio Kuratomi)
5877
7477
 
5878
7478
* The ``set_rh`` branch hook is now deprecated. Please migrate
6215
7815
 
6216
7816
* BZR_LOG environment variable controls location of .bzr.log trace file.
6217
7817
  User can suppress writing messages to .bzr.log by using '/dev/null'
6218
 
  filename (on Linux) or 'NUL' (on Windows). If BZR_LOG variable
 
7818
  filename (on Unix) or 'NUL' (on Windows). If BZR_LOG variable
6219
7819
  is not defined but BZR_HOME is defined then default location
6220
7820
  for .bzr.log trace file is ``$BZR_HOME/.bzr.log``.
6221
7821
  (Alexander Belchenko, #106117)
11957
13557
  diff, status, etc.
11958
13558
 
11959
13559
 
11960
 
bzr ?.?.? (not released yet)
11961
 
############################
11962
 
 
11963
 
:Codename: template
11964
 
:2.0.2: ???
11965
 
 
11966
 
Compatibility Breaks
11967
 
********************
11968
 
 
11969
 
New Features
11970
 
************
11971
 
 
11972
 
Bug Fixes
11973
 
*********
11974
 
 
11975
 
Improvements
11976
 
************
11977
 
 
11978
 
Documentation
11979
 
*************
11980
 
 
11981
 
API Changes
11982
 
***********
11983
 
 
11984
 
Internals
11985
 
*********
11986
 
 
11987
 
Testing
11988
 
*******
11989
 
 
11990
 
 
11991
 
 
11992
13560
..
11993
 
   vim: tw=74 ft=rst ff=unix encoding=utf-8
 
13561
   vim: tw=74 ft=rst ff=unix