13
No changes from 1.7.1rc1.
21
This release just includes an update to how the merge algorithm handles
22
file paths when we encounter complex history.
27
* If we encounter a criss-cross in history, use information from
28
direct Least Common Ancestors to resolve inventory shape (locations
29
of files, adds, deletes, etc). This is similar in concept to using
30
``--lca`` for merging file texts, only applied to paths.
39
This release includes many bug fixes and a few performance and feature
40
improvements. ``bzr rm`` will now scan for missing files and remove them,
41
like how ``bzr add`` scans for unknown files and adds them. A bit more
42
polish has been applied to the stacking code. The b-tree indexing code has
43
been brought in, with an eye on using it in a future repository format.
44
There are only minor installer changes since bzr-1.7rc2.
49
* Some small updates to the win32 installer. Include localization
50
files found in plugins, and include the builtin distutils as part of
51
packaging qbzr. (Mark Hammond)
59
A few bug fixes from 1.7rc1. The biggest change is a new
60
``RemoteBranch.get_stacked_on_url`` RPC. This allows clients that are
61
trying to access a Stacked branch over the smart protocol, to properly
62
connect to the stacked-on location.
67
* Branching from a shared repository on a smart server into a new
68
repository now preserves the repository format.
69
(Andrew Bennetts, #269214)
71
* Branching from a stacked branch via ``bzr+ssh`` can properly connect
72
to the stacked-on branch. (Martin Pool, #261315)
74
* ``bzr init`` no longer re-opens the BzrDir multiple times.
77
* Fix '_in_buffer' AttributeError when using the -Dhpss debug flag.
86
This release candidate for bzr 1.7 has several bug fixes and a few
87
performance and feature improvements. ``bzr rm`` will now scan for
88
missing files and remove them, like how ``bzr add`` scans for unknown
89
files and adds them. A bit more polish has been applied to the stacking
90
code. The b-tree indexing code has been brought in, with an eye on using
91
it in a future repository format.
97
* ``bzr export`` can now export a subdirectory of a project.
100
* ``bzr remove-tree`` will now refuse to remove a tree with uncommitted
101
changes, unless the ``--force`` option is specified.
102
(Lukáš Lalinský, #74101)
104
* ``bzr rm`` will now scan for files that are missing and remove just
105
them automatically, much as ``bzr add`` scans for new files that
106
are not ignored and adds them automatically. (Robert Collins)
111
* Support for GSSAPI authentication when using FTP as documented in
112
RFC2228. (Jelmer Vernooij, #49623)
114
* Add support for IPv6 in the smart server. (Jelmer Vernooij, #165014)
119
* A URL like ``log+file:///tmp`` will log all access to that Transport
120
to ``.bzr.log``, which may help in debugging or profiling.
123
* ``bzr branch`` and ``bzr push`` use the default stacking policy if the
124
branch format supports it. (Aaron Bentley)
126
* ``bzr init`` and ``bzr init-repo`` will now print out the same as
127
``bzr info`` if it completed successfully.
130
* ``bzr uncommit`` logs the old tip revision id, and displays how to
131
restore the branch to that tip using ``bzr pull``. This allows you
132
to recover if you realize you uncommitted the wrong thing.
135
* Fix problems in accessing stacked repositories over ``bzr://``.
136
(Martin Pool, #261315)
138
* ``SFTPTransport.readv()`` was accidentally using ``list += string``,
139
which 'works', but adds each character separately to the list,
140
rather than using ``list.append(string)``. Fixing this makes the
141
SFTP transport a little bit faster (~20%) and use a bit less memory.
144
* When reading index files, if we happen to read the whole file in a
145
single request treat it as a ``_buffer_all`` request. This happens
146
most often on small indexes over remote transports, where we default
147
to reading 64kB. It saves a round trip for each small index during
148
fetch operations. Also, if we have read more than 50% of an index
149
file, trigger a ``_buffer_all`` on the next request. This works
150
around some inefficiencies because reads don't fall neatly on page
151
boundaries, so we would ignore those bytes, but request them again
152
later. This could trigger a total read size of more than the whole
153
file. (John Arbash Meinel)
158
* ``bzr rm`` is now aliased to ``bzr del`` for the convenience of svn
159
users. (Robert Collins, #205416)
161
* Catch the infamous "select/poll returned error" which occurs when
162
pycurl try to send a body request to an HTTP/1.0 server which has
163
already refused to handle the request. (Vincent Ladeuil, #225020)
165
* Fix ``ObjectNotLocked`` errors when using various commands
166
(including ``bzr cat`` and ``bzr annotate``) in combination with a
167
smart server URL. (Andrew Bennetts, #237067)
169
* ``FTPTransport.stat()`` would return ``0000`` as the permission bits
170
for the containing ``.bzr/`` directory (it does not implement
171
permissions). This would cause us to set all subdirectories to
172
``0700`` and files to ``0600`` rather than leaving them unmodified.
173
Now we ignore ``0000`` as the permissions and assume they are
174
invalid. (John Arbash Meinel, #259855)
176
* Merging from a previously joined branch will no longer cause
177
a traceback. (Jelmer Vernooij, #203376)
179
* Pack operations on windows network shares will work even with large
180
files. (Robert Collins, #255656)
182
* Running ``bzr st PATH_TO_TREE`` will no longer suppress merge
183
status. Status is also about 7% faster on mozilla sized trees
184
when the path to the root of the tree has been given. Users of
185
the internal ``show_tree_status`` function should be aware that
186
the show_pending flag is now authoritative for showing pending
187
merges, as it was originally. (Robert Collins, #255204)
189
* Set valid default _param_name for Option so that ListOption can embed
190
'-' in names. (Vincent Ladeuil, #263249)
192
* Show proper error rather than traceback when an unknown revision
193
id is specified to ``bzr cat-revision``. (Jelmer Vernooij, #175569)
195
* Trailing text in the dirstate file could cause the C dirstate parser
196
to try to allocate an invalid amount of memory. We now properly
197
check and test for parsing a dirstate with invalid trailing data.
198
(John Arbash Meinel, #186014)
200
* Unexpected error responses from a smart server no longer cause the
201
client to traceback. (Andrew Bennetts, #263527)
203
* Use a Windows api function to get a Unicode host name, rather than
204
assuming the host name is ascii.
205
(Mark Hammond, John Arbash Meinel, #256550)
207
* ``WorkingTree4`` trees will now correctly report missing-and-new
208
paths in the output of ``iter_changes``. (Robert Collins)
213
* Updated developer documentation. (Martin Pool)
218
* Exporters now take 4 parameters. (Robert Collins)
220
* ``Tree.iter_changes`` will now return False for the content change
221
field when a file is missing in the basis tree and not present in
222
the target tree. Previously it returned True unconditionally.
225
* The deprecated ``Branch.abspath`` and unimplemented
226
``Branch.rename_one`` and ``Branch.move`` were removed. (Jelmer Vernooij)
228
* BzrDir.clone_on_transport implementations must now accept a stacked_on
229
parameter. (Aaron Bentley)
231
* BzrDir.cloning_metadir implementations must now take a require_stacking
232
parameter. (Aaron Bentley)
237
* ``addCleanup`` now takes ``*arguments`` and ``**keyword_arguments``
238
which are then passed to the cleanup callable as it is run. In
239
addition, addCleanup no longer requires that the callables passed to
240
it be unique. (Jonathan Lange)
242
* Fix some tests that fail on Windows because files are deleted while
246
* ``selftest``'s ``--starting-with`` option can now use predefined
247
prefixes so that one can say ``bzr selftest -s bp.loom`` instead of
248
``bzr selftest -s bzrlib.plugins.loom``. (Vincent Ladeuil)
250
* ``selftest``'s ``--starting-with`` option now accepts multiple values.
256
* A new plugin interface, ``bzrlib.log.log_adapters``, has been added.
257
This allows dynamic log output filtering by plugins.
260
* ``bzrlib.btree_index`` is now available, providing a b-tree index
261
layer. The design is memory conservative (limited memory cache),
262
faster to seek (approx 100 nodes per page, gives 100-way fan out),
263
and stores compressed pages allowing more keys per page.
264
(Robert Collins, John Arbash Meinel)
266
* ``bzrlib.diff.DiffTree.show_diff`` now skips changes where the kind
267
is unknown in both source and target.
268
(Robert Collins, Aaron Bentley)
270
* ``GraphIndexBuilder.add_node`` and ``BTreeBuilder`` have been
271
streamlined a bit. This should make creating large indexes faster.
272
(In benchmarking, it now takes less time to create a BTree index than
273
it takes to read the GraphIndex one.) (John Arbash Meinel)
275
* Mail clients for `bzr send` are now listed in a registry. This
276
allows plugins to add new clients by registering them with
277
``bzrlib.mail_client.mail_client_registry``. All of the built-in
278
clients now use this mechanism. (Neil Martinsen-Burrell)
282
vim: tw=74 ft=rst ff=unix