5
* ``bzr init`` should connect to the remote location one time only. We
6
have been connecting several times because we forget to pass around the
7
Transport object. This modifies ``BzrDir.create_branch_convenience``,
8
so that we can give it the Transport we already have.
9
(John Arbash Meinel, Vincent Ladeuil, #111702)
11
* Get rid of sftp connection cache (get rid of the FTP one too).
12
(Vincent Ladeuil, #43731)
14
* bzr branch {local|remote} remote don't try to create a working tree
16
(Vincent Ladeuil, #112173)
18
* All identified multiple connections for a single bzr command have been
19
fixed. See bzrlib/tests/commands directory.
22
* ``bzr rm`` now does not insist on ``--force`` to delete files that
23
have been renamed but not otherwise modified. (Marius Kruger,
26
* ``bzr selftest --bench`` no longer emits deprecation warnings
29
* ``bzr status`` now honours FILE parameters for conflict lists
30
(Aaron Bentley, #127606)
32
* ``bzr checkout`` now honours -r when reconstituting a working tree.
33
It also honours -r 0. (Aaron Bentley, #127708)
37
* Don't show "dots" progress indicators when run non-interactively, such
38
as from cron. (Martin Pool)
40
* ``info`` now formats locations more nicely and lists "submit" and
41
"public" branches (Aaron Bentley)
43
* New ``pack`` command that will trigger database compression within
44
the repository (Robert Collins)
46
* Implement ``_KnitIndex._load_data`` in a pyrex extension. The pyrex
47
version is approximately 2-3x faster at parsing a ``.kndx`` file.
48
Which yields a measurable improvement for commands which have to
49
read from the repository, such as a 1s => 0.75s improvement in
50
``bzr diff`` when there are changes to be shown. (John Arbash Meinel)
52
* Merge is now faster. Depending on the scenario, it can be more than 2x
53
faster. (Aaron Bentley)
55
* Give a clearer warning, and allow ``python setup.py install`` to
56
succeed even if pyrex is not available.
59
* ``DirState._read_dirblocks`` now has an optional Pyrex
60
implementation. This improves the speed of any command that has to
61
read the entire DirState. (``diff``, ``status``, etc, improve by
63
``bisect_dirblocks`` has also been improved, which helps all
64
``_get_entry`` type calls (whenever we are searching for a
65
particular entry in the in-memory DirState).
68
* ``bzr pull`` and ``bzr push`` no longer do a complete walk of the
69
branch revision history for ui display unless -v is supplied.
72
* ``bzr log -rA..B`` output shifted to the left margin if the log only
73
contains merge revisions. (Kent Gibson)
75
* The ``plugins`` command is now public with improved help.
78
* New bundle and merge directive formats are faster to generate, and
79
more robust against email mangling. (Aaron Bentley)
81
* Annotate merge now works when there are local changes. (Aaron Bentley)
83
* Commit now only shows the progress in terms of directories instead of
84
entries. (Ian Clatworthy)
88
* Deprecated dictionary ``bzrlib.option.SHORT_OPTIONS`` removed.
89
Options are now required to provide a help string and it must
90
comply with the style guide by being one or more sentences with an
91
initial capital and final period. (Martin Pool)
93
* KnitIndex.get_parents now returns tuples. (Robert Collins)
97
* merge now uses ``iter_changes`` to calculate changes, which makes room for
98
future performance increases. It is also more consistent with other
99
operations that perform comparisons, and reduces reliance on
100
Tree.inventory. (Aaron Bentley)
102
* Refactoring of transport classes connected to a remote server.
103
ConnectedTransport is a new class that serves as a basis for all
104
transports needing to connect to a remote server. transport.split_url
105
have been deprecated, use the static method on the object instead. URL
106
tests have been refactored too.
109
* Better connection sharing for ConnectedTransport objects.
110
transport.get_transport() now accepts a 'possible_transports' parameter.
111
If a newly requested transport can share a connection with one of the
115
* Most functions now accept ``bzrlib.revision.NULL_REVISION`` to indicate
116
the null revision, and consider using ``None`` for this purpose
117
deprecated. (Aaron Bentley)
119
* New ``index`` module with abstract index functionality. This will be
120
used during the planned changes in the repository layer. Currently the
121
index layer provides a graph aware immutable index, a builder for the
122
same index type to allow creating them, and finally a composer for
123
such indices to allow the use of many indices in a single query. The
124
index performance is not optimised, however the API is stable to allow
125
development on top of the index. (Robert Collins)
127
* ``bzrlib.dirstate.cmp_by_dirs`` can be used to compare two paths by
128
their directory sections. This is equivalent to comparing
129
``path.split('/')``, only without having to split the paths.
130
This has a Pyrex implementation available.
133
* New transport decorator 'unlistable+' which disables the list_dir
134
functionality for testing.
136
* New ``file_names.FileNames`` support class which mananges names
137
for unlistable transport situations. (Robert Collins)
139
* Deprecated ``change_entry`` in transform.py. (Ian Clatworthy)
141
* RevisionTree.get_weave is now deprecated. Tree.plan_merge is now used
142
for performing annotate-merge. (Aaron Bentley)
144
* New EmailMessage class to create email messages. (Adeodato Simó)
146
* Unused functions on the private interface KnitIndex have been removed.
149
* New ``knit.KnitGraphIndex`` which provides a ``KnitIndex`` layered on top
150
of a ``index.GraphIndex``. (Robert Collins)
152
* New ``knit.KnitVersionedFile.iter_parents`` method that allows querying
153
the parents of many knit nodes at once, reducing round trips to the
154
underlying index. (Robert Collins)
158
* Remove selftest ``--clean-output``, ``--numbered-dirs`` and
159
``--keep-output`` options, which are obsolete now that tests
160
are done within directories in $TMPDIR. (Martin Pool)
162
* The SSH_AUTH_SOCK environment variable is now reset to avoid
163
interaction with any running ssh agents. (Jelmer Vernooij, #125955)
170
* Fix 'bzr add' crash under Win32 (Kuno Meyer)
173
bzr 0.18rc1 2007-07-10
177
5
* Do not suppress pipe errors, etc. in non-display commands
178
6
(Alexander Belchenko, #87178)
180
* Display a useful error message when the user requests to annotate
181
a file that is not present in the specified revision.
182
(James Westby, #122656)
184
* Commands that use status flags now have a reference to 'help
185
status-flags'. (Daniel Watkins, #113436)
187
* Work around python-2.4.1 inhability to correctly parse the
188
authentication header.
189
(Vincent Ladeuil, #121889)
191
* Use exact encoding for merge directives. (Adeodato Simó, #120591)
193
* Fix tempfile permissions error in smart server tar bundling under
194
Windows. (Martin_, #119330)
196
* Fix detection of directory entries in the inventory. (James Westby)
198
* Fix handling of http code 400: Bad Request When issuing too many ranges.
199
(Vincent Ladeuil, #115209)
201
* Issue a CONNECT request when connecting to an https server
202
via a proxy to enable SSL tunneling.
203
(Vincent Ladeuil, #120678)
205
* Fix ``bzr log -r`` to support selecting merge revisions, both
206
individually and as part of revision ranges.
209
* Don't leave cruft behind when failing to acquire a lockdir.
210
(Martin Pool, #109169)
212
* Don't use the '-f' strace option during tests.
213
(Vincent Ladeuil, #102019).
215
* Warn when setting ``push_location`` to a value that will be masked by
216
locations.conf. (Aaron Bentley, #122286)
218
* Fix commit ordering in corner case (Aaron Bentley, #94975)
220
* Make annotate behave in a non-ASCII world (Adeodato Simó).
224
10
* The --lsprof-file option now dumps a text rendering of the profiling
269
53
library users and plugins. See the ``bzrlib.api`` module for details.
272
* Remove unnecessary lock probes when acquiring a lockdir.
275
* ``bzr --version`` now shows the location of the bzr log file, which
276
is especially useful on Windows. (Martin Pool)
278
* -D now supports hooks to get debug tracing of hooks (though its currently
279
minimal in nature). (Robert Collins)
281
* Long log format reports deltas on merge revisions.
282
(John Arbash Meinel, Kent Gibson)
284
* Make initial push over ftp more resilient. (John Arbash Meinel)
286
* Print a summary of changes for update just like pull does.
287
(Daniel Watkins, #113990)
289
* Add a -Dhpss option to trace smart protocol requests and responses.
295
``bzrlib.repository.RepositoryTestProviderAdapter`` has been moved
296
to ``bzrlib.tests.repository_implementations``;
297
``bzrlib.repository.InterRepositoryTestProviderAdapter`` has been moved
298
to ``bzrlib.tests.interrepository_implementations``;
299
``bzrlib.transport.TransportTestProviderAdapter`` has moved to
300
``bzrlib.tests.test_transport_implementations``.
301
``bzrlib.branch.BranchTestProviderAdapter`` has moved to
302
``bzrlib.tests.branch_implementations``.
303
``bzrlib.bzrdir.BzrDirTestProviderAdapter`` has moved to
304
``bzrlib.tests.bzrdir_implementations``.
305
``bzrlib.versionedfile.InterVersionedFileTestProviderAdapter`` has moved
306
to ``bzrlib.tests.interversionedfile_implementations``.
307
``bzrlib.store.revision.RevisionStoreTestProviderAdapter`` has moved to
308
``bzrlib.tests.revisionstore_implementations``.
309
``bzrlib.workingtree.WorkingTreeTestProviderAdapter`` has moved to
310
``bzrlib.tests.workingtree_implementations``.
311
These changes are an API break in the testing infrastructure only.
314
* Relocate TestCaseWithRepository to be more central. (Robert Collins)
316
* ``bzrlib.add.smart_add_tree`` will no longer perform glob expansion on
317
win32. Callers of the function should do this and use the new
318
``MutableTree.smart_add`` method instead. (Robert Collins)
320
* ``bzrlib.add.glob_expand_for_win32`` is now
321
``bzrlib.win32utils.glob_expand``. (Robert Collins)
323
* ``bzrlib.add.FastPath`` is now private and moved to
324
``bzrlib.mutabletree._FastPath``. (Robert Collins, Martin Pool)
326
* ``LockDir.wait`` removed. (Martin Pool)
328
* The ``SmartServer`` hooks API has changed for the ``server_started`` and
329
``server_stopped`` hooks. The first parameter is now an iterable of
330
backing URLs rather than a single URL. This is to reflect that many
331
URLs may map to the external URL of the server. E.g. the server interally
332
may have a chrooted URL but also the local file:// URL will be at the
333
same location. (Robert Collins)
337
58
* New SMTPConnection class to unify email handling. (Adeodato Simó)
339
* Fix documentation of BzrError. (Adeodato Simó)
341
* Make BzrBadParameter an internal error. (Adeodato Simó)
343
* Remove use of 'assert False' to raise an exception unconditionally.
346
* Give a cleaner error when failing to decode knit index entry.
349
* TreeConfig would mistakenly search the top level when asked for options
350
from a section. It now respects the section argument and only
351
searches the specified section. (James Westby)
353
* Improve ``make api-docs`` output. (John Arbash Meinel)
355
* Use os.lstat rather than os.stat for osutils.make_readonly and
356
osutils.make_writeable. This makes the difftools plugin more
357
robust when dangling symlinks are found. (Elliot Murphy)
359
* New ``-Dlock`` option to log (to ~/.bzr.log) information on when
360
lockdirs are taken or released. (Martin Pool)
362
60
* ``bzrlib`` Hooks are now nameable using ``Hooks.name_hook``. This
363
61
allows a nicer UI when hooks are running as the current hook can
364
62
be displayed. (Robert Collins)
366
* ``Transport.get`` has had its interface made more clear for ease of use.
367
Retrieval of a directory must now fail with either 'PathError' at open
368
time, or raise 'ReadError' on a read. (Robert Collins)
370
* New method ``_maybe_expand_globs`` on the ``Command`` class for
371
dealing with unexpanded glob lists - e.g. on the win32 platform. This
372
was moved from ``bzrlib.add._prepare_file_list``. (Robert Collins)
374
* ``bzrlib.add.smart_add`` and ``bzrlib.add.smart_add_tree`` are now
375
deprecated in favour of ``MutableTree.smart_add``. (Robert Collins,
378
* New method ``external_url`` on Transport for obtaining the url to
379
hand to external processes. (Robert Collins)
381
* Teach windows installers to build pyrex/C extensions.
382
(Alexander Belchenko)
386
66
* Removed the ``--keep-output`` option from selftest and clean up test
388
68
running the test suite and cuts the time by about half.
389
69
(Andrew Bennetts, Martin Pool)
391
* Add scenarios as a public attribute on the TestAdapter classes to allow
392
modification of the generated scenarios before adaption and easier
393
testing. (Robert Collins)
395
* New testing support class ``TestScenarioApplier`` which multiplies
396
out a single teste by a list of supplied scenarios. (RobertCollins)
398
* Setting ``repository_to_test_repository`` on a repository_implementations
399
test will cause it to be called during repository creation, allowing the
400
testing of repository classes which are not based around the Format
401
concept. For example a repository adapter can be tested in this manner,
402
by altering the repository scenarios to include a scenario that sets this
403
attribute during the test parameterisation in
404
``bzrlib.tests.repository.repository_implementations``. (Robert Collins)
406
71
* Clean up many of the APIs for blackbox testing of Bazaar. The standard
407
72
interface is now self.run_bzr. The command to run can be passed as
408
73
either a list of parameters, a string containing the command line, or
409
74
(deprecated) varargs parameters. (Martin Pool)
411
* The base TestCase now isolates tests from -D parameters by clearing
412
``debug.debug_flags`` and restores it afterwards. (Robert Collins)
414
* Add a relpath parameter to get_transport methods in test framework to
415
avoid useless cloning.
416
(Vincent Ladeuil, #110448)
78
* Work around python-2.4.1 inhability to correctly parse the
79
authentication header.
80
(Vincent Ladeuil, #121889)
419
83
bzr 0.17 2007-06-18