~bzr-pqm/bzr/bzr.dev

5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
1
####################
2
Bazaar Release Notes
3
####################
4
5
.. toctree::
6
   :maxdepth: 1
7
6014.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev6
8
bzr 2.4.0
9
#########
10
11
:2.4.0: 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
Bug Fixes
30
*********
31
32
.. Fixes for situations where bzr would previously crash or give incorrect
33
   or undesirable results.
34
6015.10.1 by John Arbash Meinel
Merge the package-freshness check from bzr-2.5 to the 2.4 series. bug #609187
35
* Accessing a packaging branch on Launchpad (eg, ``lp:ubuntu/bzr``) now
36
  checks to see if the most recent published source package version for
37
  that project is present in the branch tags. This should help developers
38
  trust whether the packaging branch is up-to-date and can be used for new
39
  changes. The level of verbosity is controlled by the config item
40
  ``launchpad.packaging_verbosity``. It can be set to one of
41
42
  off
43
    disable all checks
44
45
46
  minimal
47
    only display if the branch is out-of-date
48
49
  short
50
    also display single-line up-to-date and missing,
51
52
53
  all
54
    (default) display multi-line content for all states
55
56
57
  (John Arbash Meinel, #609187, #812928)
58
59
6015.7.1 by John Arbash Meinel
No need to open the master branch just to get its URL.
60
* The fix for bug #513709 caused us to open a new connection when
61
  switching a lightweight checkout that was pointing at a bound branch.
62
  This isn't necessary because we know the master URL without opening it,
63
  avoiding an extra SSH connection, etc.
6015.7.2 by John Arbash Meinel
Bug #812285. Add an effort test to show that things have improved.
64
  (John Arbash Meinel, #812285)
6015.7.1 by John Arbash Meinel
No need to open the master branch just to get its URL.
65
6015.12.1 by Jelmer Vernooij
Add python2.7 workaround for bug 809048.
66
* Cope with not all Python versions having a ``clear`` method on
67
  ``TestCase._type_equality_funcs``. (#809048, Martin [gz], Jelmer
68
  Vernooij)
69
6014.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev6
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.
80
81
Internals
82
*********
83
84
.. Major internal changes, unlikely to be visible to users or plugin 
85
   developers, but interesting for bzr developers.
86
87
Testing
88
*******
89
90
.. Fixes and changes that are only relevant to bzr's test framework and 
91
   suite.  This can include new facilities for writing tests, fixes to 
92
   spurious test failures and changes to the way things should be tested.
93
6015.4.1 by Andrew Bennetts
Backport lp:bzr r6018: Add a 'flush' action to BranchBuilder.build_snapshot.
94
* `BranchBuilder.build_snapshot` now supports a "flush" action.  This
95
  cleanly and reliably allows tests using `BranchBuilder` to construct
96
  branches that e.g. rename files out of a directory and unversion that
97
  directory in the same revision.  Previously some changes were impossible
98
  due to the order that `build_snapshot` performs its actions.
99
  (Andrew Bennetts)
100
6015.4.2 by Andrew Bennetts
Backport lp:bzr r6020: Speed up TestCaseWithMemoryTransport._check_safety_net by reading the dirstate file directly rather than using WorkingTree.open().
101
* `TestCaseWithMemoryTransport` is faster now: `_check_safety_net` now
102
  just compares the bytes in the dirstate file to its pristine state,
103
  rather than opening the WorkingTree and calling ``last_revision()``.
104
  This reduces the overall test suite time by about 10% on my laptop.
105
  (Andrew Bennetts)
106
6014.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev6
107
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
108
bzr 2.4b5
109
#########
110
6013.1.2 by Vincent Ladeuil
Release 2.4b5
111
:2.4b5: 2011-07-07
112
113
This is the fifth (and last) beta of the 2.4 series leading to
114
2.4.0 release in Auguest 2011. Beta releases are suitable for
115
everyday use but may cause some incompatibilities with plugins.
116
117
This release includes all bug fixed in previous series known at
118
the time of this release.
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
119
120
External Compatibility Breaks
121
*****************************
122
6013.1.2 by Vincent Ladeuil
Release 2.4b5
123
None.
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
124
125
New Features
126
************
127
5971.1.66 by Jonathan Riddell
add release notes
128
* New command ``verify-signatures`` to check if all commits or specified commits
129
  have digital signatures from trusted keys.  Requires python-gpgme to be
130
  installed.
131
132
* New option ``--signatures`` for ``bzr log`` to display digital signature
133
  verification results for each commit.
134
135
* Config option acceptable_keys to list which GPG keys are verified as trusted.
136
137
* Config option validate_signatures_in_log to always show signatures in 
138
  ``bzr log``.
139
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
140
Improvements
141
************
142
5993.4.2 by Andrew Bennetts
Add release-notes entry.
143
* ``Branch.open`` is now about 3x faster (about 2ms instead of 6.5ms).
144
  (Andrew Bennetts).
145
6006.4.5 by Martin Pool
Flush pack, index, and dirstate files to disk on closing
146
* Pack, dirstate, and index files are synced to persistent storage if 
147
  possible when writing finishes, to reduce the risk of problems caused by
6006.4.12 by Martin Pool
Documentation and news for fdatasync (bug 343427)
148
  a machine crash or similar problem.  This can be turned off through the
149
  ``dirstate.fdatasync`` and ``repository.fdatasync`` options, which can
150
  be set in ``locations.conf`` or ``bazaar.conf``.  (Martin Pool,
151
  #343427)
6006.4.5 by Martin Pool
Flush pack, index, and dirstate files to disk on closing
152
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
153
Bug Fixes
154
*********
155
5987.1.4 by Vincent Ladeuil
Proper error messages for config files with content in non-utf encoding or that cannot be parsed
156
* Display a proper error message when a config file content cannot be
157
  decoded as UTF-8 or when it cannot be parsed.
6007.1.1 by Vincent Ladeuil
Fix typo in bug number
158
  (Vincent Ladeuil, #502060, #688677, #797246)
5987.1.3 by Vincent Ladeuil
Proper message when authentication.conf has non-utf8 content
159
5988.2.1 by Vincent Ladeuil
Do not generate path conflicts if a corresponding content conflict exists
160
* Generate a single conflict (instead of two) when merging a branch
161
  modifying and renaming a file in a branch that deleted it (or vice-versa).
162
  (Vincent Ladeuil, #688101)
163
5997.1.2 by Martin Pool
Better message on mismatched bzr/bzrlib
164
* Give a more helpful message when the bzr executable doesn't match the
165
  library.  (This typically happens because of a misconfigured PYTHONPATH
166
  or half-installed bzr.)  
167
  (Martin Pool, #804553)
168
5987.1.1 by Vincent Ladeuil
Properly load utf8-encoded config files
169
* Properly load utf8-encoded config files. (Vincent Ladeuil, #799212)
170
5988.1.1 by Jelmer Vernooij
Fix GraphThunkIdsToKeys.merge_sort
171
* ``GraphThunkIdsToKeys.merge_sort`` now properly returns
5988.1.3 by Jelmer Vernooij
Fix typo, thanks John Szakmeister.
172
  keys rather than ids. (Jelmer Vernooij, #799677)
5988.1.1 by Jelmer Vernooij
Fix GraphThunkIdsToKeys.merge_sort
173
5993.2.3 by Jelmer Vernooij
Update NEWS, consistently use require_tree_root as argument everywhere.
174
* ``TreeTransformBase.fixup_new_roots`` can now check that a tree root
175
  is present. (Jelmer Vernooij, #801257)
176
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
177
API Changes
178
***********
179
5993.3.2 by Jelmer Vernooij
Add Repository.supports_versioned_directories.
180
* New attributes ``WorkingTreeFormat.supports_versioned_directories`` and
181
  ``RepositoryFormat.supports_versioned_directories``.
5993.3.1 by Jelmer Vernooij
Add WorkingTreeFormat.supports_versioned_directories attribute.
182
  (Jelmer Vernooij, #765815)
183
6008.1.1 by John Arbash Meinel
Merge version-info fixes for dotted revnos.
184
* The "revno" field type when using the python version-info format is now
185
  a string (to handle dotted revnos) (Benoît Pierre, #796259)
186
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
187
Internals
188
*********
189
5875.3.29 by Vincent Ladeuil
Add news entry.
190
* Start implementing localization, starting with command help text (but not
191
  the command options themselves). This will allow bootstrapping the bzr
192
  internationalization process. (Inada Naoki)
193
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
194
Testing
195
*******
196
5984.1.5 by Vincent Ladeuil
Add news entries
197
* Fix test failures when running as a homeless user (debian buildd). Tests
198
  leaking into ``${HOME}/.bzr.log`` should be detected properly now.
199
  (Vincent Ladeuil, #798698)
5981.1.3 by Vincent Ladeuil
Open trunk again as 2.4dev5
200
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
201
bzr 2.4b4
202
#########
203
5981.1.1 by Vincent Ladeuil
Release 2.4b4
204
:2.4b4: 2011-06-16
205
206
This is the fourth beta of the 2.4 series, leading to a 2.4.0 release in
207
August 2011. Beta releases are suitable for everyday use but may cause some
208
incompatibilities with plugins.
209
210
This release includes all bug fixed in previous series known at the time of
211
this release.
212
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
213
214
External Compatibility Breaks
215
*****************************
216
217
.. These may require users to change the way they use Bazaar.
218
5967.3.3 by Jonathan Riddell
add release notes
219
* Do not treat configuration option 'check_signatures = require' as if
5967.3.5 by Jonathan Riddell
add name to release note
220
  it were 'create_signatures = always' (Jonathan Riddell)
5967.3.3 by Jonathan Riddell
add release notes
221
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
222
New Features
223
************
224
225
.. New commands, options, etc that users may wish to try out.
226
5743.8.23 by Vincent Ladeuil
Don't publicize the hooks yet and add proper cleanups to avoid hook leaks (or hooks triggering during tests cleanup).
227
* Hooks have been added for config stacks: ``get``, ``set`` and ``remove``
5989.1.1 by Vincent Ladeuil
Fix typo in release notes
228
  are called when an option is respectively read, modified or deleted. Also
5743.8.23 by Vincent Ladeuil
Don't publicize the hooks yet and add proper cleanups to avoid hook leaks (or hooks triggering during tests cleanup).
229
  added ``load`` and ``save`` hooks for config stores, called when the
230
  stores are loaded or saved.  (Vincent Ladeuil)
5743.8.6 by Vincent Ladeuil
Add hooks for config stacks.
231
5909.2.7 by Jonathan Riddell
add NEWS
232
* New hook server_exception in bzrlib.smart.server to catch any
5743.8.6 by Vincent Ladeuil
Add hooks for config stacks.
233
  exception caused while running bzr serve.
234
  (Jonathan Riddell, #274578)
235
5993.1.1 by Vincent Ladeuil
Start implementing command help text localization
236
* New hook set_commit_message in bzrlib.msgeditor to set a commit message
237
  and revision properties.  (Jonathan Riddell, #274578)
5912.4.11 by Jonathan Riddell
add NEWS
238
5945.1.5 by Martin von Gagern
Document #38655 in release-notes and whats-new.
239
* Support ``-S`` as an alias for ``--short`` for the ``log`` and
240
  ``missing`` commands. (Martin von Gagern, #38655)
241
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
242
Improvements
243
************
244
245
.. Improvements to existing commands, especially improved performance 
246
   or memory usage, or better results.
247
5993.1.1 by Vincent Ladeuil
Start implementing command help text localization
248
* ``bzr annotate`` can be run without setting whoami data first.
249
  (Jonathan Riddell, #667408)
5967.1.3 by Jonathan Riddell
add release note
250
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
251
Bug Fixes
252
*********
253
254
.. Fixes for situations where bzr would previously crash or give incorrect
255
   or undesirable results.
256
5425.4.25 by Martin Pool
Support auto-stealing dead locks, but turn it off by default.
257
* Bazaar can now detect when a lock file is held by a dead process
5425.4.16 by Martin Pool
resolve conflicts against trunk
258
  originating from the same machine, and steal the lock after printing a
5425.4.25 by Martin Pool
Support auto-stealing dead locks, but turn it off by default.
259
  message to the user.  This is off by default, for safety, but can be
260
  turned on by setting the configuration variable ``locks.steal_dead`` to
261
  ``True``.
5425.4.16 by Martin Pool
resolve conflicts against trunk
262
  (Martin Pool, #220464)
263
6008.1.1 by John Arbash Meinel
Merge version-info fixes for dotted revnos.
264
* ``bzr version-info`` now works when the tree is on a dotted revno.
265
  (Benoît Pierre, #796259)
266
5957.2.4 by Vincent Ladeuil
Fix news entry.
267
* Credentials in the log output produced by ``-Dhttp`` are masked so users
268
  can more freely post them in bug reports. (Vincent Ladeuil, #723074)
5957.2.3 by Vincent Ladeuil
Mask credentials in the -Dhttp logging
269
5929.2.1 by Vincent Ladeuil
Fix spurious test test_server_exception_with_hook failure
270
* Fix a race condition for ``server_started`` hooks leading to a spurious
271
  test failure. (Vincent Ladeuil, #789167)
272
5973.1.1 by John Arbash Meinel
Resolve conflicts with bzr-2.4.txt (aka NEWS)
273
* Fix exporting subdirectory with ``--per-file-timestamps``.
274
  (Szilveszter Farkas, #795557)
275
5946.1.3 by John Arbash Meinel
release-notes about bug #597686
276
* Handle files that get created but don't get used during TreeTransform.
277
  ``open()`` can create a file, and still raise an exception before it
278
  returns. So anything we might have created, make sure we destroy during
279
  ``finalize()``. (Martin [gz], #597686)
280
5909.3.3 by Martin von Gagern
Document fix.
281
* ``pack_repo`` now uses ``Transport.move`` instead of
282
  ``Transport.rename``, deleting any existing targets even on SFTP.
283
  (Martin von Gagern, #421776)
284
5918.1.3 by John Arbash Meinel
Merge bzr.dev, update release-notes for bug #787122
285
* Pass the ``build_mo`` command to the rest of the setup() calls in
286
  setup.py. The ``bdist_wininst`` and ``py2exe`` code paths were failing
287
  because ``build_mo`` became a required step that they didn't know about.
288
  (John Arbash Meinel, #787122)
289
6013.1.1 by Vincent Ladeuil
Move the news entry for bug #806356 in the right section.
290
* Preserve existing ``root-id`` when merging an unrelated branch.
291
  (Aaron Bentley, #806356)
292
5977.1.2 by John Arbash Meinel
release-notes entry.
293
* Properly avoid re-adding a file after it changes case on CICP
294
  filesystems. (John Arbash Meinel, #798130)
295
5609.39.10 by Vincent Ladeuil
Add news entry
296
* Reports the original error when an InvalidHttpResponse exception is
297
  encountered to facilitate debug. (Vincent Ladeuil, #788530)
298
5887.2.8 by Jonathan Riddell
add NEWS
299
* Reports a non-existant file error when trying to merge in a file
300
  that does not exist. (Jonathan Riddell, #330063)
301
5923.1.1 by Vincent Ladeuil
Require prompts to always be unicode
302
* ``UIFactory.prompt``, ``UIFactory.get_username``,
303
  ``UIFactory.get_password`` and ``UIFactory.get_boolean`` now require a
304
  unicode prompt to be passed in. (Jelmer Vernooij, #592083)
305
5954.4.8 by Aaron Bentley
Add release notes.
306
* Support merging into the empty tree. (Aaron Bentley, #595328)
307
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
308
Documentation
309
*************
310
311
.. Improved or updated documentation.
312
5939.2.1 by Neil Martinsen-Burrell
better document the effect of merge --force
313
* Improve documentation of ``bzr merge --force``.
314
  (Neil Martinsen-Burrell, #767307)
315
5967.3.3 by Jonathan Riddell
add release notes
316
* Make docs for configuration options for digital signatures match 
5967.3.4 by Jonathan Riddell
Add user-guide page on GPG signatures.
317
  reality. (Jonathan Riddell)
318
319
* Add user-guide page on GPG signatures. (Jonathan Riddell)
5967.3.3 by Jonathan Riddell
add release notes
320
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
321
API Changes
322
***********
323
324
.. Changes that may require updates in plugins or other code that uses
325
   bzrlib.
326
5967.7.1 by Martin Pool
Deprecate __contains__ on Tree and Inventory
327
* Checking for a file id in a `Tree` or `Inventory` using ``in`` is now
328
  deprecated.  Instead, use `has_id`.
329
  (Martin Pool)
330
5967.6.2 by Martin Pool
Delete fairly useless and repetitive per-format export single-call functions.
331
* Exporters are now all exposed as generators, rather than as single-call
332
  functions, so that calling code can take stream the output.
333
  (Xaav, Martin Pool)
334
5425.4.16 by Martin Pool
resolve conflicts against trunk
335
* Information about held lockdir locks returned from eg `LockDir.peek` is
5967.4.2 by Martin Pool
merge news
336
  now represented as a `LockHeldInfo` object, rather than a plain
337
  Python dict.
338
  (Martin Pool)
339
5967.4.1 by Martin Pool
Remove unused file_status function
340
* Remove `file_status` function.
341
  (Martin Pool)
342
5972.2.1 by Jelmer Vernooij
Deprecate Repository.iter_reverse_revision_history.
343
* ``Repository.iter_reverse_revision_history`` is now deprecated.
344
  Use ``Graph.iter_lefthand_ancestry`` instead.
345
  (Jelmer Vernooij, #739481)
346
5972.3.11 by Jelmer Vernooij
Deprecate Repository.get_ancestry.
347
* ``Repository.get_ancestry`` has been deprecated. Use
348
  ``Graph.iter_ancestry`` instead.
349
  (Jelmer Vernooij, #784511)
5967.11.3 by Benoît Pierre
Add news entries.
350
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
351
Internals
352
*********
353
354
.. Major internal changes, unlikely to be visible to users or plugin 
355
   developers, but interesting for bzr developers.
356
5853.4.3 by Vincent Ladeuil
Add an option to check-newsbug to get a quicker access to bugs that needs to be closed.
357
* ``tools/check-newsbugs.py`` accepts a ``--browser`` option to open
358
  corresponding launchpad pages in a browser. (Vincent Ladeuil)
359
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
360
Testing
361
*******
362
363
.. Fixes and changes that are only relevant to bzr's test framework and 
364
   suite.  This can include new facilities for writing tests, fixes to 
365
   spurious test failures and changes to the way things should be tested.
366
5956.1.1 by Jelmer Vernooij
Add ImportTariffTestCase.
367
* A `ImportTariffTestCase` base class has been added in
368
  ``bzrlib.tests.test_import_tariff``, which can be used for import tariff
369
  tests in plugins. (Jelmer Vernooij, #793465)
370
5898.2.4 by Andrew Bennetts
Add release-notes entry.
371
* Fix deadlock in `TestImportTariffs.test_simple_serve` when stderr gets
372
  more output than fits in the default buffer.  This was happening on the
373
  Windows buildslave, and could easily happen in other circumstances where
374
  the default OS buffer size for pipes is small or the ``python -v``
5898.2.5 by Andrew Bennetts
Mention bug #784802 in release-notes entry.
375
  output is large.  (Andrew Bennetts, #784802)
5898.2.4 by Andrew Bennetts
Add release-notes entry.
376
5929.1.1 by Vincent Ladeuil
Fix spurious test failure on OSX for WorkingTreeFormat2
377
* Fix spurious test failure on OSX for WorkingTreeFormat2.
378
  (Vincent Ladeuil, #787942)
5939.3.1 by Andrew Bennetts
Don't use real /home/andrew in test_import_tariffs. We can test the real plugins and be properly isolated from the user's config and log.
379
5954.6.1 by Vincent Ladeuil
Rewrite the eager bb.test_merge.TestMerge.test_merge_reversed_revision_range test
380
* Re-target ``bb.test_merge.TestMerge.test_merge_reversed_revision_range``
381
  and rewrite it as a parameterized test to avoid unrelated failures.
382
  (Vincent Ladeuil, #795456)
383
5939.3.3 by Andrew Bennetts
Merge lp:bzr.
384
* Show log file contents from subprocesses started by
385
  `start_bzr_subprocess` in test failure details.  This may help diagnose
386
  strange hangs and failures involving subprocesses.  (Andrew Bennetts)
387
5933.1.2 by Vincent Ladeuil
sphinx-1.0.7 still has bug #785098
388
* Skip ``utextwrap`` tests when ``sphinx`` breaks text_wrap by an hostile
389
  monkeypatch to textwrap.TextWrapper.wordsep_re.
390
  (Vincent Ladeuil, #785098)
391
5924.1.2 by Vincent Ladeuil
Support multiple selftest --exclude options
392
* Multiple ``selftest --exclude`` options are now combined instead of
393
  overriding each other. (Vincent Ladeuil, #746991)
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
394
5947.1.1 by Vincent Ladeuil
Support pyftplib-0.6.0 as an ftp test server
395
* Restore some ``FTPTransport`` test coverage by allowing ``pyftpdlib
396
  0.6.0`` to be used. Also restore ``medusa`` support while leaving it
397
  disabled to make it easier to use if/when we can in the future.
398
  (Vincent Ladeuil, #781140)
5919.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev4
399
5939.3.1 by Andrew Bennetts
Don't use real /home/andrew in test_import_tariffs. We can test the real plugins and be properly isolated from the user's config and log.
400
* `TestImportTariffs` no longer uses the real ``$HOME``.  This prevents it
401
  from polluting ``$HOME/.bzr.log`` or being accidentally influenced by
402
  user configuration such as aliases.  It still runs with all the user's
403
  plugins enabled, as intended.
404
  (Vincent Ladeuil, Andrew Bennetts, #789505)
405
406
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
407
bzr 2.4b3
408
#########
409
5918.1.1 by Vincent Ladeuil
Release 2.4b3
410
:2.4b3: 2011-05-26
411
412
This is the third beta of the 2.4 series, leading to a 2.4.0 release in
413
August 2011. Beta releases are suitable for everyday use but may cause some
414
incompatibilities with plugins.
415
416
This release includes all bug fixed in previous series known at the time of
417
this release.
418
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
419
420
External Compatibility Breaks
421
*****************************
422
423
.. These may require users to change the way they use Bazaar.
424
5848.2.1 by John Arbash Meinel
Break compatibility with python <2.6.
425
* ``bzr-2.4`` has officially dropped support for python2.4 and python2.5.
426
  We will continue to maintain ``bzr-2.3`` for people who still need to
427
  use those versions of python. (John Arbash Meinel)
428
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
429
New Features
430
************
431
432
.. New commands, options, etc that users may wish to try out.
433
5755.2.5 by John Arbash Meinel
Expose the setting up the stack.
434
* The text compressor used for 2a repositories now has a tweakable
435
  parameter that can be set in bazaar.conf.
436
  ``bzr.groupcompress.max_entries_per_source`` default of 65536.
437
  When doing compression, we build up an index of locations to match
438
  against. Setting this higher will result in slightly better compression,
439
  at a cost of more memory. Note that a value of 65k represents fully
440
  sampling a 1MB file. So this only has an effect when compressing texts
441
  larger than N*16 bytes. (John Arbash Meinel, #602614)
442
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
443
Improvements
444
************
445
446
.. Improvements to existing commands, especially improved performance 
447
   or memory usage, or better results.
448
5816.8.1 by Andrew Bennetts
Be a little more clever about constructing a parents provider for stacked repositories, so that get_parent_map with local-stacked-on-remote doesn't use HPSS VFS calls.
449
* ``bzr branch --stacked`` from a smart server uses the network a little
450
  more efficiently.  For a simple branch it reduces the number of
451
  round-trips by about 20%.  (Andrew Bennetts)
452
5725.1.4 by Neil Martinsen-Burrell
merge bzr.dev, fix release notes conflict
453
* ``bzr log --line`` scales the width of the author field with the size of
454
  the line.  This means that the full author name is shown when the
455
  environment variable BZR_COLUMNS=0.  (Neil Martinsen-Burrell)
456
5847.2.1 by John Arbash Meinel
Bug #780677, use a RevisionTree for pull
457
* ``bzr pull`` now properly triggers the fast
458
  ``CHKInventory.iter_changes`` rather than the slow generic
459
  inter-Inventory changes. It used to use a ``DirStateRevisionTree`` as
460
  one of the source trees, which is faster when we have to read the whole
461
  inventory anyway, but much slower when we can get just the delta out of
462
  the repository. On a 70k record tree, this changes ``bzr pull`` from 28s
463
  down to 17s. (John Arbash Meinel, #780677)
464
5829.1.1 by Andrew Bennetts
Share _group_cache when using GroupCompressVersionedFiles.without_fallbacks, and move _find_parents_keys_of_revisions call to before we clear repo.revisions' cache.
465
* Slightly reduced memory consumption when fetching into a 2a repository
466
  by reusing existing caching a little better.  (Andrew Bennetts)
467
5807.4.10 by John Arbash Meinel
Release-notes about bug #380202
468
* Speed up ``bzr status`` by a little bit when there are a couple of
469
  modified files. We now track how many files we have seen that need
470
  updating, and only rewrite the dirstate file if enough of them have
471
  changed. The default is 10, and can be overridden by setting the branch
472
  option "``bzr.workingtree.worth_saving_limit``".
473
  (Ian Clatworthy, John Arbash Meinel, #380202)
474
5847.4.2 by John Arbash Meinel
uncommit is now down to 2.7s, document it fixing bug #780544
475
* Speed up ``bzr uncommit``. Instead of resetting the dirstate from
476
  scratch, use ``update_basis_by_delta``, computing the delta from the
5847.5.1 by Jelmer Vernooij
Trivial fixes.
477
  repository. (John Arbash Meinel, #780544)
5847.4.2 by John Arbash Meinel
uncommit is now down to 2.7s, document it fixing bug #780544
478
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
479
Bug Fixes
480
*********
481
482
.. Fixes for situations where bzr would previously crash or give incorrect
483
   or undesirable results.
484
5809.3.11 by Aaron Bentley
Update release notes.
485
* All Tree types can now be exported as tar.*, zip or directories.
486
  (Aaron Bentley)
5816.6.19 by A. S. Budden
Merged latest trunk
487
  
5861.1.2 by Vincent Ladeuil
Use positive forms where possible, fix the command help and the user guide.
488
* ``bzr merge --no-remember location`` never sets ``submit_branch``.
489
  (Vincent Ladeuil, #782169)
490
5861.1.11 by Vincent Ladeuil
Add news entry and same comments.
491
* ``bzr pull --no-remember location`` never sets
492
  ``parent_location``.  ``bzr push --no-remember location`` never
493
  sets ``push_location``.  ``bzr send --no-remember
494
  submit_location public_location`` never sets ``submit_branch``
495
  nor ``public_branch``.  (Vincent Ladeuil)
496
5898.1.8 by Martin
Add release notes
497
* Conflicts involving non-ascii filenames are now properly reported rather
498
  than failing with a UnicodeEncodeError. (Martin [GZ], #686161)
499
5816.6.18 by A. S. Budden
Added NEWS item.
500
* Correct parent is now set when using 'switch -b' with bound branches.
501
  (A. S. Budden, #513709)
5809.3.11 by Aaron Bentley
Update release notes.
502
5863.3.5 by Martin
Add release notes
503
* Fix `bzr plugins` regression in bzr 2.4 which resulted in a traceback
504
  from writelines on ckj terminals. (Martin [GZ], #754082)
505
5786.1.4 by John Arbash Meinel
Move the release-notes entry to the correct section.
506
* ``WT.inventory`` and ``WT.iter_entries_by_dir()`` was not correctly
507
  reporting subdirectories that were tree references (in formats that
508
  supported them). (John Arbash Meinel, #764677)
509
5863.5.2 by Jonathan Riddell
add NEWS
510
* Merging into empty branches now gives an error as this is currently
511
  not supported. (Jonathan Riddell, #242175)
5786.1.4 by John Arbash Meinel
Move the release-notes entry to the correct section.
512
5993.1.1 by Vincent Ladeuil
Start implementing command help text localization
513
* Do not show exception to user on pointless commit error.
514
  (Jonathan Riddell #317357)
5786.1.4 by John Arbash Meinel
Move the release-notes entry to the correct section.
515
5876.1.1 by John Arbash Meinel
Fix bug #781168, and allow WT.update_basis_by_delta
516
* ``WT.update_basis_by_delta`` no longer requires that the deltas match
517
  the current WT state. This allows ``update_basis_by_delta`` to be used
5876.1.3 by John Arbash Meinel
Give the performance reason for update-by-delta
518
  by more commands than just commit. Updating with a delta allows us to
519
  not load the whole inventory, which can take 10+s with large trees.
5876.1.1 by John Arbash Meinel
Fix bug #781168, and allow WT.update_basis_by_delta
520
  (Jonathan Riddell, John Arbash Meinel, #781168)
521
5911.1.7 by Benoît Pierre
Move news entry to "bug fix" section and remove "what's new" entry.
522
* ``bzr mv --after old_name new_name`` now works if "new_name" is newly
523
  added. (Benoît Pierre)
524
5786.1.4 by John Arbash Meinel
Move the release-notes entry to the correct section.
525
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
526
Documentation
527
*************
528
529
.. Improved or updated documentation.
530
5860.1.1 by Vincent Ladeuil
Fix some ReST typos in the configuration help and restore the workaround for dotted format names breaking sphinx.
531
* Restore the workaround for option names including dots (--1.14) which was
532
  disabled when we stopped listing --1.9 as a format.
533
  (Vincent Ladeuil, #782289)
534
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
535
API Changes
536
***********
537
538
.. Changes that may require updates in plugins or other code that uses
539
   bzrlib.
540
5815.3.5 by Jelmer Vernooij
Update NEWS.
541
* ``annotate_file`` has been deprecated in favor of
542
  ``annotate_file_revision_tree``. (Jelmer Vernooij, #775598)
543
5852.1.3 by Jelmer Vernooij
Update NEWS.
544
* ``Branch.fetch`` now takes an optional ``limit`` argument.
5852.1.6 by Jelmer Vernooij
Add extra test for Repository.search_missing_revision_ids.
545
  (Andrew Bennetts, Jelmer Vernooij, #750175)
5852.1.3 by Jelmer Vernooij
Update NEWS.
546
5837.1.1 by Jelmer Vernooij
Make Inter.get raise NoCompatibleInter.
547
* ``Inter.get`` now raises ``NoCompatibleInter`` if there are no
548
  compatible optimisers rather than an instance of the class it is called
549
  on. (Jelmer Vernooij)
550
5853.3.1 by Jelmer Vernooij
Update news.
551
* ``Branch.push`` now takes a ``lossy`` argument.
552
  ``Branch.lossy_push`` has been removed.
553
  (Jelmer Vernooij)
554
5815.5.2 by Jelmer Vernooij
Update NEWS.
555
* New method ``Repository.get_file_graph`` which can return the
556
  per-file revision graph. (Jelmer Vernooij, #775578)
557
5718.8.21 by Jelmer Vernooij
add a release note
558
* The default implementation of ``Branch`` is now oriented to
559
  storing the branch tip. Branch implementations which store the full
560
  history should now subclass ``FullHistoryBzrBranch``.
561
  ``Branch._last_revision_info`` has been renamed to
562
  ``Branch._read_last_revision_info`` (Jelmer Vernooij)
563
5837.2.1 by Jelmer Vernooij
Deprecate Tree.__iter__.
564
* ``Tree.__iter__`` has been deprecated; use ``Tree.all_file_ids``
565
  instead.  (Jelmer Vernooij)
566
5858.1.1 by Jelmer Vernooij
Support optional path argument to Tree.get_symlink_target.
567
* ``Tree.get_symlink_target`` now takes an optional ``path``
568
  argument. (Jelmer Vernooij)
569
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
570
Internals
571
*********
572
573
.. Major internal changes, unlikely to be visible to users or plugin 
574
   developers, but interesting for bzr developers.
575
5870.1.25 by Jelmer Vernooij
Update NEWS, pass inventory to file id generator.
576
* ``MutableTree.smart_add`` now uses inventory deltas.
577
  (Jelmer Vernooij, #146165)
578
5915.1.1 by Andrew Bennetts
Removed bzrlib.branch._run_with_write_locked_target. Use bzrlib.cleanup instead.
579
* Removed ``bzrlib.branch._run_with_write_locked_target`` as
580
  ``bzrlib.cleanup`` provides the same functionality in a more general
581
  way.  (Andrew Bennetts)
582
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
583
Testing
584
*******
585
586
.. Fixes and changes that are only relevant to bzr's test framework and 
587
   suite.  This can include new facilities for writing tests, fixes to 
588
   spurious test failures and changes to the way things should be tested.
589
5868.1.3 by Martin
Add release notes
590
* A test that was expected to fail but passes instead now counts as a failure
591
  catching up with new testtools and subunit handling. (Martin [GZ], #654474)
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
592
5865.2.1 by Vincent Ladeuil
Add an helper for per_workingtree scenarios that plugins can reuse
593
* Make it easier for plugins to reuse the per_workingtree scenarios by
594
  restoring the wt_scenarios helper that was accidentally deleted.
595
  (Vincent Ladeuil, #783472)
5811.1.2 by Vincent Ladeuil
Open trunk again as 2.4dev3
596
5902.1.1 by Martin Pool
Remove dodgy test_breakin tests
597
* Removed ``test_breakin`` tests that were excessively prone to hanging,
598
  did not work on Wine, and partly already disabled.
599
  (Martin Pool, #408814, #746985)
600
5912.3.1 by Vincent Ladeuil
Fix spurious windows-specific test failure
601
* Windows locations are different and should be tested accordingly.
602
  (Vincent Ladeuil, #788131)
603
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
604
bzr 2.4b2
605
#########
606
5811.1.1 by Vincent Ladeuil
Release 2.4b2
607
:2.4b2: 2011-04-28
608
609
This is the second beta of the 2.4 series, leading to a 2.4.0 release in
610
August 2011. Beta releases are suitable for everyday use but may cause some
611
incompatibilities with plugins.
612
613
This release includes all bug fixed in previous series known at the time of
614
this release.
615
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
616
617
External Compatibility Breaks
618
*****************************
619
620
.. These may require users to change the way they use Bazaar.
621
5741.3.2 by Martin Pool
Show a user warning on 'bzr clone' and 'get'
622
* Two command synonyms for ``bzr branch`` have been deprecated, to avoid
623
  confusion and to allow the names to later be reused.  The removed names
624
  are: ``get`` and ``clone``.   (Martin Pool, #506265)
625
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
626
New Features
627
************
628
629
.. New commands, options, etc that users may wish to try out.
630
5777.6.1 by Jelmer Vernooij
Add --lossy option to 'bzr commit'.
631
* ``bzr commit`` now supports a ``--lossy`` argument that can be used
632
  to discard any data that can not be natively represented when committing
633
  to a foreign VCS. (Jelmer Vernooij, #587721)
634
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
635
Improvements
636
************
637
638
.. Improvements to existing commands, especially improved performance 
639
   or memory usage, or better results.
640
5783.2.4 by John Arbash Meinel
release-notes (aka NEWS) about fixing bug #759091
641
* ``bzr merge`` in large trees is now significantly faster. On a 70k entry
5783.3.6 by John Arbash Meinel
Update release notes
642
  tree, the time went from ~3min down to 30s. This also effects ``bzr pull``
643
  and ``bzr update`` since they use the same merge logic to update the
644
  WorkingTree.  (John Arbash Meinel, #759091)
645
646
* ``bzr revert`` now properly uses ``bzr status``'s optimized
647
  ``iter_changes``. This can be a significant performance difference (33s
648
  to 5s on large trees). (John Arbash Meinel, #759096)
5752.5.3 by John Arbash Meinel
release-notes about fixing bug #740932
649
5740.1.1 by John Arbash Meinel
Integrate into bzr-2.4.
650
* Resolve ``lp:FOO`` urls locally rather than doing an XMLRPC request if
651
  the user has done ``bzr launchpad-login``. The bzr+ssh URLs were already
652
  being handed off to the remote server anyway (xmlrpc has been mapping
653
  ``lp:bzr`` to ``bzr+ssh://bazaar.launchpad.net/+branch/bzr``, rather
654
  than ``bzr+ssh://bazaar.launchpad.net/~bzr-pqm/bzr/bzr.dev`` for a few
655
  months now.) By doing it ourselves, we can cut out substantial startup
656
  time. From Netherlands to London it was taking 368ms to do the XMLRPC
657
  call as much as 2s from Sydney. You can test the local logic by using
658
  ``-Dlaunchpad``.  (John Arbash Meinel, #397739)
659
5783.2.4 by John Arbash Meinel
release-notes (aka NEWS) about fixing bug #759091
660
* When building a new WorkingTree (such as during ``bzr co`` or
661
  ``bzr branch``) we now properly store the stat and hash of files that
662
  are old enough. This saves a fair amount of time on the first
663
  ``bzr status`` (on a 500MB tree, it saves about 30+s).
664
  (John Arbash Meinel, #740932)
665
666
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
667
Bug Fixes
668
*********
669
670
.. Fixes for situations where bzr would previously crash or give incorrect
671
   or undesirable results.
672
5785.1.6 by Martin
Add release notes
673
* Arguments that can't be decoded to unicode in the current posix locale give
674
  a clearer error message without a traceback. (Martin [gz], #745712)
675
5752.3.8 by John Arbash Meinel
Merge bzr.dev 5764 to resolve release-notes (aka NEWS) conflicts
676
* ``bzrlib.log._DEFAULT_REQUEST_PARAMS`` is no longer accidentally
677
  mutated by ``bzrlib.log._apply_log_request_defaults``.  In practice
678
  these default values aren't relied on very often so this probably
679
  wasn't causing any trouble.  (Andrew Bennetts)
5753.3.1 by Andrew Bennetts
Quick fix for an obvious glitch in bzrlib.log: _DEFAULT_REQUEST_PARAMS was being mutated accidentally.
680
5728.5.9 by Andrew Bennetts
Merge latest lp:bzr, move our new release notes entries to the current release.
681
* ``bzr log`` now works on revisions which are not in the current branch.
682
  (Matt Giuca, #241998)
683
5807.4.1 by John Arbash Meinel
Merge Ian's work on faster dirstate operations (not writing out new dirstate for uninteresting changes).
684
* Don't rewrite the dirstate file when non-interesting changes have
685
  occurred. This can significantly improve 'bzr status' times when there
686
  are only small changes to a large tree.
687
  (Ian Clatworthy, John Arbash Meinel, #380202)
688
5752.3.8 by John Arbash Meinel
Merge bzr.dev 5764 to resolve release-notes (aka NEWS) conflicts
689
* Lazy hooks are now reset between test runs. (Jelmer Vernooij, #745566)
5691.2.2 by Jelmer Vernooij
Reset hooks between test runs.
690
5783.2.4 by John Arbash Meinel
release-notes (aka NEWS) about fixing bug #759091
691
* ``bzrlib.merge.Merge`` now calls ``iter_changes`` without
692
  ``include_unversioned=True``. This makes it significantly faster in many
693
  cases, because it only looks at modified files, rather than building
694
  information about all files. This can cause failures in other
695
  TreeTransform code, because it had been expecting to know the names of
696
  things which had not changed (such as parent directories). All cases we
697
  know about so far have been fixed, but there may be fallout for edge
698
  cases that we are missing. (John Arbash Meinel, #759091)
699
5807.5.1 by John Arbash Meinel
Fix bug #767177. Be more agressive with file.close() calls.
700
* ``SFTPTransport`` is more pro-active about closing file-handles. This
701
  reduces the chance of having threads fail from async requests while
5807.5.2 by Martin
Cherry-pick correction of bug number
702
  running the test suite. (John Arbash Meinel, #656170)
5807.5.1 by John Arbash Meinel
Fix bug #767177. Be more agressive with file.close() calls.
703
5672.2.3 by Alexander Belchenko
added NEWS item.
704
* Standalone bzr.exe installation on Windows: user can put additional python 
705
  libraries into ``site-packages`` subdirectory of the installation directory,
706
  this might be required for "installing" extra dependencies for some plugins.
707
  (Alexander Belchenko, #743256)
708
5783.3.4 by John Arbash Meinel
Include update in What's New for the performance improvements and bug #759096
709
* ``transform.revert()`` has been updated to use
710
  ``wt.iter_changes(basis_tree)`` rather than
711
  ``basis_tree.iter_changes(wt)``. This allows the optimized code path to
712
  kick in, improving ``bzr revert`` times significantly (33s to 4s on
713
  large trees, 0.7s to 0.3s on small trees.) (John Arbash Meinel, #759096)
714
5752.3.7 by John Arbash Meinel
Update release-notes
715
* ``TreeTransform.create_file/new_file`` can now take an optional ``sha1``
716
  parameter. If supplied, when the transform is applied, it will then call
717
  ``self._tree._observed_sha1`` for those files. This lets us update the
718
  hash-cache for content that we create, preventing us from re-reading the
719
  content in the next ``bzr status``.  (John Arbash Meinel, #740932)
5752.3.1 by John Arbash Meinel
Merge up from 2.4-windows-lfstat
720
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
721
Documentation
722
*************
723
5739.1.1 by Andrew Bennetts
Add release-note.
724
* Added a section about using a shared SSH account on a server for bzr+ssh
725
  access.  (Russell Smith)
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
726
5761.1.1 by Martin Pool
Recommend SSH rather than SFTP in user documentation examples
727
* The documentation now recommends using SSH rather than SFTP in the
728
  tutorials and the examples, because that will generally be much faster
729
  and better in cases where it can be used.  SFTP is still available and
730
  mentioned as an alternative.  (Martin Pool, #636712)
731
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
732
API Changes
733
***********
734
735
.. Changes that may require updates in plugins or other code that uses
736
   bzrlib.
737
5809.2.3 by Jelmer Vernooij
Kill update_revisions private implementation.
738
* ``Branch.update_revisions`` has been made private and should no
739
  longer be used by external users. Use ``Branch.pull`` or ``Branch.push``
5809.2.5 by Jelmer Vernooij
Remove tests related to InterBranch.update_revisions.
740
  instead. (Jelmer Vernooij, #771765)
5809.2.3 by Jelmer Vernooij
Kill update_revisions private implementation.
741
5741.3.1 by Martin Pool
Add Command.invoked_as
742
* Commands now have an `invoked_as` attribute, showing the name under
743
  which they were called before alias expansion.
5741.3.6 by mbp at sourcefrog
merge news
744
  (Martin Pool)
745
5622.3.11 by Jelmer Vernooij
Revert some unnecessary changes.
746
* ``Hooks.create_hook`` is now deprecated in favour of ``Hooks.add_hook``.
747
  (Jelmer Vernooij)
748
5728.4.1 by Martin Pool
bzrlib.initialize now does what you'd expect
749
* If you call `bzrlib.initialize` but forget to enter the resulting object
750
  as a context manager, bzrlib will now be initialized anyhow.
751
  (Previously simple programs calling bzrlib might find the library was
752
  mysteriously silent.)
753
  (Martin Pool)
754
5777.3.4 by Jelmer Vernooij
Add note to release notes, fix PEP8 issue.
755
* Inventory-specific functionality has been split out of ``Tree`` into
756
  a new ``InventoryTree`` class. Tree instances no longer
757
  necessarily provide an ``inventory`` attribute. (Jelmer Vernooij)
758
5793.2.2 by Jelmer Vernooij
Split inventory-specific code out of RevisionTree into InventoryRevisionTree.
759
* Inventory-specific functionality has been split out of ``RevisionTree``
760
  into a new ``InventoryRevisionTree`` class. RevisionTree instances no
761
  longer necessarily provide an ``inventory`` attribute. (Jelmer Vernooij)
762
5622.4.2 by Jelmer Vernooij
Allow uninstalling hooks.
763
* New method ``Hooks.uninstall_named_hook``. (Jelmer Vernooij, #301472)
764
5766.1.1 by Jelmer Vernooij
Make revision-graph-can-have-wrong-parents a repository format attribute rather than a repository method.
765
* ``revision_graph_can_have_wrong_parents`` is now an attribute
766
  on ``RepositoryFormat`` rather than a method on ``Repository``.
767
  (Jelmer Vernooij)
768
5798.1.1 by Jelmer Vernooij
Make Testament take a tree rather than a inventory.
769
* ``Testament`` now takes a ``tree`` rather than an
770
  ``inventory``. (Jelmer Vernooij, #762608)
771
5784.1.2 by Martin Pool
Deprecate, and test, failIfExists and failUnlessExists
772
* ``TestCase.failUnlessExists`` and ``failIfExists`` are deprecated in
773
  favour of ``assertPathExists`` and ``assertPathDoesNotExist`` 
774
  respectively.
775
  (Martin Pool)
776
5728.5.9 by Andrew Bennetts
Merge latest lp:bzr, move our new release notes entries to the current release.
777
* The ``revno`` parameter of ``log.LogRevision`` may now be None,
778
  representing a revision which is not in the current branch.
779
  (Matt Giuca, #241998)
780
5757.1.8 by Jelmer Vernooij
Mention moving of knitpack repo formats in release notes.
781
* The various knit pack repository format classes have been moved
782
  from ``bzrlib.repofmt.pack_repo`` to
783
  ``bzrlib.repofmt.knitpack_repo``. (Jelmer Vernooij)
784
5793.2.4 by Jelmer Vernooij
Add release note.
785
* ``RevisionTree`` now has a new method ``get_file_revision``.
786
  (Jelmer Vernooij)
787
5777.5.2 by Jelmer Vernooij
Split inventory-specific methods and WorkingTree interface method
788
* ``WorkingTree`` no longer provides an ``inventory``. Instead,
789
  all inventory-related functionality is now on the subclass
790
  ``InventoryWorkingTree`` that all native Bazaar working tree
791
  implementations derive from. (Jelmer Vernooij)
792
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
793
Internals
794
*********
795
796
.. Major internal changes, unlikely to be visible to users or plugin 
797
   developers, but interesting for bzr developers.
798
5752.2.11 by John Arbash Meinel
Change the release-notes information for this change.
799
* Added ``osutils.lstat`` and ``osutils.fstat``. These are just the ``os``
800
  functions on Linux, but they are wrapped on Windows so that fstat
801
  matches lstat results across all python versions.
802
  (John Arbash Meinel)
803
5755.1.1 by John Arbash Meinel
Change WT._observed_sha1 to also update st.st_size.
804
* ``WorkingTree._observed_sha1`` also updates the 'size' column. It
805
  happened to be updated as a side-effect of commit, but if we start using
806
  the function elsewhere we might as well do it directly.
807
  (John Arbash Meinel)
808
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
809
Testing
810
*******
811
812
.. Fixes and changes that are only relevant to bzr's test framework and 
813
   suite.  This can include new facilities for writing tests, fixes to 
814
   spurious test failures and changes to the way things should be tested.
815
5784.1.1 by Martin Pool
Stop using failIf, failUnless, etc
816
* Stop using `failIf`, `failUnless`, `failIfEqual`, etc, that give
817
  `PendingDeprecationWarnings` on Python2.7. 
818
  (Martin Pool, #760435)
819
5727.1.1 by Vincent Ladeuil
Open trunk again as 2.4dev2
820
5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
821
bzr 2.4b1
822
#########
823
5811.1.1 by Vincent Ladeuil
Release 2.4b2
824
:2.4b1: 2011-03-17
5726.1.1 by Vincent Ladeuil
Release 2.4b1
825
826
This is the first beta of the 2.4 series, leading up to a 2.4.0
827
release in August 2011.  Beta releases are suitable for everyday use
828
but may cause some incompatibilities with plugins.  Some plugins may need
829
small updates to work with 2.4b1.
5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
830
831
External Compatibility Breaks
832
*****************************
833
5726.1.1 by Vincent Ladeuil
Release 2.4b1
834
(none)
5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
835
836
New Features
837
************
838
5724.2.3 by Andrew Bennetts
Add entries to release-notes and whats-new.
839
* Added ``changelog_merge`` plugin for merging changes to ``Changelog`` files
840
  in GNU format.  See ``bzr help changelog_merge`` for details.
841
  (Andrew Bennetts)
842
  
5676.1.4 by Jelmer Vernooij
merge bzr.dev.
843
* Configuration options can now use references to other options in the same
844
  file by enclosing them with curly brackets (``{other_opt}``). This makes it
845
  possible to use, for example,
846
  ``push_location=lp:~vila/bzr/config-{nickname}`` in ``branch.conf`` when
847
  using a loom. During the beta period, the default behaviour is to disable
848
  this feature. It can be activated by declaring ``bzr.config.expand = True``
849
  in ``bazaar.conf``. (Vincent Ladeuil)
850
5724.2.3 by Andrew Bennetts
Add entries to release-notes and whats-new.
851
* External merge tools can now be configured in bazaar.conf. See
852
  ``bzr help configuration`` for more information.  (Gordon Tyler, #489915)
853
854
* The ``lp:`` directory service now supports Launchpad's QA staging.
855
  (Jelmer Vernooij, #667483)
856
5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
857
Improvements
858
************
859
5630.2.8 by John Arbash Meinel
Rename the command to 'repair-workingtree' as mentioned by vila.
860
* A new hidden command ``bzr repair-workingtree``. This is a way to force
5630.2.1 by John Arbash Meinel
Rough outline of what I'm trying to accomplish, docs, etc.
861
  the dirstate file to be rebuilt, rather than using a ``bzr checkout``
862
  workaround. (John Arbash Meinel)
863
5672.1.5 by Andrew Bennetts
Add some tests for RemoteBranch.heads_to_fetch, and add release-note.
864
* Added a ``Branch.heads_to_fetch`` RPC to the smart server protocol.
865
  This allows formats from plugins (such as looms) to efficiently tell the
866
  client which revisions need to be fetched.  (Andrew Bennetts)
867
5535.3.48 by Andrew Bennetts
Add some release notes and what's new entries.
868
* Branching, merging and pulling a branch now copies revisions named in
869
  tags, not just the tag metadata.  (Andrew Bennetts, #309682)
5718.5.24 by Jelmer Vernooij
Add note on gzip mtime on python >= 2.7.
870
5718.5.6 by Jelmer Vernooij
Update NEWS.
871
* ``bzr cat-revision`` no longer requires a working tree.
872
  (Jelmer Vernooij, #704405)
873
5718.5.24 by Jelmer Vernooij
Add note on gzip mtime on python >= 2.7.
874
* ``bzr export --per-file-timestamps`` for .tar.gz files will now
875
  override the mtime for trees exported on Python 2.7 and later, which
876
  expose the 'mtime' field in gzip files. This makes the output of
877
  ``bzr export --per-file-timestamps`` for a particular tree
5718.5.6 by Jelmer Vernooij
Update NEWS.
878
  deterministic.  (Jelmer Vernooij, #711226)
5616.4.1 by Jelmer Vernooij
'bzr cat-revision' no longer requires a working tree.
879
5718.5.7 by Jelmer Vernooij
Support bzr zip exporting to stdout.
880
* ``bzr export --format=zip`` can now export to standard output,
881
  like the other exporters can. (Jelmer Vernooij, #513752)
882
5718.5.17 by Jelmer Vernooij
Support tar.lzma.
883
* ``bzr export`` can now create ``.tar.xz`` and ``.tar.lzma`` files.
5718.5.10 by Jelmer Vernooij
Support creating .tar.xz files.
884
  (Jelmer Vernooij, #551714)
885
5726.2.1 by John Arbash Meinel
Fix bug #737234. Preload all entries for iter_entries_by_dir().
886
* Getting all entries from ``CHKInventory.iter_entries_by_dir()`` has been
887
  sped up dramatically for large trees. Iterating by dir is not the best
888
  way to load data from a CHK inventory, so it preloads all the items in
889
  the correct order. (With the gcc-tree, this changes it (re)reading 8GB
890
  of CHK data, down to just 150MB.) This has noticeable affects for things
891
  like building checkouts, etc.  (John Arbash Meinel, #737234)
892
5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
893
Bug Fixes
894
*********
895
5677.2.11 by Martin
Add NEWS
896
* A MemoryError thrown on the server during a remote operation will now be
897
  usefully reported, and other unexpected errors will include the class name.
898
  (Martin [gz], #722416)
899
5638.2.5 by Vincent Ladeuil
Add news entry.
900
* ``bzr annotate -r-1 file`` will now properly annotate a deleted file.
901
  (Andrew King, #537442)
902
5664.2.1 by Jelmer Vernooij
Fix setting of mode on directories in zip files.
903
* ``bzr export`` to zip files will now set a mode on directories.
904
  (Jelmer Vernooij, #207253)
905
5718.5.15 by Jelmer Vernooij
Only write out basename of the tarfile to the gzip file.
906
* ``bzr export`` to tgz files will only write out the basename of the
907
  tarfile to the gzip file. (Jelmer Vernooij, #102234)
908
5611.2.1 by Jelmer Vernooij
Fix 'bzr push --overwrite -rOLD_MAINLINE_REV'.
909
* ``bzr push --overwrite`` with an older revision specified will now correctly
910
  roll back the target branch. (Jelmer Vernooij, #386576)
911
5616.1.1 by Jelmer Vernooij
Support 'bzr lp-propose' without an explicit target branch for packaging branches.
912
* ``bzr lp-propose`` can now propose merges against packaging branches on
5630.1.2 by Vincent Ladeuil
Fix typo.
913
  Launchpad without requiring the target branch to be specified.
5630.1.1 by Vincent Ladeuil
Enhance compatibility with old launchpadlib versions
914
  (Jelmer Vernooij, #704647)
5616.1.1 by Jelmer Vernooij
Support 'bzr lp-propose' without an explicit target branch for packaging branches.
915
5630.1.1 by Vincent Ladeuil
Enhance compatibility with old launchpadlib versions
916
* ``bzr lp-propose`` no longer requires a reviewer to be specified. It will
917
  instead leave setting the reviewer up to Launchpad if it was not specified.
5616.5.1 by Jelmer Vernooij
Don't require a reviewer to be specified in lp-propose.
918
  (Jelmer Vernooij, #583772)
919
5616.6.2 by Jelmer Vernooij
Merge bzr.dev.
920
* ``bzr pull`` will now exit with exit code 1 if there were tag conflicts.
921
  (Jelmer Vernooij, #213185)
922
5609.8.6 by Martin
Add release notes for change
923
* ``bzr mv`` user errors no longer throw UnicodeEncodeError with non-ascii
924
  paths, however they may still print junk if not on a UTF-8 terminal.
925
  (Martin [gz], #707954)
926
5651.5.4 by Andrew Bennetts
Add release note.
927
* ``bzr reconfigure --unstacked`` now copies revisions (and their
928
  ancestors) named in tags into the unstacked repository, not just the
929
  ancestry of the branch's tip.  (Andrew Bennetts, #401646)
930
5630.1.1 by Vincent Ladeuil
Enhance compatibility with old launchpadlib versions
931
* ``bzr serve`` no longer crashes when a server_started hook is installed and
932
  IPv6 support is available on the system. (Jelmer Vernooij, #293697)
933
5802.3.1 by John Arbash Meinel
Fix bug #765881. Having a file added on disk was skipping
934
* ``bzr status`` will not rewrite the dirstate file if it only has
935
  'trivial' changes. (Currently limited to dir updates and newly-added
936
  files changing state.) This saves a bit of time for regular operations.
937
  eg. ``bzr status`` in a 100k tree takes 1.4s to compute the status, but 1s
938
  to re-save the dirstate file. (John Arbash Meinel, #765881)
939
5689.2.2 by Jelmer Vernooij
Fix the use of "bzr tags" in branches with ghosts in their mainline /and/ tags on revisions not in the branch ancestry.
940
* ``bzr tags`` will no longer choke on branches with ghost revisions in
941
  their mainline and tags on revisions not in the branch ancestry. 
942
  (Jelmer Vernooij, #397556)
943
5630.1.1 by Vincent Ladeuil
Enhance compatibility with old launchpadlib versions
944
* ``bzr whoami`` will now display an error if both a new identity and
945
  ``--email`` were specified. (Jelmer Vernooij, #680449)
946
947
* ``launchpadlib`` doesn't provide the ``uris`` module in some old versions.
948
  (Vincent Ladeuil, #706835)
5616.3.1 by Jelmer Vernooij
Print error if both --email and a new identity were specified.
949
5639.2.1 by Martin Pool
Empty entries in the ``NO_PROXY`` variable are no longer treated as matching every host.
950
* Empty entries in the ``NO_PROXY`` variable are no longer treated as matching
951
  every host.
952
  (Martin Pool, #586341)
953
5616.7.9 by Martin Pool
Move release note into the 2.4 file
954
* Plugins incompatible with the current version of bzr no longer produce a
955
  warning on every command invocation.  Instead, a message is shown by
956
  ``bzr plugins`` and in crash reports.
957
  (#704195, Martin Pool)
5616.3.1 by Jelmer Vernooij
Print error if both --email and a new identity were specified.
958
5662.1.2 by Andrew Bennetts
Add release note.
959
* The "pretty" version of ``needs_read_lock`` and ``needs_write_lock`` now
960
  preserves the identity of default parameter values.
961
  (Andrew Bennetts, #718569)
962
5651.2.1 by Eric Siegerman
Fix traceback attempting to "bzr dump-btree --raw btree-with-0-rows".
963
* ``bzr dump-btree --raw`` no longer tracebacks on a B-Tree file
5651.2.2 by Eric Siegerman
Add the bug# to release notes, and call --fixes on it.
964
  containing no rows. (Eric Siegerman, #715508)
5651.2.1 by Eric Siegerman
Fix traceback attempting to "bzr dump-btree --raw btree-with-0-rows".
965
5657.1.1 by Max Bowsher
Fix bzr lp-mirror to work on command line branch URLs and branches
966
* Fix ``bzr lp-mirror`` to work on command line branch URLs and branches
967
  without an explicit public location. (Max Bowsher)
968
5677.1.1 by Jelmer Vernooij
On Python 2.6 and higher, use multiprocessing.cpu_count() to retrieve the number of available processors.
969
* On Python 2.6 and higher, use multiprocessing.cpu_count() to retrieve the
5677.1.4 by Jelmer Vernooij
Add bug #
970
  number of available processors. (Jelmer Vernooij, #693140)
5677.1.1 by Jelmer Vernooij
On Python 2.6 and higher, use multiprocessing.cpu_count() to retrieve the number of available processors.
971
5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
972
API Changes
973
***********
974
5742.1.1 by Vincent Ladeuil
Some post-release tweaks.
975
* Added ``Branch.heads_to_fetch`` method.  Implementations of the Branch API
5672.1.2 by Andrew Bennetts
Add API change to release notes.
976
  must now inherit or implement this method.  (Andrew Bennetts, #721328)
977
  
5321.1.117 by Gordon Tyler
Moved mergetools-related NEWS from bzr-2.3.txt to bzr-2.4.txt.
978
* Added ``bzrlib.mergetools`` module with helper functions for working with
979
  the list of external merge tools. (Gordon Tyler, #489915)
980
5670.1.1 by Jelmer Vernooij
Remove all methods and arguments that were deprecated before bzr 2.0.0.
981
* All methods and arguments that were deprecated before 2.0
982
  have been removed. (Jelmer Vernooij)
983
5662.2.5 by Jelmer Vernooij
Update release notes.
984
* Branch formats should now be registered on the format registry
985
  (``bzrlib.branch.format_registry``) rather than using the class
986
  methods on ``BranchFormat``. (Jelmer Vernooij, #714729)
987
5718.7.3 by Jelmer Vernooij
Update NEWS.
988
* ``Branch.set_revision_history`` is now deprecated.
989
  (Jelmer Vernooij)
990
5674.1.2 by Jelmer Vernooij
Update NEWS.
991
* ``BranchFormat.supports_leaving_lock()`` and
992
  ``RepositoryFormat.supports_leaving_lock`` flags have been added.
993
  (Jelmer Vernooij)
994
5535.3.48 by Andrew Bennetts
Add some release notes and what's new entries.
995
* ``Branch.fetch`` implementations must now accept an optional
5741.1.5 by Jelmer Vernooij
Have Branch.fetch() take a fetch_tags argument rather than a fetch_spec argument.
996
  ``fetch_tags`` keyword argument. (Andrew Bennetts)
5535.3.48 by Andrew Bennetts
Add some release notes and what's new entries.
997
998
* ``Branch.import_last_revision_info`` is deprecated.  Use the
999
  ``import_last_revision_info_and_tags`` method instead.
1000
  (Andrew Bennetts)
1001
5735.1.2 by Jelmer Vernooij
Update release notes.
1002
* Because it was too specific to BzrDir implementations,
1003
  ``ControlDir.sprout`` no longer has a default implementation; it now
1004
  raises ``NotImplementedError``. (Jelmer Vernooij, #717937)
1005
5718.9.2 by Jelmer Vernooij
Merge bzr.dev.
1006
* ``bzrlib.deprecated_graph`` has been removed. ``bzrlib.graph``
1007
  scales better tree and should be used instead.
1008
  (Jelmer Vernooij, #733612)
1009
5712.3.20 by Jelmer Vernooij
Update release notes.
1010
* ``ControlDirFormat.register_format`` has been removed. Instead,
1011
  ``Prober`` implementations should now implement a ``known_formats``
1012
  method. (Jelmer Vernooij)
5712.3.11 by Jelmer Vernooij
Update release notes.
1013
5717.1.3 by Jelmer Vernooij
Rename check_supported to check_status.
1014
* ControlDirFormats can now provide a ``check_status`` method and
1015
  raise a custom exception or warning when an unsupported or deprecated
1016
  format is being opened.  (Jelmer Vernooij, #731311)
5718.9.1 by Jelmer Vernooij
Remove bzrlib.deprecated_graph.
1017
5671.5.1 by Jelmer Vernooij
Allow lazily registering possible DWIM revspecs.
1018
* ``bzrlib.revionspec.dwim_revspecs`` is deprecated.
1019
  Use ``bzrlib.revisionspec.RevisionSpec_dwim.append_possible_revspec`` and
1020
  ``bzrlib.revisionspec.RevisionSpec_dwim.append_possible_lazy_revspec``
1021
  instead.  (Jelmer Vernooij, #721971)
1022
5673.1.3 by Jelmer Vernooij
Change flexible_components to fixed_components.
1023
* ``BzrDirFormat`` has a new attribute ``fixed_components`` that
1024
  indicates whether the components of the bzrdir can be upgraded
1025
  independent of the ``BzrDir``. (Jelmer Vernooij)
1026
5712.3.2 by Jelmer Vernooij
Deprecate BzrProber.{un,}register_format in favour of format registry.
1027
* ``BzrProber.register_format`` and ``BzrProber.unregister_format`` are
1028
  now deprecated in favour of the ``BzrProber.formats`` format registry.
1029
  (Jelmer Vernooij)
1030
5726.1.1 by Vincent Ladeuil
Release 2.4b1
1031
* ``ControlDir`` implementations no longer have to provide the
1032
  ``get_branch_transport``, ``get_workingtree_transport`` and
1033
  ``get_repository_transport`` methods.  (Jelmer Vernooij, #730325)
5699.4.4 by Jelmer Vernooij
Update NEWS.
1034
5692.1.2 by Jelmer Vernooij
Update release notes.
1035
* ``Converter`` has been moved from ``bzrlib.bzrdir`` to
1036
  ``bzrlib.controldir``. (Jelmer Vernooij)
1037
5676.1.5 by Jelmer Vernooij
Merge control component format registry
1038
* Repository formats can now provide
1039
  ``_get_extra_interrepo_test_combinations`` in the same module 
1040
  to provide extra test combinations for ``bzrlib.tests.per_repository``.
1041
  (Jelmer Vernooij)
1042
5651.3.8 by Jelmer Vernooij
update NEWS.
1043
* Repository formats should now be registered on the format registry
1044
  (``bzrlib.repository.format_registry``) rather than using the class
1045
  methods on ``RepositoryFormat``. (Jelmer Vernooij)
1046
5684.2.1 by Jelmer Vernooij
Add bzrlib.tests.per_repository_vf.
1047
* Repository formats can now indicate they do not support the full
1048
  VersionedFiles API by setting the ``supports_full_versioned_files``
1049
  attribute to False. A subset of the VersionedFiles API
1050
  (signatures and text graphs) still needs to be supported.
1051
  (Jelmer Vernooij)
1052
5675.2.4 by Jelmer Vernooij
Update NEWS.
1053
* Repository formats have a new method ``is_deprecated`` that
1054
  implementations can override to return True to trigger a deprecation
1055
  warning. (Jelmer Vernooij)
1056
5536.3.3 by Andrew Bennetts
Merge lp:bzr.
1057
* The ``revision_id`` parameter of
1058
  ``Repository.search_missing_revision_ids`` and
1059
  ``InterRepository.search_missing_revision_ids`` is deprecated.  It is
1060
  replaced by the ``revision_ids`` parameter.  (Andrew Bennetts)
1061
5662.3.2 by Jelmer Vernooij
Update release notes.
1062
* Working tree formats should now be registered on the format registry
1063
  (``bzrlib.working_tree.format_registry``) rather than using the class
1064
  methods on ``WorkingTreeFormat``. (Jelmer Vernooij, #714730)
1065
5957.3.1 by Vincent Ladeuil
Exporting may now be done with a generator
1066
* Exporting may now be done with a generator
1067
  (``bzrlib.export.get_export_generator``) (Geoff/xaav, #791005)
5952.1.25 by geoffreyfishing at gmail
Updated release notes & What's new.
1068
5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
1069
Internals
1070
*********
1071
5652.1.3 by Vincent Ladeuil
Add news entry.
1072
* ``CatchingExceptionThread`` (formerly ThreadWithException) has been moved
1073
  out of the ``bzrlib.tests`` hierarchy to make it clearer that it can be used
1074
  outside of tests. This class makes it easier to track exceptions in threads
5742.1.1 by Vincent Ladeuil
Some post-release tweaks.
1075
  by catching them so they can be re-raised in the controlling thread. It's
5652.1.6 by Vincent Ladeuil
thread is already a python module, avoid confusion and use cethread instead.
1076
  available in the ``bzrlib.cethread`` module.  (Vincent Ladeuil)
5652.1.3 by Vincent Ladeuil
Add news entry.
1077
5698.2.9 by Martin
Add release notes
1078
* Correctly propogate malloc failures from diff-delta.c code as MemoryError
1079
  so OOM conditions during groupcompress are clearly reported. This entailed a
1080
  change to several function signatures. (Martin [gz], #633336)
1081
5622.1.1 by Jelmer Vernooij
Allow lazily loading hook callbacks.
1082
* ``HookPoint.lazy_hook`` and ``Hooks.install_named_lazy_hook`` can install 
1083
  hooks for which the callable is loaded lazily.  (Jelmer Vernooij)
1084
5609.3.2 by Vincent Ladeuil
Open trunk as 2.4dev1, bumping api_minimum_version to 2.4.0.
1085
Testing
1086
*******
1087
5705.1.1 by Vincent Ladeuil
Correctly parse partial range specifiers in the HTTP test server
1088
* The Range parsing for HTTP requests will correctly parse incomplete ranges.
1089
  (Vincent Ladeuil, #731240)
1090
5630.2.1 by John Arbash Meinel
Rough outline of what I'm trying to accomplish, docs, etc.
1091
..
1092
   vim: tw=74 ft=rst ff=unix