5
* ``bzr remove`` and ``bzr rm`` will now remove the working file, if
6
it could be recovered again.
7
This has been done for consistency with svn and the unix rm command.
8
The old ``remove`` behaviour has been retained in the new option
9
``bzr remove --keep``, which will just stop versioning the file,
11
``bzr remove --force`` have been added which will always delete the
13
``bzr remove`` is also more verbose.
14
(Marius Kruger, #82602)
18
* Merge directives can now be supplied as input to `merge` and `pull`,
19
like bundles can. (Aaron Bentley)
21
* Sending the SIGQUIT signal to bzr, which can be done on Unix by
22
pressing Control-Backslash, drops bzr into a debugger. Type `c`
23
to continue. This can be disabled by setting the environment variable
24
BZR_SIGQUIT_PDB=0. (Martin Pool)
26
* selftest now supports --list-only to list tests instead of running
27
them. (Ian Clatworthy)
29
* selftest now supports --exclude PATTERN (or -x PATTERN) to exclude
30
tests with names that match that regular expression.
31
(Ian Clatworthy, #102679)
33
* selftest now supports --randomize SEED to run tests in a random order.
34
SEED is typically the value 'now' meaning 'use the current time'.
35
(Ian Clatworthy, #102686)
37
* New option ``--fixes`` to commit, which stores bug fixing annotations as
38
revision properties. Built-in support for Launchpad, Debian, Trac and
39
Bugzilla bug trackers. (Jonathan Lange, James Henstridge, Robert Collins)
41
* New API, ``bzrlib.bugtracker.tracker_registry``, for adding support for
42
other bug trackers to ``fixes``. (Jonathan Lange, James Henstridge,
45
* ``selftest`` has new short options ``-f`` and ``-1``. (Martin
48
* ``bzrlib.tsort.MergeSorter`` optimizations. Change the inner loop
49
into using local variables instead of going through ``self._var``.
50
Improves the time to ``merge_sort`` a 10k revision graph by
51
approximately 40% (~700->400ms). (John Arbash Meinel)
53
* ``make docs`` now creates a man page at ``man1/bzr.1`` fixing bug 107388.
56
* ``bzr help`` now provides cross references to other help topics using
57
the _see_also facility on command classes. Likewise the bzr_man
58
documentation, and the bzr.1 man page also include this information.
61
* Tags are now included in logs, that use the long log formatter.
62
(Erik Bågfors, Alexander Belchenko)
64
* ``bzr help`` provides a clearer message when a help topic cannot be
65
found (fixes bug 107656). (Robert Collins)
67
* ``bzr help`` now accepts optional prefixes for command help. The help
68
for all commands can now be found at ``bzr help commands/COMMANDNAME``
69
as well as ``bzr help COMMANDNAME`` (which only works for commands
70
where the name is not the same as a more general help topic).
73
* ``bzr help PLUGINNAME`` will now return the module docstring from the
74
plugin PLUGINNAME fixing bug 50408. (Robert Collins)
76
* New help topic ``urlspec`` which lists the availables transports.
79
* doc/server.txt updated to document the default bzr:// port (fixes
80
#107125) and also update the blurb about the hpss' current status.
83
* ``bzr serve`` now listens on interface 0.0.0.0 by default, making it
84
serve out to the local LAN (and anyone in the world that can reach the
85
machine running ``bzr serve``. (Robert Collins, #98918)
87
* A new smart server protocol version has been added. It prefixes requests
88
and responses with an explicit version identifier so that future protocol
89
revisions can be dealt with gracefully. (Andrew Bennetts, Robert Collins)
91
* The bzr protocol version 2 indicates success or failure in every response
92
without depending on particular commands encoding that consistently,
93
allowing future client refactorings to be much more robust about error
94
handling. (Robert Collins, Martin Pool, Andrew Bennetts)
96
* The smart protocol over HTTP client has been changed to always post to the
97
same .bzr/smart URL under the original location when it can. This allows
98
HTTP servers to only have to pass URLs ending in .bzr/smart to the smart
99
server handler, and not arbitrary .bzr/*/smart URLs. (Andrew Bennetts)
101
* digest authentication is now supported for proxies and HTTP by the urllib
102
based http implementation. Tested against Apache 2.0.55 and Squid
103
2.6.5. Basic and digest authentication are handled coherently for HTTP
104
and proxy: if the user is provided in the url (bzr command line for HTTP,
105
proxy environment variables for proxies), the password is prompted for
106
(only once). If the password is provided, it is taken into account. Once
107
the first authentication is successful, all further authentication
108
roundtrips are avoided by preventively setting the right authentication
114
* bzrlib API compatability with 0.8 has been dropped, cleaning up some
115
code paths. (Robert Collins)
117
* Change the format of chroot urls so that they can be safely manipulated
118
by generic url utilities without causing the resulting urls to have
119
escaped the chroot. A side effect of this is that creating a chroot
120
requires an explicit action using a ChrootServer.
121
(Robert Collins, Andrew Bennetts)
123
* Deprecate Branch.get_root_id() because branches don't have root ids,
124
rather than fixing bug #96847. (Aaron Bentley)
126
* WorkingTree.apply_inventory_delta provides a better alternative to
127
WorkingTree._write_inventory. (Aaron Bentley)
129
* Convenience method TestCase.expectFailure ensures that known failures
130
do not silently pass. (Aaron Bentley)
132
* Transport.local_abspath now raises NotLocalUrl rather than
133
TransportNotPossible. (Martin Pool, Ian Clatworthy)
135
* New SmartServer hooks facility. There are two initial hooks documented
136
in bzrlib.transport.smart.SmartServerHooks. The two initial hooks allow
137
plugins to execute code upon server startup and shutdown.
140
* SmartServer in standalone mode will now close its listening socket
141
when it stops, rather than waiting for garbage collection. This primarily
142
fixes test suite hangs when a test tries to connect to a shutdown server.
143
It may also help improve behaviour when dealing with a server running
144
on a specific port (rather than dynamically assigned ports).
147
* Move most SmartServer code into a new package, bzrlib/smart.
148
bzrlib/transport/remote.py contains just the Transport classes that used
149
to be in bzrlib/transport/smart.py. (Andrew Bennetts)
151
* urllib http implementation avoid roundtrips associated with
152
401 (and 407) errors once the authentication succeeds.
155
* urlib http now supports querying the user for a proxy password if
156
needed. Realm is shown in the prompt for both HTTP and proxy
157
authentication when the user is required to type a password.
160
* Renamed SmartTransport (and subclasses like SmartTCPTransport) to
161
RemoteTransport (and subclasses to RemoteTCPTransport, etc). This is more
162
consistent with its new home in bzrlib/transport/remote.py, and because
163
it's not really a "smart" transport, just one that does file operations
164
via remote procedure calls. (Andrew Bennetts)
166
* The ``lock_write`` method of ``LockableFiles``, ``Repository`` and
167
``Branch`` now accept a ``token`` keyword argument, so that separate
168
instances of those objects can share a lock if it has the right token.
169
(Andrew Bennetts, Robert Collins)
171
* New method 'get_branch_reference' on 'BzrDir' allows the detection of
172
branch references - which the smart server component needs.
174
* The Repository API ``make_working_trees`` is now permitted to return
175
False when ``set_make_working_trees`` is not implemented - previously
176
an unimplemented ``set_make_working_trees`` implied the result True
177
from ``make_working_trees``. This has been changed to accomodate the
178
smart server, where it does not make sense (at this point) to ever
179
make working trees by default. (Robert Collins)
181
* Command objects can now declare related help topics by having _see_also
182
set to a list of related topic. (Robert Collins)
184
* ``bzrlib.help`` now delegates to the Command class for Command specific
185
help. (Robert Collins)
187
* New class 'TransportListRegistry', derived from the Registry class, which
188
simplifies tracking the available Transports. (Goffredo Baroncelli)
190
* New function ``Branch.get_revision_id_to_revno_map`` which will
191
return a dictionary mapping revision ids to dotted revnos. Since
192
dotted revnos are defined in the context of the branch tip, it makes
193
sense to generate them from a ``Branch`` object.
196
* Fix the 'Unprintable error' message display to use the repr of the
197
exception that prevented printing the error because the str value
198
for it is often not useful in debugging (e.g. KeyError('foo') has a
199
str() of 'foo' but a repr of 'KeyError('foo')' which is much more
200
useful. (Robert Collins)
202
* urlutils.normalize_url now unescapes unreserved characters, such as "~".
207
* Don't fail bundle selftest if email has 'two' embedded.
208
(#98510, Ian Clatworthy)
210
* Remove ``--verbose`` from ``bzr bundle``. It didn't work anyway.
211
(Robert Widhopf-Fenk, #98591)
213
* Remove ``--basis`` from the checkout/branch commands - it didn't work
214
properly and is no longer beneficial. Fixes #53675 and #43486.
217
* Don't produce encoding error when adding duplicate files.
220
* Fix ``bzr log <file>`` so it only logs the revisions that changed
221
the file, and does it faster.
222
(Kent Gibson, John Arbash Meinel, #51980, #69477)
224
* Fix ``InterDirstateTre._iter_changes`` to handle when we come across
225
an empty versioned directory, which now has files in it.
226
(John Arbash Meinel, #104257)
228
* Teach ``common_ancestor`` to shortcut when the tip of one branch is
229
inside the ancestry of the other. Saves a lot of graph processing
230
(with an ancestry of 16k revisions, ``bzr merge ../already-merged``
231
changes from 2m10s to 13s). (John Arbash Meinel, #103757)
233
* Fix ``show_diff_trees`` to handle the case when a file is modified,
234
and the containing directory is renamed. (The file path is different
235
in this versus base, but it isn't marked as a rename).
236
(John Arbash Meinel, #103870)
238
* FTP now works even when the FTP server does not support atomic rename.
239
(Aaron Bentley, #89436)
241
* Correct handling in bundles and merge directives of timezones with
242
that are not an integer number of hours offset from UTC. Always
243
represent the epoch time in UTC to avoid problems with formatting
244
earlier times on win32. (Martin Pool, Alexander Belchenko, John
247
* Typo in the help for ``register-branch`` fixed. (Robert Collins, #96770)
249
* "dirstate" and "dirstate-tags" formats now produce branches compatible
250
with old versions of bzr. (Aaron Bentley, #107168))
252
* Handle moving a directory when children have been added, removed,
253
and renamed. (John Arbash Meinel, #105479)
255
* Don't preventively use basic authentication for proxy before receiving a
256
407 error. Otherwise people willing to use other authentication schemes
257
may expose their password in the clear (or nearly). This add one
258
roundtrip in case basic authentication should be used, but plug the
262
* Handle http and proxy digest authentication.
263
(Vincent Ladeuil, #94034).
267
* Added ``bzrlib.strace.strace`` which will strace a single callable and
268
return a StraceResult object which contains just the syscalls involved
269
in running it. (Robert Collins)
271
* New test method ``reduceLockdirTimeout`` to drop the default (ui-centric)
272
default time down to one suitable for tests. (Andrew Bennetts)
274
* Add new vfs_transport_factory attribute on tests which provides the
275
common vfs backing for both the readonly and readwrite transports.
276
This allows the RemoteObject tests to back onto local disk or memory,
277
and use the existing transport_server attribute all tests know about
278
to be the smart server transport. This in turn allows tests to
279
differentiate between 'transport to access the branch', and
280
'transport which is a VFS' - which matters in Remote* tests.
281
(Robert Collins, Andrew Bennetts)
283
* The ``make_branch_and_tree`` method for tests will now create a
284
lightweight checkout for the tree if the vfs_transport_factory is not
285
a LocalURLServer. (Robert Collins, Andrew Bennetts)
287
* Branch implementation tests have been audited to ensure that all urls
288
passed to Branch APIs use proper urls, except when local-disk paths
289
are intended. This is so that tests correctly access the test transport
290
which is often not equivalent to local disk in Remote* tests. As part
291
of this many tests were adjusted to remove dependencies on local disk
293
(Robert Collins, Andrew Bennetts)
295
* Mark bzrlib.tests and bzrlib.tests.TestUtil as providing assertFOO helper
296
functions by adding a __unittest global attribute. (Robert Collins,
297
Andrew Bennetts, Martin Pool, Jonathan Lange)
299
* Refactored proxy and authentication handling to simplify the
300
implementation of new auth schemes for both http and proxy.
1
303
bzr 0.15 2007-04-01