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.10 |
|
9 |
######## |
|
10 |
||
11 |
:Released: 2008-12-05 |
|
12 |
||
13 |
Bazaar 1.10 has several performance improvements for copying revisions |
|
14 |
(especially for small updates to large projects). There has also been a |
|
15 |
significant amount of effort in polishing stacked branches. The commands |
|
16 |
``shelve`` and ``unshelve`` have become core commands, with an improved |
|
17 |
implementation. |
|
18 |
||
19 |
The only changes versus bzr-1.10rc1 are bugfixes for stacked branches. |
|
20 |
||
21 |
bug Fixes |
|
22 |
********* |
|
23 |
||
24 |
* Don't set a pack write cache size from RepoFetcher, because the |
|
25 |
cache is not coherent with reads and causes ShortReadvErrors. |
|
26 |
This reverses the change that fixed #294479. |
|
27 |
(Martin Pool, #303856) |
|
28 |
||
29 |
* Properly handle when a revision can be inserted as a delta versus |
|
30 |
when it needs to be expanded to a fulltext for stacked branches. |
|
31 |
There was a bug involving merge revisions. As a method to help |
|
32 |
prevent future difficulties, also make stacked fetches sort |
|
33 |
topologically. (John Arbash Meinel, #304841) |
|
34 |
||
35 |
||
36 |
bzr 1.10rc1 |
|
37 |
########### |
|
38 |
||
39 |
:Released: 2008-11-28 |
|
40 |
||
41 |
This release of Bazaar focuses on performance improvements when pushing |
|
42 |
and pulling revisions, both locally and to remote networks. The popular |
|
43 |
``shelve`` and ``unshelve`` commands, used to interactively revert and |
|
44 |
restore work in progress, have been merged from bzrtools into the bzr |
|
45 |
core. There are also bug fixes for portability, and for stacked branches. |
|
46 |
||
47 |
New Features |
|
48 |
************ |
|
49 |
||
50 |
* New ``commit_message_template`` hook that is called by the commit |
|
51 |
code to generate a template commit message. (Jelmer Vernooij) |
|
52 |
||
53 |
* New `shelve` and `unshelve` commands allow undoing and redoing changes. |
|
54 |
(Aaron Bentley) |
|
55 |
||
56 |
Improvements |
|
57 |
************ |
|
58 |
||
59 |
* ``(Remote)Branch.copy_content_into`` no longer generates the full revision |
|
60 |
history just to set the last revision info. |
|
61 |
(Andrew Bennetts, John Arbash Meinel) |
|
62 |
||
63 |
* Fetches between formats with different serializers (such as |
|
64 |
pack-0.92-subtree and 1.9-rich-root) are faster now. This is due to |
|
65 |
operating on batches of 100 revisions at time rather than |
|
66 |
one-by-one. (Andrew Bennetts, John Arbash Meinel) |
|
67 |
||
68 |
* Search index files corresponding to pack files we've already used |
|
69 |
before searching others, because they are more likely to have the |
|
70 |
keys we're looking for. This reduces the number of iix and tix |
|
71 |
files accessed when pushing 1 new revision, for instance. |
|
72 |
(John Arbash Meinel) |
|
73 |
||
74 |
* Signatures to transfer are calculated more efficiently in |
|
75 |
``item_keys_introduced_by``. (Andrew Bennetts, John Arbash Meinel) |
|
76 |
||
77 |
* The generic fetch code can once again copy revisions and signatures |
|
78 |
without extracting them completely to fulltexts and then serializing |
|
79 |
them back down into byte strings. This is a significant performance |
|
80 |
improvement when fetching from a stacked branch. |
|
81 |
(John Arbash Meinel, #300289) |
|
82 |
||
83 |
* When making a large readv() request over ``bzr+ssh``, break up the |
|
84 |
request into more manageable chunks. Because the RPC is not yet able |
|
85 |
to stream, this helps keep us from buffering too much information at |
|
86 |
once. (John Arbash Meinel) |
|
87 |
||
88 |
Bug Fixes |
|
89 |
********* |
|
90 |
||
91 |
* Better message when the user needs to set their Launchpad ID. |
|
92 |
(Martin Pool, #289148) |
|
93 |
||
94 |
* ``bzr commit --local`` doesn't access the master branch anymore. |
|
95 |
This fixes a regression introduced in 1.9. (Marius Kruger, #299313) |
|
96 |
||
97 |
* Don't call the system ``chdir()`` with an empty path. Sun OS seems |
|
98 |
to give an error in that case. Also, don't count on ``getcwd()`` |
|
99 |
being able to allocate a new buffer, which is a gnu extension. |
|
100 |
(John Arbash Meinel, Martin Pool, Harry Hirsch, #297831) |
|
101 |
||
102 |
* Don't crash when requesting log --forward <file> for a revision range |
|
103 |
starting with a dotted revno. |
|
104 |
(Vincent Ladeuil, #300055) |
|
105 |
||
106 |
* Don't create text deltas spanning stacked repositories; this could |
|
107 |
cause "Revision X not present in Y" when later accessing them. |
|
108 |
(Martin Pool, #288751) |
|
109 |
||
110 |
* Pack repositories are now able to reload the pack listing and retry |
|
111 |
the current operation if another action causes the data to be |
|
112 |
repacked. (John Arbash Meinel, #153786) |
|
113 |
||
114 |
* PermissionDenied errors from smart servers no longer cause |
|
115 |
"PermissionDenied: "None"" on the client. |
|
116 |
(Andrew Bennetts, #299254) |
|
117 |
||
118 |
* Pushing to a stacked pack repository now batches writes, the same |
|
119 |
way writes are batched to ordinary pack repository. This makes |
|
120 |
pushing to a stacked branch over the network much faster. |
|
121 |
(Andrew Bennetts, #294479) |
|
122 |
||
123 |
* TooManyConcurrentRequests no longer occur when a fetch fails and |
|
124 |
tries to abort a write group. This allows the root cause (e.g. a |
|
125 |
network interruption) to be reported. (Andrew Bennetts, #297014) |
|
126 |
||
127 |
* RemoteRepository.get_parent_map now uses fallback repositories. |
|
128 |
(Aaron Bentley, #297991?, #293679?) |
|
129 |
||
130 |
API Changes |
|
131 |
*********** |
|
132 |
||
133 |
* ``CommitBuilder`` now validates the strings it will be committing, |
|
134 |
to ensure that they do not have characters that will not be properly |
|
135 |
round-tripped. For now, it just checks for characters that are |
|
136 |
invalid in the XML form. (John Arbash Meinel, #295161) |
|
137 |
||
138 |
* Constructor parameters for NewPack (internal to pack repositories) |
|
139 |
have changed incompatibly. |
|
140 |
||
141 |
* ``Repository.abort_write_group`` now accepts an optional |
|
142 |
``suppress_errors`` flag. Repository implementations that override |
|
143 |
``abort_write_group`` will need to be updated to accept the new |
|
144 |
argument. Subclasses that only override ``_abort_write_group`` |
|
145 |
don't need to change. |
|
146 |
||
147 |
* Transport implementations must provide copy_tree_to_transport. A default |
|
148 |
implementation is provided for Transport subclasses. |
|
149 |
||
150 |
Testing |
|
151 |
******* |
|
152 |
||
153 |
* ``bzr selftest`` now fails if no doctests are found in a module |
|
154 |
that's expected to have them. (Martin Pool) |
|
155 |
||
156 |
* Doctests now only report the first failure. (Martin Pool) |
|
157 |
||
158 |
||
159 |
.. |
|
160 |
vim: tw=74 ft=rst ff=unix |