~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/en/release-notes/bzr-2.3.txt

  • Committer: Martin
  • Date: 2011-04-15 21:22:57 UTC
  • mto: This revision was merged to the branch mainline in revision 5797.
  • Revision ID: gzlist@googlemail.com-20110415212257-jgtovwwp4be7egd9
Add release notes

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
.. toctree::
6
6
   :maxdepth: 1
7
7
 
 
8
bzr 2.3.2
 
9
#########
 
10
 
 
11
:2.3.2: NOT RELEASED YET
 
12
 
 
13
External Compatibility Breaks
 
14
*****************************
 
15
 
 
16
.. These may require users to change the way they use Bazaar.
 
17
 
 
18
New Features
 
19
************
 
20
 
 
21
.. New commands, options, etc that users may wish to try out.
 
22
 
 
23
Improvements
 
24
************
 
25
 
 
26
.. Improvements to existing commands, especially improved performance 
 
27
   or memory usage, or better results.
 
28
 
 
29
* Getting all entries from ``CHKInventory.iter_entries_by_dir()`` has been
 
30
  sped up dramatically for large trees. Iterating by dir is not the best
 
31
  way to load data from a CHK inventory, so it preloads all the items in
 
32
  the correct order. (With the gcc-tree, this changes it (re)reading 8GB
 
33
  of CHK data, down to just 150MB.) This has noticeable affects for things
 
