10
:Codename: so-late-its-brunch
15
Bazaar continues to blaze a straight and shining path to the 2.0 release and
16
the elevation of the ``2a`` beta format to the full glory of "supported and
19
Highlights in this release include greatly reduced memory consumption during
20
commits, faster ``ls``, faster ``annotate``, faster network operations if
21
you're specifying a revision number and the final destruction of those
22
annoying progress bar artifacts.
25
Changes from 1.17rc1 to 1.17final
26
*********************************
28
* Change an extension to call the python ``frozenset()`` rather than the C
29
api ``PyFrozenSet_New``. It turns out that python2.4 did not expose the
30
C api. (John Arbash Meinel, #399366)
32
* Fixes for the Makefile and the rename of ``generate_docs.py`` to
33
``tools/generate_docs.py`` to allow everything to be built on Windows.
34
(John Arbash Meinel, #399356)
36
* ``bzr serve`` once again applies a ``ChrootServer`` to the given
37
directory before serving it. (Andrew Bennetts, #400535)
43
* ``bzr register-branch`` from the Launchpad plugin now refers to "project"
44
instead of "product" which is the correct Launchpad terminology. The
45
--product option is deprecated and users should switch to using --project.
46
(Neil Martinsen-Burrell, #238764)
52
* ``bzr push`` now aborts if uncommitted changes (including pending merges)
53
are present in the working tree (if one is present) and no revision is
54
specified. The configuration option ``push_strict`` can be used to set the
55
default for this behavior. (Vincent Ladeuil, #284038, #322808, #65286)
57
* ``bzr revno`` and ``bzr revision-info`` now have a ``--tree`` option to
58
show revision info for the working tree instead of the branch.
59
(Matthew Fuller, John Arbash Meinel)
61
* ``bzr send`` now aborts if uncommitted changes (including pending merges)
62
are present in the working tree and no revision is specified. The
63
configuration option ``send_strict`` can be used to set the default for this
65
(Vincent Ladeuil, #206577)
67
* ``bzr switch --create-branch/-b`` can now be used to create and switch
68
to a new branch. Supplying a name without a ``/`` will create the branch
69
relative to the existing branch. (similar to how ``bzr switch name``
70
works when the branch already exists.) (John Arbash Meinel)
76
* Accept uppercase "Y/N" to prompts such as from break lock.
77
(#335182, Tim Powell, Martin Pool)
79
* Add documentation about diverged branches and how to fix them in the
80
centralized workflow with local commits. Mention ``bzr help
81
diverged-branches`` when a push fails because the branches have
82
diverged. (Neil Martinsen-Burrell, #269477)
84
* Annotate would sometimes 'latch on' to trivial lines, causing important
85
lines to be incorrectly annotated. (John Arbash Meinel, #387952)
87
* Automatic format upgrades triggered by default stacking policies on a
88
1.16rc1 (or later) smart server work again.
89
(Andrew Bennetts, #388675)
91
* Avoid progress bar artifacts being left behind on the screen.
92
(Martin Pool, #321935)
94
* Better message in ``bzr split`` error suggesting a rich root format.
95
(Neil Martinsen-Burrell, #220067)
97
* ``Branch.set_append_revisions_only`` now works with branches on a smart
98
server. (Andrew Bennetts, #365865)
100
* By default, ``bzr branch`` will fail if the target directory exists, but
101
does not already have a control directory. The flag ``--use-existing-dir``
102
will allow operation to proceed. (Alexander Belchenko, #307554)
104
* ``bzr ls DIR --from-root`` now shows only things in DIR, not everything.
107
* Fetch between repositories does not error if they have inconsistent data
108
that should be irrelevant to the fetch operation. (Aaron Bentley)
110
* Fix ``AttributeError`` exception when reconfiguring lightweight checkout
111
of a remote repository.
112
(Jelmer Vernooij, #332194)
114
* Fix bug in decoding v3 smart server messages when receiving multiple
115
lots of excess bytes after an end-of-message.
118
* Force deletion of readonly files during merge, update and other tree
120
(Craig Hewetson, Martin Pool, #218206)
122
* Force socket shutdown in threaded HTTP test servers to avoid client hangs
123
(pycurl). (Vincent Ladeuil, #383920).
125
* ``LRUCache`` will maintain the linked list pointers even if a nodes
126
cleanup function raises an exception. (John Arbash Meinel, #396838)
128
* Progress bars are now suppressed again when the environment variable
129
``BZR_PROGRESS_BAR`` is set to ``none``.
130
(Martin Pool, #339385)
132
* Reduced memory consumption during ``bzr commit`` of large files. For
133
pre 2a formats, should be down to ~3x the size of a file.
134
For ``--2a`` format repositories, it is down to the size of the file
135
content plus the size of the compressed text. Related to bug #109114.
138
* Set hidden attribute on .bzr directory below unicode path should never
139
fail with error. The operation should succeed even if bzr unable to set
140
the attribute. (Alexander Belchenko, related to bug #335362).
142
* Stacking will no longer accept requests to stack on the same
143
branch/repository. Existing branches that incorrectly reference the same
144
repository in a stacking configuration will now raise
145
UnstackableLocationError when the branch is opened. This can be fixed by
146
removing the stacking location inside ``.bzr/branch``.
147
(Robert Collins, #376243)
149
* The ``log+`` decorator, useful in debugging or profiling, could cause
150
"AttributeError: 'list' object has no attribute 'next'". This is now
151
fixed. The log decorator no longer shows the elapsed time or transfer
152
rate because they're available in the log prefixes and the transport
153
activity display respectively.
154
(Martin Pool, #340347)
156
* Unshelve works correctly when multiple zero-length files are present on
157
the shelf. (Aaron Bentley, #363444)
159
* Progress bars no longer show the network transport scheme or direction.
162
* launchpad-login now respects the 'verbose' option.
163
(Jonathan Lange, #217031)
169
* ``bzrlib.user_encoding`` is now officially deprecated. It is not
170
possible to write a deprecation wrapper, but the variable will be
171
removed in the near future. Use ``bzrlib.osutils.get_user_encoding()``
172
instead. (Alexander Belchenko)
174
* Command lookup has had hooks added. ``bzrlib.Command.hooks`` has
175
three new hook points: ``get_command``, ``get_missing_command`` and
176
``list_commands``, which allow just-in-time command name provision
177
rather than requiring all command names be known a-priori.
180
* ``get_app_path`` from win32utils.py now supports REG_EXPAND_SZ data type
181
and can read path to wordpad.exe. (Alexander Belchenko, #392046)
183
* ``graph.KnownGraph`` has been added. This is a class that can give
184
answers to ``heads()`` very quickly. However, it has the assumption that
185
the whole graph has already been loaded. This is true during
186
``annotate`` so it is used there with good success (as much as 2x faster
187
for files with long ancestry and 'cherrypicked' changes.)
188
(John Arbash Meinel, Vincent Ladeuil)
190
* OS file locks are now taken out using ``CreateFile`` rather than
191
``LockFileEx`` on Windows. The locking remains exclusive with
192
``LockFileEx`` but now it also works on older versions of Windows (such
193
as Win98). (Martin <gzlist>)
195
* pack <=> pack fetching is now done via a ``PackStreamSource`` rather
196
than the ``Packer`` code. The user visible change is that we now
197
properly fetch the minimum number of texts for non-smart fetching.
201
* ``VersionedFiles._add_text`` is a new api that lets us insert text into
202
the repository as a single string, rather than a list of lines. This can
203
improve memory overhead and performance of committing large files.
204
(Currently a private api, used only by commit). (John Arbash Meinel)
210
* ``bzr annotate`` can now be significantly faster. The time for
211
``bzr annotate NEWS`` is down to 7s from 22s in 1.16. Files with long
212
histories and lots of 'duplicate insertions' will be improved more than
213
others. (John Arbash Meinel, Vincent Ladeuil)
215
* ``bzr ls`` is now faster. On OpenOffice.org, the time drops from 2.4
216
to 1.1 seconds. The improvement for ``bzr ls -r-1`` is more
217
substantial dropping from 54.3 to 1.1 seconds. (Ian Clatworthy)
219
* Improve "Path(s) are not versioned" error reporting for some commands.
222
* Initial commit performance in ``--2a`` repositories has been improved by
223
making it cheaper to build the initial CHKMap. (John Arbash Meinel)
225
* Resolving a revno to a revision id on a branch accessed via ``bzr://``
226
or ``bzr+ssh://`` is now much faster and involves no VFS operations.
227
This speeds up commands like ``bzr pull -r 123``. (Andrew Bennetts)
229
* ``revision-info`` now properly aligns the revnos/revids in the output
230
and doesn't traceback when given revisions not in the current branch.
231
Performance is also significantly improved when requesting multiple revs
232
at once. (Matthew Fuller, John Arbash Meinel)
234
* Tildes are no longer escaped by Transports. (Andy Kilner)
240
* Avoid bad text wrapping in generated documentation. Slightly better
241
formatting in the user reference.
242
(Martin Pool, #249908)
244
* Minor clarifications to the help for End-Of-Line conversions.
250
* Removed overspecific error class ``InvalidProgressBarType``.
253
* The method ``ProgressView._show_transport_activity`` is now
254
``show_transport_activity`` because it's part of the contract between
255
this class and the UI. (Martin Pool)
259
vim: tw=74 ft=rst ff=unix