9
2.1.0 series (not released yet)
10
###############################
9
bzr 2.1.0b2 (not released yet)
10
##############################
34
* Remove deprecated ``CLIUIFactory``. (Martin Pool)
36
* ``UIFactory`` now has new ``show_error``, ``show_message`` and
37
``show_warning`` methods, which can be hooked by non-text UIs.
43
* Added ``bzrlib._simple_set_pyx``. This is a hybrid between a Set and a
44
Dict (it only holds keys, but you can lookup the object located at a
45
given key). It has significantly reduced memory consumption versus the
46
builtin objects (1/2 the size of Set, 1/3rd the size of Dict). This is
47
used as the interning structure for StaticTuple objects.
50
* ``bzrlib._static_tuple_pyx.StaticTuple`` is now available. This class
51
functions similarly to ``tuple`` objects. However, it can only point at
52
other ``StaticTuple`` instances or strings. This allows us to remove it
53
from the garbage collector (it cannot be in a cycle), it also allows us
54
to intern the objects. In testing, this can reduce peak memory by
55
20-40%, and significantly improve performance by removing objects from
56
being inspected by the garbage collector. (John Arbash Meinel)
62
bzr 2.0.2 (not released yet)
63
############################
96
:Codename: While the cat is away
99
This is the first development release in the new split "stable" and
100
"development" series. As such, the release is a snapshot of bzr.dev
101
without creating a release candidate first. This release includes a
102
fair amount of internal changes, with deprecated code being removed,
103
and several new feature developments. People looking for a stable code
104
base with only bugfixes should focus on the 2.0.1 release. All bugfixes
105
present in 2.0.1 are present in 2.1.0b1.
107
Highlights include support for ``bzr+ssh://host/~/homedir`` style urls,
108
finer control over the plugin search path via extended BZR_PLUGIN_PATH
109
syntax, visible warnings when extension modules fail to load, and improved
110
error handling during unlocking.
116
* Bazaar can now send mail through Apple OS X Mail.app.
18
119
* ``bzr+ssh`` and ``bzr`` paths can now be relative to home directories
19
120
specified in the URL. Paths starting with a path segment of ``~`` are
49
154
sent a signal to the bzr process specifically, for example by typing
50
155
``kill -QUIT PID`` in another shell. (Martin Pool, #341535)
52
* ``bzr check`` in pack-0.92, 1.6 and 1.9 format repositories will no
53
longer report incorrect errors about ``Missing inventory ('TREE_ROOT', ...)``
54
(Robert Collins, #416732)
157
* ``bzr add`` in a tree that has files with ``\r`` or ``\n`` in the
158
filename will issue a warning and skip over those files.
159
(Robert Collins, #3918)
56
* ``bzr info -v`` on a 2a format still claimed that it was a "Development
57
format" (John Arbash Meinel, #424392)
161
* ``bzr dpush`` now aborts if uncommitted changes (including pending merges)
162
are present in the working tree. The configuration option ``dpush_strict``
163
can be used to set the default for this behavior.
164
(Vincent Ladeuil, #438158)
59
166
* ``bzr merge`` and ``bzr remove-tree`` now requires --force if pending
60
167
merges are present in the working tree.
63
170
* Clearer message when Bazaar runs out of memory, instead of a ``MemoryError``
64
171
traceback. (Martin Pool, #109115)
66
* Conversion to 2a will create a single pack for all the new revisions (as
67
long as it ran without interruption). This improves both ``bzr upgrade``
68
and ``bzr pull`` or ``bzr merge`` from local branches in older formats.
69
The autopack logic that occurs every 100 revisions during local
70
conversions was not returning that pack's identifier, which resulted in
71
the partial packs created during the conversion not being consolidated
72
at the end of the conversion process. (Robert Collins, #423818)
74
173
* Don't give a warning on Windows when failing to import ``_readdir_pyx``
75
174
as it is never built. (John Arbash Meinel, #430645)
77
176
* Don't restrict the command name used to run the test suite.
78
177
(Vincent Ladeuil, #419950)
80
* Fetches from 2a to 2a are now again requested in 'groupcompress' order.
81
Groups that are seen as 'underutilized' will be repacked on-the-fly.
82
This means that when the source is fully packed, there is minimal
83
overhead during the fetch, but if the source is poorly packed the result
84
is a fairly well packed repository (not as good as 'bzr pack' but
85
good-enough.) (Robert Collins, John Arbash Meinel, #402652)
179
* ftp transports were built differently when the kerberos python module was
180
present leading to obscure failures related to ASCII/BINARY modes.
181
(Vincent Ladeuil, #443041)
87
183
* Network streams now decode adjacent records of the same type into a
88
184
single stream, reducing layering churn. (Robert Collins)
90
* Make sure that we unlock the tree if we fail to create a TreeTransform
91
object when doing a merge, and there is limbo, or pending-deletions
92
directory. (Gary van der Merwe, #427773)
94
* Prevent some kinds of incomplete data from being committed to a 2a
95
repository, such as revisions without inventories or inventories without
96
chk_bytes root records.
97
(Andrew Bennetts, #423506)
186
* PreviewTree behaves correctly when get_file_mtime is invoked on an unmodified
187
file. (Aaron Bentley, #251532)
99
189
* Registry objects should not use iteritems() when asked to use items().
100
190
(Vincent Ladeuil, #430510)
130
228
* ``bzrlib.tests`` now uses ``stopTestRun`` for its ``TestResult``
131
229
subclasses - the same as python's unittest module. (Robert Collins)
133
* Remove deprecated ``CLIUIFactory``. (Martin Pool)
231
* ``diff._get_trees_to_diff`` has been renamed to
232
``diff.get_trees_and_branches_to_diff``. It is now a public API, and it
233
returns the old and new branches. (Gary van der Merwe)
235
* ``bzrlib.trace.log_error``, ``error`` and ``info`` have been deprecated.
238
* ``MutableTree.has_changes()`` does not require a tree parameter anymore. It
239
now defaults to comparing to the basis tree. It now checks for pending
240
merges too. ``Merger.check_basis`` has been deprecated and replaced by the
241
corresponding has_changes() calls. ``Merge.compare_basis``,
242
``Merger.file_revisions`` and ``Merger.ensure_revision_trees`` have also
244
(Vincent Ladeuil, #440631)
246
* ``ProgressTask.note`` is deprecated.
252
* Added ``-Drelock`` debug flag. It will ``note`` a message every time a
253
repository or branch object is unlocked then relocked the same way.
138
256
* ``BTreeLeafParser.extract_key`` has been tweaked slightly to reduce
139
257
mallocs while parsing the index (approx 3=>1 mallocs per key read).
140
258
This results in a 10% speedup while reading an index.
153
271
* Setting ``BZR_TEST_PDB=1`` when running selftest will cause a pdb
154
272
post_mortem to be triggered when a test failure occurs. (Robert Collins)
274
* Shell-like tests can now be written. Code in ``bzrlib/tests/script.py`` ,
275
documentation in ``developers/testing.txt`` for details.
278
* Some tests could end up with the same id, that was dormant for
280
(Vincent Ladeuil, #442980)
282
* Stop showing the number of tests due to missing features in the test
283
progress bar. (Martin Pool)
156
285
* Test parameterisation now does a shallow copy, not a deep copy of the test
157
286
to be parameterised. This is not expected to break external use of test
158
287
parameterisation, and is substantially faster. (Robert Collins)
163
292
will permit the urls they provide automatically, so only exceptional
164
293
tests should need to do this. (Robert Collins)
295
* The break-in test no longer cares about clean shutdown of the child,
296
instead it is happy if the debugger starts up. (Robert Collins)
166
298
* The full test suite is expected to pass when the C extensions are not
167
299
present. (Vincent Ladeuil, #430749)
170
bzr 2.0.1 (Not Released Yet)
171
############################
305
:Codename: Stability First
308
The first of our new ongoing bugfix-only stable releases has arrived. It
309
includes a collection of 12 bugfixes applied to bzr 2.0.0, but does not
310
include any of the feature development in the 2.1.0 series.
316
* ``bzr add`` in a tree that has files with ``\r`` or ``\n`` in the
317
filename will issue a warning and skip over those files.
318
(Robert Collins, #3918)
320
* bzr will attempt to authenticate with SSH servers that support
321
``keyboard-interactive`` auth but not ``password`` auth when using
322
Paramiko. (Andrew Bennetts, #433846)
324
* Fixed fetches from a stacked branch on a smart server that were failing
325
with some combinations of remote and local formats. This was causing
326
"unknown object type identifier 60" errors. (Andrew Bennetts, #427736)
328
* Fixed ``ObjectNotLocked`` errors when doing some log and diff operations
329
on branches via a smart server. (Andrew Bennetts, #389413)
331
* Handle things like ``bzr add foo`` and ``bzr rm foo`` when the tree is
332
at the root of a drive. ``osutils._cicp_canonical_relpath`` always
333
assumed that ``abspath()`` returned a path that did not have a trailing
334
``/``, but that is not true when working at the root of the filesystem.
335
(John Arbash Meinel, Jason Spashett, #322807)
337
* Hide deprecation warnings for 'final' releases for python2.6.
338
(John Arbash Meinel, #440062)
340
* Improve the time for ``bzr log DIR`` for 2a format repositories.
341
We had been using the same code path as for <2a formats, which required
342
iterating over all objects in all revisions.
343
(John Arbash Meinel, #374730)
176
345
* Make sure that we unlock the tree if we fail to create a TreeTransform
177
346
object when doing a merge, and there is limbo, or pending-deletions
178
347
directory. (Gary van der Merwe, #427773)
181
bzr 2.0.0 (Not Released Yet)
182
############################
349
* Occasional IndexError on renamed files have been fixed. Operations that
350
set a full inventory in the working tree will now go via the
351
apply_inventory_delta code path which is simpler and easier to
352
understand than dirstates set_state_from_inventory method. This may
353
have a small performance impact on operations built on _write_inventory,
354
but such operations are already doing full tree scans, so no radical
355
performance change should be observed. (Robert Collins, #403322)
357
* Retrieving file text or mtime from a _PreviewTree has good performance when
358
there are many changes. (Aaron Bentley)
360
* The CHK index pages now use an unlimited cache size. With a limited
361
cache and a large project, the random access of chk pages could cause us
362
to download the entire cix file many times.
363
(John Arbash Meinel, #402623)
365
* When a file kind becomes unversionable after being added, a sensible
366
error will be shown instead of a traceback. (Robert Collins, #438569)
371
* Improved README. (Ian Clatworthy)
373
* Improved upgrade documentation for Launchpad branches.
381
:Codename: Instant Karma
383
This release of Bazaar makes the 2a (previously 'brisbane-core') format
384
the default when new branches or repositories are created. This format is
385
substantially smaller and faster for many operations. Most of the work in
386
this release focuses on bug fixes and stabilization, covering both 2a and
387
previous formats. (See the Upgrade Guide for information on migrating
390
This release also improves the documentation content and presentation,
391
including adding Windows HtmlHelp manuals.
393
The Bazaar team decided that 2.0 will be a long-term supported release,
394
with bugfix-only 2.0.x releases based on it, continuing for at least six
395
months or until the following stable release.
397
Changes from 2.0.0rc2 to final
398
******************************
184
400
* Officially branded as 2.0.0 rather than 2.0 to clarify between things
185
401
that "want to happen on the 2.0.x stable series" versus things that want