1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
|
####################
Bazaar Release Notes
####################
.. toctree::
:maxdepth: 1
bzr 1.18.1
##########
:Codename: nein nein nein!
:1.18.1: 2009-09-09
This release fixes two small but worthwhile bugs relevant to users on
Microsoft Windows: some commands that failed on with locking errors will
now work, and a bug that caused poor performance after committing a file
with line-ending conversion has now been fixed. It also fixes a bug in
pushing to older servers.
Bug Fixes
*********
* Fixed a problem where using content filtering and especially end-of-line
conversion will commit too many copies a file.
(Martin Pool, #415508)
* Fix assertion error about ``_remember_remote_is_before`` in
``set_tags_bytes`` when pushing to older smart servers.
(Andrew Bennetts, Alexander Belchenko, #418931)
Improvements
************
* ``bzr push`` locally on Windows will no longer give a locking error with
dirstate based formats. (Robert Collins)
* ``bzr shelve`` and ``bzr unshelve`` now work on Windows.
(Robert Collins, #305006)
API Changes
***********
* ``bzrlib.shelf_ui`` has had the ``from_args`` convenience methods of its
classes changed to manage lock lifetime of the trees they open in a way
consistent with reader-exclusive locks. (Robert Collins, #305006)
* ``Tree.path_content_summary`` may return a size of None, when called on
a tree with content filtering where the size of the canonical form
cannot be cheaply determined. (Martin Pool)
* When manually creating transport servers in test cases, a new helper
``TestCase.start_server`` that registers a cleanup and starts the server
should be used. (Robert Collins)
bzr 1.18
########
Compatibility Breaks
********************
* Committing directly to a stacked branch from a lightweight checkout will
no longer work. In previous versions this would appear to work but would
generate repositories with insufficient data to create deltas, leading
to later errors when branching or reading from the repository.
(Robert Collins, bug #375013)
New Features
************
Bug Fixes
*********
* Fetching from 2a branches from a version-2 bzr protocol would fail to
copy the internal inventory pages from the CHK store. This cannot happen
in normal use as all 2a compatible clients and servers support the
version-3 protocol, but it does cause test suite failures when testing
downlevel protocol behaviour. (Robert Collins)
* Fix a test failure on karmic by making a locale test more robust.
(Vincent Ladeuil, #413514)
* Fixed "Pack ... already exists" error when running ``bzr pack`` on a
fully packed 2a repository. (Andrew Bennetts, #382463)
* Further tweaks to handling of ``bzr add`` messages about ignored files.
(Jason Spashett, #76616)
* Properly handle fetching into a stacked branch while converting the
data, especially when there are also ghosts. The code was filling in
parent inventories incorrectly, and also not handling when one of the
parents was a ghost. (John Arbash Meinel, #402778, #412198)
* ``RemoteStreamSource.get_stream_for_missing_keys`` will fetch CHK
inventory pages when appropriate (by falling back to the vfs stream
source). (Andrew Bennetts, #406686)
* StreamSource generates rich roots from non-rich root sources correctly
now. (Andrew Bennetts, #368921)
* When deciding whether a repository was compatible for upgrading or
fetching, we previously incorrectly checked the default repository
format for the bzrdir format, rather than the format that was actually
present on disk. (Martin Pool, #408824)
Improvements
************
* A better description of the platform is shown in crash tracebacks, ``bzr
--version`` and ``bzr selftest``.
(Martin Pool, #409137)
* Cross-format fetches (such as between 1.9-rich-root and 2a) via the
smart server are more efficient now. They send inventory deltas rather
than full inventories. The smart server has two new requests,
``Repository.get_stream_1.19`` and ``Repository.insert_stream_1.19`` to
support this. (Andrew Bennetts, #374738, #385826)
* Extracting the full ancestry and computing the ``merge_sort`` is now
significantly faster. This effects things like ``bzr log -n0``. (For
example, ``bzr log -r -10..-1 -n0 bzr.dev`` is 2.5s down to 1.0s.
(John Arbash Meinel)
Documentation
*************
API Changes
***********
Internals
*********
* ``-Dstrict_locks`` can now be used to check that read and write locks
are treated properly w.r.t. exclusivity. (We don't try to take an OS
read lock on a file that we already have an OS write lock on.) This is
now set by default for all tests, if you have a test which cannot be
fixed, you can use ``self.thisFailsStrictLockCheck()`` as a
compatibility knob. (John Arbash Meinel)
* InterDifferingSerializer is now only used locally. Other fetches that
would have used InterDifferingSerializer now use the more network
friendly StreamSource, which now automatically does the same
transformations as InterDifferingSerializer. (Andrew Bennetts)
* ``KnownGraph`` now has a ``.topo_sort`` and ``.merge_sort`` member which
are implemented in pyrex and significantly faster. This is exposed along
with ``CombinedGraphIndex.find_ancestry()`` as
``VersionedFiles.get_known_graph_ancestry(keys)``.
(John Arbash Meinel)
* RemoteBranch.open now honours ignore_fallbacks correctly on bzr-v2
protocols. (Robert Collins)
* The index code now has some specialized routines to extract the full
ancestry of a key in a more efficient manner.
``CombinedGraphIndex.find_ancestry()``. (Time to get ancestry for
bzr.dev drops from 1.5s down to 300ms. For OOo from 33s => 10.5s) (John
Arbash Meinel)
Testing
*******
* Install the test ssl certificate and key so that installed bzr
can run the https tests. (Denys Duchier, #392401)
bzr 1.18rc1
###########
:Codename: little traveller
:1.18: 2009-08-20
:1.18rc1: 2009-08-10
This release of Bazaar marches on towards the 2.0 release in which the 2a
'brisbane-core' format becomes generally recommended. Most of the work in
this release now focusses on bug fixes and stabilization, covering both 2a
and previous formats. There is a new text-mode interactive merge feature,
a new guide to migration to 2a format in the user documentation, and
pushing branches to a smart server is now much faster.
The Bazaar team decided that 2.0 will be a long-term supported release,
with bugfix-only releases based on it continuing for at least six months
or until the following stable release.
There are no changes from 1.18rc1 to 1.18.
New Features
************
* ``bzr merge --interactive`` applies a user-selected portion of the
merge. The UI is similar to ``shelve``. (Aaron Bentley)
* ``bzr reconfigure`` now takes options ``--stacked-on URL`` and
``--unstacked`` to change stacking of a branch.
(Martin Pool, #391411)
Bug Fixes
*********
* Annotating on a stacked branch will now succeed in simple scenarios.
There are still some complex scenarios where it will fail (bug #399884)
(John Arbash Meinel, #393366)
* A progress bar is no longer left dangling when ``bzr selftest``
completes, and the progress bar updates with zero latency so the
displayed test name is always the one that's actually running.
(Martin Pool, #123688)
* Authenticating against an SSH server now uses ``auth_none`` to determine
if password authentication is even supported. This fixes a bug where
users would be prompted for a launchpad password, even though launchpad
only supports publickey authentication. (John Arbash Meinel, #375867)
* BranchBuilder now accepts timezone to avoid test failures in countries far
from GMT. (Vincent Ladeuil, #397716)
* ``bzr commit`` no longer saves the unversioning of missing files until
the commit has completed on the branch. This means that aborting a
commit that found a missing file will leave the tree unedited.
(Robert Collins, #282402)
* ``bzr mv`` no longer takes out branch locks, which allows it to work
when the branch is readonly. (Robert Collins, #216541)
* ``bzr revert .`` no longer generates an InconsistentDelta error when
there are missing subtrees. (Robert Collins, #367632)
* ``bzr send`` now generates valid bundles with ``--2a`` formats. However,
do to internal changes necessary to support this, older clients will
fail when trying to insert them. For newer clients, the bundle can be
used to apply the changes to any rich-root compatible format.
(John Arbash Meinel, #393349)
* Cope with FTP servers that don't support restart/append by falling back
to reading and then rewriting the whole file, such as TahoeLAFS. (This
fallback may be slow for some access patterns.) (Nils Durner, #294709)
* Encode the paths in ``mbcs`` encoding on Windows when spawning an
external diff client. This at least allows supporting filenames that are
not ascii, but are present in the current locale. Ideally we would be
able to pass the Unicode path, but that would be client dependent.
(John Arbash Meinel, #382709)
* Fix a compile bug on Solaris having to do with const and
pointer-to-pointers. (John Arbash Meinel, #408441)
* Fixed a NameError that occurs when merging or pulling from a URL that
causes a redirection loop when bzr tries to read a URL as a bundle.
(Andrew Bennetts, #400847)
* Fix ``AttributeError: 'TestUIFactory' object has no attribute 'tick'``
running send and similar commands on 2a formats.
(Martin Pool, #408201)
* Fix crash in some invocations of ``bzr status`` in format 2a.
(Martin Pool, #403523)
* Fixed export to existing directory: if directory is empty then export
will succeed, otherwise it fails with error.
(Alexander Belchenko, #406174)
* Fixed spurious "Source branch does not support stacking" warning when
pushing. (Andrew Bennetts, #388908)
* Fixed spurious transport activity indicator appearing while tests are
running. (Martin Pool, #343532)
* Merge now correctly handles empty right-hand revision specs.
(Aaron Bentley, #333961)
* Renames to lexographically lower basenames in trees that have never been
committed to will no longer corrupt the dirstate. This was caused by an
bug in the dirstate update_minimal method. (Robert Collins, #395556)
* Requests for unknown methods no longer cause the smart server to log
lots of backtraces about ``UnknownSmartMethod``, ``do_chunk`` or
``do_end``. (Andrew Bennetts, #338561)
* Shelve will not shelve the initial add of the tree root. (Aaron Bentley)
* Streaming from bzr servers where there is a chain of stacked branches
(A stacked on B stacked on C) will now work. (Robert Collins, #406597)
* The environment variable ``BZR_PROGRESS_BAR`` set to either ``text`` or ``none``
always forces progress bars either on or off respectively. Otherwise,
they're turned on if ``TERM`` is not ``dumb`` and stderr is a terminal.
bzr always uses the 'text' user interface when run as a command, so
``BZR_USE_TEXT_UI`` is no longer needed.
(Martin Pool, #339385, #387717)
* The optional ``_knit_load_data_pyx`` C extension was never being
imported. This caused significant slowdowns when reading data from
repositories. (Andrew Bennetts, #405653)
* The ``--hardlink`` option to ``branch`` and ``checkout`` is not
supported at the moment on workingtree formats that can do content
filtering. (See <https://bugs.launchpad.net/bzr/+bug/408193>.)
bzr now says so, rather than just ignoring the option. (Martin Pool)
* There was a bug in ``osutils.relpath`` that was only triggered on
Windows. Essentially if you were at the root of a drive, and did
something to a branch/repo on another drive, we would go into an
infinite loop while trying to find a 'relative path'.
(John Arbash Meinel, #394227)
* ``WorkingTree4.unversion`` will no longer fail to unversion ids which
were present in a parent tree but renamed in the working tree.
(Robert Collins, #187207)
Improvements
************
* Can now rename/move files even if they have been removed from the inventory.
(Marius Kruger)
* Pushing branches with tags via ``bzr://`` and ``bzr+ssh://`` is much
faster, using a new ``Branch.set_tags_bytes`` smart server verb rather
than VFS methods. For example, pushes of small branches with tags take
11 rather than 18 smart server requests. (Andrew Bennetts, #398608)
* Sending Ctrl-Break on Windows will now drop you into the debugger, in
the same way that sending Ctrl-\\ does on other platforms.
(John Arbash Meinel)
Documentation
*************
* Added Bazaar 2.0 Upgrade Guide. (Ian Clatworthy)
API Changes
***********
* ``CLIUIFactory`` is deprecated; use ``TextUIFactory`` instead if you
need to subclass or create a specific class, or better yet the existing
``make_ui_for_terminal``. ``SilentUIFactory`` is clarified to do no
user interaction at all, rather than trying to read from stdin but not
writing any output, which would be strange if reading prompts or
passwords. (Martin Pool)
* New TransformPreview.commit() allows committing without a working tree.
(Aaron Bentley)
* ``pb`` parameter to ``TextTestResult`` is deprecated and ignored.
(Martin Pool)
* ProgressTasks now prefer to talk direct to their ProgressView not to the
UIFactory.
(Martin Pool)
* ``WorkingTree._check`` now requires a references dict with keys matching
those returned by ``WorkingTree._get_check_refs``. (Robert Collins)
Internals
*********
* ``CHKInventory.path2id`` uses the parent_id to basename hash to avoid
reading the entries along the path, reducing work to lookup ids from
paths. (Robert Collins)
* ``CHKMap.apply_delta`` now raises ``InconsistentDelta`` if a delta adds
as new a key which was already mapped. (Robert Collins)
* Inventory delta application catches more cases of corruption and can
prevent corrupt deltas from affecting consistency of data structures on
disk. (Robert Collins)
* --subunit support now adds timestamps if the subunit version supports
it. (Robert Collins)
* The Windows all-in-one installer now bundles the PyQt image format
plugins, which allows previewing more images as part of 'qdiff'.
(Alexander Belchenko)
Testing
*******
* Merge directive cherrypick tests must use the same root id.
(Martin Pool, #409684)
* Spurious failure in ``check`` tests on rich-root formats fixed.
(Martin Pool, #408199)
* The ``bzrlib.tests.TextTestRunner`` will no longer call
``countTestsCases`` on the test being run. Progress information is
instead handled by having the test passed in call ``result.progress``
before running its contents. This improves the behaviour when using
``TextTestRunner`` with test suites that don't support
``countTestsCases``. (Robert Collins)
..
vim: tw=74 ft=rst ff=unix
|