~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

(gz) Change minimum required testtools version for selftest to 0.9.5 for
 unicode fixes (Martin [gz])

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
 
8
bzr 2.3b4
9
9
#########
10
10
 
11
 
:2.3.2: NOT RELEASED YET
 
11
:2.3.b4: NOT RELEASED YET
12
12
 
13
13
External Compatibility Breaks
14
14
*****************************
26
26
.. Improvements to existing commands, especially improved performance 
27
27
   or memory usage, or better results.
28
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 merge --preview --pull`` should respect the ``--preview`` option
49
 
  first, and not actually change the branch tip revision.
50
 
  (John Arbash Meinel, Dennis Duchier, #760152)
51
 
 
52
 
* ``bzr push`` into a repository (that doesn't have a branch), will no
53
 
  longer copy all revisions in the repository. Only the ones in the
54
 
  ancestry of the source branch, like it does in all other cases.
55
 
  (John Arbash Meinel, #465517)
56
 
 
57
 
* Fix ``UnboundLocalError: local variable 'lock_url' in wait_lock`` error,
58
 
  especially while trying to save configuration from QBzr.
59
 
  (Martin Pool, #733136)
60
 
 
61
 
* Fix "Unable to obtain lock" error when pushing to a bound branch if tags
62
 
  had changed.  Bazaar was attempting to open and lock the master branch
63
 
  twice in this case.  (Andrew Bennetts, #733350)
64
 
 
65
 
* Standalone bzr.exe installation on Windows: user can put additional python 
66
 
  libraries into ``site-packages`` subdirectory of the installation directory,
67
 
  this might be required for "installing" extra dependencies for some plugins.
68
 
  (Alexander Belchenko, #743256)
69
 
 
70
 
* When reporting a crash without apport, don't print the full list of
71
 
  plugins because it's often too long.
72
 
  (Martin Pool, #716389)
73
 
 
74
 
 
75
 
Documentation
76
 
*************
77
 
 
78
 
.. Improved or updated documentation.
79
 
 
80
 
API Changes
81
 
***********
82
 
 
83
 
.. Changes that may require updates in plugins or other code that uses
84
 
   bzrlib.
85
 
 
86
 
Internals
87
 
*********
88
 
 
89
 
.. Major internal changes, unlikely to be visible to users or plugin 
90
 
   developers, but interesting for bzr developers.
91
 
 
92
 
Testing
93
 
*******
94
 
 
95
 
.. Fixes and changes that are only relevant to bzr's test framework and 
96
 
   suite.  This can include new facilities for writing tests, fixes to 
97
 
   spurious test failures and changes to the way things should be tested.
98
 
 
99
 
* FreeBSD8 has switched to python-2.7 which revealed a re-occurrence of a test
100
 
  failure in the launchpad plugin. ``xmlrpclib.py`` on natty carries a patch
101
 
  that is not in python-2.7 upstream and masked the issue. An additional fix
102
 
  has been added in the interim
103
 
  (<http://psf.upfronthosting.co.za/roundup/tracker/issue8194> should be fixed
104
 
  in python > 2.7.1).  (Vincent Ladeuil, #654733)
105
 
 
106
 
bzr 2.3.1
107
 
#########
108
 
 
109
 
:2.3.1: 2011-03-10
110
 
 
111
 
This is a bugfix release. Upgrading is recommended for all users of earlier
112
 
2.3 releases.
113
 
 
114
 
Bug Fixes
115
 
*********
116
 
 
117
 
.. Fixes for situations where bzr would previously crash or give incorrect
118
 
   or undesirable results.
119
 
 
120
 
* Correctly resolve text conflicts for files in subdirs.
121
 
  (Vincent Ladeuil, #715058)
122
 
 
123
 
* Fix "AssertionError: repository.user_url ... does not match URL from
124
 
  server response" when reusing a smart transport.
125
 
  (Andrew Bennetts, #726584)
126
 
 
127
 
* Restore proper logging of bytes transferred. We accidentally reset the
128
 
  counter when commands finished before we logged the total transferred.
129
 
  (John Arbash Meinel, #713258)
130
 
 
131
 
bzr 2.3.0
132
 
#########
133
 
 
134
 
:2.3.0: 2011-02-03
135
 
 
136
 
This release marks the start of another long-term-stable series. From here, we
137
 
will only make bugfix releases on the 2.3 series (2.3.1, etc, and support it
138
 
until August 2012), while 2.4 will become our new development series. The 2.1
139
 
and 2.2 series will also continue to get bugfixes. (Currently 2.0 is planned
140
 
to be EOLed circa September 2011 and will receive only critical bugfixes.)
141
 
 
142
 
This is a bugfix and polish release over the 2.2 series, with a large number
143
 
of bugs fixed (>130), and some performance improvements. Some features have
144
 
been enhanced including commits on stacked branches, upgrades of related
145
 
branches, shortcut URL schemes for ubuntu and debian on launchpad and better
146
 
conflict resolution.
147
 
 
148
 
Only bugfixes from other stables series have been included since 2.3b5 so all
149
 
known fixed bugs are included here.
150
 
 
151
 
Users are encouraged to upgrade from the other stable series.
152
 
 
153
 
bzr 2.3b5
154
 
#########
155
 
 
156
 
:2.3.b5: 2011-01-13
157
 
 
158
 
This is the fifth and **last** beta of the 2.3 series, leading up to a 2.3.0
159
 
release in February. Beta releases are suitable for everyday use but may cause
160
 
some incompatibilities with plugins.
161
 
 
162
 
2.3b5 includes bug fixes for committing to stacked branches, smoother upgrades
163
 
of multiple branches, compatibility with python-2.7, full test suite passing
164
 
on Ubuntu Natty and windows, less round-trips for several smart server
165
 
operations, better support text conflicts resolve actions and some more.
166
 
 
167
 
All known fixed bugs in other series (2.0, 2.1, 2.2) are also included here.
168
 
 
169
 
External Compatibility Breaks
170
 
*****************************
171
 
 
172
 
(none)
173
 
 
174
 
Improvements
175
 
************
176
 
 
177
 
* A redundant parent inventories calculation was removed from
178
 
  ``fetch.py``, as ``Repository.insert_stream`` already reports any
179
 
  missing inventories.  This removes at least one network roundtrip when
180
 
  pushing to a stacked branch.  (Andrew Bennetts)
181
 
 
182
 
* ``ControlDir.sprout`` no longer opens the target repository more than
183
 
  once.  This avoids some unnecessary IO, and removes a network roundtrip
184
 
  when doing ``bzr branch`` to a smart server URL.  (Andrew Bennetts)
185
 
 
186
 
* ``bzr modified`` now read-locks the working tree (and branch and
187
 
  repository) just once.  (Andrew Bennetts)
188
 
  
189
 
* ``bzr resolve`` now accepts ``--take-this`` and ``--take-other`` actions
190
 
  for text conflicts. This *replace* the whole file with the content
191
 
  designated by the action. This will *ignore* all differences that would
192
 
  have been merge cleanly otherwise. (Vincent Ladeuil, #638451)
193
 
 
194
 
* ``bzr tags``'s "sort" argument now allows registering custom sort
195
 
  methods using the ``bzrlib.tag.tag_sort_methods`` registry. 
196
 
  (Jelmer Vernooij, #701244)
197
 
 
198
 
* ``bt.test_http`` was breaking ``os.environ`` by erasing the values saved by
199
 
  ``TestCase`` leading to ``bt.test_import_tariff`` failures.
200
 
  (Vincent Ladeuil, #690563)
201
 
 
202
 
* ``upgrade`` now upgrades dependent branches when a shared repository is
203
 
  specified. It also supports new options: ``--dry-run`` for showing what
204
 
  will happen and ``--clean`` to remove the backup directory on successful
205
 
  completion. (Ian Clatworthy, Matthew Fuller, #89830, #374734, #422450)
206
 
 
207
 
Bug Fixes
208
 
*********
209
 
 
210
 
.. Fixes for situations where bzr would previously crash or give incorrect
211
 
   or undesirable results.
212
 
 
213
 
* Avoid leaking SSH subprocess communication socket into unrelated child
214
 
  processes, which could cause bzr to hang on exit. (Max Bowsher, #696285)
215
 
 
216
 
* ``bzr break-lock`` on a corrupted lock file works correctly, rather than
217
 
  raising a PermissionDenied error. We were accidentally holding open the
218
 
  file we were trying to delete. (John Arbash Meinel, #659978)
219
 
 
220
 
* ``bzr update`` in a checkout of a readonly branch works again, without
221
 
  trying to set the tags in the master branch. This had been broken by the
222
 
  bug fix for bug #603395.  (John Arbash Meinel, #701212)
223
 
 
224
 
* Per-transport tests now prefer to use ``Transport.get_bytes()`` rather
225
 
  than ``Transport.get().read()``. The SFTP code uses an async message to
226
 
  close the file handle if you let the handle die from refcounting, while
227
 
  it uses a synchronous message if you close it directly. This should help
228
 
  prevent random test suite failures from race conditions.
229
 
  (John Arbash Meinel, #681047)
230
 
 
231
 
* Stop using ``bzrlib.tuned_gzip.GzipFile``. It is incompatible with
232
 
  python-2.7 and was only used for Knit format repositories, which haven't
233
 
  been recommended since 2007. The file itself will be removed in the next
234
 
  release. (John Arbash Meinel)
235
 
 
236
 
* The BZR_COLUMNS environment variable can be set to 0 to indicate no
237
 
  limitation on the width of the terminal.  (Neil Martinsen-Burrell, #675652)
238
 
 
239
 
* Treat WSAECONNABORTED the same as WSAECONNRESET for the purposes of
240
 
  considering a smart data stream as being interrupted. This fixes a
241
 
  failure in the windows test suite, that was trying to ensure we cleanly
242
 
  handled a server disconnect.  (John Arbash Meinel, #581311, #686587)
243
 
 
244
 
* Unshelving changes that occur in a now-unversioned directory now restore
245
 
  the directory properly rather than crashing.
246
 
  (John Arbash Meinel, #389674)
247
 
 
248
 
* You are now able to commit directly to a stacked branch. Any needed
249
 
  parent inventories will be filled in as part of the commit process.
250
 
  (John Arbash Meinel, #375013)
251
 
 
252
 
Documentation
253
 
*************
254
 
 
255
 
* Better document the rules to update the bzr freshmeat page when
256
 
  doing a release. (Vincent Ladeuil, #690515)
257
 
 
258
 
API Changes
259
 
***********
260
 
 
261
 
* ``Branch.sprout``, ``BranchFormat.initalize`` and
262
 
  ``ControlDir.create_branch`` now take an optional ``repository`` keyword
263
 
  argument, and ``BranchFormat.open`` now takes an optional
264
 
  ``found_repository`` keyword argument.  These provide the repository
265
 
  object for new branch object to use (for cases when the caller has
266
 
  already opened that repository).  Implementations of these APIs will
267
 
  need to be updated to accept these arguments.  (Andrew Bennetts)
268
 
 
269
 
* ``bzrlib.tuned_gzip.GzipFile`` is now deprecated and will be removed in
270
 
  the bzr-2.4 series. Code that was using it can just use the python
271
 
  stdlib ``gzip.GzipFile``. (John Arbash Meinel)
272
 
 
273
 
 
274
 
Testing
275
 
*******
276
 
 
277
 
* ``bzrlib.tests`` defines ``isolated_environ`` with the definitions of all
278
 
  the environment variables the tests should care about. It also defines
279
 
  ``override_os_environ`` and ``restore_os_environ`` to properly implement
280
 
  isolation from ``os.environ`` for tests. ``bzrlib.tests`` now defines a
281
 
  ``DocTestSuite`` class using this facility for all ``bzrlib``
282
 
  doctests. (Vincent Ladeuil, #321320)
283
 
 
284
 
* Catch exceptions related to bug #637821 during test cleanup to avoid
285
 
  spurious failures. (Vincent Ladeuil, #686008).
286
 
 
287
 
* Check sphinx compatibility for tests requiring older sphinx versions.
288
 
  (Vincent Ladeuil, #688072)
289
 
 
290
 
* ``test_onto_transport`` in the Launchpad plugin can now run with Python
291
 
  2.7. (Vincent Ladeuil, #654733)
292
 
 
293
 
* ``TestCase._captureVar`` and ``TestCase._old_env`` have been deleted due to
294
 
  bug #690563. Test writers are encouraged to use ``TestCase.overrideEnv``
295
 
  instead. (Vincent Ladeuil)
296
 
 
297
 
* ``TestDebuntuExpansions`` was escaping the test isolation by calling the
298
 
  wrong base class ``setUp``. (Vincent Ladeuil, #684662)
299
 
 
300
 
bzr 2.3b4
301
 
#########
302
 
 
303
 
:2.3.b4: 2010-12-03
304
 
 
305
 
This is the fourth beta of the 2.3 series, leading up to a 2.3.0 release in
306
 
February. Beta releases are suitable for everyday use but may cause some
307
 
incompatibilities with plugins.
308
 
 
309
 
2.3b4 includes bug fixes for the ``config`` command and conflict
310
 
resolution. More changes were made for the test scripts handling to make it
311
 
easier to add reproducing recipes to bugs.
312
 
 
313
 
It also includes bug fixes from the 2.2.2 release as well as the bug fixes
314
 
in the upcoming 2.0.7, 2.1.4 and 2.2.3 releases. This means that all known
315
 
fixed bugs at the time of this release are included.
316
 
 
317
 
 
318
 
External Compatibility Breaks
319
 
*****************************
320
 
 
321
 
  (none)
322
 
 
323
 
Improvements
324
 
************
325
 
 
326
29
* Bazaar now caches a branch's tags while that branch is read-locked.
327
30
  This removes 1 network roundtrip from most interactions with a remote
328
31
  branch.  (Andrew Bennetts)
336
39
  number of remaining conflicts. This provides a better feedback about the
337
40
  whole resolution process. (Vincent Ladeuil)
338
41
 
339
 
* Read configuration files in $XDG_CONFIG_HOME/bazaar on Unix if there is
340
 
  already a directory there.  (Neil Martinsen-Burrell, #195397)
341
 
 
342
42
Bug Fixes
343
43
*********
344
44
 
 
45
.. Fixes for situations where bzr would previously crash or give incorrect
 
46
   or undesirable results.
 
47
 
345
48
* Better message if there is an error while setting ownership of
346
49
  ``.bazaar`` directory. (Parth Malwankar, #657553)
347
50
 
364
67
 
365
68
* Report error if non-ASCII command option given. (Rory Yorke, #140563)
366
69
 
367
 
* ``tools/check-newsbug.py`` is now based on ``lp:hydrazine`` and no longer
368
 
  crashes when encountering private bugs (they are just displayed as such).
369
 
  (Vincent Ladeuil, #354985)
 
70
Documentation
 
71
*************
 
72
 
 
73
.. Improved or updated documentation.
 
74
 
 
75
API Changes
 
76
***********
 
77
 
 
78
.. Changes that may require updates in plugins or other code that uses
 
79
   bzrlib.
370
80
 
371
81
Internals
372
82
*********
373
83
 
 
84
.. Major internal changes, unlikely to be visible to users or plugin 
 
85
   developers, but interesting for bzr developers.
 
86
 
374
87
* ``BranchBuilder.build_snapshot`` now accepts parent_ids == [].
375
88
  This can be used to create a new root in the graph. (Gary van der Merwe)
376
89
 
382
95
Testing
383
96
*******
384
97
 
 
98
.. Fixes and changes that are only relevant to bzr's test framework and 
 
99
   suite.  This can include new facilities for writing tests, fixes to 
 
100
   spurious test failures and changes to the way things should be tested.
 
101
 
385
102
* Add a null_output_matches_anything keyword argument with default False to
386
103
  bzrlib.tests.script.ScriptRunner.run_script to specify that the command
387
104
  output should not be checked (as opposed to expecting an empty output).
395
112
  to 0.9.5 which will allow tests that need the fixed unicode handling to be
396
113
  written. (Martin [gz])
397
114
 
398
 
* Introduce an ``overrideEnv()`` helper for tests that needs to change the
399
 
  environment variables while respecting the isolation rules. Get rid of
400
 
  TestCase._restoreEnvironment which is now useless.
401
 
  (Vincent Ladeuil, #690563)
402
 
 
403
 
* Printing selftest results to a non-UTF-8 console will now escape characters
404
 
  that can't be encoded rather than aborting the test run with an exception.
405
 
  (Martin [gz], #633216)
406
 
 
407
115
 
408
116
bzr 2.3b3
409
117
#########
427
135
  once. It can also be used to set or delete a configuration option in any
428
136
  configuration file. (Vincent Ladeuil)
429
137
 
430
 
* New shortcut URL schemes ``ubuntu:`` and ``debianlp:`` access source
 
138
* New shortcut url schemes ``ubuntu:`` and ``debianlp:`` access source
431
139
  branches on Launchpad.  E.g. ``bzr branch ubuntu:foo`` gives you the source
432
140
  branch for project ``foo`` in the current distroseries for Ubuntu while
433
141
  ``bzr branch debianlp:lenny/foo`` gives you the source branch (on Launchpad)
455
163
  provided as parameters. When both are provided, ``--directory`` becomes
456
164
  the base directory for the other paths. (Vincent Ladeuil, #670851)
457
165
 
458
 
* Correctly set the Content-Type  header when HTTP POSTing to comply
 
166
* Correctly set the Content-Type  header when http POSTing to comply
459
167
  with stricter web frameworks. (Vincent Ladeuil, #665100)
460
168
 
461
169
* Don't force openssh to use protocol=2, since that is now the default.
462
170
  (Neil Martinsen-Burrell, #561061)
463
171
 
464
 
* Fix ``KeyError: 'port'`` when getting the stored password for an HTTP  URL.
 
172
* Fix ``KeyError: 'port'`` when getting the stored password for an http
 
173
  URL.
465
174
  (Martin Pool, #654684)
466
175
 
467
176
* Make ``bzr tag --quiet`` really quiet. (Neil Martinsen-Burrell, #239523)
592
301
  (Marius Kruger, #400554)
593
302
 
594
303
* When using the pycurl client module, Bazaar shows some of the text from
595
 
  HTTP server error messages.
 
304
  http server error messages.
596
305
  (Martin Pool, #656667)
597
306
 
598
307
Bug Fixes
678
387
  (Andrew Bennetts, #632387)
679
388
 
680
389
* Skip tests that needs a bzr source tree when there isn't one. This is
681
 
  needed to successfully run the test suite for installed versions.
 
390
  needed to succesfully run the test suite for installed versions.
682
391
  (Vincent Ladeuil, #644855).
683
392
 
684
393
* Skip the tests that requires respecting the chmod bits when running as root.
754
463
* ``bzr remove`` now just backs up changed files instead of exiting,
755
464
  forcing you to choose to either keep or delete them. Bazaar will now delete
756
465
  the files if they can easily be recovered using revert, otherwise they
757
 
  will be backed up (adding an extension of the form .~#~).
 
466
  will be backed up (adding an extention of the form .~#~).
758
467
  (Marius Kruger, #400554)
759
468
 
760
469
* ``bzr revert`` and ``bzr status`` are up to 15% faster on large trees
855
564
* ``EPIPE`` can be raised during test server shutdown. This happened on
856
565
  gentoo only so far. (Vincent Ladeuil, #627277)
857
566
 
858
 
* Errors occurring during HTTP(S) test server starts should now be
 
567
* Errors occurring during http(s) test server starts should now be
859
568
  handled cleanly. (Vincent Ladeuil, #392402)
860
569
 
861
570
* Fix ``AttributeError on parent.children`` when adding a file under a