16
* Documentation is now organized into multiple directories with a level
17
added for different languages or locales. Added the Mini Tutorial
18
and Quick Start Summary (en) documents from the Wiki, improving the
19
content and readability of the former. Formatted NEWS as Release Notes
20
complete with a Table of Conents, one heading per release. Moved the
21
Developer Guide into the main document catalog and provided a link
22
from the developer document catalog back to the main one.
23
(Ian Clatworthy, Sabin Iacob, Alexander Belchenko)
29
* The static convenience method ``BzrDir.create_repository``
30
is deprecated. Callers should instead create a ``BzrDir`` instance
31
and call ``create_repository`` on that. (Martin Pool)
42
* ``bzr init`` should connect to the remote location one time only. We
43
have been connecting several times because we forget to pass around the
44
Transport object. This modifies ``BzrDir.create_branch_convenience``,
45
so that we can give it the Transport we already have.
46
(John Arbash Meinel, Vincent Ladeuil, #111702)
48
* Get rid of sftp connection cache (get rid of the FTP one too).
49
(Vincent Ladeuil, #43731)
51
* bzr branch {local|remote} remote don't try to create a working tree
53
(Vincent Ladeuil, #112173)
55
* All identified multiple connections for a single bzr command have been
56
fixed. See bzrlib/tests/commands directory.
59
* ``bzr rm`` now does not insist on ``--force`` to delete files that
60
have been renamed but not otherwise modified. (Marius Kruger,
63
* ``bzr selftest --bench`` no longer emits deprecation warnings
66
* ``bzr status`` now honours FILE parameters for conflict lists
67
(Aaron Bentley, #127606)
69
* ``bzr checkout`` now honours -r when reconstituting a working tree.
70
It also honours -r 0. (Aaron Bentley, #127708)
72
* ``bzr add *`` no more fails on Windows if working tree contains
73
non-ascii file names. (Kuno Meyer, #127361)
75
* allow ``easy_install bzr`` runs without fatal errors.
76
(Alexander Belchenko, #125521)
78
* Graph._filter_candidate_lca does not raise KeyError if a candidate
79
is eliminated just before it would normally be examined. (Aaron Bentley)
81
* SMTP connection failures produce a nice message, not a traceback.
87
* Don't show "dots" progress indicators when run non-interactively, such
88
as from cron. (Martin Pool)
90
* ``info`` now formats locations more nicely and lists "submit" and
91
"public" branches (Aaron Bentley)
93
* New ``pack`` command that will trigger database compression within
94
the repository (Robert Collins)
96
* Implement ``_KnitIndex._load_data`` in a pyrex extension. The pyrex
97
version is approximately 2-3x faster at parsing a ``.kndx`` file.
98
Which yields a measurable improvement for commands which have to
99
read from the repository, such as a 1s => 0.75s improvement in
100
``bzr diff`` when there are changes to be shown. (John Arbash Meinel)
102
* Merge is now faster. Depending on the scenario, it can be more than 2x
103
faster. (Aaron Bentley)
105
* Give a clearer warning, and allow ``python setup.py install`` to
106
succeed even if pyrex is not available.
109
* ``DirState._read_dirblocks`` now has an optional Pyrex
110
implementation. This improves the speed of any command that has to
111
read the entire DirState. (``diff``, ``status``, etc, improve by
113
``bisect_dirblocks`` has also been improved, which helps all
114
``_get_entry`` type calls (whenever we are searching for a
115
particular entry in the in-memory DirState).
118
* ``bzr pull`` and ``bzr push`` no longer do a complete walk of the
119
branch revision history for ui display unless -v is supplied.
122
* ``bzr log -rA..B`` output shifted to the left margin if the log only
123
contains merge revisions. (Kent Gibson)
125
* The ``plugins`` command is now public with improved help.
128
* New bundle and merge directive formats are faster to generate, and
130
* Annotate merge now works when there are local changes. (Aaron Bentley)
132
* Commit now only shows the progress in terms of directories instead of
133
entries. (Ian Clatworthy)
135
* Fix ``KnitRepository.get_revision_graph`` to not request the graph 2
136
times. This makes ``get_revision_graph`` 2x faster. (John Arbash
139
* Fix ``VersionedFile.get_graph()`` to avoid using
140
``set.difference_update(other)``, which has bad scaling when
141
``other`` is large. This improves ``VF.get_graph([version_id])`` for
142
a 12.5k graph from 2.9s down to 200ms. (John Arbash Meinel)
144
* The ``--lsprof-file`` option now generates output for KCacheGrind if
145
the file starts with ``callgrind.out``. This matches the default file
146
filtering done by KCacheGrind's Open Dialog. (Ian Clatworthy)
148
* Fix ``bzr update`` to avoid an unnecessary
149
``branch.get_master_branch`` call, which avoids 1 extra connection
150
to the remote server. (Partial fix for #128076, John Arbash Meinel)
152
* Log errors from the smart server in the trace file, to make debugging
153
test failures (and live failures!) easier. (Andrew Bennetts)
155
* The HTML version of the man page has been superceded by a more
156
comprehensive manual called the Bazaar User Reference. This manual
157
is completed generated from the online help topics. As part of this
158
change, limited reStructuredText is now explicitly supported in help
159
topics and command help with 'unnatural' markup being removed prior
160
to display by the online help or inclusion in the man page.
163
* HTML documentation now use files extension ``*.html``
164
(Alexander Belchenko)
166
* The cache of ignore definitions is now cleared in WorkingTree.unlock()
167
so that changes to .bzrignore aren't missed. (#129694, Daniel Watkins)
169
* ``bzr selftest --strict`` fails if there are any missing features or
170
expected test failures. (Daniel Watkins, #111914)
172
* Link to registration survey added to README. (Ian Clatworthy)
174
* Windows standalone installer show link to registration survey
175
when installation finished. (Alexander Belchenko)
180
* Deprecated dictionary ``bzrlib.option.SHORT_OPTIONS`` removed.
181
Options are now required to provide a help string and it must
182
comply with the style guide by being one or more sentences with an
183
initial capital and final period. (Martin Pool)
185
* KnitIndex.get_parents now returns tuples. (Robert Collins)
187
* Ancient unused ``Repository.text_store`` attribute has been removed.
190
* The ``bzrlib.pack`` interface has changed to use tuples of bytestrings
191
rather than just bytestrings, making it easier to represent multiple
192
element names. As this interface was not used by any internal facilities
193
since it was introduced in 0.18 no API compatibility is being preserved.
194
The serialised form of these packs is identical with 0.18 when a single
195
element tuple is in use. (Robert Collins)
200
* merge now uses ``iter_changes`` to calculate changes, which makes room for
201
future performance increases. It is also more consistent with other
202
operations that perform comparisons, and reduces reliance on
203
Tree.inventory. (Aaron Bentley)
205
* Refactoring of transport classes connected to a remote server.
206
ConnectedTransport is a new class that serves as a basis for all
207
transports needing to connect to a remote server. transport.split_url
208
have been deprecated, use the static method on the object instead. URL
209
tests have been refactored too.
212
* Better connection sharing for ConnectedTransport objects.
213
transport.get_transport() now accepts a 'possible_transports' parameter.
214
If a newly requested transport can share a connection with one of the
218
* Most functions now accept ``bzrlib.revision.NULL_REVISION`` to indicate
219
the null revision, and consider using ``None`` for this purpose
220
deprecated. (Aaron Bentley)
222
* New ``index`` module with abstract index functionality. This will be
223
used during the planned changes in the repository layer. Currently the
224
index layer provides a graph aware immutable index, a builder for the
225
same index type to allow creating them, and finally a composer for
226
such indices to allow the use of many indices in a single query. The
227
index performance is not optimised, however the API is stable to allow
228
development on top of the index. (Robert Collins)
230
* ``bzrlib.dirstate.cmp_by_dirs`` can be used to compare two paths by
231
their directory sections. This is equivalent to comparing
232
``path.split('/')``, only without having to split the paths.
233
This has a Pyrex implementation available.
236
* New transport decorator 'unlistable+' which disables the list_dir
237
functionality for testing.
239
* Deprecated ``change_entry`` in transform.py. (Ian Clatworthy)
241
* RevisionTree.get_weave is now deprecated. Tree.plan_merge is now used
242
for performing annotate-merge. (Aaron Bentley)
244
* New EmailMessage class to create email messages. (Adeodato Simó)
246
* Unused functions on the private interface KnitIndex have been removed.
249
* New ``knit.KnitGraphIndex`` which provides a ``KnitIndex`` layered on top
250
of a ``index.GraphIndex``. (Robert Collins)
252
* New ``knit.KnitVersionedFile.iter_parents`` method that allows querying
253
the parents of many knit nodes at once, reducing round trips to the
254
underlying index. (Robert Collins)
256
* Graph now has an is_ancestor method, various bits use it.
259
* The ``-Dhpss`` flag now includes timing information. As well as
260
logging when a new connection is opened. (John Arbash Meinel)
262
* ``bzrlib.pack.ContainerWriter`` now returns an offset, length tuple to
263
callers when inserting data, allowing generation of readv style access
264
during pack creation, without needing a separate pass across the output
265
pack to gather such details. (Robert Collins)
267
* ``bzrlib.pack.make_readv_reader`` allows readv based access to pack
268
files that are stored on a transport. (Robert Collins)
270
* New ``Repository.has_same_location`` method that reports if two
271
repository objects refer to the same repository (although with some risk
272
of false negatives). (Andrew Bennetts)
274
* InterTree.compare now passes require_versioned on correctly.
277
* New methods on Repository - ``start_write_group``,
278
``commit_write_group``, ``abort_write_group`` and ``is_in_write_group`` -
279
which provide a clean hook point for transactional Repositories - ones
280
where all the data for a fetch or commit needs to be made atomically
281
available in one step. This allows the write lock to remain while making
282
a series of data insertions. (e.g. data conversion). (Robert Collins)
284
* In ``bzrlib.knit`` the internal interface has been altered to use
285
3-tuples (index, pos, length) rather than two-tuples (pos, length) to
286
describe where data in a knit is, allowing knits to be split into
287
many files. (Robert Collins)
289
* ``bzrlib.knit._KnitData`` split into cache management and physical access
290
with two access classes - ``_PackAccess`` and ``_KnitAccess`` defined.
291
The former provides access into a .pack file, and the latter provides the
292
current production repository form of .knit files. (Robert Collins)
297
* Remove selftest ``--clean-output``, ``--numbered-dirs`` and
298
``--keep-output`` options, which are obsolete now that tests
299
are done within directories in $TMPDIR. (Martin Pool)
301
* The SSH_AUTH_SOCK environment variable is now reset to avoid
302
interaction with any running ssh agents. (Jelmer Vernooij, #125955)
304
* run_bzr_subprocess handles parameters the same way as run_bzr:
305
either a string or a list of strings should be passed as the first
306
parameter. Varargs-style parameters are deprecated. (Aaron Bentley)
310
vim: tw=74 ft=rst ff=unix