34
  like building checkouts, etc.  (John Arbash Meinel, #737234)
 
35
 
 
36
Bug Fixes
 
37
*********
 
38
 
 
39
.. Fixes for situations where bzr would previously crash or give incorrect
 
40
   or undesirable results.
 
41
 
 
42
* Bazaar now infers the default user email address on Unix from the local
 
43
  account name plus the contents of ``/etc/mailname`` if that file exists.
 
44
  In particular, this means that committing as root through etckeeper will
 
45
  normally not require running ``bzr whoami`` first.
 
46
  (Martin Pool, #616878)
 
47
 
 
48
* ``bzr push`` into a repository (that doesn't have a branch), will no
 
49
  longer copy all revisions in the repository. Only the ones in the
 
50
  ancestry of the source branch, like it does in all other cases.
 
51
  (John Arbash Meinel, #465517)
 
52
 
 
53
* Fix ``UnboundLocalError: local variable 'lock_url' in wait_lock`` error,
 
54
  especially while trying to save configuration from QBzr.
 
55
  (Martin Pool, #733136)
 
56
 
 
57
* Fix "Unable to obtain lock" error when pushing to a bound branch if tags
 
58
  had changed.  Bazaar was attempting to open and lock the master branch
 
59
  twice in this case.  (Andrew Bennetts, #733350)
 
60
 
 
61
* Standalone bzr.exe installation on Windows: user can put additional python 
 
62
  libraries into ``site-packages`` subdirectory of the installation directory,
 
63
  this might be required for "installing" extra dependencies for some plugins.
 
64
  (Alexander Belchenko, #743256)
 
65
 
 
66
* When reporting a crash without apport, don't print the full list of
 
67
  plugins because it's often too long.
 
68
  (Martin Pool, #716389)
 
69
 
 
70
 
 
71
Documentation
 
72
*************
 
73
 
 
74
.. Improved or updated documentation.
 
75
 
 
76
API Changes
 
77
***********
 
78
 
 
79
.. Changes that may require updates in plugins or other code that uses
 
80
   bzrlib.
 
81
 
 
82
Internals
 
83
*********
 
84
 
 
85
.. Major internal changes, unlikely to be visible to users or plugin 
 
86
   developers, but interesting for bzr developers.
 
87
 
 
88
Testing
 
89
*******
 
90
 
 
91
.. Fixes and changes that are only relevant to bzr's test framework and 
 
92
   suite.  This can include new facilities for writing tests, fixes to 
 
93
   spurious test failures and changes to the way things should be tested.
 
94
 
 
95
* FreeBSD8 has switched to python-2.7 which revealed a re-occurrence of a test
 
96
  failure in the launchpad plugin. ``xmlrpclib.py`` on natty carries a patch
 
97
  that is not in python-2.7 upstream and masked the issue. An additional fix
 
98
  has been added in the interim
 
99
  (<http://psf.upfronthosting.co.za/roundup/tracker/issue8194> should be fixed
 
100
  in python > 2.7.1).  (Vincent Ladeuil, #654733)
 
101
 
 
102
bzr 2.3.1
 
103
#########
 
104
 
 
105
:2.3.1: 2011-03-10
 
106
 
 
107
This is a bugfix release. Upgrading is recommended for all users of earlier
 
108
2.3 releases.
 
109
 
 
110
Bug Fixes
 
111
*********
 
112
 
 
113
.. Fixes for situations where bzr would previously crash or give incorrect
 
114
   or undesirable results.
 
115
 
 
116
* Correctly resolve text conflicts for files in subdirs.
 
117
  (Vincent Ladeuil, #715058)
 
118
 
 
119
* Fix "AssertionError: repository.user_url ... does not match URL from
 
120
  server response" when reusing a smart transport.
 
121
  (Andrew Bennetts, #726584)
 
122
 
 
123
* Restore proper logging of bytes transferred. We accidentally reset the
 
124
  counter when commands finished before we logged the total transferred.
 
125
  (John Arbash Meinel, #713258)
 
126
 
 
127
bzr 2.3.0
 
128
#########
 
129
 
 
130
:2.3.0: 2011-02-03
 
131
 
 
132
This release marks the start of another long-term-stable series. From here, we
 
133
will only make bugfix releases on the 2.3 series (2.3.1, etc, and support it
 
134
until August 2012), while 2.4 will become our new development series. The 2.1
 
135
and 2.2 series will also continue to get bugfixes. (Currently 2.0 is planned
 
136
to be EOLed circa September 2011 and will receive only critical bugfixes.)
 
137
 
 
138
This is a bugfix and polish release over the 2.2 series, with a large number
 
139
of bugs fixed (>130), and some performance improvements. Some features have
 
140
been enhanced including commits on stacked branches, upgrades of related
 
141
branches, shortcut URL schemes for ubuntu and debian on launchpad and better
 
142
conflict resolution.
 
143
 
 
144
Only bugfixes from other stables series have been included since 2.3b5 so all
 
145
known fixed bugs are included here.
 
146
 
 
147
Users are encouraged to upgrade from the other stable series.
 
148
 
 
149
bzr 2.3b5
 
150
#########
 
151
 
 
152
:2.3.b5: 2011-01-13
 
153
 
 
154
This is the fifth and **last** beta of the 2.3 series, leading up to a 2.3.0
 
155
release in February. Beta releases are suitable for everyday use but may cause
 
156
some incompatibilities with plugins.
 
157
 
 
158
2.3b5 includes bug fixes for committing to stacked branches, smoother upgrades
 
159
of multiple branches, compatibility with python-2.7, full test suite passing
 
160
on Ubuntu Natty and windows, less round-trips for several smart server
 
161
operations, better support text conflicts resolve actions and some more.
 
162
 
 
163
All known fixed bugs in other series (2.0, 2.1, 2.2) are also included here.
 
164
 
 
165
External Compatibility Breaks
 
166
*****************************
 
167
 
 
168
(none)
 
169
 
 
170
Improvements
 
171
************
 
172
 
 
173
* A redundant parent inventories calculation was removed from
 
174
  ``fetch.py``, as ``Repository.insert_stream`` already reports any
 
175
  missing inventories.  This removes at least one network roundtrip when
 
176
  pushing to a stacked branch.  (Andrew Bennetts)
 
177
 
 
178
* ``ControlDir.sprout`` no longer opens the target repository more than
 
179
  once.  This avoids some unnecessary IO, and removes a network roundtrip
 
180
  when doing ``bzr branch`` to a smart server URL.  (Andrew Bennetts)
 
181
 
 
182
* ``bzr modified`` now read-locks the working tree (and branch and
 
183
  repository) just once.  (Andrew Bennetts)
 
184
  
 
185
* ``bzr resolve`` now accepts ``--take-this`` and ``--take-other`` actions
 
186
  for text conflicts. This *replace* the whole file with the content
 
187
  designated by the action. This will *ignore* all differences that would
 
188
  have been merge cleanly otherwise. (Vincent Ladeuil, #638451)
 
189
 
 
190
* ``bzr tags``'s "sort" argument now allows registering custom sort
 
191
  methods using the ``bzrlib.tag.tag_sort_methods`` registry. 
 
192
  (Jelmer Vernooij, #701244)
 
193
 
 
194
* ``bt.test_http`` was breaking ``os.environ`` by erasing the values saved by
 
195
  ``TestCase`` leading to ``bt.test_import_tariff`` failures.
 
196
  (Vincent Ladeuil, #690563)
 
197
 
 
198
* ``upgrade`` now upgrades dependent branches when a shared repository is
 
199
  specified. It also supports new options: ``--dry-run`` for showing what
 
200
  will happen and ``--clean`` to remove the backup directory on successful
 
201
  completion. (Ian Clatworthy, Matthew Fuller, #89830, #374734, #422450)
 
202
 
 
203
Bug Fixes
 
204
*********
 
205
 
 
206
.. Fixes for situations where bzr would previously crash or give incorrect
 
207
   or undesirable results.
 
208
 
 
209
* Avoid leaking SSH subprocess communication socket into unrelated child
 
210
  processes, which could cause bzr to hang on exit. (Max Bowsher, #696285)
 
211
 
 
212
* ``bzr break-lock`` on a corrupted lock file works correctly, rather than
 
213
  raising a PermissionDenied error. We were accidentally holding open the
 
214
  file we were trying to delete. (John Arbash Meinel, #659978)
 
215
 
 
216
* ``bzr update`` in a checkout of a readonly branch works again, without
 
217
  trying to set the tags in the master branch. This had been broken by the
 
218
  bug fix for bug #603395.  (John Arbash Meinel, #701212)
 
219
 
 
220
* Per-transport tests now prefer to use ``Transport.get_bytes()`` rather
 
221
  than ``Transport.get().read()``. The SFTP code uses an async message to
 
222
  close the file handle if you let the handle die from refcounting, while
 
223
  it uses a synchronous message if you close it directly. This should help
 
224
  prevent random test suite failures from race conditions.
 
225
  (John Arbash Meinel, #681047)
 
226
 
 
227
* Stop using ``bzrlib.tuned_gzip.GzipFile``. It is incompatible with
 
228
  python-2.7 and was only used for Knit format repositories, which haven't
 
229
  been recommended since 2007. The file itself will be removed in the next
 
230
  release. (John Arbash Meinel)
 
231
 
 
232
* The BZR_COLUMNS environment variable can be set to 0 to indicate no
 
233
  limitation on the width of the terminal.  (Neil Martinsen-Burrell, #675652)
 
234
 
 
235
* Treat WSAECONNABORTED the same as WSAECONNRESET for the purposes of
 
236
  considering a smart data stream as being interrupted. This fixes a
 
237
  failure in the windows test suite, that was trying to ensure we cleanly
 
238
  handled a server disconnect.  (John Arbash Meinel, #581311, #686587)
 
239
 
 
240
* Unshelving changes that occur in a now-unversioned directory now restore
 
241
  the directory properly rather than crashing.
 
242
  (John Arbash Meinel, #389674)
 
243
 
 
244
* You are now able to commit directly to a stacked branch. Any needed
 
245
  parent inventories will be filled in as part of the commit process.
 
246
  (John Arbash Meinel, #375013)
 
247
 
 
248
Documentation
 
249
*************
 
250
 
 
251
* Better document the rules to update the bzr freshmeat page when
 
252
  doing a release. (Vincent Ladeuil, #690515)
 
253
 
 
254
API Changes
 
255
***********
 
256
 
 
257
* ``Branch.sprout``, ``BranchFormat.initalize`` and
 
258
  ``ControlDir.create_branch`` now take an optional ``repository`` keyword
 
259
  argument, and ``BranchFormat.open`` now takes an optional
 
260
  ``found_repository`` keyword argument.  These provide the repository
 
261
  object for new branch object to use (for cases when the caller has
 
262
  already opened that repository).  Implementations of these APIs will
 
263
  need to be updated to accept these arguments.  (Andrew Bennetts)
 
264
 
 
265
* ``bzrlib.tuned_gzip.GzipFile`` is now deprecated and will be removed in
 
266
  the bzr-2.4 series. Code that was using it can just use the python
 
267
  stdlib ``gzip.GzipFile``. (John Arbash Meinel)
 
268
 
 
269
 
 
270
Testing
 
271
*******
 
272
 
 
273
* ``bzrlib.tests`` defines ``isolated_environ`` with the definitions of all
 
274
  the environment variables the tests should care about. It also defines
 
275
  ``override_os_environ`` and ``restore_os_environ`` to properly implement
 
276
  isolation from ``os.environ`` for tests. ``bzrlib.tests`` now defines a
 
277
  ``DocTestSuite`` class using this facility for all ``bzrlib``
 
278
  doctests. (Vincent Ladeuil, #321320)
 
279
 
 
280
* Catch exceptions related to bug #637821 during test cleanup to avoid
 
281
  spurious failures. (Vincent Ladeuil, #686008).
 
282
 
 
283
* Check sphinx compatibility for tests requiring older sphinx versions.
 
284
  (Vincent Ladeuil, #688072)
 
285
 
 
286
* ``test_onto_transport`` in the Launchpad plugin can now run with Python
 
287
  2.7. (Vincent Ladeuil, #654733)
 
288
 
 
289
* ``TestCase._captureVar`` and ``TestCase._old_env`` have been deleted due to
 
290
  bug #690563. Test writers are encouraged to use ``TestCase.overrideEnv``
 
291
  instead. (Vincent Ladeuil)
 
292
 
 
293
* ``TestDebuntuExpansions`` was escaping the test isolation by calling the
 
294
  wrong base class ``setUp``. (Vincent Ladeuil, #684662)
 
295
 
 
296
bzr 2.3b4
 
297
#########
 
298
 
 
299
:2.3.b4: 2010-12-03
 
300
 
 
301
This is the fourth beta of the 2.3 series, leading up to a 2.3.0 release in
 
302
February. Beta releases are suitable for everyday use but may cause some
 
303
incompatibilities with plugins.
 
304
 
 
305
2.3b4 includes bug fixes for the ``config`` command and conflict
 
306
resolution. More changes were made for the test scripts handling to make it
 
307
easier to add reproducing recipes to bugs.
 
308
 
 
309
It also includes bug fixes from the 2.2.2 release as well as the bug fixes
 
310
in the upcoming 2.0.7, 2.1.4 and 2.2.3 releases. This means that all known
 
311
fixed bugs at the time of this release are included.
 
312
 
 
313
 
 
314
External Compatibility Breaks
 
315
*****************************
 
316
 
 
317
  (none)
 
318
 
 
319
Improvements
 
320
************
 
321
 
 
322
* Bazaar now caches a branch's tags while that branch is read-locked.
 
323
  This removes 1 network roundtrip from most interactions with a remote
 
324
  branch.  (Andrew Bennetts)
 
325
 
 
326
* ``bzr config <option>`` will now display only the value itself so scripts
 
327
  can use it to query the currently active configuration. Displaying several
 
328
  options matching a given regular expression is now controlled via the
 
329
  ``--all`` option.  (Vincent Ladeuil, bug #670251)
 
330
 
 
331
* ``bzr resolve`` now reports the number of conflicts resolved and the
 
332
  number of remaining conflicts. This provides a better feedback about the
 
333
  whole resolution process. (Vincent Ladeuil)
 
334
 
 
335
* Read configuration files in $XDG_CONFIG_HOME/bazaar on Unix if there is
 
336
  already a directory there.  (Neil Martinsen-Burrell, #195397)
 
337
 
 
338
Bug Fixes
 
339
*********
 
340
 
 
341
* Better message if there is an error while setting ownership of
 
342
  ``.bazaar`` directory. (Parth Malwankar, #657553)
 
343
 
 
344
* ``bzr config`` properly displays list values. (Vincent Ladeuil, #672382)
 
345
 
 
346
* ``bzr config`` will now respect option policies when displaying the value
 
347
  and display the definition sections when appropriate.
 
348
  (Vincent Ladeuil, #671050)
 
349
 
 
350
* Don't create commit message files in the current directory to avoid nasty
 
351
  interactions with emacs (which tries to establish the status of the file
 
352
  during the commit which breaks on windows). (Vincent Ladeuil, #673637)
 
353
 
 
354
* ``bzr resolve --take-other <file>`` will not crash anymore if ``<file>``
 
355
  is involved in a text conflict (but the conflict is still not
 
356
  resolved). (Vincent Ladeuil, #646961)
 
357
 
 
358
* Merge will now correctly locate a lca where there is a criss-cross merge
 
359
  of a new root. (Gary van der Merwe, #588698)
 
360
 
 
361
* Report error if non-ASCII command option given. (Rory Yorke, #140563)
 
362
 
 
363
* ``tools/check-newsbug.py`` is now based on ``lp:hydrazine`` and no longer
 
364
  crashes when encountering private bugs (they are just displayed as such).
 
365
  (Vincent Ladeuil, #354985)
 
366
 
 
367
Internals
 
368
*********
 
369
 
 
370
* ``BranchBuilder.build_snapshot`` now accepts parent_ids == [].
 
371
  This can be used to create a new root in the graph. (Gary van der Merwe)
 
372
 
 
373
* Old repository development formats
 
374
  RepositoryFormatCHK1 and RepositoryFormatCHK2 have been removed, and so
 
375
  have the corresponding metadir format options ``development-rich-root``,
 
376
  ``development6-rich-root``, and ``development7-rich-root``.
 
377
 
 
378
Testing
 
379
*******
 
380
 
 
381
* Add a null_output_matches_anything keyword argument with default False to
 
382
  bzrlib.tests.script.ScriptRunner.run_script to specify that the command
 
383
  output should not be checked (as opposed to expecting an empty output).
 
384
  (Neil Martinsen-Burrell, #662509)
 
385
 
 
386
* Blank output section in scriptrunner tests no longer match any output.
 
387
  Instead, use '...' as a wildcard if you don't care about the output.
 
388
  (Martin Pool, #637830)
 
389
 
 
390
* Bump minimum testtools version required to run ``bzr selftest`` from 0.9.2
 
391
  to 0.9.5 which will allow tests that need the fixed unicode handling to be
 
392
  written. (Martin [gz])
 
393
 
 
394
* Introduce an ``overrideEnv()`` helper for tests that needs to change the
 
395
  environment variables while respecting the isolation rules. Get rid of
 
396
  TestCase._restoreEnvironment which is now useless.
 
397
  (Vincent Ladeuil, #690563)
 
398
 
 
399
* Printing selftest results to a non-UTF-8 console will now escape characters
 
400
  that can't be encoded rather than aborting the test run with an exception.
 
401
  (Martin [gz], #633216)
 
402
 
 
403
 
8
404
bzr 2.3b3
9
405
#########
10
406
 
11
 
:2.3b3: NOT RELEASED YET
 
407
:2.3b3: 2010-11-05
12
408
 
13
409
External Compatibility Breaks
14
410
*****************************
27
423
  once. It can also be used to set or delete a configuration option in any
28
424
  configuration file. (Vincent Ladeuil)
29
425
 
30
 
* New shortcut url schemes ``ubuntu:`` and ``debianlp:`` access source
 
426
* New shortcut URL schemes ``ubuntu:`` and ``debianlp:`` access source
31
427
  branches on Launchpad.  E.g. ``bzr branch ubuntu:foo`` gives you the source
32
428
  branch for project ``foo`` in the current distroseries for Ubuntu while
33
429
  ``bzr branch debianlp:lenny/foo`` gives you the source branch (on Launchpad)
38
434
  default format for new branches created with ``bzr init``.
39
435
  (Neil Martinsen-Burrell, #484101)
40
436
 
41
 
Improvements
42
 
************
43
 
 
44
437
Bug Fixes
45
438
*********
46
439
 
49
442
* ``bzr status -r X..Y`` was failing because RevisionTree didn't implement
50
443
  ``get_shelf_manager``. (John Arbash Meinel, #662053)
51
444
 
52
 
* Correctly set the Content-Type  header when http POSTing to comply
53
 
  with stricter web frameworks. (Vincent Ladeuil, #655100)
 
445
* Correctly add directory contents when the name was previously added as a
 
446
  normal file, rather than throwing ``AttributeError: children`` during
 
447
  smart_add. (Martin [gz], #251864)
 
448
 
 
449
* Correctly handle the ``--directory`` option for all code paths of
 
450
  ``resolve`` and ``shelve``, this was previously ignored when paths were
 
451
  provided as parameters. When both are provided, ``--directory`` becomes
 
452
  the base directory for the other paths. (Vincent Ladeuil, #670851)
 
453
 
 
454
* Correctly set the Content-Type  header when HTTP POSTing to comply
 
455
  with stricter web frameworks. (Vincent Ladeuil, #665100)
54
456
 
55
457
* Don't force openssh to use protocol=2, since that is now the default.
56
458
  (Neil Martinsen-Burrell, #561061)
57
459
 
58
 
* Fix ``KeyError: 'port'`` when getting the stored password for an http
59
 
  URL.
 
460
* Fix ``KeyError: 'port'`` when getting the stored password for an HTTP  URL.
60
461
  (Martin Pool, #654684)
61
462
 
62
463
* Make ``bzr tag --quiet`` really quiet. (Neil Martinsen-Burrell, #239523)
63
464
 
 
465
* Missing files (files bzr add'ed and then OS deleted) are now shown in ``bzr
 
466
  status`` output. (Rory Yorke, #134168)
 
467
 
 
468
* ``NotBranchError`` no longer allows errors from calling
 
469
  ``bzrdir.open_repository()`` to propagate.  This is unhelpful at best,
 
470
  and at worst can trigger infinite loops in callers.  (Andrew Bennetts)
 
471
  
 
472
* The ``branch.tags.merge_to(target_branch)`` API used by plugins such as
 
473
  ``bzr-builddeb`` now propagates changes to the master branch of the
 
474
  target branch (if there is one).  This makes it consistent with the
 
475
  other tag APIs.  (Andrew Bennetts, #603395)
 
476
 
 
477
* Windows installers no longer requires the Microsoft vcredist to be
 
478
  installed. (Martin [gz], Gary van der Merwe, #632465)
 
479
 
64
480
Documentation
65
481
*************
66
482
 
72
488
 
73
489
* Document the comment character in the .bzrignore file, including a
74
490
  workaround for ignore patterns that begin with #.
75
 
  (Neil Martinsen-Burrell, #621515)
 
491
  (Neil Martinsen-Burrell, #631515)
76
492
 
77
493
API Changes
78
494
***********
109
525
  get rid of some 'bytes left on the HTTP socket' useless log messages.
110
526
  (Vincent Ladeuil, #655557)
111
527
 
 
528
* ``bzrlib.tests.per_workingtree.TestCaseWithWorkingTree.make_branch_builder``
 
529
  respects its ``relpath`` parameter. (Vincent Ladeuil)
112
530
 
113
531
bzr 2.3b2
114
532
#########
170
588
  (Marius Kruger, #400554)
171
589
 
172
590
* When using the pycurl client module, Bazaar shows some of the text from
173
 
  http server error messages.
 
591
  HTTP server error messages.
174
592
  (Martin Pool, #656667)
175
593
 
176
594
Bug Fixes
256
674
  (Andrew Bennetts, #632387)
257
675
 
258
676
* Skip tests that needs a bzr source tree when there isn't one. This is
259
 
  needed to succesfully run the test suite for installed versions.
 
677
  needed to successfully run the test suite for installed versions.
260
678
  (Vincent Ladeuil, #644855).
261
679
 
262
680
* Skip the tests that requires respecting the chmod bits when running as root.
332
750
* ``bzr remove`` now just backs up changed files instead of exiting,
333
751
  forcing you to choose to either keep or delete them. Bazaar will now delete
334
752
  the files if they can easily be recovered using revert, otherwise they
335
 
  will be backed up (adding an extention of the form .~#~).
 
753
  will be backed up (adding an extension of the form .~#~).
336
754
  (Marius Kruger, #400554)
337
755
 
338
756
* ``bzr revert`` and ``bzr status`` are up to 15% faster on large trees
433
851
* ``EPIPE`` can be raised during test server shutdown. This happened on
434
852
  gentoo only so far. (Vincent Ladeuil, #627277)
435
853
 
436
 
* Errors occurring during http(s) test server starts should now be
 
854
* Errors occurring during HTTP(S) test server starts should now be
437
855
  handled cleanly. (Vincent Ladeuil, #392402)
438
856
 
439
857
* Fix ``AttributeError on parent.children`` when adding a file under a