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