Merge lp:~mbp/bzr/doc-old into lp:~bzr/bzr/trunk-old

Proposed by Martin Pool on 2009-03-03
Status: Merged
Merged at revision: not available
Proposed branch: lp:~mbp/bzr/doc-old
Merge into: lp:~bzr/bzr/trunk-old
Diff against target: 16815 lines
To merge this branch: bzr merge lp:~mbp/bzr/doc-old
Reviewer Review Type Date Requested Status
Bazaar Developers 2009-03-03 Pending
Review via email: mp+4088@code.launchpad.net
To post a comment you must log in.
Martin Pool (mbp) wrote :

This fixes a typo in the NEWS file and adds a note to maintain the bzr.current branch when releasing.

lp:~mbp/bzr/doc-old updated on 2009-03-19
4071. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-03

(mbp) documentation on ec2 build host

4072. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-03

(mbp) hpss streaming design docs

4073. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-03

(mbp) remove obsolete EmptyTree class

4074. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-03

(mbp) be more robust in warnings about progressbar usage

4075. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-03

(robertc) Create new server verb BzrDir.cloning_metadir and alter
 Branch.sprout to prevent race conditions during stacked
 branching. (Robert Collins, Andrew Bennetts)

4076. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-04

(Jelmer) Add Branch.import_last_revision_info().

4077. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-04

(James) Support multiple authors for revisions.

4078. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-04

(vila) Support MH-E in EmacsMail, using mml.

4079. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-05

(robertc) Add put_bytes_non_atomic and rmdir to the trace+ transport
 decorator. (Robert Collins)

4080. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-05

Small improvement to write buffering of HPSS v3 messages. (Andrew
 Bennetts)

4081. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-05

(mbp) add gnu-changelog log format

4082. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-05

(Kent Gibson) Downgrade message that transport cannot update working
 tree from warning to note.

4083. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-05

(andrew) Skip less Remote* tests in test_bzrdir,
 and fix cloning_metadir RPC to work with branch references.

4084. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-06

(robertc) Reduce noise from 'add';
 register factories not instances for network_names;
 add Branch.get_parent RPC.

4085. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-06

'Organizing your workspace' section added to User Guide (Ian
 Clatworthy)

4086. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-06

(mbp) debug_flags configuration option

4087. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-06

(robertc, andrew) Add Branch.get_tags_dict RPC;
 Add optional 'fetch_spec' argument to Repository.fetch.

4088. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-06

(jam, bialix) A few small updates, progress bar fix, setup.py fix

4089. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-08

(robertc) Log all the missing keys when a pack->pack copying
 operation fails due to missing keys. (Robert Collins)

4090. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-08

(robertc) Add clarifying comments to check.py. (Robert Collins)

4091. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-08

(andrew) Fix trivial bug in workaround of pdb.post_mortem bug.

4092. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-09

(Aguilar) Fail quickly when there are local changes.

4093. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-09

(robertc) Remove an overly noisy mutter. (Robert Collins)

4094. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-09

compare types with is not '=' (Benjamin Peterson)

4095. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-09

(abentley) Clean up unshelve progress warnings.

4096. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-09

(abentley) Update NEWS for bug #328148

4097. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-09

(andrew) Add some medium._remember_is_before((1, 13)) calls.

4098. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-09

(robertc) Bulk update all test adaptation into a single approach
 using multiply_tests rather than many varied test adapters.
 (Robert Collins

4099. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(mbp) better OSErrors from _readdir_pyx

4100. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(abentley, jelmer) Add clean-tree command.

4101. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(mbp) Better help for bzr send

4102. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(robertc) Refactor profiling exception handling support to clear
 layers up and provide the same support for coverage and
 non-lsprof profiling. (Robert Collins)

4103. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(andrew) Fix a bug with how PendingAncestryResult.get_keys handles
 NULL_REVISION.

4104. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(robertc) Allow Hooks to be self documenting. (Robert Collins)

4105. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(andrew) Report network activity for bzr+ssh:// and bzr://
 connections.

4106. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(andrew) Clean-up _ReportingSocket.send/sendall slightly.

4107. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(jamesw) Explicitly list aliases as commands that can be run in the
 man page.

4108. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-10

(robertc) Set supports_ghosts flag appropriately for packs. (Robert
 Collins)

4109. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(jamesw) Improve the help topic and errors around --fixes.

4110. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(robertc) Factor branch scenario generation out of branch test
 loading. (Michael Hudson)

4111. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(mbp) code cleanups and SmartSSHClientMedium repr

4112. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(abentley) Disable auto-detection of tree references.

4113. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(andrew) Fix false 'does not support stacking' warning when pushing
 via HPSS.

4114. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(mbp) SSHSmartClientStreamMedium repr and better LockContention
 message

4115. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(Jonathan Lange) Don't escape tildes in URLs.

4116. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(robertc) Turn test_coding_style into a KnownFailure until it gets
 fixed as per the list. (Robert Collins)

4117. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(robertc) Handle inconsistent inventories in fetch more robustly.
 (Robert Collins)

4118. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-11

(robertc) Trivially add the class name as a header before the
 HookPoint docs in Hooks.docs(). (Tobert Collins)

4119. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(robertc) Add a groupcompress sort order for get_record_stream.
 (Robert Collins, John Arbash Meinel)

4120. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(Jelmer) Add simple script for checking that all bugs in NEWS are
 closed in lp.

4121. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(Michael Hudson) Remove __del__ from LockableFiles.

4122. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(jam) Add a nostore_sha tests for VF implementations.

4123. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(mbp) small progress improvements

4124. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

Merge 1.13 back to trunk,
 and move new things in bzr.dev to top of NEWS.

4125. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(bpierre, abentley) Fix cleanup when unversioned files specified.

4126. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(mbp) Python2.6 dislikes the attribute name Exception.message

4127. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(abentley) shelve now supports --destroy option.

4128. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(bialix) Fixed problem with `log -p` and non-ascii content of files

4129. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(andrew) Fix bug when pushing stackable branch in unstackable repo to
 default-stacking target.

4130. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(abentley) bzr send accepts --body

4131. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

check for duplicate file-ids in Inventory.apply_delta (Ian Clatworthy)

4132. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(vila) Trivial cleanups

4133. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(robertc) Migrate all hooks into the HookPoint infrastructure.
 (Robert Collins)

4134. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(robertc) Add Revision.iter_bugs() method for getting bugs fixed by a
 revision. (Jonathan Lange)

4135. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(vila) cat use old file id if current one is not found is requested
 revision

4136. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(vila) Fix fragile test

4137. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-12

(Jelmer) Split up PushResult.

4138. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-13

(kikuyo) Small improvements to the GNU ChangeLog formatter.

4139. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-13

(jamesw) Move the shelve docs from bzrtools to the main help.

4140. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-13

(mbp) integrated small fixes

4141. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-13

(jamesw) Shelve now supports shelving changes to symlink targets.

4142. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-13

(andrew) Fix performance regression (many small round-trips) when
 pushing to a remote pack, and improve some tests.

4143. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-13

(vila) Restore the test that the OSError exception raised from
 walkdirs includes the file the error occured on in its str()

4144. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-13

(mbp) fetch progress bars, code cleanups, and debug-flags topic

4145. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-16

(robertc) New assertLength method based on one Martin has squirreled
 away somewhere. (Robert Collins, Martin Pool)

4146. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-16

(robertc) Fix a regression in merge where --force was ignored.
 (Robert Collins)

4147. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-16

(andrew) Always batch in _walk_to_common_revisions,
 rather than special-casing RemoteRepository.

4148. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-16

(andrew) Add RPC that can insert a stream into older (i.e. lockable)
 repository formats.

4149. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-16

(robertc) Add a new repository method refresh_data to allow clean
 handling of _real_repositories after inserting a stream via the
 smart server. (Robert Collins, Andrew Bennetts)

4150. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-16

(vila,
 jfroy) Provides all request parameters to authentication providers

4151. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-16

faster check (Ian Clatworthy)

4152. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-17

(mbp) small doc corrections

4153. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-17

(andrew) Remove InterRemoteToOther and InterOtherToRemote.

4154. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-17

(andrew) Remove InterPackToRemotePack too.

4155. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-17

(andrew) Fail tests that subclass bzrlib.tests.TestCase but don't use
 its setUp/tearDown.

4156. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-17

(robertc) Add client-side streaming from stacked branches (over
 bzr:// protocols) when the sort order is compatible with doing
 that. (Robert Collins, Andrew Bennetts)

4157. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-17

(vila) Trivial spelling correction to "bzr missing" documentation

4158. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-17

--usage option (Ian Clatworthy)

4159. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-18

faster send on deep histories (Ian Clatworthy)

4160. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-18

(mbp) merge back 1.13final to trunk

4161. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-18

make sha1_provider a parameter to DirState()

4162. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-18

(robertc) Add BzrDir.pre_open hook for eventual use by the smart
 server. (Robert Collins, Andrew Bennetts)

4163. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-18

(tanner) [merge] Release manager 1.13 additions to releasing.txt

4164. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-18

(Jelmer) Add default-rich-root format alias.

4165. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-19

(mbp) reformat NEWS into better ReST etc

4166. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-19

(mbp,trivial) fix broken html links

4167. By Canonical.com Patch Queue Manager <email address hidden> on 2009-03-19

(tanner) Added explicit instructions to check ./bzr _script_version
 and ./bzrlib/__init__.py version_info to the releasing documentation.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'NEWS'
2--- NEWS 2009-03-18 15:38:56 +0000
3+++ NEWS 2009-03-19 05:35:11 +0000
4@@ -1,482 +1,507 @@
5---------------------
6+====================
7 Bazaar Release Notes
8---------------------
9-
10-.. contents::
11-
12-
13-IN DEVELOPMENT
14---------------
15-
16- COMPATIBILITY BREAKS:
17-
18- * bzr no longer autodetects nested trees as 'tree-references'. They
19- must now be explicitly added tree references. At the commandline, use
20- join --reference instead of add. (Aaron Bentley)
21-
22- NEW FEATURES:
23-
24- * shelve can now apply changes without storing anything on the shelf, via
25- the new --destroy option. (Aaron Bentley)
26-
27- * ``bzr send`` now accepts --body to specify an initial message body.
28- (Aaron bentley)
29-
30- * ``bzr xxx --usage`` where xxx is a command now shows a usage
31- message and the options without the descriptive help sections
32- (like Description and Examples). A message is also given
33- explaining how to see the complete help, i.e. ``bzr help xxx``.
34- (Ian Clatworthy)
35-
36- IMPROVEMENTS:
37-
38- * A new format name alias ``default-rich-root`` has been added and
39- points at the closest relative of the default format that supports
40- rich roots. (Jelmer Vernooij, #338061)
41-
42- * Branching from a stacked branch using ``bzr*://`` will now stream
43- the data when the target repository does not need topological
44- ordering, reducing round trips and network overhead. This uses the
45- existing smart server methods added in 1.13, so will work on any
46- 1.13 or newer server. (Robert Collins, Andrew Bennetts)
47-
48- * ``bzr ignore`` gives a more informative message when existing
49- version controlled files match the ignore pattern. (Neil
50- Martinsen-Burrell, #248895)
51-
52- * ``bzr send`` is faster on repositories with deep histories.
53- (Ian Clatworthy)
54-
55- * Progress bars now show the rate of network activity for
56- ``bzr+ssh://`` and ``bzr://`` connections. (Andrew Bennetts)
57-
58- * Streaming push can be done to older repository formats. This is
59- implemented using a new ``Repository.insert_stream_locked`` RPC.
60- (Andrew Bennetts, Robert Collins)
61-
62- * Tildes are no longer escaped. No more %7Euser/project/branch!
63- (Jonathan Lange)
64-
65- BUG FIXES:
66-
67- * Authentication plugins now receive all the parameters from the request
68- itself (aka host, port, realm, path, etc). Previously, only the
69- authentication section name, username and encoded password were
70- provided. (Jean-Francois Roy)
71-
72- * Fix "is not a stackable format" error when pushing a
73- stackable-format branch with an unstackable-format repository to a
74- destination with a default stacking policy. (Andrew Bennetts)
75-
76- * Fixed incorrect "Source format does not support stacking" warning
77- when pushing to a smart server. (Andrew Bennetts, #334114)
78-
79- * It is no longer possible to fetch between repositories while the
80- target repository is in a write group. This prevents race conditions
81- that prevent the use of RPC's to perform fetch, and thus allows
82- optimising more operations. (Robert Collins, Andrew Bennetts)
83-
84- * ``merge --force`` works again. (Robert Collins, #342105)
85-
86- * The GNU Changelog formatter is slightly improved in the case where
87- the delta is empty, and now correctly claims not to support tags.
88- (Andrea Bolognani)
89-
90- * Shelve can now shelve changes to a symlink target.
91- (James Westby, #341558)
92-
93- DOCUMENTATION:
94-
95- * New topic `bzr help debug-flags`. (Martin Pool)
96-
97- * The generated manpage now explicitly lists aliases as commands.
98- (James Westby, #336998)
99-
100- API CHANGES:
101-
102- * New sort order for ``get_record_stream`` ``groupcompress`` which
103- sorts optimally for use with groupcompress compressors. (John Arbash
104- Meinel, Robert Collins)
105-
106- * The ``get_credentials`` and ``set_credentials`` methods of
107- ``AuthenticationConfig`` now accept an optional realm argument.
108- (Jean-Francois Roy)
109-
110- * The ``pb`` argument to ``fetch()`` is deprecated.
111- (Martin Pool)
112-
113- TESTING:
114-
115- * ``bzrlib.tests.TestCase`` now fails the test if its own ``setUp``
116- and ``tearDown`` weren't called. This catches faulty tests that
117- forget to upcall when overriding ``setUp`` and ``tearDown``. Those
118- faulty tests were not properly isolated.
119- (Andrew Bennetts, Robert Collins)
120-
121- INTERNALS:
122-
123- * ``DirState`` can now be passed a custom ``SHA1Provider`` object
124- enabling it to store the sha1 and stat of the canonical (post
125- content filtered) form. (Ian Clatworthy)
126-
127- * New ``assertLength`` method based on one Martin has squirreled away
128- somewhere. (Robert Collins, Martin Pool)
129-
130- * New hook ``BzrDir.pre_open`` which runs before opening ``BzrDir``
131- objects, allowing better enforcement of the smart server jail when
132- dealing with stacked branches. (Robert Collins, Andrew Bennetts)
133-
134- * New repository method ``refresh_data`` to cause any repository to
135- make visible data inserted into the repository by a smart server
136- fetch operation. (Robert Collins, Andrew Bennetts)
137-
138- * Removed ``InterRemoteToOther``, ``InterOtherToRemote`` and
139- ``InterPackToRemotePack`` classes, as they are now unnecessary.
140- (Andrew Bennetts)
141-
142- * ``_walk_to_common_revisions`` will now batch up at least 50
143- revisions before calling ``get_parent_map`` on the target,
144- regardless of ``InterRepository``.
145- (Andrew Bennetts, Robert Collins)
146-
147-
148-bzr 1.13 "paraskavedekatriaphobia" 2009-03-14
149----------------------------------------------
150+====================
151+
152+
153+.. contents:: List of Releases
154+ :depth: 1
155+
156+In Development
157+##############
158+
159+Compatibility Breaks
160+********************
161+
162+* bzr no longer autodetects nested trees as 'tree-references'. They
163+ must now be explicitly added tree references. At the commandline, use
164+ join --reference instead of add. (Aaron Bentley)
165+
166+New Features
167+************
168+
169+* ``bzr shelve`` can now apply changes without storing anything on the
170+ shelf, via the new --destroy option. (Aaron Bentley)
171+
172+* ``bzr send`` now accepts --body to specify an initial message body.
173+ (Aaron bentley)
174+
175+* ``bzr xxx --usage`` where xxx is a command now shows a usage
176+ message and the options without the descriptive help sections
177+ (like Description and Examples). A message is also given
178+ explaining how to see the complete help, i.e. ``bzr help xxx``.
179+ (Ian Clatworthy)
180+
181+Improvements
182+************
183+
184+* A new format name alias ``default-rich-root`` has been added and
185+ points at the closest relative of the default format that supports
186+ rich roots. (Jelmer Vernooij, #338061)
187+
188+* Branching from a stacked branch using ``bzr*://`` will now stream
189+ the data when the target repository does not need topological
190+ ordering, reducing round trips and network overhead. This uses the
191+ existing smart server methods added in 1.13, so will work on any
192+ 1.13 or newer server. (Robert Collins, Andrew Bennetts)
193+
194+* ``bzr ignore`` gives a more informative message when existing
195+ version controlled files match the ignore pattern. (Neil
196+ Martinsen-Burrell, #248895)
197+
198+* ``bzr send`` is faster on repositories with deep histories.
199+ (Ian Clatworthy)
200+
201+* Progress bars now show the rate of network activity for
202+ ``bzr+ssh://`` and ``bzr://`` connections. (Andrew Bennetts)
203+
204+* Streaming push can be done to older repository formats. This is
205+ implemented using a new ``Repository.insert_stream_locked`` RPC.
206+ (Andrew Bennetts, Robert Collins)
207+
208+* Tildes are no longer escaped. No more %7Euser/project/branch!
209+ (Jonathan Lange)
210+
211+Bug Fixes
212+*********
213+
214+* Authentication plugins now receive all the parameters from the request
215+ itself (aka host, port, realm, path, etc). Previously, only the
216+ authentication section name, username and encoded password were
217+ provided. (Jean-Francois Roy)
218+
219+* Fix "is not a stackable format" error when pushing a
220+ stackable-format branch with an unstackable-format repository to a
221+ destination with a default stacking policy. (Andrew Bennetts)
222+
223+* Fixed incorrect "Source format does not support stacking" warning
224+ when pushing to a smart server. (Andrew Bennetts, #334114)
225+
226+* It is no longer possible to fetch between repositories while the
227+ target repository is in a write group. This prevents race conditions
228+ that prevent the use of RPC's to perform fetch, and thus allows
229+ optimising more operations. (Robert Collins, Andrew Bennetts)
230+
231+* ``merge --force`` works again. (Robert Collins, #342105)
232+
233+* The GNU Changelog formatter is slightly improved in the case where
234+ the delta is empty, and now correctly claims not to support tags.
235+ (Andrea Bolognani)
236+
237+* Shelve can now shelve changes to a symlink target.
238+ (James Westby, #341558)
239+
240+Documentation
241+*************
242+
243+* New topic `bzr help debug-flags`. (Martin Pool)
244+
245+* The generated manpage now explicitly lists aliases as commands.
246+ (James Westby, #336998)
247+
248+API Changes
249+***********
250+
251+* New sort order for ``get_record_stream`` ``groupcompress`` which
252+ sorts optimally for use with groupcompress compressors. (John Arbash
253+ Meinel, Robert Collins)
254+
255+* The ``get_credentials`` and ``set_credentials`` methods of
256+ ``AuthenticationConfig`` now accept an optional realm argument.
257+ (Jean-Francois Roy)
258+
259+* The ``pb`` argument to ``fetch()`` is deprecated.
260+ (Martin Pool)
261+
262+Testing
263+*******
264+
265+* ``bzrlib.tests.TestCase`` now fails the test if its own ``setUp``
266+ and ``tearDown`` weren't called. This catches faulty tests that
267+ forget to upcall when overriding ``setUp`` and ``tearDown``. Those
268+ faulty tests were not properly isolated.
269+ (Andrew Bennetts, Robert Collins)
270+
271+Internals
272+*********
273+
274+* ``DirState`` can now be passed a custom ``SHA1Provider`` object
275+ enabling it to store the SHA1 and stat of the canonical (post
276+ content filtered) form. (Ian Clatworthy)
277+
278+* New ``assertLength`` method based on one Martin has squirreled away
279+ somewhere. (Robert Collins, Martin Pool)
280+
281+* New hook ``BzrDir.pre_open`` which runs before opening ``BzrDir``
282+ objects, allowing better enforcement of the smart server jail when
283+ dealing with stacked branches. (Robert Collins, Andrew Bennetts)
284+
285+* New repository method ``refresh_data`` to cause any repository to
286+ make visible data inserted into the repository by a smart server
287+ fetch operation. (Robert Collins, Andrew Bennetts)
288+
289+* Removed ``InterRemoteToOther``, ``InterOtherToRemote`` and
290+ ``InterPackToRemotePack`` classes, as they are now unnecessary.
291+ (Andrew Bennetts)
292+
293+* ``_walk_to_common_revisions`` will now batch up at least 50
294+ revisions before calling ``get_parent_map`` on the target,
295+ regardless of ``InterRepository``.
296+ (Andrew Bennetts, Robert Collins)
297+
298+
299+bzr 1.13
300+########
301+
302+:Codename: paraskavedekatriaphobia
303+:1.13: 2009-03-14
304+:1.13rc1: 2009-03-10
305
306 This release includes bug fixes and a few performance and feature improvements.
307-GNU Changelog output can now be produced by ``bzr log --gnu-changelog``. Debug
308-flags can now be set in ``~/.bazaar/bazaar.conf``. Lightweight Checkouts and
309-Stacked Branches should both be much faster over remote connections.
310-
311- CHANGES FROM bzr 1.13rc1 2009-03-10:
312-
313- * Fix "is not a stackable format" error when pushing a
314- stackable-format branch with an unstackable-format repository to a
315- destination with a default stacking policy. (Andrew Bennetts)
316-
317- * Progress bars now show the rate of network activity for
318- ``bzr+ssh://`` and ``bzr://`` connections. (Andrew Bennetts)
319-
320- COMPATIBILITY BREAKS:
321-
322- * ``bzr log --line`` now indicates which revisions are merges with
323- `[merge]` after the date. Scripts which parse the output of this
324- command may need to be adjusted.
325- (Neil Martinsen-Burrell)
326-
327- NEW FEATURES:
328-
329- * ``bzr reconfigure`` now supports --with-trees and --with-no-trees
330- options to change the default tree-creation policy of shared
331- repositories. (Matthew Fuller, Marius Kruger, #145033)
332-
333- * Debug flags can now be set in ``~/.bazaar/bazaar.conf``.
334- (Martin Pool)
335-
336- * Filtered views provide a mask over the tree so that users can focus
337- on a subset of a tree when doing their work. See ``Filtered views``
338- in chapter 7 of the User Guide and ``bzr help view`` for details.
339- (Ian Clatworthy)
340-
341- * GNU Changelog output can now be produced by ``bzr log --gnu-changelog``.
342- (Andrea Bolognani, Martin Pool)
343-
344- * The ``-Dmemory`` flag now gives memory information on Windows.
345- (John Arbash Meinel)
346-
347- * Multiple authors for a commit can now be recorded by using the "--author"
348- option multiple times. (James Westby, #185772)
349-
350- * New clean-tree command, from bzrtools. (Aaron Bentley, Jelmer Vernoij)
351-
352- * New command ``bzr launchpad-open`` opens a Launchpad web page for that
353- branch in your web browser, as long as the branch is on Launchpad at all.
354- (Jonathan Lange)
355-
356- * New API for getting bugs fixed by a revision: Revision.iter_bugs().
357- (Jonathan Lange)
358-
359- IMPROVEMENTS:
360-
361- * All bzr ``Hooks`` classes are now registered in
362- ``bzrlib.hooks.known_hooks``. This removes the separate list from
363- ``bzrlib.tests`` and ensures that all hooks registered there are
364- correctly isolated by the test suite (previously
365- ``MutableTreeHooks`` were not being isolated correctly). Further,
366- documentation for hooks is now dynamically generated from the
367- present HookPoints. ``bzr hooks`` will now also report on all the
368- hooks present in the ``bzrlib.hooks.known_hooks`` registry.
369- (Robert Collins)
370-
371- * ``bzr add`` no longer prints ``add completed`` on success. Failure
372- still prints an error message. (Robert Collins)
373-
374- * ``bzr branch`` now has a ``--no-tree`` option which turns off the
375- generation of a working tree in the new branch.
376- (Daniel Watkins, John Klinger, #273993)
377-
378- * Bazaar will now point out ``bzr+ssh://`` to the user when they
379- use ssh://. (Jelmer Vernooij, #330535)
380-
381- * ``bzr -v info`` now omits the number of committers branch statistic,
382- making it many times faster for large projects. To include that
383- statistic in the output, use ``bzr -vv info``.
384- (Ian Clatworthy)
385-
386- * ``bzr push`` to a ``bzr`` url (``bzr://``, ``bzr+ssh://`` etc) will
387- stream if the server is version 1.13 or greater, reducing roundtrips
388- significantly. (Andrew Bennetts, Robert Collins)
389-
390- * Lightweight Checkouts and Stacked Branches should both be much
391- faster over remote connections. Building the working tree now
392- batches up requests into approx 5MB requests, rather than a separate
393- request for each file. (John Arbash Meinel)
394-
395- * Support for GSSAPI authentication when using HTTP or HTTPS.
396- (Jelmer Vernooij)
397-
398- * The ``bzr shelve`` prompt now includes a '?' help option to explain the
399- short options better. (Daniel Watkins, #327429)
400-
401- * ``bzr lp-open`` now falls back to the push location if it cannot find a
402- public location. (Jonathan Lange, #332372)
403-
404- * ``bzr lp-open`` will try to find the Launchpad URL for the location
405- passed on the command line. This makes ``bzr lp-open lp:foo`` work as
406- expected. (Jonathan Lange, #332705)
407-
408- * ``bzr send`` now supports MH-E via ``emacsclient``. (Eric Gillespie)
409-
410- BUG FIXES:
411-
412- * Bazaar now gives a better message including the filename if it's
413- unable to read a file in the working directory, for example because
414- of a permission error. (Martin Pool, #338653)
415-
416- * ``bzr cat -r<old> <path>`` doesn't traceback anymore when <path> has a
417- file id in the working tree different from the one in revision <old>.
418- (Vincent Ladeuil, #341517, #253806)
419-
420- * ``bzr send`` help is more specific about how to apply merge
421- directives. (Neil Martinsen-Burrell, #253470)
422-
423- * ``bzr missing`` now uses ``Repository.get_revision_delta()`` rather
424- than fetching trees and determining a delta itself. (Jelmer
425- Vernooij, #315048)
426-
427- * ``bzr push`` to a smart server no longer causes "Revision
428- {set([('null:',)])} not present ..." errors when the branch has
429- multiple root revisions. (Andrew Bennetts, #317654)
430-
431- * ``bzr shelve`` now properly handle patches with no terminating newline.
432- (Benoît PIERRE, #303569)
433-
434- * ``bzr unshelve`` gives a more palatable error if passed a non-integer
435- shelf id. (Daniel Watkins)
436-
437- * Export now handles files that are not present in the tree.
438- (James Westby, #174539)
439-
440- * Fixed incorrect "Source format does not support stacking" warning
441- when pushing to a smart server. (Andrew Bennetts, #334114)
442-
443- * Fixed "sprout() got an unexpected keyword argument 'source_branch'"
444- error branching from old repositories.
445- (Martin Pool, #321695)
446-
447- * Make ``bzr push --quiet <non-local location>`` less chatty.
448- (Kent Gibson, #221461)
449-
450- * Many Branch hooks would not fire with ``bzr://`` and ``bzr+ssh://``
451- branches, and this was not noticed due to a bug in the test logic
452- for branches. This is now fixed and a test added to prevent it
453- reoccuring. (Robert Collins, Andrew Bennetts)
454-
455- * Restore the progress bar on Windows. We were disabling it when TERM
456- wasn't set, but Windows doesn't set TERM. (Alexander Belchenko)
457-
458- * ``setup.py build_ext`` now gives a proper error when an extension
459- fails to build. (John Arbash Meinel)
460-
461- * Symlinks to non ascii file names are now supported.
462- (Robert Collins, Vincent Ladeuil, #339055, #272444)
463-
464- * Under rare circumstances (aka nobody reported a bug about it), the ftp
465- transport could revert to ascii mode. It now stays in binary mode except
466- when needed.
467- (Vincent Ladeuil)
468-
469- * Unshelve does not generate warnings about progress bars.
470- (Aaron Bentley, #328148)
471-
472- * shelve cleans up properly when unversioned files are specified.
473- (Benoît Pierre, Aaron Bentley)
474-
475- DOCUMENTATION:
476-
477- * Added ``Organizing your workspace`` to the User Guide appendices,
478- summarizing some common ways of organizing trees, branches and
479- repositories and the processes/workflows implied/enabled by each.
480- (Ian Clatworthy)
481-
482- * Hooks can now be self documenting. ``bzrlib.hooks.Hooks.create_hook``
483- is the entry point for this feature. (Robert Collins)
484-
485- * The documentation for ``shelve`` and ``unshelve`` has been clarified.
486- (Daniel Watkins, #327421, #327425)
487-
488- API CHANGES:
489-
490- * ``bzr selftest`` now fails if the bazaar sources contain trailing
491- whitespace, non-unix style line endings and files not ending in a
492- newline. About 372 files and 3243 lines with trailing whitespace was
493- updated to comply with this. The code already complied with the other
494- criteria, but now it is enforced. (Marius Kruger)
495-
496- ``bzrlib.branch.PushResult`` was renamed to
497- ``bzrlib.branch.BranchPushResult``. (Jelmer Vernooij)
498-
499- * ``Branch.fetch`` and ``Repository.fetch`` now return None rather
500- than a count of copied revisions and failed revisions. A while back
501- we stopped ever reporting failed revisions because we started
502- erroring instead, and the copied revisions count is not used in the
503- UI at all - indeed it only reflects the repository status not
504- changes to the branch itself. (Robert Collins)
505-
506- * ``Inventory.apply_delta`` now raises an AssertionError if a file-id
507- appears multiple times within the delta. (Ian Clatworthy)
508-
509- * MutableTree.commit now favours the "authors" argument, with the old
510- "author" argument being deprecated.
511-
512- * Remove deprecated EmptyTree. (Martin Pool)
513-
514- * ``Repository.fetch`` now accepts an optional ``fetch_spec``
515- parameter. A ``SearchResult`` or ``MiniSearchResult`` may be passed
516- to ``fetch_spec`` instead of a ``last_revision`` to specify exactly
517- which revisions to fetch. (Andrew Bennetts)
518-
519- * ``RepositoryAcquisitionPolicy.acquire_repository`` now returns a
520- tuple of ``(repository, is_new_flag)``, rather than just the
521- repository. (Andrew Bennetts)
522-
523- * Revision.get_apparent_author() is now deprecated, replaced by
524- Revision.get_apparent_authors(), which returns a list. The former
525- now returns the first item that would be returned from the second.
526-
527- * The ``BranchBuilder`` test helper now accepts a ``timestamp``
528- parameter to ``build_commit`` and ``build_snapshot``. (Martin Pool)
529-
530- * The ``_fetch_*`` attributes on ``Repository`` are now on
531- ``RepositoryFormat``, more accurately reflecting their intent (they
532- describe a disk format capability, not state of a particular
533- repository of that format). (Robert Collins)
534-
535- INTERNALS:
536-
537- * Branching from a non-stacked branch on a smart protocol is now
538- free of virtual file system methods.
539- (Robert Collins, Andrew Bennetts)
540-
541- * Branch and Repository creation on a bzr+ssh://server are now done
542- via RPC calls rather than VFS calls, reducing round trips for
543- pushing new branches substantially. (Robert Collins)
544-
545- * ``Branch.clone`` now takes the ``repository_policy`` formerly used
546- inside ``BzrDir.clone_on_transport``, allowing stacking to be
547- configured before the branch tags and revision tip are set. This
548- fixes a race condition cloning stacked branches that would cause
549- plugins to have hooks called on non-stacked instances.
550- (Robert Collins, #334187)
551-
552- * ``BzrDir.cloning_metadir`` now has a RPC call. (Robert Collins)
553-
554- * ``BzrDirFormat.__str__`` now uses the human readable description
555- rather than the sometimes-absent disk label. (Robert Collins)
556-
557- * ``bzrlib.fetch`` is now composed of a sender and a sink component
558- allowing for decoupling over a network connection. Fetching from
559- or into a RemoteRepository with a 1.13 server will use this to
560- stream the operation.
561- (Andrew Bennetts, Robert Collins)
562-
563- * ``bzrlib.tests.run_suite`` accepts a runner_class parameter
564- supporting the use of different runners. (Robert Collins)
565-
566- * Change how file_ids and revision_ids are interned as part of
567- inventory deserialization. Now we use the real ``intern()``, rather
568- than our own workaround that would also cache a Unicode copy of the
569- string, and never emptied the cache. This should slightly reduce
570- memory consumption. (John Arbash Meinel)
571-
572- * New branch method ``create_clone_on_transport`` that returns a
573- branch object. (Robert Collins)
574-
575- * New hook Commands['extend_command'] to allow plugins to access a
576- command object before the command is run (or help generated from
577- it), without overriding the command. (Robert Collins)
578-
579- * New version of the ``BzrDir.find_repository`` verb supporting
580- ``_network_name`` to support removing more _ensure_real calls.
581- (Robert Collins)
582-
583- * ``RemoteBranchFormat`` no longer claims to have a disk format string.
584- (Robert Collins)
585-
586- * ``Repository`` objects now have ``suspend_write_group`` and
587- ``resume_write_group`` methods. These are currently only useful
588- with pack repositories. (Andrew Bennetts, Robert Collins)
589-
590- * ``BzrDirFormat``, ``BranchFormat`` and ``RepositoryFormat`` objects
591- now have a ``network_name`` for passing the format across RPC calls.
592- (Robert Collins, Andrew Bennetts)
593-
594- * ``RepositoryFormat`` objects now all have a new attribute
595- ``_serializer`` used by fetch when reserialising is required.
596- (Robert Collins, Andrew Bennetts)
597-
598- * Some methods have been pulled up from ``BzrBranch`` to ``Branch``
599- to aid branch types that are not bzr branch objects (like
600- RemoteBranch). (Robert Collins, Andrew Bennetts)
601-
602- * Test adaptation has been made consistent throughout the built in
603- tests. ``TestScenarioApplier``, ``multiply_tests_from_modules``,
604- ``adapt_tests``, ``adapt_modules`` have all been deleted. Please
605- use ``multiply_tests``, or for lower level needs ``apply_scenarios``
606- and ``apply_scenario``. (Robert Collins)
607-
608- * ``TestSkipped`` is now detected by TestCase and passed to the
609- ``TestResult`` by calling ``addSkip``. For older TestResult objects,
610- where ``addSkip`` is not available, ``addError`` is still called.
611- This permits test filtering in subunit to strip out skipped tests
612- resulting in a faster fix-shrink-list-run cycle. This is compatible
613- with the testtools protocol for skips. (Robert Collins)
614-
615- * The ``_index`` of ``KnitVersionedFiles`` now supports the ability
616- to scan an underlying index that is going to be incorporated into
617- the ``KnitVersionedFiles`` object, to determine if it has missing
618- delta references. The method is ``scan_unvalidated_index``.
619- (Andrew Bennetts, Robert Collins)
620-
621- * There is a RemoteSink object which handles pushing to smart servers.
622- (Andrew Bennetts, Robert Collins)
623-
624- * ``TransportTraceDecorator`` now logs ``put_bytes_non_atomic`` and
625- ``rmdir`` calls. (Robert Collins)
626-
627- * ``VersionedFiles`` record adapters have had their signature change
628- from ``(record, record.get_bytes_as(record.storage_kind))`` to
629- ``(record)`` reducing excess duplication and allowing adapters
630- to access private data in record to obtain content more
631- efficiently. (Robert Collins)
632-
633- * We no longer probe to see if we should create a working tree during
634- clone if we cannot get a local_abspath for the new bzrdir.
635- (Robert Collins)
636-
637-
638-bzr 1.12 "1234567890" 2009-02-13
639---------------------------------
640+GNU Changelog output can now be produced by ``bzr log --gnu-changelog``.
641+Debug flags can now be set in ``~/.bazaar/bazaar.conf``. Lightweight checkouts
642+and stacked branches should both be much faster over remote connections.
643+
644+Changes From RC1 to Final
645+*************************
646+
647+* Fix "is not a stackable format" error when pushing a
648+ stackable-format branch with an unstackable-format repository to a
649+ destination with a default stacking policy. (Andrew Bennetts)
650+
651+* Progress bars now show the rate of network activity for
652+ ``bzr+ssh://`` and ``bzr://`` connections. (Andrew Bennetts)
653+
654+Compatibility Breaks
655+********************
656+
657+* ``bzr log --line`` now indicates which revisions are merges with
658+ `[merge]` after the date. Scripts which parse the output of this
659+ command may need to be adjusted.
660+ (Neil Martinsen-Burrell)
661+
662+New Features
663+************
664+
665+* ``bzr reconfigure`` now supports --with-trees and --with-no-trees
666+ options to change the default tree-creation policy of shared
667+ repositories. (Matthew Fuller, Marius Kruger, #145033)
668+
669+* Debug flags can now be set in ``~/.bazaar/bazaar.conf``.
670+ (Martin Pool)
671+
672+* Filtered views provide a mask over the tree so that users can focus
673+ on a subset of a tree when doing their work. See ``Filtered views``
674+ in chapter 7 of the User Guide and ``bzr help view`` for details.
675+ (Ian Clatworthy)
676+
677+* GNU Changelog output can now be produced by ``bzr log --gnu-changelog``.
678+ (Andrea Bolognani, Martin Pool)
679+
680+* The ``-Dmemory`` flag now gives memory information on Windows.
681+ (John Arbash Meinel)
682+
683+* Multiple authors for a commit can now be recorded by using the "--author"
684+ option multiple times. (James Westby, #185772)
685+
686+* New clean-tree command, from bzrtools. (Aaron Bentley, Jelmer Vernoij)
687+
688+* New command ``bzr launchpad-open`` opens a Launchpad web page for that
689+ branch in your web browser, as long as the branch is on Launchpad at all.
690+ (Jonathan Lange)
691+
692+* New API for getting bugs fixed by a revision: Revision.iter_bugs().
693+ (Jonathan Lange)
694+
695+Improvements
696+************
697+
698+* All bzr ``Hooks`` classes are now registered in
699+ ``bzrlib.hooks.known_hooks``. This removes the separate list from
700+ ``bzrlib.tests`` and ensures that all hooks registered there are
701+ correctly isolated by the test suite (previously
702+ ``MutableTreeHooks`` were not being isolated correctly). Further,
703+ documentation for hooks is now dynamically generated from the
704+ present HookPoints. ``bzr hooks`` will now also report on all the
705+ hooks present in the ``bzrlib.hooks.known_hooks`` registry.
706+ (Robert Collins)
707+
708+* ``bzr add`` no longer prints ``add completed`` on success. Failure
709+ still prints an error message. (Robert Collins)
710+
711+* ``bzr branch`` now has a ``--no-tree`` option which turns off the
712+ generation of a working tree in the new branch.
713+ (Daniel Watkins, John Klinger, #273993)
714+
715+* Bazaar will now point out ``bzr+ssh://`` to the user when they
716+ use ssh://. (Jelmer Vernooij, #330535)
717+
718+* ``bzr -v info`` now omits the number of committers branch statistic,
719+ making it many times faster for large projects. To include that
720+ statistic in the output, use ``bzr -vv info``.
721+ (Ian Clatworthy)
722+
723+* ``bzr push`` to a ``bzr`` url (``bzr://``, ``bzr+ssh://`` etc) will
724+ stream if the server is version 1.13 or greater, reducing roundtrips
725+ significantly. (Andrew Bennetts, Robert Collins)
726+
727+* Lightweight Checkouts and Stacked Branches should both be much
728+ faster over remote connections. Building the working tree now
729+ batches up requests into approx 5MB requests, rather than a separate
730+ request for each file. (John Arbash Meinel)
731+
732+* Support for GSSAPI authentication when using HTTP or HTTPS.
733+ (Jelmer Vernooij)
734+
735+* The ``bzr shelve`` prompt now includes a '?' help option to explain the
736+ short options better. (Daniel Watkins, #327429)
737+
738+* ``bzr lp-open`` now falls back to the push location if it cannot find a
739+ public location. (Jonathan Lange, #332372)
740+
741+* ``bzr lp-open`` will try to find the Launchpad URL for the location
742+ passed on the command line. This makes ``bzr lp-open lp:foo`` work as
743+ expected. (Jonathan Lange, #332705)
744+
745+* ``bzr send`` now supports MH-E via ``emacsclient``. (Eric Gillespie)
746+
747+Bug Fixes
748+*********
749+
750+* Bazaar now gives a better message including the filename if it's
751+ unable to read a file in the working directory, for example because
752+ of a permission error. (Martin Pool, #338653)
753+
754+* ``bzr cat -r<old> <path>`` doesn't traceback anymore when <path> has a
755+ file id in the working tree different from the one in revision <old>.
756+ (Vincent Ladeuil, #341517, #253806)
757+
758+* ``bzr send`` help is more specific about how to apply merge
759+ directives. (Neil Martinsen-Burrell, #253470)
760+
761+* ``bzr missing`` now uses ``Repository.get_revision_delta()`` rather
762+ than fetching trees and determining a delta itself. (Jelmer
763+ Vernooij, #315048)
764+
765+* ``bzr push`` to a smart server no longer causes "Revision
766+ {set([('null:',)])} not present ..." errors when the branch has
767+ multiple root revisions. (Andrew Bennetts, #317654)
768+
769+* ``bzr shelve`` now properly handle patches with no terminating newline.
770+ (Benoît PIERRE, #303569)
771+
772+* ``bzr unshelve`` gives a more palatable error if passed a non-integer
773+ shelf id. (Daniel Watkins)
774+
775+* Export now handles files that are not present in the tree.
776+ (James Westby, #174539)
777+
778+* Fixed incorrect "Source format does not support stacking" warning
779+ when pushing to a smart server. (Andrew Bennetts, #334114)
780+
781+* Fixed "sprout() got an unexpected keyword argument 'source_branch'"
782+ error branching from old repositories.
783+ (Martin Pool, #321695)
784+
785+* Make ``bzr push --quiet <non-local location>`` less chatty.
786+ (Kent Gibson, #221461)
787+
788+* Many Branch hooks would not fire with ``bzr://`` and ``bzr+ssh://``
789+ branches, and this was not noticed due to a bug in the test logic
790+ for branches. This is now fixed and a test added to prevent it
791+ reoccuring. (Robert Collins, Andrew Bennetts)
792+
793+* Restore the progress bar on Windows. We were disabling it when TERM
794+ wasn't set, but Windows doesn't set TERM. (Alexander Belchenko)
795+
796+* ``setup.py build_ext`` now gives a proper error when an extension
797+ fails to build. (John Arbash Meinel)
798+
799+* Symlinks to non ascii file names are now supported.
800+ (Robert Collins, Vincent Ladeuil, #339055, #272444)
801+
802+* Under rare circumstances (aka nobody reported a bug about it), the ftp
803+ transport could revert to ascii mode. It now stays in binary mode except
804+ when needed.
805+ (Vincent Ladeuil)
806+
807+* Unshelve does not generate warnings about progress bars.
808+ (Aaron Bentley, #328148)
809+
810+* shelve cleans up properly when unversioned files are specified.
811+ (Benoît Pierre, Aaron Bentley)
812+
813+Documentation
814+*************
815+
816+* Added ``Organizing your workspace`` to the User Guide appendices,
817+ summarizing some common ways of organizing trees, branches and
818+ repositories and the processes/workflows implied/enabled by each.
819+ (Ian Clatworthy)
820+
821+* Hooks can now be self documenting. ``bzrlib.hooks.Hooks.create_hook``
822+ is the entry point for this feature. (Robert Collins)
823+
824+* The documentation for ``shelve`` and ``unshelve`` has been clarified.
825+ (Daniel Watkins, #327421, #327425)
826+
827+API Changes
828+***********
829+
830+* ``bzr selftest`` now fails if the bazaar sources contain trailing
831+ whitespace, non-unix style line endings and files not ending in a
832+ newline. About 372 files and 3243 lines with trailing whitespace was
833+ updated to comply with this. The code already complied with the other
834+ criteria, but now it is enforced. (Marius Kruger)
835+
836+* ``bzrlib.branch.PushResult`` was renamed to
837+ ``bzrlib.branch.BranchPushResult``. (Jelmer Vernooij)
838+
839+* ``Branch.fetch`` and ``Repository.fetch`` now return None rather
840+ than a count of copied revisions and failed revisions. A while back
841+ we stopped ever reporting failed revisions because we started
842+ erroring instead, and the copied revisions count is not used in the
843+ UI at all - indeed it only reflects the repository status not
844+ changes to the branch itself. (Robert Collins)
845+
846+* ``Inventory.apply_delta`` now raises an AssertionError if a file-id
847+ appears multiple times within the delta. (Ian Clatworthy)
848+
849+* MutableTree.commit now favours the "authors" argument, with the old
850+ "author" argument being deprecated.
851+
852+* Remove deprecated EmptyTree. (Martin Pool)
853+
854+* ``Repository.fetch`` now accepts an optional ``fetch_spec``
855+ parameter. A ``SearchResult`` or ``MiniSearchResult`` may be passed
856+ to ``fetch_spec`` instead of a ``last_revision`` to specify exactly
857+ which revisions to fetch. (Andrew Bennetts)
858+
859+* ``RepositoryAcquisitionPolicy.acquire_repository`` now returns a
860+ tuple of ``(repository, is_new_flag)``, rather than just the
861+ repository. (Andrew Bennetts)
862+
863+* Revision.get_apparent_author() is now deprecated, replaced by
864+ Revision.get_apparent_authors(), which returns a list. The former
865+ now returns the first item that would be returned from the second.
866+
867+* The ``BranchBuilder`` test helper now accepts a ``timestamp``
868+ parameter to ``build_commit`` and ``build_snapshot``. (Martin Pool)
869+
870+* The ``_fetch_*`` attributes on ``Repository`` are now on
871+ ``RepositoryFormat``, more accurately reflecting their intent (they
872+ describe a disk format capability, not state of a particular
873+ repository of that format). (Robert Collins)
874+
875+Internals
876+*********
877+
878+* Branching from a non-stacked branch on a smart protocol is now
879+ free of virtual file system methods.
880+ (Robert Collins, Andrew Bennetts)
881+
882+* Branch and Repository creation on a bzr+ssh://server are now done
883+ via RPC calls rather than VFS calls, reducing round trips for
884+ pushing new branches substantially. (Robert Collins)
885+
886+* ``Branch.clone`` now takes the ``repository_policy`` formerly used
887+ inside ``BzrDir.clone_on_transport``, allowing stacking to be
888+ configured before the branch tags and revision tip are set. This
889+ fixes a race condition cloning stacked branches that would cause
890+ plugins to have hooks called on non-stacked instances.
891+ (Robert Collins, #334187)
892+
893+* ``BzrDir.cloning_metadir`` now has a RPC call. (Robert Collins)
894+
895+* ``BzrDirFormat.__str__`` now uses the human readable description
896+ rather than the sometimes-absent disk label. (Robert Collins)
897+
898+* ``bzrlib.fetch`` is now composed of a sender and a sink component
899+ allowing for decoupling over a network connection. Fetching from
900+ or into a RemoteRepository with a 1.13 server will use this to
901+ stream the operation.
902+ (Andrew Bennetts, Robert Collins)
903+
904+* ``bzrlib.tests.run_suite`` accepts a runner_class parameter
905+ supporting the use of different runners. (Robert Collins)
906+
907+* Change how file_ids and revision_ids are interned as part of
908+ inventory deserialization. Now we use the real ``intern()``, rather
909+ than our own workaround that would also cache a Unicode copy of the
910+ string, and never emptied the cache. This should slightly reduce
911+ memory consumption. (John Arbash Meinel)
912+
913+* New branch method ``create_clone_on_transport`` that returns a
914+ branch object. (Robert Collins)
915+
916+* New hook Commands['extend_command'] to allow plugins to access a
917+ command object before the command is run (or help generated from
918+ it), without overriding the command. (Robert Collins)
919+
920+* New version of the ``BzrDir.find_repository`` verb supporting
921+ ``_network_name`` to support removing more _ensure_real calls.
922+ (Robert Collins)
923+
924+* ``RemoteBranchFormat`` no longer claims to have a disk format string.
925+ (Robert Collins)
926+
927+* ``Repository`` objects now have ``suspend_write_group`` and
928+ ``resume_write_group`` methods. These are currently only useful
929+ with pack repositories. (Andrew Bennetts, Robert Collins)
930+
931+* ``BzrDirFormat``, ``BranchFormat`` and ``RepositoryFormat`` objects
932+ now have a ``network_name`` for passing the format across RPC calls.
933+ (Robert Collins, Andrew Bennetts)
934+
935+* ``RepositoryFormat`` objects now all have a new attribute
936+ ``_serializer`` used by fetch when reserialising is required.
937+ (Robert Collins, Andrew Bennetts)
938+
939+* Some methods have been pulled up from ``BzrBranch`` to ``Branch``
940+ to aid branch types that are not bzr branch objects (like
941+ RemoteBranch). (Robert Collins, Andrew Bennetts)
942+
943+* Test adaptation has been made consistent throughout the built in
944+ tests. ``TestScenarioApplier``, ``multiply_tests_from_modules``,
945+ ``adapt_tests``, ``adapt_modules`` have all been deleted. Please
946+ use ``multiply_tests``, or for lower level needs ``apply_scenarios``
947+ and ``apply_scenario``. (Robert Collins)
948+
949+* ``TestSkipped`` is now detected by TestCase and passed to the
950+ ``TestResult`` by calling ``addSkip``. For older TestResult objects,
951+ where ``addSkip`` is not available, ``addError`` is still called.
952+ This permits test filtering in subunit to strip out skipped tests
953+ resulting in a faster fix-shrink-list-run cycle. This is compatible
954+ with the testtools protocol for skips. (Robert Collins)
955+
956+* The ``_index`` of ``KnitVersionedFiles`` now supports the ability
957+ to scan an underlying index that is going to be incorporated into
958+ the ``KnitVersionedFiles`` object, to determine if it has missing
959+ delta references. The method is ``scan_unvalidated_index``.
960+ (Andrew Bennetts, Robert Collins)
961+
962+* There is a RemoteSink object which handles pushing to smart servers.
963+ (Andrew Bennetts, Robert Collins)
964+
965+* ``TransportTraceDecorator`` now logs ``put_bytes_non_atomic`` and
966+ ``rmdir`` calls. (Robert Collins)
967+
968+* ``VersionedFiles`` record adapters have had their signature change
969+ from ``(record, record.get_bytes_as(record.storage_kind))`` to
970+ ``(record)`` reducing excess duplication and allowing adapters
971+ to access private data in record to obtain content more
972+ efficiently. (Robert Collins)
973+
974+* We no longer probe to see if we should create a working tree during
975+ clone if we cannot get a local_abspath for the new bzrdir.
976+ (Robert Collins)
977+
978+
979+bzr 1.12
980+########
981+
982+:Codename: 1234567890
983+:1.12: 2009-02-13
984+:1.12rc1: 2009-02-10
985
986 This release of Bazaar contains many improvements to the speed,
987 documentation and functionality of ``bzr log`` and the display of logged
988@@ -484,211 +509,213 @@
989 progress, both in the way operations are drawn onto a text terminal, and
990 by showing the rate of network IO.
991
992- BUG FIXES:
993-
994- * ``bzr init --development-wt5[-rich-root]`` would fail because of
995- circular import errors. (John Arbash Meinel, #328135)
996-
997- DOCUMENTATION:
998-
999- * Expanded the help for log and added a new help topic called
1000- ``log-formats``. (Ian Clatworthy)
1001-
1002-
1003-bzr 1.12rc1 "1234567890" 2009-02-10
1004------------------------------------
1005-
1006- COMPATIBILITY BREAKS:
1007-
1008- * By default, ``bzr status`` after a merge now shows just the pending
1009- merge tip revisions. This improves the signal-to-noise ratio after
1010- merging from trunk and completes much faster. To see all merged
1011- revisions, use the new ``-v`` flag. (Ian Clatworthy)
1012-
1013- * ``bzr log --line`` now shows any tags after the date and before
1014- the commit message. If you have scripts which parse the output
1015- from this command, you may need to adjust them accordingly.
1016- (Ian Clatworthy)
1017-
1018- * ``bzr log --short`` now shows any additional revision properties
1019- after the date and before the commit message. Scripts that parse
1020- output of the log command in this situation may need to adjust.
1021- (Neil Martinsen-Burrell)
1022-
1023- * The experimental formats ``1.12-preview`` and ``1.12-preview-rich-root``
1024- have been renamed ``development-wt5`` and ``development-wt5-rich-root``
1025- respectively, given they are not ready for release in 1.12.
1026- (Ian Clatworthy)
1027-
1028- * ``read_bundle_from_url`` has been deprecated. (Vincent Ladeuil)
1029-
1030- NEW FEATURES:
1031-
1032- * Add support for filtering ``bzr missing`` on revisions. Remote revisions
1033- can be filtered using ``bzr missing -r -20..-10`` and local revisions can
1034- be filtered using ``bzr missing --my-revision -20..-10``.
1035- (Marius Kruger)
1036-
1037- * ``bzr log -p`` displays the patch diff for each revision.
1038- When logging a file, the diff only includes changes to that file.
1039- (Ian Clatworthy, #202331, #227335)
1040-
1041- * ``bzr log`` supports a new option called ``-n N`` or ``--level N``.
1042- A value of 0 (zero) means "show all nested merge revisions" while
1043- a value of 1 (one) means "show just the top level". Values above
1044- 1 can be used to see a limited amount of nesting. That can be
1045- useful for seeing the level or two below PQM submits for example.
1046- To force the ``--short`` and ``--line`` formats to display all nested
1047- merge revisions just like ``--long`` does by default, use a command
1048- like ``bzr log --short -n0``. To display just the mainline using
1049- ``--long`` format, ``bzr log --long -n1``.
1050- (Ian Clatworthy)
1051-
1052- IMPROVEMENTS:
1053-
1054- * ``bzr add`` more clearly communicates success vs failure.
1055- (Daniel Watkins)
1056-
1057- * ``bzr init`` will now print a little less verbose output.
1058- (Marius Kruger)
1059-
1060- * ``bzr log`` is now much faster in many use cases, particularly
1061- at incrementally displaying results and filtering by a
1062- revision range. (Ian Clatworthy)
1063-
1064- * ``bzr log --short`` and ``bzr log --line`` now show tags, if any,
1065- for each revision. The tags are shown comma-separated inside
1066- ``{}``. For short format, the tags appear at the end of line
1067- before the optional ``[merge]`` indicator. For line format,
1068- the tags appear after the date. (Ian Clatworthy)
1069-
1070- * Progress bars now show the rate of activity for some sftp
1071- operations, and they are drawn different. (Martin Pool, #172741)
1072-
1073- * Progress bars now show the rate of activity for urllib and pycurl based
1074- http client implementations. The operations are tracked at the socket
1075- level for better precision.
1076- (Vincent Ladeuil)
1077-
1078- * Rule-based preferences can now accept multiple patterns for a set of
1079- rules. (Marius Kruger)
1080-
1081- * The ``ancestor:`` revision spec will now default to referring to the
1082- parent of the branch if no other location is given.
1083- (Daniel Watkins, #198417)
1084-
1085- * The debugger started as a result of setting ``$BZR_PDB`` works
1086- around a bug in ``pdb``, http://bugs.python.org/issue4150. The bug
1087- can cause truncated tracebacks in Python versions before 2.6.
1088- (Andrew Bennetts)
1089-
1090- * VirtualVersionedFiles now implements
1091- ``iter_lines_added_or_present_in_keys``. This allows the creation of
1092- new branches based on stacked bzr-svn branches. (#311997)
1093-
1094- BUG FIXES:
1095-
1096- * ``bzr annotate --show-ids`` doesn't give a backtrace on empty files
1097- anymore.
1098- (Anne Mohsen, Vincent Ladeuil, #314525)
1099-
1100- * ``bzr log FILE`` now correctly shows mainline revisions merging
1101- a change to FILE when the ``--short`` and ``--line`` log formats
1102- are used. (Ian Clatworthy, #317417)
1103-
1104- * ``bzr log -rX..Y FILE`` now shows the history of FILE provided
1105- it existed in Y or X, even if the file has since been deleted or
1106- renamed. If no range is given, the current/basis tree and
1107- initial tree are searched in that order. More generally, log
1108- now interprets filenames in their historical context.
1109- (Ian Clatworthy, #175520)
1110-
1111- * ``bzr status`` now reports nonexistent files and continues, then
1112- errors (with code 3) at the end. (Karl Fogel, #306394)
1113-
1114- * Don't require the present compression base in knits to be the same
1115- when adding records in knits. (Jelmer Vernooij, #307394)
1116-
1117- * Fix a problem with CIFS client/server lag on Windows colliding with
1118- an invariant-per-process algorithm for generating AtomicFile names
1119- (Adrian Wilkins, #304023)
1120-
1121- * Many socket operations now handle EINTR by retrying the operation.
1122- Previously EINTR was treated as an unrecoverable failure. There is
1123- a new ``until_no_eintr`` helper function in ``bzrlib.osutils``.
1124- (Andrew Bennetts)
1125-
1126- * Support symlinks with non-ascii characters in the symlink filename.
1127- (Jelmer Vernooij, #319323)
1128-
1129- * There was a bug in how we handled resolving when a file is deleted
1130- in one branch, and modified in the other. If there was a criss-cross
1131- merge, we would cause the deletion to conflict a second time.
1132- (Vincent Ladeuil, John Arbash Meinel)
1133-
1134- * There was another bug in how we chose the correct intermediate LCA in
1135- criss-cross merges leading to several kind of changes be incorrectly
1136- handled.
1137- (John Arbash Meinel, Vincent Ladeuil)
1138-
1139- * Unshelve now handles deleted paths without crashing. (Robert Collins)
1140-
1141- DOCUMENTATION:
1142-
1143- * Improved plugin developer documentation. (Martin Pool)
1144-
1145- API CHANGES:
1146-
1147- * ``ProgressBarStack`` is deprecated; instead use
1148- ``ui_factory.nested_progress_bar`` to create new progress bars.
1149- (Martin Pool)
1150-
1151- * ForeignVcsMapping() now requires a ForeignVcs object as first
1152- argument. (Jelmer Vernooij)
1153-
1154- * ForeignVcsMapping.show_foreign_revid() has been moved to
1155- ForeignVcs. (Jelmer Vernooij)
1156-
1157- * ``read_bundle_from_url`` is deprecated in favor of
1158- ``read_mergeable_from_url``. (Vincent Ladeuil)
1159-
1160- * Revision specifiers are now registered in
1161- ``bzrlib.revisionspec.revspec_registry``, and the old list of
1162- revisionspec classes (``bzrlib.revisionspec.SPEC_TYPES``) has been
1163- deprecated. (Jelmer Vernooij, #321183)
1164-
1165- * The progress and UI classes have changed; the main APIs remain the
1166- same but code that provides a new UI or progress bar class may
1167- need to be updated. (Martin Pool)
1168-
1169- INTERNALS:
1170-
1171- * Default User Interface (UI) is CLIUIFactory when bzr runs in a dumb
1172- terminal. It is sometimes desirable do override this default by forcing
1173- bzr to use TextUIFactory. This can be achieved by setting the
1174- BZR_USE_TEXT_UI environment variable (emacs shells, as opposed to
1175- compile buffers, are such an example).
1176- (Vincent Ladeuil)
1177-
1178- * New API ``Branch.iter_merge_sorted_revisions()`` that iterates over
1179- ``(revision_id, depth, revno, end_of_merge)`` tuples.
1180- (Ian Clatworthy)
1181-
1182- * New ``Branch.dotted_revno_to_revision_id()`` and
1183- ``Branch.revision_id_to_dotted_revno()`` APIs that pick the most
1184- efficient way of doing the mapping.
1185- (Ian Clatworthy)
1186-
1187- * Refactor cmd_serve so that it's a little easier to build commands that
1188- extend it, and perhaps even a bit easier to read. (Jonathan Lange)
1189-
1190- * ``TreeDelta.show()`` now accepts a ``filter`` parameter allowing log
1191- formatters to retrict the output.
1192- (Vincent Ladeuil)
1193+Changes from RC1 to Final
1194+*************************
1195+
1196+* ``bzr init --development-wt5[-rich-root]`` would fail because of
1197+ circular import errors. (John Arbash Meinel, #328135)
1198+
1199+* Expanded the help for log and added a new help topic called
1200+ ``log-formats``. (Ian Clatworthy)
1201+
1202+Compatibility Breaks
1203+********************
1204+
1205+* By default, ``bzr status`` after a merge now shows just the pending
1206+ merge tip revisions. This improves the signal-to-noise ratio after
1207+ merging from trunk and completes much faster. To see all merged
1208+ revisions, use the new ``-v`` flag. (Ian Clatworthy)
1209+
1210+* ``bzr log --line`` now shows any tags after the date and before
1211+ the commit message. If you have scripts which parse the output
1212+ from this command, you may need to adjust them accordingly.
1213+ (Ian Clatworthy)
1214+
1215+* ``bzr log --short`` now shows any additional revision properties
1216+ after the date and before the commit message. Scripts that parse
1217+ output of the log command in this situation may need to adjust.
1218+ (Neil Martinsen-Burrell)
1219+
1220+* The experimental formats ``1.12-preview`` and ``1.12-preview-rich-root``
1221+ have been renamed ``development-wt5`` and ``development-wt5-rich-root``
1222+ respectively, given they are not ready for release in 1.12.
1223+ (Ian Clatworthy)
1224+
1225+* ``read_bundle_from_url`` has been deprecated. (Vincent Ladeuil)
1226+
1227+New Features
1228+************
1229+
1230+* Add support for filtering ``bzr missing`` on revisions. Remote revisions
1231+ can be filtered using ``bzr missing -r -20..-10`` and local revisions can
1232+ be filtered using ``bzr missing --my-revision -20..-10``.
1233+ (Marius Kruger)
1234+
1235+* ``bzr log -p`` displays the patch diff for each revision.
1236+ When logging a file, the diff only includes changes to that file.
1237+ (Ian Clatworthy, #202331, #227335)
1238+
1239+* ``bzr log`` supports a new option called ``-n N`` or ``--level N``.
1240+ A value of 0 (zero) means "show all nested merge revisions" while
1241+ a value of 1 (one) means "show just the top level". Values above
1242+ 1 can be used to see a limited amount of nesting. That can be
1243+ useful for seeing the level or two below PQM submits for example.
1244+ To force the ``--short`` and ``--line`` formats to display all nested
1245+ merge revisions just like ``--long`` does by default, use a command
1246+ like ``bzr log --short -n0``. To display just the mainline using
1247+ ``--long`` format, ``bzr log --long -n1``.
1248+ (Ian Clatworthy)
1249+
1250+Improvements
1251+************
1252+
1253+* ``bzr add`` more clearly communicates success vs failure.
1254+ (Daniel Watkins)
1255+
1256+* ``bzr init`` will now print a little less verbose output.
1257+ (Marius Kruger)
1258+
1259+* ``bzr log`` is now much faster in many use cases, particularly
1260+ at incrementally displaying results and filtering by a
1261+ revision range. (Ian Clatworthy)
1262+
1263+* ``bzr log --short`` and ``bzr log --line`` now show tags, if any,
1264+ for each revision. The tags are shown comma-separated inside
1265+ ``{}``. For short format, the tags appear at the end of line
1266+ before the optional ``[merge]`` indicator. For line format,
1267+ the tags appear after the date. (Ian Clatworthy)
1268+
1269+* Progress bars now show the rate of activity for some sftp
1270+ operations, and they are drawn different. (Martin Pool, #172741)
1271+
1272+* Progress bars now show the rate of activity for urllib and pycurl based
1273+ http client implementations. The operations are tracked at the socket
1274+ level for better precision.
1275+ (Vincent Ladeuil)
1276+
1277+* Rule-based preferences can now accept multiple patterns for a set of
1278+ rules. (Marius Kruger)
1279+
1280+* The ``ancestor:`` revision spec will now default to referring to the
1281+ parent of the branch if no other location is given.
1282+ (Daniel Watkins, #198417)
1283+
1284+* The debugger started as a result of setting ``$BZR_PDB`` works
1285+ around a bug in ``pdb``, http://bugs.python.org/issue4150. The bug
1286+ can cause truncated tracebacks in Python versions before 2.6.
1287+ (Andrew Bennetts)
1288+
1289+* VirtualVersionedFiles now implements
1290+ ``iter_lines_added_or_present_in_keys``. This allows the creation of
1291+ new branches based on stacked bzr-svn branches. (#311997)
1292+
1293+Bug Fixes
1294+*********
1295+
1296+* ``bzr annotate --show-ids`` doesn't give a backtrace on empty files
1297+ anymore.
1298+ (Anne Mohsen, Vincent Ladeuil, #314525)
1299+
1300+* ``bzr log FILE`` now correctly shows mainline revisions merging
1301+ a change to FILE when the ``--short`` and ``--line`` log formats
1302+ are used. (Ian Clatworthy, #317417)
1303+
1304+* ``bzr log -rX..Y FILE`` now shows the history of FILE provided
1305+ it existed in Y or X, even if the file has since been deleted or
1306+ renamed. If no range is given, the current/basis tree and
1307+ initial tree are searched in that order. More generally, log
1308+ now interprets filenames in their historical context.
1309+ (Ian Clatworthy, #175520)
1310+
1311+* ``bzr status`` now reports nonexistent files and continues, then
1312+ errors (with code 3) at the end. (Karl Fogel, #306394)
1313+
1314+* Don't require the present compression base in knits to be the same
1315+ when adding records in knits. (Jelmer Vernooij, #307394)
1316+
1317+* Fix a problem with CIFS client/server lag on Windows colliding with
1318+ an invariant-per-process algorithm for generating AtomicFile names
1319+ (Adrian Wilkins, #304023)
1320+
1321+* Many socket operations now handle EINTR by retrying the operation.
1322+ Previously EINTR was treated as an unrecoverable failure. There is
1323+ a new ``until_no_eintr`` helper function in ``bzrlib.osutils``.
1324+ (Andrew Bennetts)
1325+
1326+* Support symlinks with non-ascii characters in the symlink filename.
1327+ (Jelmer Vernooij, #319323)
1328+
1329+* There was a bug in how we handled resolving when a file is deleted
1330+ in one branch, and modified in the other. If there was a criss-cross
1331+ merge, we would cause the deletion to conflict a second time.
1332+ (Vincent Ladeuil, John Arbash Meinel)
1333+
1334+* There was another bug in how we chose the correct intermediate LCA in
1335+ criss-cross merges leading to several kind of changes be incorrectly
1336+ handled.
1337+ (John Arbash Meinel, Vincent Ladeuil)
1338+
1339+* Unshelve now handles deleted paths without crashing. (Robert Collins)
1340+
1341+Documentation
1342+*************
1343+
1344+* Improved plugin developer documentation. (Martin Pool)
1345+
1346+API Changes
1347+***********
1348+
1349+* ``ProgressBarStack`` is deprecated; instead use
1350+ ``ui_factory.nested_progress_bar`` to create new progress bars.
1351+ (Martin Pool)
1352+
1353+* ForeignVcsMapping() now requires a ForeignVcs object as first
1354+ argument. (Jelmer Vernooij)
1355+
1356+* ForeignVcsMapping.show_foreign_revid() has been moved to
1357+ ForeignVcs. (Jelmer Vernooij)
1358+
1359+* ``read_bundle_from_url`` is deprecated in favor of
1360+ ``read_mergeable_from_url``. (Vincent Ladeuil)
1361+
1362+* Revision specifiers are now registered in
1363+ ``bzrlib.revisionspec.revspec_registry``, and the old list of
1364+ revisionspec classes (``bzrlib.revisionspec.SPEC_TYPES``) has been
1365+ deprecated. (Jelmer Vernooij, #321183)
1366+
1367+* The progress and UI classes have changed; the main APIs remain the
1368+ same but code that provides a new UI or progress bar class may
1369+ need to be updated. (Martin Pool)
1370+
1371+Internals
1372+*********
1373+
1374+* Default User Interface (UI) is CLIUIFactory when bzr runs in a dumb
1375+ terminal. It is sometimes desirable do override this default by forcing
1376+ bzr to use TextUIFactory. This can be achieved by setting the
1377+ BZR_USE_TEXT_UI environment variable (emacs shells, as opposed to
1378+ compile buffers, are such an example).
1379+ (Vincent Ladeuil)
1380+
1381+* New API ``Branch.iter_merge_sorted_revisions()`` that iterates over
1382+ ``(revision_id, depth, revno, end_of_merge)`` tuples.
1383+ (Ian Clatworthy)
1384+
1385+* New ``Branch.dotted_revno_to_revision_id()`` and
1386+ ``Branch.revision_id_to_dotted_revno()`` APIs that pick the most
1387+ efficient way of doing the mapping.
1388+ (Ian Clatworthy)
1389+
1390+* Refactor cmd_serve so that it's a little easier to build commands that
1391+ extend it, and perhaps even a bit easier to read. (Jonathan Lange)
1392+
1393+* ``TreeDelta.show()`` now accepts a ``filter`` parameter allowing log
1394+ formatters to retrict the output.
1395+ (Vincent Ladeuil)
1396
1397
1398 bzr 1.11 "Eyes up!" 2009-01-19
1399-------------------------------
1400+##############################
1401
1402 This first monthly release of Bazaar for 2009 improves Bazaar's operation
1403 in Windows, Mac OS X, and other situations where file names are matched
1404@@ -703,247 +730,256 @@
1405 This release also fixes a number of bugs, particularly a glitch that can
1406 occur when there are concurrent writes to a pack repository.
1407
1408- BUG FIXES:
1409-
1410- * Fix failing test when CompiledChunksToLines is not available.
1411- (Vincent Ladeuil)
1412-
1413- * Stacked branches don't repeatedly open their transport connection.
1414- (John Arbash Meinel)
1415+Bug Fixes
1416+*********
1417+
1418+* Fix failing test when CompiledChunksToLines is not available.
1419+ (Vincent Ladeuil)
1420+
1421+* Stacked branches don't repeatedly open their transport connection.
1422+ (John Arbash Meinel)
1423
1424
1425
1426 bzr 1.11rc1 "Eyes up!" 2009-01-09
1427----------------------------------
1428-
1429- CHANGES:
1430-
1431- * Formats using Knit-based repository formats are now explicitly
1432- marked as deprecated. (Ian Clatworthy)
1433-
1434- NEW FEATURES:
1435-
1436- * Add support for `bzr tags -r 1..2`, that is we now support showing
1437- tags applicable for a specified revision range. (Marius Kruger)
1438-
1439- * ``authentication.conf`` now accepts pluggable read-only credential
1440- stores. Such a plugin (``netrc_credential_store``) is now included,
1441- handles the ``$HOME/.netrc`` file and can server as an example to
1442- implement other plugins.
1443- (Vincent Ladeuil)
1444-
1445- * ``shelve --list`` can now be used to list shelved changes.
1446- (Aaron Bentley)
1447-
1448- IMPROVEMENTS:
1449-
1450- * Add trailing slash to directories in all output of ``bzr ls``, except
1451- ``bzr ls --null``. (Gordon P. Hemsley, #306424)
1452-
1453- * ``bzr revision-info`` now supports a -d option to specify an
1454- alternative branch. (Michael Hudson)
1455-
1456- * Add connection to a C++ implementation of the Windows Shell Extension
1457- which is able to fully replace the current Python implemented one.
1458- Advantages include 64bit support and reduction in overhead for
1459- processes which drag in shell extensions.
1460- (Mark Hammond)
1461-
1462- * Support the Claws mail client directly, rather than via
1463- xdg-email. This prevents the display of an unnecessary modal
1464- dialog in Claws, informing the user that a file has been
1465- attached to the message, and works around bug #291847 in
1466- xdg-utils which corrupts the destination address.
1467-
1468- * When working on a case-insensitive case-preserving file-system, as
1469- commonly found with Windows, bzr will often ignore the case of the
1470- arguments specified by the user in preference to the case of an existing
1471- item on the file-system or in the inventory to help prevent
1472- counter-intuitive behaviour on Windows. (Mark Hammond)
1473-
1474- BUG FIXES:
1475-
1476- * Allow BzrDir implementation to implement backing up of
1477- control directory. (#139691)
1478-
1479- * ``bzr push`` creating a new stacked branch will now only open a
1480- single connection to the target machine. (John Arbash Meinel)
1481-
1482- * Don't call iteritems on transport_list_registry, because it may
1483- change during iteration. (Martin Pool, #277048)
1484-
1485- * Don't make a broken branch when pushing an unstackable-format branch
1486- that's in a stackable shared repository to a location with default
1487- stack-on location. (Andrew Bennetts, #291046)
1488-
1489- * Don't require embedding user in HTTP(S) URLs do use authentication.conf.
1490- (Ben Jansen, Vincent Ladeuil, #300347)
1491-
1492- * Fix a problem with CIFS client/server lag on windows colliding with
1493- an invariant-per-process algorithm for generating AtomicFile names
1494- (Adrian Wilkins, #304023)
1495-
1496- * Fix bogus setUp signature in UnavailableFTPServer.
1497- (Gary van der Merwe, #313498)
1498-
1499- * Fix compilation error in ``_dirstate_helpers_c`` on SunOS/Solaris.
1500- (Jari Aalto)
1501-
1502- * Fix SystemError in ``_patiencediff_c`` module by calling
1503- PyErr_NoMemory() before returning NULL in PatienceSequenceMatcher_new.
1504- (Andrew Bennetts, #303206)
1505-
1506- * Give proper error message for diff with non-existent dotted revno.
1507- (Marius Kruger, #301969)
1508-
1509- * Handle EACCES (permission denied) errors when launching a message
1510- editor, and emit warnings when a configured editor cannot be
1511- started. (Andrew Bennetts)
1512-
1513- * ``$HOME/.netrc`` file is now recognized as a read-only credential store
1514- if configured in ``authentication.conf`` with 'password_encoding=netrc'
1515- in the appropriate sections.
1516- (Vincent Ladeuil, #103029)
1517-
1518- * Opening a stacked branch now properly shares the connection, rather
1519- than opening a new connection for the stacked-on branch.
1520- (John Arbash meinel)
1521-
1522- * Preserve transport decorators while following redirections.
1523- (Vincent Ladeuil, #245964, #270863)
1524-
1525- * Provides a finer and more robust filter for accepted redirections.
1526- (Vincent Ladeuil, #303959, #265070)
1527-
1528- * ``shelve`` paths are now interpreted relative to the current working
1529- tree. (Aaron Bentley)
1530-
1531- * ``Transport.readv()`` defaults to not reading more than 100MB in a
1532- single array. Further ``RemoteTransport.readv`` sets this to 5MB to
1533- work better with how it splits its requests.
1534- (John Arbash Meinel, #303538)
1535-
1536- * Pack repositories are now able to reload the pack listing and retry
1537- the current operation if another action causes the data to be
1538- repacked. (John Arbash Meinel, #153786)
1539-
1540- * ``pull -v`` now respects the log_format configuration variable.
1541- (Aaron Bentley)
1542-
1543- * ``push -v`` now works on non-initial pushes. (Aaron Bentley)
1544-
1545- * Use the short status format when the short format is used for log.
1546- (Vincent Ladeuil, #87179)
1547-
1548- * Allow files to be renamed or moved via remove + add-by-id. (Charles
1549- Duffy, #314251)
1550-
1551- DOCUMENTATION:
1552-
1553- * Improved the formats help topic to explain why multiple formats
1554- exist and to provide guidelines in selecting one. Introduced
1555- two new supporting help topics: current-formats and other-formats.
1556- (Ian Clatworthy)
1557-
1558- API CHANGES:
1559-
1560- * ``LRUCache(after_cleanup_size)`` was renamed to
1561- ``after_cleanup_count`` and the old name deprecated. The new name is
1562- used for clarity, and to avoid confusion with
1563- ``LRUSizeCache(after_cleanup_size)``. (John Arbash Meinel)
1564-
1565- * New ``ForeignRepository`` base class, to help with foreign branch
1566- support (e.g. svn). (Jelmer Vernooij)
1567-
1568- * ``node_distances`` and ``select_farthest`` can no longer be imported
1569- from ``bzrlib.graph``. They can still be imported from
1570- ``bzrlib.deprecated_graph``, which has been the preferred way to
1571- import them since before 1.0. (Andrew Bennetts)
1572-
1573- * The logic in commit now delegates inventory basis calculations to
1574- the ``CommitBuilder`` object; this requires that the commit builder
1575- in use has been updated to support the new ``recording_deletes`` and
1576- ``record_delete`` methods. (Robert Collins)
1577-
1578- TESTING:
1579-
1580- * An HTTPS server is now available (it requires python-2.6). Future bzr
1581- versions will allow the use of the python-2.6 ssl module that can be
1582- installed for 2.5 and 2.4.
1583-
1584- * ``bzr selftest`` now fails if new trailing white space is added to
1585- the bazaar sources. It only checks changes not committed yet. This
1586- means that PQM will now reject changes that introduce new trailing
1587- whitespace. (Marius Kruger)
1588-
1589- * Introduced new experimental formats called ``1.12-preview`` and
1590- ``1.12-preview-rich-root`` to enable testing of related pending
1591- features, namely content filtering and filtered views.
1592- (Ian Clatworthy)
1593-
1594- INTERNALS:
1595-
1596- * Added an ``InventoryEntry`` cache when deserializing inventories.
1597- Can cut the time to iterate over multiple RevisionsTrees in half.
1598- (John Arbash Meinel)
1599-
1600- * Added ``bzrlib.fifo_cache.FIFOCache`` which is designed to have
1601- minimal overhead versus using a plain dict for cache hits, at the
1602- cost of not preserving the 'active' set as well as an ``LRUCache``.
1603- (John Arbash Meinel)
1604-
1605- * ``bzrlib.patience_diff.unified_diff`` now properly uses a tab
1606- character to separate the filename from the date stamp, and doesn't
1607- add trailing whitespace when a date stamp is not supplied.
1608- (Adeodato Simó, John Arbash Meinel)
1609-
1610- * ``DirStateWorkingTree`` and ``DirStateWorkingTreeFormat`` added
1611- as base classes of ``WorkingTree4`` and ``WorkingTreeFormat4``
1612- respectively. (Ian Clatworthy)
1613-
1614- * ``KnitVersionedFiles._check_should_delta()`` now uses the
1615- ``get_build_details`` api to avoid multiple hits to the index, and
1616- to properly follow the ``compression_parent`` rather than assuming
1617- it is the left-hand parent. (John Arbash Meinel)
1618-
1619- * ``KnitVersionedFiles.get_record_stream()`` will now chose a
1620- more optimal ordering when the keys are requested 'unordered'.
1621- Previously the order was fully random, now the records should be
1622- returned from each pack in turn, in forward I/O order.
1623- (John Arbash Meinel)
1624+#################################
1625+
1626+Changes
1627+*******
1628+
1629+* Formats using Knit-based repository formats are now explicitly
1630+ marked as deprecated. (Ian Clatworthy)
1631+
1632+New Features
1633+************
1634+
1635+* Add support for `bzr tags -r 1..2`, that is we now support showing
1636+ tags applicable for a specified revision range. (Marius Kruger)
1637+
1638+* ``authentication.conf`` now accepts pluggable read-only credential
1639+ stores. Such a plugin (``netrc_credential_store``) is now included,
1640+ handles the ``$HOME/.netrc`` file and can server as an example to
1641+ implement other plugins.
1642+ (Vincent Ladeuil)
1643+
1644+* ``shelve --list`` can now be used to list shelved changes.
1645+ (Aaron Bentley)
1646+
1647+Improvements
1648+************
1649+
1650+* Add trailing slash to directories in all output of ``bzr ls``, except
1651+ ``bzr ls --null``. (Gordon P. Hemsley, #306424)
1652+
1653+* ``bzr revision-info`` now supports a -d option to specify an
1654+ alternative branch. (Michael Hudson)
1655+
1656+* Add connection to a C++ implementation of the Windows Shell Extension
1657+ which is able to fully replace the current Python implemented one.
1658+ Advantages include 64bit support and reduction in overhead for
1659+ processes which drag in shell extensions.
1660+ (Mark Hammond)
1661+
1662+* Support the Claws mail client directly, rather than via
1663+ xdg-email. This prevents the display of an unnecessary modal
1664+ dialog in Claws, informing the user that a file has been
1665+ attached to the message, and works around bug #291847 in
1666+ xdg-utils which corrupts the destination address.
1667+
1668+* When working on a case-insensitive case-preserving file-system, as
1669+ commonly found with Windows, bzr will often ignore the case of the
1670+ arguments specified by the user in preference to the case of an existing
1671+ item on the file-system or in the inventory to help prevent
1672+ counter-intuitive behaviour on Windows. (Mark Hammond)
1673+
1674+Bug Fixes
1675+*********
1676+
1677+* Allow BzrDir implementation to implement backing up of
1678+ control directory. (#139691)
1679+
1680+* ``bzr push`` creating a new stacked branch will now only open a
1681+ single connection to the target machine. (John Arbash Meinel)
1682+
1683+* Don't call iteritems on transport_list_registry, because it may
1684+ change during iteration. (Martin Pool, #277048)
1685+
1686+* Don't make a broken branch when pushing an unstackable-format branch
1687+ that's in a stackable shared repository to a location with default
1688+ stack-on location. (Andrew Bennetts, #291046)
1689+
1690+* Don't require embedding user in HTTP(S) URLs do use authentication.conf.
1691+ (Ben Jansen, Vincent Ladeuil, #300347)
1692+
1693+* Fix a problem with CIFS client/server lag on windows colliding with
1694+ an invariant-per-process algorithm for generating AtomicFile names
1695+ (Adrian Wilkins, #304023)
1696+
1697+* Fix bogus setUp signature in UnavailableFTPServer.
1698+ (Gary van der Merwe, #313498)
1699+
1700+* Fix compilation error in ``_dirstate_helpers_c`` on SunOS/Solaris.
1701+ (Jari Aalto)
1702+
1703+* Fix SystemError in ``_patiencediff_c`` module by calling
1704+ PyErr_NoMemory() before returning NULL in PatienceSequenceMatcher_new.
1705+ (Andrew Bennetts, #303206)
1706+
1707+* Give proper error message for diff with non-existent dotted revno.
1708+ (Marius Kruger, #301969)
1709+
1710+* Handle EACCES (permission denied) errors when launching a message
1711+ editor, and emit warnings when a configured editor cannot be
1712+ started. (Andrew Bennetts)
1713+
1714+* ``$HOME/.netrc`` file is now recognized as a read-only credential store
1715+ if configured in ``authentication.conf`` with 'password_encoding=netrc'
1716+ in the appropriate sections.
1717+ (Vincent Ladeuil, #103029)
1718+
1719+* Opening a stacked branch now properly shares the connection, rather
1720+ than opening a new connection for the stacked-on branch.
1721+ (John Arbash meinel)
1722+
1723+* Preserve transport decorators while following redirections.
1724+ (Vincent Ladeuil, #245964, #270863)
1725+
1726+* Provides a finer and more robust filter for accepted redirections.
1727+ (Vincent Ladeuil, #303959, #265070)
1728+
1729+* ``shelve`` paths are now interpreted relative to the current working
1730+ tree. (Aaron Bentley)
1731+
1732+* ``Transport.readv()`` defaults to not reading more than 100MB in a
1733+ single array. Further ``RemoteTransport.readv`` sets this to 5MB to
1734+ work better with how it splits its requests.
1735+ (John Arbash Meinel, #303538)
1736+
1737+* Pack repositories are now able to reload the pack listing and retry
1738+ the current operation if another action causes the data to be
1739+ repacked. (John Arbash Meinel, #153786)
1740+
1741+* ``pull -v`` now respects the log_format configuration variable.
1742+ (Aaron Bentley)
1743+
1744+* ``push -v`` now works on non-initial pushes. (Aaron Bentley)
1745+
1746+* Use the short status format when the short format is used for log.
1747+ (Vincent Ladeuil, #87179)
1748+
1749+* Allow files to be renamed or moved via remove + add-by-id. (Charles
1750+ Duffy, #314251)
1751+
1752+Documentation
1753+*************
1754+
1755+* Improved the formats help topic to explain why multiple formats
1756+ exist and to provide guidelines in selecting one. Introduced
1757+ two new supporting help topics: current-formats and other-formats.
1758+ (Ian Clatworthy)
1759+
1760+API Changes
1761+***********
1762+
1763+* ``LRUCache(after_cleanup_size)`` was renamed to
1764+ ``after_cleanup_count`` and the old name deprecated. The new name is
1765+ used for clarity, and to avoid confusion with
1766+ ``LRUSizeCache(after_cleanup_size)``. (John Arbash Meinel)
1767+
1768+* New ``ForeignRepository`` base class, to help with foreign branch
1769+ support (e.g. svn). (Jelmer Vernooij)
1770+
1771+* ``node_distances`` and ``select_farthest`` can no longer be imported
1772+ from ``bzrlib.graph``. They can still be imported from
1773+ ``bzrlib.deprecated_graph``, which has been the preferred way to
1774+ import them since before 1.0. (Andrew Bennetts)
1775+
1776+* The logic in commit now delegates inventory basis calculations to
1777+ the ``CommitBuilder`` object; this requires that the commit builder
1778+ in use has been updated to support the new ``recording_deletes`` and
1779+ ``record_delete`` methods. (Robert Collins)
1780+
1781+Testing
1782+*******
1783+
1784+* An HTTPS server is now available (it requires python-2.6). Future bzr
1785+ versions will allow the use of the python-2.6 ssl module that can be
1786+ installed for 2.5 and 2.4.
1787+
1788+* ``bzr selftest`` now fails if new trailing white space is added to
1789+ the bazaar sources. It only checks changes not committed yet. This
1790+ means that PQM will now reject changes that introduce new trailing
1791+ whitespace. (Marius Kruger)
1792+
1793+* Introduced new experimental formats called ``1.12-preview`` and
1794+ ``1.12-preview-rich-root`` to enable testing of related pending
1795+ features, namely content filtering and filtered views.
1796+ (Ian Clatworthy)
1797+
1798+Internals
1799+*********
1800+
1801+* Added an ``InventoryEntry`` cache when deserializing inventories.
1802+ Can cut the time to iterate over multiple RevisionsTrees in half.
1803+ (John Arbash Meinel)
1804+
1805+* Added ``bzrlib.fifo_cache.FIFOCache`` which is designed to have
1806+ minimal overhead versus using a plain dict for cache hits, at the
1807+ cost of not preserving the 'active' set as well as an ``LRUCache``.
1808+ (John Arbash Meinel)
1809+
1810+* ``bzrlib.patience_diff.unified_diff`` now properly uses a tab
1811+ character to separate the filename from the date stamp, and doesn't
1812+ add trailing whitespace when a date stamp is not supplied.
1813+ (Adeodato Simó, John Arbash Meinel)
1814+
1815+* ``DirStateWorkingTree`` and ``DirStateWorkingTreeFormat`` added
1816+ as base classes of ``WorkingTree4`` and ``WorkingTreeFormat4``
1817+ respectively. (Ian Clatworthy)
1818+
1819+* ``KnitVersionedFiles._check_should_delta()`` now uses the
1820+ ``get_build_details`` api to avoid multiple hits to the index, and
1821+ to properly follow the ``compression_parent`` rather than assuming
1822+ it is the left-hand parent. (John Arbash Meinel)
1823+
1824+* ``KnitVersionedFiles.get_record_stream()`` will now chose a
1825+ more optimal ordering when the keys are requested 'unordered'.
1826+ Previously the order was fully random, now the records should be
1827+ returned from each pack in turn, in forward I/O order.
1828+ (John Arbash Meinel)
1829
1830- * ``mutter()`` will now flush the ``~/.bzr.log`` if it has been more
1831- than 2s since the last time it flushed. (John Arbash Meinel)
1832-
1833- * New method ``bzrlib.repository.Repository.add_inventory_by_delta``
1834- allows adding an inventory via an inventory delta, which can be
1835- more efficient for some repository types. (Robert Collins)
1836-
1837- * Repository ``CommitBuilder`` objects can now accumulate an inventory
1838- delta. To enable this functionality call ``builder.recording_deletes``
1839- and additionally call ``builder.record_delete`` when a delete
1840- against the basis occurs. (Robert Collins)
1841-
1842- * The default http handler has been changed from pycurl to urllib.
1843- The default is still pycurl for https connections. (The only
1844- advantage of pycurl is that it checks ssl certificates.)
1845- (John Arbash Meinel)
1846-
1847- * ``VersionedFiles.get_record_stream()`` can now return objects with a
1848- storage_kind of ``chunked``. This is a collection (list/tuple) of
1849- strings. You can use ``osutils.chunks_to_lines()`` to turn them into
1850- guaranteed 'lines' or you can use ``''.join(chunks)`` to turn it
1851- into a fulltext. This allows for some very good memory savings when
1852- asking for many texts that share ancestry, as the individual chunks
1853- can be shared between versions of the file. (John Arbash Meinel)
1854-
1855- * ``pull -v`` and ``push -v`` use new function
1856- ``bzrlib.log.show_branch_change`` (Aaron Bentley)
1857+* ``mutter()`` will now flush the ``~/.bzr.log`` if it has been more
1858+ than 2s since the last time it flushed. (John Arbash Meinel)
1859+
1860+* New method ``bzrlib.repository.Repository.add_inventory_by_delta``
1861+ allows adding an inventory via an inventory delta, which can be
1862+ more efficient for some repository types. (Robert Collins)
1863+
1864+* Repository ``CommitBuilder`` objects can now accumulate an inventory
1865+ delta. To enable this functionality call ``builder.recording_deletes``
1866+ and additionally call ``builder.record_delete`` when a delete
1867+ against the basis occurs. (Robert Collins)
1868+
1869+* The default http handler has been changed from pycurl to urllib.
1870+ The default is still pycurl for https connections. (The only
1871+ advantage of pycurl is that it checks ssl certificates.)
1872+ (John Arbash Meinel)
1873+
1874+* ``VersionedFiles.get_record_stream()`` can now return objects with a
1875+ storage_kind of ``chunked``. This is a collection (list/tuple) of
1876+ strings. You can use ``osutils.chunks_to_lines()`` to turn them into
1877+ guaranteed 'lines' or you can use ``''.join(chunks)`` to turn it
1878+ into a fulltext. This allows for some very good memory savings when
1879+ asking for many texts that share ancestry, as the individual chunks
1880+ can be shared between versions of the file. (John Arbash Meinel)
1881+
1882+* ``pull -v`` and ``push -v`` use new function
1883+ ``bzrlib.log.show_branch_change`` (Aaron Bentley)
1884
1885
1886
1887 bzr 1.10 2008-12-05
1888--------------------
1889+###################
1890
1891 Bazaar 1.10 has several performance improvements for copying revisions
1892 (especially for small updates to large projects). There has also been a
1893@@ -953,22 +989,23 @@
1894
1895 The only changes versus bzr-1.10rc1 are bugfixes for stacked branches.
1896
1897- BUG FIXES:
1898-
1899- * Don't set a pack write cache size from RepoFetcher, because the
1900- cache is not coherent with reads and causes ShortReadvErrors.
1901- This reverses the change that fixed #294479.
1902- (Martin Pool, #303856)
1903-
1904- * Properly handle when a revision can be inserted as a delta versus
1905- when it needs to be expanded to a fulltext for stacked branches.
1906- There was a bug involving merge revisions. As a method to help
1907- prevent future difficulties, also make stacked fetches sort
1908- topologically. (John Arbash Meinel, #304841)
1909+bug Fixes
1910+*********
1911+
1912+* Don't set a pack write cache size from RepoFetcher, because the
1913+ cache is not coherent with reads and causes ShortReadvErrors.
1914+ This reverses the change that fixed #294479.
1915+ (Martin Pool, #303856)
1916+
1917+* Properly handle when a revision can be inserted as a delta versus
1918+ when it needs to be expanded to a fulltext for stacked branches.
1919+ There was a bug involving merge revisions. As a method to help
1920+ prevent future difficulties, also make stacked fetches sort
1921+ topologically. (John Arbash Meinel, #304841)
1922
1923
1924 bzr 1.10rc1 2008-11-28
1925-----------------------
1926+######################
1927
1928 This release of Bazaar focuses on performance improvements when pushing
1929 and pulling revisions, both locally and to remote networks. The popular
1930@@ -976,115 +1013,120 @@
1931 restore work in progress, have been merged from bzrtools into the bzr
1932 core. There are also bug fixes for portability, and for stacked branches.
1933
1934- NEW FEATURES:
1935-
1936- * New ``commit_message_template`` hook that is called by the commit
1937- code to generate a template commit message. (Jelmer Vernooij)
1938-
1939- * New `shelve` and `unshelve` commands allow undoing and redoing changes.
1940- (Aaron Bentley)
1941-
1942- IMPROVEMENTS:
1943-
1944- * ``(Remote)Branch.copy_content_into`` no longer generates the full revision
1945- history just to set the last revision info.
1946- (Andrew Bennetts, John Arbash Meinel)
1947-
1948- * Fetches between formats with different serializers (such as
1949- pack-0.92-subtree and 1.9-rich-root) are faster now. This is due to
1950- operating on batches of 100 revisions at time rather than
1951- one-by-one. (Andrew Bennetts, John Arbash Meinel)
1952-
1953- * Search index files corresponding to pack files we've already used
1954- before searching others, because they are more likely to have the
1955- keys we're looking for. This reduces the number of iix and tix
1956- files accessed when pushing 1 new revision, for instance.
1957- (John Arbash Meinel)
1958-
1959- * Signatures to transfer are calculated more efficiently in
1960- ``item_keys_introduced_by``. (Andrew Bennetts, John Arbash Meinel)
1961-
1962- * The generic fetch code can once again copy revisions and signatures
1963- without extracting them completely to fulltexts and then serializing
1964- them back down into byte strings. This is a significant performance
1965- improvement when fetching from a stacked branch.
1966- (John Arbash Meinel, #300289)
1967-
1968- * When making a large readv() request over ``bzr+ssh``, break up the
1969- request into more manageable chunks. Because the RPC is not yet able
1970- to stream, this helps keep us from buffering too much information at
1971- once. (John Arbash Meinel)
1972-
1973- BUG FIXES:
1974-
1975- * Better message when the user needs to set their Launchpad ID.
1976- (Martin Pool, #289148)
1977-
1978- * ``bzr commit --local`` doesn't access the master branch anymore.
1979- This fixes a regression introduced in 1.9. (Marius Kruger, #299313)
1980-
1981- * Don't call the system ``chdir()`` with an empty path. Sun OS seems
1982- to give an error in that case. Also, don't count on ``getcwd()``
1983- being able to allocate a new buffer, which is a gnu extension.
1984- (John Arbash Meinel, Martin Pool, Harry Hirsch, #297831)
1985-
1986- * Don't crash when requesting log --forward <file> for a revision range
1987- starting with a dotted revno.
1988- (Vincent Ladeuil, #300055)
1989-
1990- * Don't create text deltas spanning stacked repositories; this could
1991- cause "Revision X not present in Y" when later accessing them.
1992- (Martin Pool, #288751)
1993-
1994- * Pack repositories are now able to reload the pack listing and retry
1995- the current operation if another action causes the data to be
1996- repacked. (John Arbash Meinel, #153786)
1997-
1998- * PermissionDenied errors from smart servers no longer cause
1999- "PermissionDenied: "None"" on the client.
2000- (Andrew Bennetts, #299254)
2001-
2002- * Pushing to a stacked pack repository now batches writes, the same
2003- way writes are batched to ordinary pack repository. This makes
2004- pushing to a stacked branch over the network much faster.
2005- (Andrew Bennetts, #294479)
2006-
2007- * TooManyConcurrentRequests no longer occur when a fetch fails and
2008- tries to abort a write group. This allows the root cause (e.g. a
2009- network interruption) to be reported. (Andrew Bennetts, #297014)
2010-
2011- * RemoteRepository.get_parent_map now uses fallback repositories.
2012- (Aaron Bentley, #297991?, #293679?)
2013-
2014- API CHANGES:
2015-
2016- * ``CommitBuilder`` now validates the strings it will be committing,
2017- to ensure that they do not have characters that will not be properly
2018- round-tripped. For now, it just checks for characters that are
2019- invalid in the XML form. (John Arbash Meinel, #295161)
2020-
2021- * Constructor parameters for NewPack (internal to pack repositories)
2022- have changed incompatibly.
2023-
2024- * ``Repository.abort_write_group`` now accepts an optional
2025- ``suppress_errors`` flag. Repository implementations that override
2026- ``abort_write_group`` will need to be updated to accept the new
2027- argument. Subclasses that only override ``_abort_write_group``
2028- don't need to change.
2029-
2030- * Transport implementations must provide copy_tree_to_transport. A default
2031- implementation is provided for Transport subclasses.
2032-
2033- TESTING:
2034-
2035- * ``bzr selftest`` now fails if no doctests are found in a module
2036- that's expected to have them. (Martin Pool)
2037-
2038- * Doctests now only report the first failure. (Martin Pool)
2039+New Features
2040+************
2041+
2042+* New ``commit_message_template`` hook that is called by the commit
2043+ code to generate a template commit message. (Jelmer Vernooij)
2044+
2045+* New `shelve` and `unshelve` commands allow undoing and redoing changes.
2046+ (Aaron Bentley)
2047+
2048+Improvements
2049+************
2050+
2051+* ``(Remote)Branch.copy_content_into`` no longer generates the full revision
2052+ history just to set the last revision info.
2053+ (Andrew Bennetts, John Arbash Meinel)
2054+
2055+* Fetches between formats with different serializers (such as
2056+ pack-0.92-subtree and 1.9-rich-root) are faster now. This is due to
2057+ operating on batches of 100 revisions at time rather than
2058+ one-by-one. (Andrew Bennetts, John Arbash Meinel)
2059+
2060+* Search index files corresponding to pack files we've already used
2061+ before searching others, because they are more likely to have the
2062+ keys we're looking for. This reduces the number of iix and tix
2063+ files accessed when pushing 1 new revision, for instance.
2064+ (John Arbash Meinel)
2065+
2066+* Signatures to transfer are calculated more efficiently in
2067+ ``item_keys_introduced_by``. (Andrew Bennetts, John Arbash Meinel)
2068+
2069+* The generic fetch code can once again copy revisions and signatures
2070+ without extracting them completely to fulltexts and then serializing
2071+ them back down into byte strings. This is a significant performance
2072+ improvement when fetching from a stacked branch.
2073+ (John Arbash Meinel, #300289)
2074+
2075+* When making a large readv() request over ``bzr+ssh``, break up the
2076+ request into more manageable chunks. Because the RPC is not yet able
2077+ to stream, this helps keep us from buffering too much information at
2078+ once. (John Arbash Meinel)
2079+
2080+Bug Fixes
2081+*********
2082+
2083+* Better message when the user needs to set their Launchpad ID.
2084+ (Martin Pool, #289148)
2085+
2086+* ``bzr commit --local`` doesn't access the master branch anymore.
2087+ This fixes a regression introduced in 1.9. (Marius Kruger, #299313)
2088+
2089+* Don't call the system ``chdir()`` with an empty path. Sun OS seems
2090+ to give an error in that case. Also, don't count on ``getcwd()``
2091+ being able to allocate a new buffer, which is a gnu extension.
2092+ (John Arbash Meinel, Martin Pool, Harry Hirsch, #297831)
2093+
2094+* Don't crash when requesting log --forward <file> for a revision range
2095+ starting with a dotted revno.
2096+ (Vincent Ladeuil, #300055)
2097+
2098+* Don't create text deltas spanning stacked repositories; this could
2099+ cause "Revision X not present in Y" when later accessing them.
2100+ (Martin Pool, #288751)
2101+
2102+* Pack repositories are now able to reload the pack listing and retry
2103+ the current operation if another action causes the data to be
2104+ repacked. (John Arbash Meinel, #153786)
2105+
2106+* PermissionDenied errors from smart servers no longer cause
2107+ "PermissionDenied: "None"" on the client.
2108+ (Andrew Bennetts, #299254)
2109+
2110+* Pushing to a stacked pack repository now batches writes, the same
2111+ way writes are batched to ordinary pack repository. This makes
2112+ pushing to a stacked branch over the network much faster.
2113+ (Andrew Bennetts, #294479)
2114+
2115+* TooManyConcurrentRequests no longer occur when a fetch fails and
2116+ tries to abort a write group. This allows the root cause (e.g. a
2117+ network interruption) to be reported. (Andrew Bennetts, #297014)
2118+
2119+* RemoteRepository.get_parent_map now uses fallback repositories.
2120+ (Aaron Bentley, #297991?, #293679?)
2121+
2122+API Changes
2123+***********
2124+
2125+* ``CommitBuilder`` now validates the strings it will be committing,
2126+ to ensure that they do not have characters that will not be properly
2127+ round-tripped. For now, it just checks for characters that are
2128+ invalid in the XML form. (John Arbash Meinel, #295161)
2129+
2130+* Constructor parameters for NewPack (internal to pack repositories)
2131+ have changed incompatibly.
2132+
2133+* ``Repository.abort_write_group`` now accepts an optional
2134+ ``suppress_errors`` flag. Repository implementations that override
2135+ ``abort_write_group`` will need to be updated to accept the new
2136+ argument. Subclasses that only override ``_abort_write_group``
2137+ don't need to change.
2138+
2139+* Transport implementations must provide copy_tree_to_transport. A default
2140+ implementation is provided for Transport subclasses.
2141+
2142+Testing
2143+*******
2144+
2145+* ``bzr selftest`` now fails if no doctests are found in a module
2146+ that's expected to have them. (Martin Pool)
2147+
2148+* Doctests now only report the first failure. (Martin Pool)
2149
2150
2151 bzr 1.9 2008-11-07
2152-------------------
2153+##################
2154
2155 This release of Bazaar adds a new repository format, ``1.9``, with smaller
2156 and more efficient index files. This format can be specified when
2157@@ -1093,132 +1135,139 @@
2158 protocol, makes annotate faster, and uses less memory when making
2159 checkouts or pulling large amounts of data.
2160
2161- BUG FIXES:
2162-
2163- * Fix "invalid property value 'branch-nick' for None" regression with
2164- branches bound to svn branches. (Martin Pool, #293440)
2165-
2166- * Fix SSL/https on Python2.6. (Vincent Ladeuil, #293054)
2167-
2168- * ``SFTPTransport.readv()`` had a bug when requests were out-of-order.
2169- This only triggers some-of-the-time on Knit format repositories.
2170- (John Arbash Meinel, #293746)
2171+Bug Fixes
2172+*********
2173+
2174+* Fix "invalid property value 'branch-nick' for None" regression with
2175+ branches bound to svn branches. (Martin Pool, #293440)
2176+
2177+* Fix SSL/https on Python2.6. (Vincent Ladeuil, #293054)
2178+
2179+* ``SFTPTransport.readv()`` had a bug when requests were out-of-order.
2180+ This only triggers some-of-the-time on Knit format repositories.
2181+ (John Arbash Meinel, #293746)
2182
2183
2184 bzr 1.9rc1 2008-10-31
2185----------------------
2186-
2187- NEW FEATURES:
2188-
2189- * New Branch hook ``transform_fallback_location`` allows a function to
2190- be called when looking up the stacked source. (Michael Hudson)
2191-
2192- * New repository formats ``1.9`` and ``1.9-rich-root``. These have all
2193- the functionality of ``1.6``, but use the new btree indexes.
2194- These indexes are both smaller and faster for access to historical
2195- information. (John Arbash Meinel)
2196-
2197- IMPROVEMENTS:
2198-
2199- * ``BTreeIndex`` code now is able to prefetch extra pages to help tune
2200- the tradeoff between bandwidth and latency. Should be tuned
2201- appropriately to not impact commands which need minimal information,
2202- but provide a significant boost to ones that need more context. Only
2203- has a direct impact on the ``--development2`` format which uses
2204- btree's for the indexes. (John Arbash Meinel)
2205-
2206- * ``bzr dump-btree`` is a hidden command introduced to allow dumping
2207- the contents of a compressed btree file. (John Arbash Meinel)
2208-
2209- * ``bzr pack`` now tells the index builders to optimize for size. For
2210- btree index repositories, this can save 25% of the index size
2211- (mostly in the text indexes). (John Arbash Meinel)
2212-
2213- * ``bzr push`` to an existing branch or repository on a smart server
2214- is faster, due to Bazaar making more use of the ``get_parent_map``
2215- RPC when querying the remote branch's revision graph.
2216- (Andrew Bennetts)
2217-
2218- * default username for bzr+ssh and sftp can be configured in
2219- authentication.conf. (Aaron Bentley)
2220-
2221- * launchpad-login now provides a default username for bzr+ssh and sftp
2222- URLs, allowing username-free URLs to work for everyone. (Aaron Bentley)
2223-
2224- * ``lp:`` lookups no longer include usernames, making them shareable and
2225- shorter. (Aaron Bentley)
2226-
2227- * New ``PackRepository.autopack`` smart server RPC, which does
2228- autopacking entirely on the server. This is much faster than
2229- autopacking via plain file methods, which downloads a large amount
2230- of pack data and then re-uploads the same pack data into a single
2231- file. This fixes a major (although infrequent) cause of lengthy
2232- delays when using a smart server. For example, pushing the 10th
2233- revision to a repository with 9 packs now takes 44 RPCs rather than
2234- 179, and much less bandwidth too. This requires Bazaar 1.9 on both
2235- the client and the server, otherwise the client will fallback to the
2236- slower method. (Andrew Bennetts)
2237-
2238- BUG FIXES:
2239-
2240- * A failure to load a plugin due to an IncompatibleAPI exception is
2241- now correctly reported. (Robert Collins, #279451)
2242-
2243- * API versioning support now has a multiple-version checking api
2244- ``require_any_api``. (Robert Collins, #279447)
2245-
2246- * ``bzr branch --stacked`` from a smart server to a standalone branch
2247- works again. This fixes a regression in 1.7 and 1.8.
2248- (Andrew Bennetts, #270397)
2249-
2250- * ``bzr co`` uses less memory. It used to unpack the entire WT into
2251- memory before writing it to disk. This was a little bit faster, but
2252- consumed lots of memory. (John Arbash Meinel, #269456)
2253-
2254- * ``bzr missing --quiet`` no longer prints messages about whether
2255- there are missing revisions. The exit code indicates whether there
2256- were or not. (Martin Pool, #284748)
2257-
2258- * Fixes to the ``annotate`` code. The fast-path which re-used the
2259- stored deltas was accidentally disabled all the time, instead of
2260- only when a branch was stacked. Second, the code would accidentally
2261- re-use a delta even if it wasn't against the left-parent, this
2262- could only happen if ``bzr reconcile`` decided that the parent
2263- ordering was incorrect in the file graph. (John Arbash Meinel)
2264-
2265- * "Permission denied" errors that occur when pushing a new branch to a
2266- smart server no longer cause tracebacks. (Andrew Bennetts, #278673)
2267-
2268- * Some compatibility fixes for building the extensions with MSVC and
2269- for python2.4. (John Arbash Meinel, #277484)
2270-
2271- * The index logic is now able to reload the list of pack files if and
2272- index ends up disappearing. We still don't reload if the pack data
2273- itself goes missing after checking the index. This bug appears as a
2274- transient failure (file not found) when another process is writing
2275- to the repository. (John Arbash Meinel, #153786)
2276-
2277- * ``bzr switch`` and ``bzr bind`` will now update the branch nickname if
2278- it was previously set. All checkouts will now refer to the bound branch
2279- for a nickname if one was not explicitly set.
2280- (Marius Kruger, #230903)
2281-
2282- DOCUMENTATION:
2283-
2284- * Improved hook documentation. (Michael Ernst)
2285-
2286- API CHANGES:
2287-
2288- * commands.plugins_cmds is now a CommandRegistry, not a dict.
2289-
2290- INTERNALS:
2291-
2292- * New AuthenticationConfig.set_credentials method allows easy programmatic
2293- configuration of authetication credentials.
2294+#####################
2295+
2296+New Features
2297+************
2298+
2299+* New Branch hook ``transform_fallback_location`` allows a function to
2300+ be called when looking up the stacked source. (Michael Hudson)
2301+
2302+* New repository formats ``1.9`` and ``1.9-rich-root``. These have all
2303+ the functionality of ``1.6``, but use the new btree indexes.
2304+ These indexes are both smaller and faster for access to historical
2305+ information. (John Arbash Meinel)
2306+
2307+Improvements
2308+************
2309+
2310+* ``BTreeIndex`` code now is able to prefetch extra pages to help tune
2311+ the tradeoff between bandwidth and latency. Should be tuned
2312+ appropriately to not impact commands which need minimal information,
2313+ but provide a significant boost to ones that need more context. Only
2314+ has a direct impact on the ``--development2`` format which uses
2315+ btree's for the indexes. (John Arbash Meinel)
2316+
2317+* ``bzr dump-btree`` is a hidden command introduced to allow dumping
2318+ the contents of a compressed btree file. (John Arbash Meinel)
2319+
2320+* ``bzr pack`` now tells the index builders to optimize for size. For
2321+ btree index repositories, this can save 25% of the index size
2322+ (mostly in the text indexes). (John Arbash Meinel)
2323+
2324+* ``bzr push`` to an existing branch or repository on a smart server
2325+ is faster, due to Bazaar making more use of the ``get_parent_map``
2326+ RPC when querying the remote branch's revision graph.
2327+ (Andrew Bennetts)
2328+
2329+* default username for bzr+ssh and sftp can be configured in
2330+ authentication.conf. (Aaron Bentley)
2331+
2332+* launchpad-login now provides a default username for bzr+ssh and sftp
2333+ URLs, allowing username-free URLs to work for everyone. (Aaron Bentley)
2334+
2335+* ``lp:`` lookups no longer include usernames, making them shareable and
2336+ shorter. (Aaron Bentley)
2337+
2338+* New ``PackRepository.autopack`` smart server RPC, which does
2339+ autopacking entirely on the server. This is much faster than
2340+ autopacking via plain file methods, which downloads a large amount
2341+ of pack data and then re-uploads the same pack data into a single
2342+ file. This fixes a major (although infrequent) cause of lengthy
2343+ delays when using a smart server. For example, pushing the 10th
2344+ revision to a repository with 9 packs now takes 44 RPCs rather than
2345+ 179, and much less bandwidth too. This requires Bazaar 1.9 on both
2346+ the client and the server, otherwise the client will fallback to the
2347+ slower method. (Andrew Bennetts)
2348+
2349+Bug Fixes
2350+*********
2351+
2352+* A failure to load a plugin due to an IncompatibleAPI exception is
2353+ now correctly reported. (Robert Collins, #279451)
2354+
2355+* API versioning support now has a multiple-version checking api
2356+ ``require_any_api``. (Robert Collins, #279447)
2357+
2358+* ``bzr branch --stacked`` from a smart server to a standalone branch
2359+ works again. This fixes a regression in 1.7 and 1.8.
2360+ (Andrew Bennetts, #270397)
2361+
2362+* ``bzr co`` uses less memory. It used to unpack the entire WT into
2363+ memory before writing it to disk. This was a little bit faster, but
2364+ consumed lots of memory. (John Arbash Meinel, #269456)
2365+
2366+* ``bzr missing --quiet`` no longer prints messages about whether
2367+ there are missing revisions. The exit code indicates whether there
2368+ were or not. (Martin Pool, #284748)
2369+
2370+* Fixes to the ``annotate`` code. The fast-path which re-used the
2371+ stored deltas was accidentally disabled all the time, instead of
2372+ only when a branch was stacked. Second, the code would accidentally
2373+ re-use a delta even if it wasn't against the left-parent, this
2374+ could only happen if ``bzr reconcile`` decided that the parent
2375+ ordering was incorrect in the file graph. (John Arbash Meinel)
2376+
2377+* "Permission denied" errors that occur when pushing a new branch to a
2378+ smart server no longer cause tracebacks. (Andrew Bennetts, #278673)
2379+
2380+* Some compatibility fixes for building the extensions with MSVC and
2381+ for python2.4. (John Arbash Meinel, #277484)
2382+
2383+* The index logic is now able to reload the list of pack files if and
2384+ index ends up disappearing. We still don't reload if the pack data
2385+ itself goes missing after checking the index. This bug appears as a
2386+ transient failure (file not found) when another process is writing
2387+ to the repository. (John Arbash Meinel, #153786)
2388+
2389+* ``bzr switch`` and ``bzr bind`` will now update the branch nickname if
2390+ it was previously set. All checkouts will now refer to the bound branch
2391+ for a nickname if one was not explicitly set.
2392+ (Marius Kruger, #230903)
2393+
2394+Documentation
2395+*************
2396+
2397+* Improved hook documentation. (Michael Ernst)
2398+
2399+API Changes
2400+***********
2401+
2402+* commands.plugins_cmds is now a CommandRegistry, not a dict.
2403+
2404+Internals
2405+*********
2406+
2407+* New AuthenticationConfig.set_credentials method allows easy programmatic
2408+ configuration of authetication credentials.
2409
2410
2411 bzr 1.8 2008-10-16
2412-------------------
2413+##################
2414
2415 Bazaar 1.8 includes several fixes that improve working tree performance,
2416 display of revision logs, and merges. The bzr testsuite now passes on OS
2417@@ -1226,231 +1275,242 @@
2418 smartserver code has gained several bug fixes and performance
2419 improvements, and can now run server-side hooks within an http server.
2420
2421- BUG FIXES:
2422-
2423- * Fix "Must end write group" error when another error occurs during
2424- ``bzr push``. (Andrew Bennetts, #230902)
2425-
2426- PORTABILITY:
2427-
2428- * Some Pyrex versions require the WIN32 macro defined to compile on
2429- that platform. (Alexander Belchenko, Martin Pool, #277481)
2430+Bug Fixes
2431+*********
2432+
2433+* Fix "Must end write group" error when another error occurs during
2434+ ``bzr push``. (Andrew Bennetts, #230902)
2435+
2436+Portability
2437+***********
2438+
2439+* Some Pyrex versions require the WIN32 macro defined to compile on
2440+ that platform. (Alexander Belchenko, Martin Pool, #277481)
2441
2442
2443 bzr 1.8rc1 2008-10-07
2444----------------------
2445-
2446- CHANGES:
2447-
2448- * ``bzr log file`` has been changed. It now uses a different method
2449- for determining which revisions to show as merging the changes to
2450- the file. It now only shows revisions which merged the change
2451- towards your mainline. This simplifies the output, makes it faster,
2452- and reduces memory consumption. (John Arbash Meinel)
2453-
2454- * ``bzr merge`` now defaults to having ``--reprocess`` set, whenever
2455- ``--show-base`` is not supplied. (John Arbash Meinel)
2456-
2457- * ``bzr+http//`` will now optionally load plugins and write logs on the
2458- server. (Marius Kruger)
2459-
2460- * ``bzrlib._dirstate_helpers_c.pyx`` does not compile correctly with
2461- Pyrex 0.9.4.1 (it generates C code which causes segfaults). We
2462- explicitly blacklist that version of the compiler for that
2463- extension. Packaged versions will include .c files created with
2464- pyrex >= 0.9.6 so it doesn't effect releases, only users running
2465- from the source tree. (John Arbash Meinel, #276868)
2466-
2467- FEATURES:
2468-
2469- * bzr is now compatible with python-2.6. python-2.6 is not yet officially
2470- supported (nor released, tests were conducted with the dev version of
2471- python-2.6rc2), but all known problems have been fixed. Feedback
2472- welcome.
2473- (Vincent Ladeuil, #269535)
2474-
2475- IMPROVEMENTS:
2476-
2477- * ``bzr annotate`` will now include uncommitted changes from the local
2478- working tree by default. Such uncommitted changes are given the
2479- revision number they would get if a commit was done, followed with a
2480- ? to indicate that its not actually known. (Robert Collins, #3439)
2481-
2482- * ``bzr branch`` now accepts a ``--standalone`` option, which creates a
2483- standalone branch regardless of the presence of shared repositories.
2484- (Daniel Watkins)
2485-
2486- * ``bzr push`` is faster in the case there are no new revisions to
2487- push. It is also faster if there are no tags in the local branch.
2488- (Andrew Bennetts)
2489-
2490- * File changes during a commit will update the tree stat cache.
2491- (Robert Collins)
2492-
2493- * Location aliases can now accept a trailing path. (Micheal Hudson)
2494-
2495- * New hooks ``Lock.hooks`` when LockDirs are acquired and released.
2496- (Robert Collins, MartinPool)
2497-
2498- * Switching in heavyweight checkouts uses the master branch's context, not
2499- the checkout's context. (Adrian Wilkins)
2500-
2501- * ``status`` on large trees is now faster, due to optimisations in the
2502- walkdirs code. Of particular note, the walkdirs code now performs
2503- a temporary ``chdir()`` while reading a single directory; if your
2504- platform has non thread-local current working directories (and is
2505- not windows which has its own implementation), this may introduce a
2506- race condition during concurrent uses of bzrlib. The bzrlib CLI
2507- will not encounter this as it is single threaded for working tree
2508- operations. (Robert Collins)
2509-
2510- * The C extensions now build on python 2.4 (Robert Collins, #271939)
2511-
2512- * The ``-Dhpss`` debug flag now reports the number of smart server
2513- calls per medium to stderr. This is in addition to the existing
2514- detailed logging to the .bzr.log trace file. (Andrew Bennetts)
2515-
2516- BUG FIXES:
2517-
2518- * Avoid random failures arising from misinterpreted ``errno`` values
2519- in ``_readdir_pyx.read_dir``.
2520- (Martin Pool, #279381)
2521-
2522- * Branching from a shared repository on a smart server into a new
2523- repository now preserves the repository format.
2524- (Andrew Bennetts, #269214)
2525-
2526- * ``bzr log`` now accepts a ``--change`` option.
2527- (Vincent Ladeuil, #248427)
2528-
2529- * ``bzr missing`` now accepts an ``--include-merges`` option.
2530- (Vincent Ladeuil, #233817)
2531-
2532- * Don't try to filter (internally) '.bzr' from the files to be deleted if
2533- it's not there.
2534- (Vincent Ladeuil, #272648)
2535-
2536- * Fix '_in_buffer' AttributeError when using the -Dhpss debug flag.
2537- (Andrew Bennetts)
2538-
2539- * Fix TooManyConcurrentRequests errors caused by a connection failure
2540- when doing ``bzr pull`` or ``bzr merge`` from a ``bzr+ssh`` URL.
2541- (Andrew Bennetts, #246233)
2542-
2543- * Fixed ``bzr st -r branch:PATH_TO_BRANCH`` where the other branch
2544- is in a different repository than the current one.
2545- (Lukáš Lalinský, #144421)
2546-
2547- * Make the first line of the manpage preamble a comment again.
2548- (David Futcher, #242106)
2549-
2550- * Remove use of optional parameter in GSSAPI FTP support, since
2551- it breaks newer versions of Python-Kerberos. (Jelmer Vernooij)
2552-
2553- * The autopacking logic will now always create a single new pack from
2554- all of the content which it deems is worth moving. This avoids the
2555- 'repack a single pack' bug and should result in better packing
2556- overall. (John Arbash Meinel, #242510, #172644)
2557-
2558- * Trivial documentation fix.
2559- (John Arbash Meinel, #270471)
2560-
2561- * ``bzr switch`` and ``bzr bind`` will now update the branch nickname if
2562- it was previously set. All checkouts will now refer to the bound branch
2563- for a nickname if one was not explicitly set.
2564- (Marius Kruger, #230903)
2565-
2566- DOCUMENTATION:
2567-
2568- * Explain revision/range identifiers. (Daniel Clemente)
2569-
2570- API CHANGES:
2571-
2572- * ``CommitBuilder.record_entry_contents`` returns one more element in
2573- its result tuple - an optional file system hash for the hash cache
2574- to use. (Robert Collins)
2575-
2576- * ``dirstate.DirState.update_entry`` will now only calculate the sha1
2577- of a file if it is likely to be needed in determining the output
2578- of iter_changes. (Robert Collins)
2579-
2580- * The PackRepository, RepositoryPackCollection, NewPack classes have a
2581- slightly changed interface to support different index types; as a
2582- result other users of these classes need to supply the index types
2583- they want. (Robert Collins)
2584-
2585- TESTING:
2586-
2587- * ``bzrlib.tests.repository_implementations`` has been renamed to
2588- ``bzrlib.tests.per_repository`` so that we have a common structure
2589- (and it is shorter). (John Arbash Meinel, #239343)
2590-
2591- * ``LocalTransport.abspath()`` now returns a drive letter if the
2592- transport has one, fixing numerous tests on Windows.
2593- (Mark Hammond)
2594-
2595- * PreviewTree is now tested via intertree_implementations.
2596- (Aaron Bentley)
2597-
2598- * The full test suite is passing again on OSX.
2599- (Guillermo Gonzalez, Vincent Ladeuil)
2600-
2601- * The full test suite passes when run with ``-Eallow_debug``.
2602- (Andrew Bennetts)
2603-
2604- INTERNALS:
2605-
2606- * A new hook, ``Branch.open``, has been added, which is called when
2607- branch objects are opened. (Robert Collins)
2608-
2609- * ``bzrlib.osutils._walkdirs_utf8`` has been refactored into common
2610- tree walking, and modular directory listing code to aid future
2611- performance optimisations and refactoring. (Robert Collins)
2612-
2613- * ``bzrlib.trace.debug_memory`` can be used to get a quick memory dump
2614- in the middle of processing. It only reports memory if
2615- ``/proc/PID/status`` is available. (John Arbash Meinel)
2616-
2617- * New method ``RevisionSpec.as_tree`` for representing the revision
2618- specifier as a revision tree object. (Lukáš Lalinský)
2619-
2620- * New race-free method on MutableTree ``get_file_with_stat`` for use
2621- when generating stat cache results. (Robert Collins)
2622-
2623- * New win32utils.get_local_appdata_location() provides access to a local
2624- directory for storing data. (Mark Hammond)
2625-
2626- * To be compatible with python-2.6 a few new rules should be
2627- observed. 'message' attribute can't be used anymore in exception
2628- classes, 'sha' and 'md5' modules have been deprecated (use
2629- osutils.[md5|sha]), object__init__ and object.__new__ don't accept
2630- parameters anymore.
2631- (Vincent Ladeuil)
2632+#####################
2633+
2634+Changes
2635+*******
2636+
2637+* ``bzr log file`` has been changed. It now uses a different method
2638+ for determining which revisions to show as merging the changes to
2639+ the file. It now only shows revisions which merged the change
2640+ towards your mainline. This simplifies the output, makes it faster,
2641+ and reduces memory consumption. (John Arbash Meinel)
2642+
2643+* ``bzr merge`` now defaults to having ``--reprocess`` set, whenever
2644+ ``--show-base`` is not supplied. (John Arbash Meinel)
2645+
2646+* ``bzr+http//`` will now optionally load plugins and write logs on the
2647+ server. (Marius Kruger)
2648+
2649+* ``bzrlib._dirstate_helpers_c.pyx`` does not compile correctly with
2650+ Pyrex 0.9.4.1 (it generates C code which causes segfaults). We
2651+ explicitly blacklist that version of the compiler for that
2652+ extension. Packaged versions will include .c files created with
2653+ pyrex >= 0.9.6 so it doesn't effect releases, only users running
2654+ from the source tree. (John Arbash Meinel, #276868)
2655+
2656+Features
2657+********
2658+
2659+* bzr is now compatible with python-2.6. python-2.6 is not yet officially
2660+ supported (nor released, tests were conducted with the dev version of
2661+ python-2.6rc2), but all known problems have been fixed. Feedback
2662+ welcome.
2663+ (Vincent Ladeuil, #269535)
2664+
2665+Improvements
2666+************
2667+
2668+* ``bzr annotate`` will now include uncommitted changes from the local
2669+ working tree by default. Such uncommitted changes are given the
2670+ revision number they would get if a commit was done, followed with a
2671+ ? to indicate that its not actually known. (Robert Collins, #3439)
2672+
2673+* ``bzr branch`` now accepts a ``--standalone`` option, which creates a
2674+ standalone branch regardless of the presence of shared repositories.
2675+ (Daniel Watkins)
2676+
2677+* ``bzr push`` is faster in the case there are no new revisions to
2678+ push. It is also faster if there are no tags in the local branch.
2679+ (Andrew Bennetts)
2680+
2681+* File changes during a commit will update the tree stat cache.
2682+ (Robert Collins)
2683+
2684+* Location aliases can now accept a trailing path. (Micheal Hudson)
2685+
2686+* New hooks ``Lock.hooks`` when LockDirs are acquired and released.
2687+ (Robert Collins, MartinPool)
2688+
2689+* Switching in heavyweight checkouts uses the master branch's context, not
2690+ the checkout's context. (Adrian Wilkins)
2691+
2692+* ``status`` on large trees is now faster, due to optimisations in the
2693+ walkdirs code. Of particular note, the walkdirs code now performs
2694+ a temporary ``chdir()`` while reading a single directory; if your
2695+ platform has non thread-local current working directories (and is
2696+ not windows which has its own implementation), this may introduce a
2697+ race condition during concurrent uses of bzrlib. The bzrlib CLI
2698+ will not encounter this as it is single threaded for working tree
2699+ operations. (Robert Collins)
2700+
2701+* The C extensions now build on python 2.4 (Robert Collins, #271939)
2702+
2703+* The ``-Dhpss`` debug flag now reports the number of smart server
2704+ calls per medium to stderr. This is in addition to the existing
2705+ detailed logging to the .bzr.log trace file. (Andrew Bennetts)
2706+
2707+Bug Fixes
2708+*********
2709+
2710+* Avoid random failures arising from misinterpreted ``errno`` values
2711+ in ``_readdir_pyx.read_dir``.
2712+ (Martin Pool, #279381)
2713+
2714+* Branching from a shared repository on a smart server into a new
2715+ repository now preserves the repository format.
2716+ (Andrew Bennetts, #269214)
2717+
2718+* ``bzr log`` now accepts a ``--change`` option.
2719+ (Vincent Ladeuil, #248427)
2720+
2721+* ``bzr missing`` now accepts an ``--include-merges`` option.
2722+ (Vincent Ladeuil, #233817)
2723+
2724+* Don't try to filter (internally) '.bzr' from the files to be deleted if
2725+ it's not there.
2726+ (Vincent Ladeuil, #272648)
2727+
2728+* Fix '_in_buffer' AttributeError when using the -Dhpss debug flag.
2729+ (Andrew Bennetts)
2730+
2731+* Fix TooManyConcurrentRequests errors caused by a connection failure
2732+ when doing ``bzr pull`` or ``bzr merge`` from a ``bzr+ssh`` URL.
2733+ (Andrew Bennetts, #246233)
2734+
2735+* Fixed ``bzr st -r branch:PATH_TO_BRANCH`` where the other branch
2736+ is in a different repository than the current one.
2737+ (Lukáš Lalinský, #144421)
2738+
2739+* Make the first line of the manpage preamble a comment again.
2740+ (David Futcher, #242106)
2741+
2742+* Remove use of optional parameter in GSSAPI FTP support, since
2743+ it breaks newer versions of Python-Kerberos. (Jelmer Vernooij)
2744+
2745+* The autopacking logic will now always create a single new pack from
2746+ all of the content which it deems is worth moving. This avoids the
2747+ 'repack a single pack' bug and should result in better packing
2748+ overall. (John Arbash Meinel, #242510, #172644)
2749+
2750+* Trivial documentation fix.
2751+ (John Arbash Meinel, #270471)
2752+
2753+* ``bzr switch`` and ``bzr bind`` will now update the branch nickname if
2754+ it was previously set. All checkouts will now refer to the bound branch
2755+ for a nickname if one was not explicitly set.
2756+ (Marius Kruger, #230903)
2757+
2758+Documentation
2759+*************
2760+
2761+* Explain revision/range identifiers. (Daniel Clemente)
2762+
2763+API Changes
2764+***********
2765+
2766+* ``CommitBuilder.record_entry_contents`` returns one more element in
2767+ its result tuple - an optional file system hash for the hash cache
2768+ to use. (Robert Collins)
2769+
2770+* ``dirstate.DirState.update_entry`` will now only calculate the sha1
2771+ of a file if it is likely to be needed in determining the output
2772+ of iter_changes. (Robert Collins)
2773+
2774+* The PackRepository, RepositoryPackCollection, NewPack classes have a
2775+ slightly changed interface to support different index types; as a
2776+ result other users of these classes need to supply the index types
2777+ they want. (Robert Collins)
2778+
2779+Testing
2780+*******
2781+
2782+* ``bzrlib.tests.repository_implementations`` has been renamed to
2783+ ``bzrlib.tests.per_repository`` so that we have a common structure
2784+ (and it is shorter). (John Arbash Meinel, #239343)
2785+
2786+* ``LocalTransport.abspath()`` now returns a drive letter if the
2787+ transport has one, fixing numerous tests on Windows.
2788+ (Mark Hammond)
2789+
2790+* PreviewTree is now tested via intertree_implementations.
2791+ (Aaron Bentley)
2792+
2793+* The full test suite is passing again on OSX.
2794+ (Guillermo Gonzalez, Vincent Ladeuil)
2795+
2796+* The full test suite passes when run with ``-Eallow_debug``.
2797+ (Andrew Bennetts)
2798+
2799+Internals
2800+*********
2801+
2802+* A new hook, ``Branch.open``, has been added, which is called when
2803+ branch objects are opened. (Robert Collins)
2804+
2805+* ``bzrlib.osutils._walkdirs_utf8`` has been refactored into common
2806+ tree walking, and modular directory listing code to aid future
2807+ performance optimisations and refactoring. (Robert Collins)
2808+
2809+* ``bzrlib.trace.debug_memory`` can be used to get a quick memory dump
2810+ in the middle of processing. It only reports memory if
2811+ ``/proc/PID/status`` is available. (John Arbash Meinel)
2812+
2813+* New method ``RevisionSpec.as_tree`` for representing the revision
2814+ specifier as a revision tree object. (Lukáš Lalinský)
2815+
2816+* New race-free method on MutableTree ``get_file_with_stat`` for use
2817+ when generating stat cache results. (Robert Collins)
2818+
2819+* New win32utils.get_local_appdata_location() provides access to a local
2820+ directory for storing data. (Mark Hammond)
2821+
2822+* To be compatible with python-2.6 a few new rules should be
2823+ observed. 'message' attribute can't be used anymore in exception
2824+ classes, 'sha' and 'md5' modules have been deprecated (use
2825+ osutils.[md5|sha]), object__init__ and object.__new__ don't accept
2826+ parameters anymore.
2827+ (Vincent Ladeuil)
2828
2829
2830 bzr 1.7.1 2008-10-01
2831---------------------
2832+####################
2833
2834- No changes from 1.7.1rc1.
2835+No changes from 1.7.1rc1.
2836
2837
2838 bzr 1.7.1rc1 2008-09-24
2839------------------------
2840+#######################
2841
2842 This release just includes an update to how the merge algorithm handles
2843 file paths when we encounter complex history.
2844
2845- FEATURES:
2846+Features
2847+********
2848
2849- * If we encounter a criss-cross in history, use information from
2850- direct Least Common Ancestors to resolve inventory shape (locations
2851- of files, adds, deletes, etc). This is similar in concept to using
2852- ``--lca`` for merging file texts, only applied to paths.
2853- (John Arbash Meinel)
2854+* If we encounter a criss-cross in history, use information from
2855+ direct Least Common Ancestors to resolve inventory shape (locations
2856+ of files, adds, deletes, etc). This is similar in concept to using
2857+ ``--lca`` for merging file texts, only applied to paths.
2858+ (John Arbash Meinel)
2859
2860
2861 bzr 1.7 2008-09-23
2862-------------------
2863+##################
2864
2865 This release includes many bug fixes and a few performance and feature
2866 improvements. ``bzr rm`` will now scan for missing files and remove them,
2867@@ -1459,39 +1519,41 @@
2868 been brought in, with an eye on using it in a future repository format.
2869 There are only minor installer changes since bzr-1.7rc2.
2870
2871- FEATURES
2872+Features
2873+********
2874
2875- * Some small updates to the win32 installer. Include localization
2876- files found in plugins, and include the builtin distutils as part of
2877- packaging qbzr. (Mark Hammond)
2878+* Some small updates to the win32 installer. Include localization
2879+ files found in plugins, and include the builtin distutils as part of
2880+ packaging qbzr. (Mark Hammond)
2881
2882
2883 bzr 1.7rc2 2008-09-17
2884----------------------
2885+#####################
2886
2887 A few bug fixes from 1.7rc1. The biggest change is a new
2888 ``RemoteBranch.get_stacked_on_url`` rpc. This allows clients that are
2889 trying to access a Stacked branch over the smart protocol, to properly
2890 connect to the stacked-on location.
2891
2892- BUG FIXES:
2893-
2894- * Branching from a shared repository on a smart server into a new
2895- repository now preserves the repository format.
2896- (Andrew Bennetts, #269214)
2897-
2898- * Branching from a stacked branch via ``bzr+ssh`` can properly connect
2899- to the stacked-on branch. (Martin Pool, #261315)
2900-
2901- * ``bzr init`` no longer re-opens the BzrDir multiple times.
2902- (Vincent Ladeuil)
2903-
2904- * Fix '_in_buffer' AttributeError when using the -Dhpss debug flag.
2905- (Andrew Bennetts)
2906+Bug Fixes
2907+*********
2908+
2909+* Branching from a shared repository on a smart server into a new
2910+ repository now preserves the repository format.
2911+ (Andrew Bennetts, #269214)
2912+
2913+* Branching from a stacked branch via ``bzr+ssh`` can properly connect
2914+ to the stacked-on branch. (Martin Pool, #261315)
2915+
2916+* ``bzr init`` no longer re-opens the BzrDir multiple times.
2917+ (Vincent Ladeuil)
2918+
2919+* Fix '_in_buffer' AttributeError when using the -Dhpss debug flag.
2920+ (Andrew Bennetts)
2921
2922
2923 bzr 1.7rc1 2008-09-09
2924----------------------
2925+#####################
2926
2927 This release candidate for bzr 1.7 has several bug fixes and a few
2928 performance and feature improvements. ``bzr rm`` will now scan for
2929@@ -1501,187 +1563,195 @@
2930 it in a future repository format.
2931
2932
2933- CHANGES:
2934-
2935- * ``bzr export`` can now export a subdirectory of a project.
2936- (Robert Collins)
2937-
2938- * ``bzr remove-tree`` will now refuse to remove a tree with uncommitted
2939- changes, unless the ``--force`` option is specified.
2940- (Lukáš Lalinský, #74101)
2941-
2942- * ``bzr rm`` will now scan for files that are missing and remove just
2943- them automatically, much as ``bzr add`` scans for new files that
2944- are not ignored and adds them automatically. (Robert Collins)
2945-
2946- FEATURES
2947-
2948- * Support for GSSAPI authentication when using FTP as documented in
2949- RFC2228. (Jelmer Vernooij, #49623)
2950-
2951- * Add support for IPv6 in the smart server. (Jelmer Vernooij, #165014)
2952-
2953- IMPROVEMENTS:
2954-
2955- * A url like ``log+file:///tmp`` will log all access to that Transport
2956- to ``.bzr.log``, which may help in debugging or profiling.
2957- (Martin Pool)
2958-
2959- * ``bzr branch`` and ``bzr push`` use the default stacking policy if the
2960- branch format supports it. (Aaron Bentley)
2961-
2962- * ``bzr init`` and ``bzr init-repo`` will now print out the same as
2963- ``bzr info`` if it completed successfully.
2964- (Marius Kruger)
2965-
2966- * ``bzr uncommit`` logs the old tip revision id, and displays how to
2967- restore the branch to that tip using ``bzr pull``. This allows you
2968- to recover if you realize you uncommitted the wrong thing.
2969- (John Arbash Meinel)
2970-
2971- * Fix problems in accessing stacked repositories over ``bzr://``.
2972- (Martin Pool, #261315)
2973-
2974- * ``SFTPTransport.readv()`` was accidentally using ``list += string``,
2975- which 'works', but adds each character separately to the list,
2976- rather than using ``list.append(string)``. Fixing this makes the
2977- SFTP transport a little bit faster (~20%) and use a bit less memory.
2978- (John Arbash Meinel)
2979-
2980- * When reading index files, if we happen to read the whole file in a
2981- single request treat it as a ``_buffer_all`` request. This happens
2982- most often on small indexes over remote transports, where we default
2983- to reading 64kB. It saves a round trip for each small index during
2984- fetch operations. Also, if we have read more than 50% of an index
2985- file, trigger a ``_buffer_all`` on the next request. This works
2986- around some inefficiencies because reads don't fall neatly on page
2987- boundaries, so we would ignore those bytes, but request them again
2988- later. This could trigger a total read size of more than the whole
2989- file. (John Arbash Meinel)
2990-
2991- BUG FIXES:
2992-
2993- * ``bzr rm`` is now aliased to ``bzr del`` for the convenience of svn
2994- users. (Robert Collins, #205416)
2995-
2996- * Catch the infamous "select/poll returned error" which occurs when
2997- pycurl try to send a body request to an HTTP/1.0 server which has
2998- already refused to handle the request. (Vincent Ladeuil, #225020)
2999-
3000- * Fix ``ObjectNotLocked`` errors when using various commands
3001- (including ``bzr cat`` and ``bzr annotate``) in combination with a
3002- smart server URL. (Andrew Bennetts, #237067)
3003-
3004- * ``FTPTransport.stat()`` would return ``0000`` as the permission bits
3005- for the containing ``.bzr/`` directory (it does not implement
3006- permissions). This would cause us to set all subdirectories to
3007- ``0700`` and files to ``0600`` rather than leaving them unmodified.
3008- Now we ignore ``0000`` as the permissions and assume they are
3009- invalid. (John Arbash Meinel, #259855)
3010-
3011- * Merging from a previously joined branch will no longer cause
3012- a traceback. (Jelmer Vernooij, #203376)
3013-
3014- * Pack operations on windows network shares will work even with large
3015- files. (Robert Collins, #255656)
3016-
3017- * Running ``bzr st PATH_TO_TREE`` will no longer suppress merge
3018- status. Status is also about 7% faster on mozilla sized trees
3019- when the path to the root of the tree has been given. Users of
3020- the internal ``show_tree_status`` function should be aware that
3021- the show_pending flag is now authoritative for showing pending
3022- merges, as it was originally. (Robert Collins, #225204)
3023-
3024- * Set valid default _param_name for Option so that ListOption can embed
3025- '-' in names. (Vincent Ladeuil, #263249)
3026-
3027- * Show proper error rather than traceback when an unknown revision
3028- id is specified to ``bzr cat-revision``. (Jelmer Vernooij, #175569)
3029-
3030- * Trailing text in the dirstate file could cause the C dirstate parser
3031- to try to allocate an invalid amount of memory. We now properly
3032- check and test for parsing a dirstate with invalid trailing data.
3033- (John Arbash Meinel, #186014)
3034-
3035- * Unexpected error responses from a smart server no longer cause the
3036- client to traceback. (Andrew Bennetts, #263527)
3037-
3038- * Use a Windows api function to get a Unicode host name, rather than
3039- assuming the host name is ascii.
3040- (Mark Hammond, John Arbash Meinel, #256550)
3041-
3042- * ``WorkingTree4`` trees will now correctly report missing-and-new
3043- paths in the output of ``iter_changes``. (Robert Collins)
3044-
3045- DOCUMENTATION:
3046-
3047- * Updated developer documentation. (Martin Pool)
3048-
3049- API CHANGES:
3050-
3051- * Exporters now take 4 parameters. (Robert Collins)
3052-
3053- * ``Tree.iter_changes`` will now return False for the content change
3054- field when a file is missing in the basis tree and not present in
3055- the target tree. Previously it returned True unconditionally.
3056- (Robert Collins)
3057-
3058- * The deprecated ``Branch.abspath`` and unimplemented
3059- ``Branch.rename_one`` and ``Branch.move`` were removed. (Jelmer Vernooij)
3060-
3061- * BzrDir.clone_on_transport implementations must now accept a stacked_on
3062- parameter. (Aaron Bentley)
3063-
3064- * BzrDir.cloning_metadir implementations must now take a require_stacking
3065- parameter. (Aaron Bentley)
3066-
3067- TESTING:
3068-
3069- * ``addCleanup`` now takes ``*arguments`` and ``**keyword_arguments``
3070- which are then passed to the cleanup callable as it is run. In
3071- addition, addCleanup no longer requires that the callables passed to
3072- it be unique. (Jonathan Lange)
3073-
3074- * Fix some tests that fail on Windows because files are deleted while
3075- still in use.
3076- (Mark Hammond)
3077-
3078- * ``selftest``'s ``--starting-with`` option can now use predefined
3079- prefixes so that one can say ``bzr selftest -s bp.loom`` instead of
3080- ``bzr selftest -s bzrlib.plugins.loom``. (Vincent Ladeuil)
3081-
3082- * ``selftest``'s ``--starting-with`` option now accepts multiple values.
3083- (Vincent Ladeuil)
3084-
3085- INTERNALS:
3086-
3087- * A new plugin interface, ``bzrlib.log.log_adapters``, has been added.
3088- This allows dynamic log output filtering by plugins.
3089- (Robert Collins)
3090-
3091- * ``bzrlib.btree_index`` is now available, providing a b-tree index
3092- layer. The design is memory conservative (limited memory cache),
3093- faster to seek (approx 100 nodes per page, gives 100-way fan out),
3094- and stores compressed pages allowing more keys per page.
3095- (Robert Collins, John Arbash Meinel)
3096-
3097- * ``bzrlib.diff.DiffTree.show_diff`` now skips changes where the kind
3098- is unknown in both source and target.
3099- (Robert Collins, Aaron Bentley)
3100-
3101- * ``GraphIndexBuilder.add_node`` and ``BTreeBuilder`` have been
3102- streamlined a bit. This should make creating large indexes faster.
3103- (In benchmarking, it now takes less time to create a BTree index than
3104- it takes to read the GraphIndex one.) (John Arbash Meinel)
3105-
3106- * Mail clients for `bzr send` are now listed in a registry. This
3107- allows plugins to add new clients by registering them with
3108- ``bzrlib.mail_client.mail_client_registry``. All of the built-in
3109- clients now use this mechanism. (Neil Martinsen-Burrell)
3110+Changes
3111+*******
3112+
3113+* ``bzr export`` can now export a subdirectory of a project.
3114+ (Robert Collins)
3115+
3116+* ``bzr remove-tree`` will now refuse to remove a tree with uncommitted
3117+ changes, unless the ``--force`` option is specified.
3118+ (Lukáš Lalinský, #74101)
3119+
3120+* ``bzr rm`` will now scan for files that are missing and remove just
3121+ them automatically, much as ``bzr add`` scans for new files that
3122+ are not ignored and adds them automatically. (Robert Collins)
3123+
3124+Features
3125+********
3126+
3127+* Support for GSSAPI authentication when using FTP as documented in
3128+ RFC2228. (Jelmer Vernooij, #49623)
3129+
3130+* Add support for IPv6 in the smart server. (Jelmer Vernooij, #165014)
3131+
3132+Improvements
3133+************
3134+
3135+* A url like ``log+file:///tmp`` will log all access to that Transport
3136+ to ``.bzr.log``, which may help in debugging or profiling.
3137+ (Martin Pool)
3138+
3139+* ``bzr branch`` and ``bzr push`` use the default stacking policy if the
3140+ branch format supports it. (Aaron Bentley)
3141+
3142+* ``bzr init`` and ``bzr init-repo`` will now print out the same as
3143+ ``bzr info`` if it completed successfully.
3144+ (Marius Kruger)
3145+
3146+* ``bzr uncommit`` logs the old tip revision id, and displays how to
3147+ restore the branch to that tip using ``bzr pull``. This allows you
3148+ to recover if you realize you uncommitted the wrong thing.
3149+ (John Arbash Meinel)
3150+
3151+* Fix problems in accessing stacked repositories over ``bzr://``.
3152+ (Martin Pool, #261315)
3153+
3154+* ``SFTPTransport.readv()`` was accidentally using ``list += string``,
3155+ which 'works', but adds each character separately to the list,
3156+ rather than using ``list.append(string)``. Fixing this makes the
3157+ SFTP transport a little bit faster (~20%) and use a bit less memory.
3158+ (John Arbash Meinel)
3159+
3160+* When reading index files, if we happen to read the whole file in a
3161+ single request treat it as a ``_buffer_all`` request. This happens
3162+ most often on small indexes over remote transports, where we default
3163+ to reading 64kB. It saves a round trip for each small index during
3164+ fetch operations. Also, if we have read more than 50% of an index
3165+ file, trigger a ``_buffer_all`` on the next request. This works
3166+ around some inefficiencies because reads don't fall neatly on page
3167+ boundaries, so we would ignore those bytes, but request them again
3168+ later. This could trigger a total read size of more than the whole
3169+ file. (John Arbash Meinel)
3170+
3171+Bug Fixes
3172+*********
3173+
3174+* ``bzr rm`` is now aliased to ``bzr del`` for the convenience of svn
3175+ users. (Robert Collins, #205416)
3176+
3177+* Catch the infamous "select/poll returned error" which occurs when
3178+ pycurl try to send a body request to an HTTP/1.0 server which has
3179+ already refused to handle the request. (Vincent Ladeuil, #225020)
3180+
3181+* Fix ``ObjectNotLocked`` errors when using various commands
3182+ (including ``bzr cat`` and ``bzr annotate``) in combination with a
3183+ smart server URL. (Andrew Bennetts, #237067)
3184+
3185+* ``FTPTransport.stat()`` would return ``0000`` as the permission bits
3186+ for the containing ``.bzr/`` directory (it does not implement
3187+ permissions). This would cause us to set all subdirectories to
3188+ ``0700`` and files to ``0600`` rather than leaving them unmodified.
3189+ Now we ignore ``0000`` as the permissions and assume they are
3190+ invalid. (John Arbash Meinel, #259855)
3191+
3192+* Merging from a previously joined branch will no longer cause
3193+ a traceback. (Jelmer Vernooij, #203376)
3194+
3195+* Pack operations on windows network shares will work even with large
3196+ files. (Robert Collins, #255656)
3197+
3198+* Running ``bzr st PATH_TO_TREE`` will no longer suppress merge
3199+ status. Status is also about 7% faster on mozilla sized trees
3200+ when the path to the root of the tree has been given. Users of
3201+ the internal ``show_tree_status`` function should be aware that
3202+ the show_pending flag is now authoritative for showing pending
3203+ merges, as it was originally. (Robert Collins, #225204)
3204+
3205+* Set valid default _param_name for Option so that ListOption can embed
3206+ '-' in names. (Vincent Ladeuil, #263249)
3207+
3208+* Show proper error rather than traceback when an unknown revision
3209+ id is specified to ``bzr cat-revision``. (Jelmer Vernooij, #175569)
3210+
3211+* Trailing text in the dirstate file could cause the C dirstate parser
3212+ to try to allocate an invalid amount of memory. We now properly
3213+ check and test for parsing a dirstate with invalid trailing data.
3214+ (John Arbash Meinel, #186014)
3215+
3216+* Unexpected error responses from a smart server no longer cause the
3217+ client to traceback. (Andrew Bennetts, #263527)
3218+
3219+* Use a Windows api function to get a Unicode host name, rather than
3220+ assuming the host name is ascii.
3221+ (Mark Hammond, John Arbash Meinel, #256550)
3222+
3223+* ``WorkingTree4`` trees will now correctly report missing-and-new
3224+ paths in the output of ``iter_changes``. (Robert Collins)
3225+
3226+Documentation
3227+*************
3228+
3229+* Updated developer documentation. (Martin Pool)
3230+
3231+API Changes
3232+***********
3233+
3234+* Exporters now take 4 parameters. (Robert Collins)
3235+
3236+* ``Tree.iter_changes`` will now return False for the content change
3237+ field when a file is missing in the basis tree and not present in
3238+ the target tree. Previously it returned True unconditionally.
3239+ (Robert Collins)
3240+
3241+* The deprecated ``Branch.abspath`` and unimplemented
3242+ ``Branch.rename_one`` and ``Branch.move`` were removed. (Jelmer Vernooij)
3243+
3244+* BzrDir.clone_on_transport implementations must now accept a stacked_on
3245+ parameter. (Aaron Bentley)
3246+
3247+* BzrDir.cloning_metadir implementations must now take a require_stacking
3248+ parameter. (Aaron Bentley)
3249+
3250+Testing
3251+*******
3252+
3253+* ``addCleanup`` now takes ``*arguments`` and ``**keyword_arguments``
3254+ which are then passed to the cleanup callable as it is run. In
3255+ addition, addCleanup no longer requires that the callables passed to
3256+ it be unique. (Jonathan Lange)
3257+
3258+* Fix some tests that fail on Windows because files are deleted while
3259+ still in use.
3260+ (Mark Hammond)
3261+
3262+* ``selftest``'s ``--starting-with`` option can now use predefined
3263+ prefixes so that one can say ``bzr selftest -s bp.loom`` instead of
3264+ ``bzr selftest -s bzrlib.plugins.loom``. (Vincent Ladeuil)
3265+
3266+* ``selftest``'s ``--starting-with`` option now accepts multiple values.
3267+ (Vincent Ladeuil)
3268+
3269+Internals
3270+*********
3271+
3272+* A new plugin interface, ``bzrlib.log.log_adapters``, has been added.
3273+ This allows dynamic log output filtering by plugins.
3274+ (Robert Collins)
3275+
3276+* ``bzrlib.btree_index`` is now available, providing a b-tree index
3277+ layer. The design is memory conservative (limited memory cache),
3278+ faster to seek (approx 100 nodes per page, gives 100-way fan out),
3279+ and stores compressed pages allowing more keys per page.
3280+ (Robert Collins, John Arbash Meinel)
3281+
3282+* ``bzrlib.diff.DiffTree.show_diff`` now skips changes where the kind
3283+ is unknown in both source and target.
3284+ (Robert Collins, Aaron Bentley)
3285+
3286+* ``GraphIndexBuilder.add_node`` and ``BTreeBuilder`` have been
3287+ streamlined a bit. This should make creating large indexes faster.
3288+ (In benchmarking, it now takes less time to create a BTree index than
3289+ it takes to read the GraphIndex one.) (John Arbash Meinel)
3290+
3291+* Mail clients for `bzr send` are now listed in a registry. This
3292+ allows plugins to add new clients by registering them with
3293+ ``bzrlib.mail_client.mail_client_registry``. All of the built-in
3294+ clients now use this mechanism. (Neil Martinsen-Burrell)
3295
3296
3297 bzr 1.6.1 2008-09-05
3298---------------------
3299+####################
3300
3301 A couple regressions were found in the 1.6 release. There was a
3302 performance issue when using ``bzr+ssh`` to branch large repositories,
3303@@ -1689,18 +1759,19 @@
3304
3305
3306 bzr 1.6.1rc2 2008-09-03
3307------------------------
3308-
3309- BUG FIXES:
3310-
3311- * Copying between ``rich-root`` and ``rich-root-pack`` (and vice
3312- versa) was accidentally using the inter-model fetcher, instead of
3313- recognizing that both were 'rich root' formats.
3314- (John Arbash Meinel, #264321)
3315+#######################
3316+
3317+Bug Fixes
3318+*********
3319+
3320+* Copying between ``rich-root`` and ``rich-root-pack`` (and vice
3321+ versa) was accidentally using the inter-model fetcher, instead of
3322+ recognizing that both were 'rich root' formats.
3323+ (John Arbash Meinel, #264321)
3324
3325
3326 bzr 1.6.1rc1 2008-08-29
3327------------------------
3328+#######################
3329
3330 This release fixes a few regressions found in the 1.6 client. Fetching
3331 changes was using an O(N^2) buffering algorithm, so for large projects it
3332@@ -1715,32 +1786,33 @@
3333 I should also clarify that none of this is data loss level issues, but
3334 still sufficient enough to warrant an updated release.
3335
3336- BUG FIXES:
3337-
3338- * ``RemoteTransport.readv()`` was being inefficient about how it
3339- buffered the readv data and processed it. It would keep appending to
3340- the same string (causing many copies) and then pop bytes out of the
3341- start of the string (causing more copies).
3342- With this patch "bzr+ssh://local" can improve dramatically,
3343- especially for projects with large files.
3344- (John Arbash Meinel)
3345-
3346- * Revision texts were always meant to be stored as fulltexts. There
3347- was a bug in a bzr.dev version that would accidentally create deltas
3348- when copying from a Pack repo to a Knit repo. This has been fixed,
3349- but to support those repositories, we know always request full texts
3350- for Revision texts. (John Arbash Meinel, #261339)
3351-
3352- * The previous ``--1.6-rich-root`` format used an incorrect xml
3353- serializer, which would accidentally support fetching from a
3354- repository that supported subtrees, even though the local one would
3355- not. We deprecated that format, and introduced a new one that uses
3356- the correct serializer ``--1.6.1-rich-root``.
3357- (John Arbash Meinel, #262333)
3358+Bug Fixes
3359+*********
3360+
3361+* ``RemoteTransport.readv()`` was being inefficient about how it
3362+ buffered the readv data and processed it. It would keep appending to
3363+ the same string (causing many copies) and then pop bytes out of the
3364+ start of the string (causing more copies).
3365+ With this patch "bzr+ssh://local" can improve dramatically,
3366+ especially for projects with large files.
3367+ (John Arbash Meinel)
3368+
3369+* Revision texts were always meant to be stored as fulltexts. There
3370+ was a bug in a bzr.dev version that would accidentally create deltas
3371+ when copying from a Pack repo to a Knit repo. This has been fixed,
3372+ but to support those repositories, we know always request full texts
3373+ for Revision texts. (John Arbash Meinel, #261339)
3374+
3375+* The previous ``--1.6-rich-root`` format used an incorrect xml
3376+ serializer, which would accidentally support fetching from a
3377+ repository that supported subtrees, even though the local one would
3378+ not. We deprecated that format, and introduced a new one that uses
3379+ the correct serializer ``--1.6.1-rich-root``.
3380+ (John Arbash Meinel, #262333)
3381
3382
3383 bzr 1.6 2008-08-25
3384-------------------
3385+##################
3386
3387 Finally, the long awaited bzr 1.6 has been released. This release includes
3388 new features like Stacked Branches, improved weave merge, and an updated
3389@@ -1754,98 +1826,104 @@
3390
3391
3392 bzr 1.6rc5 2008-08-19
3393----------------------
3394-
3395- BUG FIXES:
3396-
3397- * Disable automatic detection of stacking based on a containing
3398- directory of the target. It interacted badly with push, and needs a
3399- bit more work to get the edges polished before it should happen
3400- automatically. (John Arbash Meinel, #259275)
3401- (This change was reverted when merged to bzr.dev)
3402+#####################
3403+
3404+Bug Fixes
3405+*********
3406+
3407+* Disable automatic detection of stacking based on a containing
3408+ directory of the target. It interacted badly with push, and needs a
3409+ bit more work to get the edges polished before it should happen
3410+ automatically. (John Arbash Meinel, #259275)
3411+ (This change was reverted when merged to bzr.dev)
3412
3413
3414 bzr 1.6rc4 2008-08-18
3415----------------------
3416-
3417- BUG FIXES:
3418-
3419- * Fix a regression in knit => pack fetching. We had a logic
3420- inversion, causing the fetch to insert fulltexts in random order,
3421- rather than preserving deltas. (John Arbash Meinel, #256757)
3422+#####################
3423+
3424+Bug Fixes
3425+*********
3426+
3427+* Fix a regression in knit => pack fetching. We had a logic
3428+ inversion, causing the fetch to insert fulltexts in random order,
3429+ rather than preserving deltas. (John Arbash Meinel, #256757)
3430
3431
3432 bzr 1.6rc3 2008-08-14
3433----------------------
3434-
3435- CHANGES:
3436-
3437- * Disable reading ``.bzrrules`` as a per-branch rule preferences
3438- file. The feature was not quite ready for a full release.
3439- (Robert Collins)
3440-
3441- IMPROVEMENTS:
3442-
3443- * Update the windows installer to bundle TortoiseBzr and ``qbzr``
3444- into the standalone installer. This will be the first official
3445- windows release that installs Tortoise by default.
3446- (Mark Hammond)
3447-
3448- BUG FIXES:
3449-
3450- * Fix a regression in ``bzr+http`` support. There was a missing
3451- function (``_read_line``) that needed to be carried over from
3452- ``bzr+ssh`` support. (Andrew Bennetts)
3453-
3454- * ``GraphIndex`` objects will internally read an entire index if more
3455- than 1/20th of their keyspace is requested in a single operation.
3456- This largely mitigates a performance regression in ``bzr log FILE``
3457- and completely corrects the performance regression in ``bzr log``.
3458- The regression was caused by removing an accomodation which had been
3459- supporting the index format in use. A newer index format is in
3460- development which is substantially faster. (Robert Collins)
3461+#####################
3462+
3463+Changes
3464+*******
3465+
3466+* Disable reading ``.bzrrules`` as a per-branch rule preferences
3467+ file. The feature was not quite ready for a full release.
3468+ (Robert Collins)
3469+
3470+Improvements
3471+************
3472+
3473+* Update the windows installer to bundle TortoiseBzr and ``qbzr``
3474+ into the standalone installer. This will be the first official
3475+ windows release that installs Tortoise by default.
3476+ (Mark Hammond)
3477+
3478+Bug Fixes
3479+*********
3480+
3481+* Fix a regression in ``bzr+http`` support. There was a missing
3482+ function (``_read_line``) that needed to be carried over from
3483+ ``bzr+ssh`` support. (Andrew Bennetts)
3484+
3485+* ``GraphIndex`` objects will internally read an entire index if more
3486+ than 1/20th of their keyspace is requested in a single operation.
3487+ This largely mitigates a performance regression in ``bzr log FILE``
3488+ and completely corrects the performance regression in ``bzr log``.
3489+ The regression was caused by removing an accomodation which had been
3490+ supporting the index format in use. A newer index format is in
3491+ development which is substantially faster. (Robert Collins)
3492
3493
3494 bzr 1.6rc2 2008-08-13
3495----------------------
3496+#####################
3497
3498 This release candidate has a few minor bug fixes, and some regression
3499 fixes for Windows.
3500
3501- BUG FIXES:
3502-
3503- * ``bzr upgrade`` on remote branches accessed via bzr:// and
3504- bzr+ssh:// now works. (Andrew Bennetts)
3505-
3506- * Change the ``get_format_description()`` strings for
3507- ``RepositoryFormatKnitPack5`` et al to be single line messages.
3508- (Aaron Bentley)
3509-
3510- * Fix for a regression on Win32 where we would try to call
3511- ``os.listdir()`` on a file and not catch the exception properly.
3512- (Windows raises a different exception.) This would manifest in
3513- places like ``bzr rm file`` or ``bzr switch``.
3514- (Mark Hammond, John Arbash Meinel)
3515-
3516- * ``Inventory.copy()`` was failing to set the revision property for
3517- the root entry. (Jelmer Vernooij)
3518-
3519- * sftp transport: added missing ``FileExists`` case to
3520- ``_translate_io_exception`` (Christophe Troestler, #123475)
3521-
3522- * The help for ``bzr ignored`` now suggests ``bzr ls --ignored`` for
3523- scripting use. (Robert Collins, #3834)
3524-
3525- * The default ``annotate`` logic will now always assign the
3526- last-modified value of a line to one of the revisions that modified
3527- it, rather than a merge revision. This would happen when both sides
3528- claimed to have modified the line resulting in the same text. The
3529- choice is arbitrary but stable, so merges in different directions
3530- will get the same results. (John Arbash Meinel, #232188)
3531+Bug Fixes
3532+*********
3533+
3534+* ``bzr upgrade`` on remote branches accessed via bzr:// and
3535+ bzr+ssh:// now works. (Andrew Bennetts)
3536+
3537+* Change the ``get_format_description()`` strings for
3538+ ``RepositoryFormatKnitPack5`` et al to be single line messages.
3539+ (Aaron Bentley)
3540+
3541+* Fix for a regression on Win32 where we would try to call
3542+ ``os.listdir()`` on a file and not catch the exception properly.
3543+ (Windows raises a different exception.) This would manifest in
3544+ places like ``bzr rm file`` or ``bzr switch``.
3545+ (Mark Hammond, John Arbash Meinel)
3546+
3547+* ``Inventory.copy()`` was failing to set the revision property for
3548+ the root entry. (Jelmer Vernooij)
3549+
3550+* sftp transport: added missing ``FileExists`` case to
3551+ ``_translate_io_exception`` (Christophe Troestler, #123475)
3552+
3553+* The help for ``bzr ignored`` now suggests ``bzr ls --ignored`` for
3554+ scripting use. (Robert Collins, #3834)
3555+
3556+* The default ``annotate`` logic will now always assign the
3557+ last-modified value of a line to one of the revisions that modified
3558+ it, rather than a merge revision. This would happen when both sides
3559+ claimed to have modified the line resulting in the same text. The
3560+ choice is arbitrary but stable, so merges in different directions
3561+ will get the same results. (John Arbash Meinel, #232188)
3562
3563
3564 bzr 1.6rc1 2008-08-06
3565----------------------
3566+#####################
3567
3568 This release candidate for bzr 1.6 solidifies the new branch stacking
3569 feature. Bazaar now recommends that users upgrade all knit repositories,
3570@@ -1853,131 +1931,136 @@
3571 upgrade support for knit repostories for the forseeable future. Several
3572 other bugs and performance issues were fixed.
3573
3574- CHANGES:
3575-
3576- * Knit format repositories are deprecated and bzr will now emit
3577- warnings whenever it encounters one. Use ``bzr upgrade`` to upgrade
3578- knit repositories to pack format. (Andrew Bennetts)
3579-
3580- IMPROVEMENTS:
3581-
3582- * ``bzr check`` can now be told which elements at a location it should
3583- check. (Daniel Watkins)
3584-
3585- * Commit now supports ``--exclude`` (or ``-x``) to exclude some files
3586- from the commit. (Robert Collins, #3117)
3587-
3588- * Fetching data between repositories that have the same model but no
3589- optimised fetcher will not reserialise all the revisions, increasing
3590- performance. (Robert Collins, John Arbash Meinel)
3591-
3592- * Give a more specific error when target branch is not reachable.
3593- (James Westby)
3594-
3595- * Implemented a custom ``walkdirs_utf8`` implementation for win32.
3596- This uses a pyrex extension to get direct access to the
3597- ``FindFirstFileW`` style apis, rather than using ``listdir`` +
3598- ``lstat``. Shows a very strong improvement in commands like
3599- ``status`` and ``diff`` which have to iterate the working tree.
3600- Anywhere from 2x-6x faster depending on the size of the tree (bigger
3601- trees, bigger benefit.) (John Arbash Meinel)
3602-
3603- * New registry for log properties handles and the method in
3604- LongLogFormatter to display the custom properties returned by the
3605- registered handlers. (Guillermo Gonzalez, #162469)
3606-
3607- BUG FIXES:
3608-
3609- * Add more tests that stacking does not create deltas spanning
3610- physical repository boundaries.
3611- (Martin Pool, #252428)
3612-
3613- * Better message about incompatible repositories.
3614- (Martin Pool, #206258)
3615-
3616- * ``bzr branch --stacked`` ensures the destination branch format can
3617- support stacking, even if the origin does not.
3618- (Martin Pool)
3619-
3620- * ``bzr export`` no longer exports ``.bzrrules``.
3621- (Ian Clatworthy)
3622-
3623- * ``bzr serve --directory=/`` now correctly allows the whole
3624- filesystem to be accessed on Windows, not just the root of the drive
3625- that Python is running from.
3626- (Adrian Wilkins, #240910)
3627-
3628- * Deleting directories by hand before running ``bzr rm`` will not
3629- cause subsequent errors in ``bzr st`` and ``bzr commit``.
3630- (Robert Collins, #150438)
3631-
3632- * Fix a test case that was failing if encoding wasn't UTF-8.
3633- (John Arbash Meinel, #247585)
3634-
3635- * Fix "no buffer space available" error when branching with the new
3636- smart server protocol to or from Windows.
3637- (Andrew Bennetts, #246180)
3638-
3639- * Fixed problem in branching from smart server.
3640- (#249256, Michael Hudson, Martin Pool)
3641-
3642- * Handle a file turning in to a directory in TreeTransform.
3643- (James Westby, #248448)
3644-
3645- API CHANGES:
3646-
3647- * ``MutableTree.commit`` has an extra optional keywork parameter
3648- ``exclude`` that will be unconditionally supplied by the command
3649- line UI - plugins that add tree formats may need an update.
3650- (Robert Collins)
3651-
3652- * The API minimum version for plugin compatibility has been raised to
3653- 1.6 - there are significant changes throughout the code base.
3654- (Robert Collins)
3655-
3656- * The generic fetch code now uses three attributes on Repository objects
3657- to control fetch. The streams requested are controlled via :
3658- ``_fetch_order`` and ``_fetch_uses_deltas``. Setting these
3659- appropriately allows different repository implementations to recieve
3660- data in their optimial form. If the ``_fetch_reconcile`` is set then
3661- a reconcile operation is triggered at the end of the fetch.
3662- (Robert Collins)
3663-
3664- * The ``put_on_disk`` and ``get_tar_item`` methods in
3665- ``InventoryEntry`` were deprecated. (Ian Clatworthy)
3666-
3667- * ``Repository.is_shared`` doesn't take a read lock. It didn't
3668- need one in the first place (nobody cached the value, and
3669- ``RemoteRepository`` wasn't taking one either). This saves a round
3670- trip when probing Pack repositories, as they read the ``pack-names``
3671- file when locked. And during probe, locking the repo isn't very
3672- useful. (John Arbash Meinel)
3673-
3674- INTERNALS:
3675-
3676- * ``bzrlib.branchbuilder.BranchBuilder`` is now much more capable of
3677- putting together a real history without having to create a full
3678- WorkingTree. It is recommended that tests that are not directly
3679- testing the WorkingTree use BranchBuilder instead. See
3680- ``BranchBuilder.build_snapshot`` or
3681- ``TestCaseWithMemoryTree.make_branch_builder``. (John Arbash Meinel)
3682-
3683- * ``bzrlib.builtins.internal_tree_files`` broken into two giving a new
3684- helper ``safe_relpath_files`` - used by the new ``exclude``
3685- parameter to commit. (Robert Collins)
3686-
3687- * Make it easier to introduce new WorkingTree formats.
3688- (Ian Clatworthy)
3689-
3690- * The code for exporting trees was refactored not to use the
3691- deprecated ``InventoryEntry`` methods. (Ian Clatworthy)
3692-
3693- * RuleSearchers return () instead of [] now when there are no matches.
3694- (Ian Clatworthy)
3695+Changes
3696+*******
3697+
3698+* Knit format repositories are deprecated and bzr will now emit
3699+ warnings whenever it encounters one. Use ``bzr upgrade`` to upgrade
3700+ knit repositories to pack format. (Andrew Bennetts)
3701+
3702+Improvements
3703+************
3704+
3705+* ``bzr check`` can now be told which elements at a location it should
3706+ check. (Daniel Watkins)
3707+
3708+* Commit now supports ``--exclude`` (or ``-x``) to exclude some files
3709+ from the commit. (Robert Collins, #3117)
3710+
3711+* Fetching data between repositories that have the same model but no
3712+ optimised fetcher will not reserialise all the revisions, increasing
3713+ performance. (Robert Collins, John Arbash Meinel)
3714+
3715+* Give a more specific error when target branch is not reachable.
3716+ (James Westby)
3717+
3718+* Implemented a custom ``walkdirs_utf8`` implementation for win32.
3719+ This uses a pyrex extension to get direct access to the
3720+ ``FindFirstFileW`` style apis, rather than using ``listdir`` +
3721+ ``lstat``. Shows a very strong improvement in commands like
3722+ ``status`` and ``diff`` which have to iterate the working tree.
3723+ Anywhere from 2x-6x faster depending on the size of the tree (bigger
3724+ trees, bigger benefit.) (John Arbash Meinel)
3725+
3726+* New registry for log properties handles and the method in
3727+ LongLogFormatter to display the custom properties returned by the
3728+ registered handlers. (Guillermo Gonzalez, #162469)
3729+
3730+Bug Fixes
3731+*********
3732+
3733+* Add more tests that stacking does not create deltas spanning
3734+ physical repository boundaries.
3735+ (Martin Pool, #252428)
3736+
3737+* Better message about incompatible repositories.
3738+ (Martin Pool, #206258)
3739+
3740+* ``bzr branch --stacked`` ensures the destination branch format can
3741+ support stacking, even if the origin does not.
3742+ (Martin Pool)
3743+
3744+* ``bzr export`` no longer exports ``.bzrrules``.
3745+ (Ian Clatworthy)
3746+
3747+* ``bzr serve --directory=/`` now correctly allows the whole
3748+ filesystem to be accessed on Windows, not just the root of the drive
3749+ that Python is running from.
3750+ (Adrian Wilkins, #240910)
3751+
3752+* Deleting directories by hand before running ``bzr rm`` will not
3753+ cause subsequent errors in ``bzr st`` and ``bzr commit``.
3754+ (Robert Collins, #150438)
3755+
3756+* Fix a test case that was failing if encoding wasn't UTF-8.
3757+ (John Arbash Meinel, #247585)
3758+
3759+* Fix "no buffer space available" error when branching with the new
3760+ smart server protocol to or from Windows.
3761+ (Andrew Bennetts, #246180)
3762+
3763+* Fixed problem in branching from smart server.
3764+ (#249256, Michael Hudson, Martin Pool)
3765+
3766+* Handle a file turning in to a directory in TreeTransform.
3767+ (James Westby, #248448)
3768+
3769+API Changes
3770+***********
3771+
3772+* ``MutableTree.commit`` has an extra optional keywork parameter
3773+ ``exclude`` that will be unconditionally supplied by the command
3774+ line UI - plugins that add tree formats may need an update.
3775+ (Robert Collins)
3776+
3777+* The API minimum version for plugin compatibility has been raised to
3778+ 1.6 - there are significant changes throughout the code base.
3779+ (Robert Collins)
3780+
3781+* The generic fetch code now uses three attributes on Repository objects
3782+ to control fetch. The streams requested are controlled via :
3783+ ``_fetch_order`` and ``_fetch_uses_deltas``. Setting these
3784+ appropriately allows different repository implementations to recieve
3785+ data in their optimial form. If the ``_fetch_reconcile`` is set then
3786+ a reconcile operation is triggered at the end of the fetch.
3787+ (Robert Collins)
3788+
3789+* The ``put_on_disk`` and ``get_tar_item`` methods in
3790+ ``InventoryEntry`` were deprecated. (Ian Clatworthy)
3791+
3792+* ``Repository.is_shared`` doesn't take a read lock. It didn't
3793+ need one in the first place (nobody cached the value, and
3794+ ``RemoteRepository`` wasn't taking one either). This saves a round
3795+ trip when probing Pack repositories, as they read the ``pack-names``
3796+ file when locked. And during probe, locking the repo isn't very
3797+ useful. (John Arbash Meinel)
3798+
3799+Internals
3800+*********
3801+
3802+* ``bzrlib.branchbuilder.BranchBuilder`` is now much more capable of
3803+ putting together a real history without having to create a full
3804+ WorkingTree. It is recommended that tests that are not directly
3805+ testing the WorkingTree use BranchBuilder instead. See
3806+ ``BranchBuilder.build_snapshot`` or
3807+ ``TestCaseWithMemoryTree.make_branch_builder``. (John Arbash Meinel)
3808+
3809+* ``bzrlib.builtins.internal_tree_files`` broken into two giving a new
3810+ helper ``safe_relpath_files`` - used by the new ``exclude``
3811+ parameter to commit. (Robert Collins)
3812+
3813+* Make it easier to introduce new WorkingTree formats.
3814+ (Ian Clatworthy)
3815+
3816+* The code for exporting trees was refactored not to use the
3817+ deprecated ``InventoryEntry`` methods. (Ian Clatworthy)
3818+
3819+* RuleSearchers return () instead of [] now when there are no matches.
3820+ (Ian Clatworthy)
3821
3822
3823 bzr 1.6beta3 2008-07-17
3824------------------------
3825+#######################
3826
3827 This release adds a new 'stacked branches' feature allowing branches to
3828 share storage without being in the same repository or on the same machine.
3829@@ -1985,244 +2068,257 @@
3830 weaves, aliases for related locations, faster bzr+ssh push, and several
3831 bug fixes.
3832
3833- FEATURES:
3834-
3835- * New ``pre_change_branch_tip`` hook that is called before the
3836- branch tip is moved, while the branch is write-locked. See the User
3837- Reference for signature details. (Andrew Bennetts)
3838-
3839- * Rule-based preferences can now be defined for selected files in
3840- selected branches, allowing commands and plugins to provide
3841- custom behaviour for files matching defined patterns.
3842- See ``Rule-based preferences`` (part of ``Configuring Bazaar``)
3843- in the User Guide and ``bzr help rules`` for more information.
3844- (Ian Clatworthy)
3845-
3846- * Sites may suggest a branch to stack new branches on. (Aaron Bentley)
3847-
3848- * Stacked branches are now supported. See ``bzr help branch`` and
3849- ``bzr help push``. Branches must be in the ``development1`` format
3850- to stack, though the stacked-on branch can be of any format.
3851- (Robert Collins)
3852-
3853- IMPROVEMENTS:
3854-
3855- * ``bzr export --format=tgz --root=NAME -`` to export a gzipped tarball
3856- to stdout; also ``tar`` and ``tbz2``.
3857- (Martin Pool)
3858-
3859- * ``bzr (re)merge --weave`` will now use a standard Weave algorithm,
3860- rather than the annotation-based merge it was using. It does so by
3861- building up a Weave of the important texts, without needing to build
3862- the full ancestry. (John Arbash Meinel, #238895)
3863-
3864- * ``bzr send`` documents and better supports ``emacsclient`` (proper
3865- escaping of mail headers and handling of the MUA Mew).
3866- (Christophe Troestler)
3867-
3868- * Remembered locations can be specified by aliases, e.g. :parent, :public,
3869- :submit. (Aaron Bentley)
3870-
3871- * The smart protocol now has improved support for setting branches'
3872- revision info directly. This makes operations like push
3873- faster. The new request method name is
3874- ``Branch.set_last_revision_ex``. (Andrew Bennetts)
3875-
3876- BUG FIXES:
3877-
3878- * Bazaar is now able to be a client to the web server of IIS 6 and 7.
3879- The broken implementations of RFC822 in Python and RFC2046 in IIS
3880- combined with boundary-line checking in Bazaar previously made this
3881- impossible. (NB, IIS 5 does not suffer from this problem).
3882- (Adrian Wilkins, #247585)
3883-
3884- * ``bzr log --long`` with a ghost in your mainline now handles that
3885- ghost properly. (John Arbash Meinel, #243536)
3886-
3887- * ``check`` handles the split-up .bzr layout correctly, so no longer
3888- requires a branch to be present.
3889- (Daniel Watkins, #64783)
3890-
3891- * Clearer message about how to set the PYTHONPATH if bzrlib can't be
3892- loaded.
3893- (Martin Pool, #205230)
3894-
3895- * Errors about missing libraries are now shown without a traceback,
3896- and with a suggestion to install the library. The full traceback is
3897- still in ``.bzr.log`` and can be shown with ``-Derror``.
3898- (Martin Pool, #240161)
3899-
3900- * Fetch from a stacked branch copies all required data.
3901- (Aaron Bentley, #248506)
3902-
3903- * Handle urls such as ftp://user@host.com@www.host.com where the user
3904- name contains an @.
3905- (Neil Martinsen-Burrell, #228058)
3906-
3907- * ``needs_read_lock`` and ``needs_write_lock`` now suppress an error during
3908- ``unlock`` if there was an error in the original function. This helps
3909- most when there is a failure with a smart server action, since often the
3910- connection closes and we cannot unlock.
3911- (Andrew Bennetts, John Arbash Meinel, #125784)
3912-
3913- * Obsolete hidden command ``bzr fetch`` removed.
3914- (Martin Pool, #172870)
3915-
3916- * Raise the correct exception when doing ``-rbefore:0`` or ``-c0``.
3917- (John Arbash Meinel, #239933)
3918-
3919- * You can now compare file revisions in Windows diff programs from
3920- Cygwin Bazaar.
3921- (Matt McClure, #209281)
3922-
3923- * revision_history now tolerates mainline ghosts for Branch format 6.
3924- (Aaron Bentley, #235055)
3925-
3926- * Set locale from environment for third party libs.
3927- (Martin von Gagern, #128496)
3928-
3929- DOCUMENTATION:
3930-
3931- * Added *Using stacked branches* to the User Guide.
3932- (Ian Clatworthy)
3933-
3934- * Updated developer documentation.
3935- (Martin Pool)
3936-
3937- TESTING:
3938-
3939- * ``-Dmemory`` will cause /proc/PID/status to be catted before bzr
3940- exits, allowing low-key analysis of peak memory use. (Robert Collins)
3941-
3942- * ``TestCaseWithTransport.make_branch_and_tree`` tries harder to return
3943- a tree with a ``branch`` attribute of the right format. This was
3944- preventing some ``RemoteBranch`` tests from actually running with
3945- ``RemoteBranch`` instances. (Andrew Bennetts)
3946-
3947- API CHANGES:
3948-
3949- * Removed ``Repository.text_store``, ``control_store``, etc. Instead,
3950- there are new attributes ``texts, inventories, revisions,
3951- signatures``, each of which is a ``VersionedFiles``. See the
3952- Repository docstring for more details.
3953- (Robert Collins)
3954-
3955- * ``Branch.pull`` now accepts an ``_override_hook_target`` optional
3956- parameter. If you have a subclass of ``Branch`` that overrides
3957- ``pull`` then you should add this parameter. (Andrew Bennetts)
3958-
3959- * ``bzrlib.check.check()`` has been deprecated in favour of the more
3960- aptly-named ``bzrlib.check.check_branch()``.
3961- (Daniel Watkins)
3962-
3963- * ``Tree.print_file`` and ``Repository.print_file`` are deprecated.
3964- These methods are bad APIs because they write directly to sys.stdout.
3965- bzrlib does not use them internally, and there are no direct tests
3966- for them. (Alexander Belchenko)
3967-
3968- INTERNALS:
3969-
3970- * ``cat`` command no longer uses ``Tree.print_file()`` internally.
3971- (Alexander Belchenko)
3972-
3973- * New class method ``BzrDir.open_containing_tree_branch_or_repository``
3974- which eases the discovery of the tree, the branch and the repository
3975- containing a given location.
3976- (Daniel Watkins)
3977-
3978- * New ``versionedfile.KeyMapper`` interface to abstract out the access to
3979- underlying .knit/.kndx etc files in repositories with partitioned
3980- storage. (Robert Collins)
3981-
3982- * Obsolete developer-use command ``weave-join`` has been removed.
3983- (Robert Collins)
3984-
3985- * ``RemoteToOtherFetcher`` and ``get_data_stream_for_search`` removed,
3986- to support new ``VersionedFiles`` layering.
3987- (Robert Collins)
3988+Features
3989+********
3990+
3991+* New ``pre_change_branch_tip`` hook that is called before the
3992+ branch tip is moved, while the branch is write-locked. See the User
3993+ Reference for signature details. (Andrew Bennetts)
3994+
3995+* Rule-based preferences can now be defined for selected files in
3996+ selected branches, allowing commands and plugins to provide
3997+ custom behaviour for files matching defined patterns.
3998+ See ``Rule-based preferences`` (part of ``Configuring Bazaar``)
3999+ in the User Guide and ``bzr help rules`` for more information.
4000+ (Ian Clatworthy)
4001+
4002+* Sites may suggest a branch to stack new branches on. (Aaron Bentley)
4003+
4004+* Stacked branches are now supported. See ``bzr help branch`` and
4005+ ``bzr help push``. Branches must be in the ``development1`` format
4006+ to stack, though the stacked-on branch can be of any format.
4007+ (Robert Collins)
4008+
4009+Improvements
4010+************
4011+
4012+* ``bzr export --format=tgz --root=NAME -`` to export a gzipped tarball
4013+ to stdout; also ``tar`` and ``tbz2``.
4014+ (Martin Pool)
4015+
4016+* ``bzr (re)merge --weave`` will now use a standard Weave algorithm,
4017+ rather than the annotation-based merge it was using. It does so by
4018+ building up a Weave of the important texts, without needing to build
4019+ the full ancestry. (John Arbash Meinel, #238895)
4020+
4021+* ``bzr send`` documents and better supports ``emacsclient`` (proper
4022+ escaping of mail headers and handling of the MUA Mew).
4023+ (Christophe Troestler)
4024+
4025+* Remembered locations can be specified by aliases, e.g. :parent, :public,
4026+ :submit. (Aaron Bentley)
4027+
4028+* The smart protocol now has improved support for setting branches'
4029+ revision info directly. This makes operations like push
4030+ faster. The new request method name is
4031+ ``Branch.set_last_revision_ex``. (Andrew Bennetts)
4032+
4033+Bug Fixes
4034+*********
4035+
4036+* Bazaar is now able to be a client to the web server of IIS 6 and 7.
4037+ The broken implementations of RFC822 in Python and RFC2046 in IIS
4038+ combined with boundary-line checking in Bazaar previously made this
4039+ impossible. (NB, IIS 5 does not suffer from this problem).
4040+ (Adrian Wilkins, #247585)
4041+
4042+* ``bzr log --long`` with a ghost in your mainline now handles that
4043+ ghost properly. (John Arbash Meinel, #243536)
4044+
4045+* ``check`` handles the split-up .bzr layout correctly, so no longer
4046+ requires a branch to be present.
4047+ (Daniel Watkins, #64783)
4048+
4049+* Clearer message about how to set the PYTHONPATH if bzrlib can't be
4050+ loaded.
4051+ (Martin Pool, #205230)
4052+
4053+* Errors about missing libraries are now shown without a traceback,
4054+ and with a suggestion to install the library. The full traceback is
4055+ still in ``.bzr.log`` and can be shown with ``-Derror``.
4056+ (Martin Pool, #240161)
4057+
4058+* Fetch from a stacked branch copies all required data.
4059+ (Aaron Bentley, #248506)
4060+
4061+* Handle urls such as ftp://user@host.com@www.host.com where the user
4062+ name contains an @.
4063+ (Neil Martinsen-Burrell, #228058)
4064+
4065+* ``needs_read_lock`` and ``needs_write_lock`` now suppress an error during
4066+ ``unlock`` if there was an error in the original function. This helps
4067+ most when there is a failure with a smart server action, since often the
4068+ connection closes and we cannot unlock.
4069+ (Andrew Bennetts, John Arbash Meinel, #125784)
4070+
4071+* Obsolete hidden command ``bzr fetch`` removed.
4072+ (Martin Pool, #172870)
4073+
4074+* Raise the correct exception when doing ``-rbefore:0`` or ``-c0``.
4075+ (John Arbash Meinel, #239933)
4076+
4077+* You can now compare file revisions in Windows diff programs from
4078+ Cygwin Bazaar.
4079+ (Matt McClure, #209281)
4080+
4081+* revision_history now tolerates mainline ghosts for Branch format 6.
4082+ (Aaron Bentley, #235055)
4083+
4084+* Set locale from environment for third party libs.
4085+ (Martin von Gagern, #128496)
4086+
4087+Documentation
4088+*************
4089+
4090+* Added *Using stacked branches* to the User Guide.
4091+ (Ian Clatworthy)
4092+
4093+* Updated developer documentation.
4094+ (Martin Pool)
4095+
4096+Testing
4097+*******
4098+
4099+* ``-Dmemory`` will cause /proc/PID/status to be catted before bzr
4100+ exits, allowing low-key analysis of peak memory use. (Robert Collins)
4101+
4102+* ``TestCaseWithTransport.make_branch_and_tree`` tries harder to return
4103+ a tree with a ``branch`` attribute of the right format. This was
4104+ preventing some ``RemoteBranch`` tests from actually running with
4105+ ``RemoteBranch`` instances. (Andrew Bennetts)
4106+
4107+API Changes
4108+***********
4109+
4110+* Removed ``Repository.text_store``, ``control_store``, etc. Instead,
4111+ there are new attributes ``texts, inventories, revisions,
4112+ signatures``, each of which is a ``VersionedFiles``. See the
4113+ Repository docstring for more details.
4114+ (Robert Collins)
4115+
4116+* ``Branch.pull`` now accepts an ``_override_hook_target`` optional
4117+ parameter. If you have a subclass of ``Branch`` that overrides
4118+ ``pull`` then you should add this parameter. (Andrew Bennetts)
4119+
4120+* ``bzrlib.check.check()`` has been deprecated in favour of the more
4121+ aptly-named ``bzrlib.check.check_branch()``.
4122+ (Daniel Watkins)
4123+
4124+* ``Tree.print_file`` and ``Repository.print_file`` are deprecated.
4125+ These methods are bad APIs because they write directly to sys.stdout.
4126+ bzrlib does not use them internally, and there are no direct tests
4127+ for them. (Alexander Belchenko)
4128+
4129+Internals
4130+*********
4131+
4132+* ``cat`` command no longer uses ``Tree.print_file()`` internally.
4133+ (Alexander Belchenko)
4134+
4135+* New class method ``BzrDir.open_containing_tree_branch_or_repository``
4136+ which eases the discovery of the tree, the branch and the repository
4137+ containing a given location.
4138+ (Daniel Watkins)
4139+
4140+* New ``versionedfile.KeyMapper`` interface to abstract out the access to
4141+ underlying .knit/.kndx etc files in repositories with partitioned
4142+ storage. (Robert Collins)
4143+
4144+* Obsolete developer-use command ``weave-join`` has been removed.
4145+ (Robert Collins)
4146+
4147+* ``RemoteToOtherFetcher`` and ``get_data_stream_for_search`` removed,
4148+ to support new ``VersionedFiles`` layering.
4149+ (Robert Collins)
4150
4151
4152 bzr 1.6beta2 2008-06-10
4153------------------------
4154+#######################
4155
4156 This release contains further progress towards our 1.6 goals of shallow
4157 repositories, and contains a fix for some user-affecting bugs in the
4158 repository layer. Building working trees during checkout and branch is
4159 now faster.
4160
4161- BUG FIXES:
4162-
4163- * Avoid KnitCorrupt error extracting inventories from some repositories.
4164- (The data is not corrupt; an internal check is detecting a problem
4165- reading from the repository.)
4166- (Martin Pool, Andrew Bennetts, Robert Collins, #234748)
4167-
4168- * ``bzr status`` was breaking if you merged the same revision twice.
4169- (John Arbash Meinel, #235407)
4170-
4171- * Fix infinite loop consuming 100% CPU when a connection is lost while
4172- reading a response body via the smart protocol v1 or v2.
4173- (Andrew Bennetts)
4174-
4175- * Inserting a bundle which changes the contents of a file with no trailing
4176- end of line, causing a knit snapshot in a 'knits' repository will no longer
4177- cause KnitCorrupt. (Robert Collins)
4178-
4179- * ``RemoteBranch.pull`` needs to return the ``self._real_branch``'s
4180- pull result. It was instead just returning None, which breaks ``bzr
4181- pull``. (John Arbash Meinel, #238149)
4182-
4183- * Sanitize branch nick before using it as an attachment filename in
4184- ``bzr send``. (Lukáš Lalinský, #210218)
4185-
4186- * Squash ``inv_entry.symlink_target`` to a plain string when
4187- generating DirState details. This prevents from getting a
4188- ``UnicodeError`` when you have symlinks and non-ascii filenames.
4189- (John Arbash Meinel, #135320)
4190-
4191- IMPROVEMENTS:
4192-
4193- * Added the 'alias' command to set/unset and display aliases. (Tim Penhey)
4194-
4195- * ``added``, ``modified``, and ``unknowns`` behaviour made consistent (all three
4196- now quote paths where required). Added ``--null`` option to ``added`` and
4197- ``modified`` (for null-separated unknowns, use ``ls --unknown --null``)
4198- (Adrian Wilkins)
4199-
4200- * Faster branching (1.09x) and lightweight checkouts (1.06x) on large trees.
4201- (Ian Clatworthy, Aaron Bentley)
4202-
4203- DOCUMENTATION:
4204-
4205- * Added *Bazaar Zen* section to the User Guide. (Ian Clatworthy)
4206-
4207- TESTING:
4208-
4209- * Fix the test HTTPServer to be isolated from chdir calls made while it is
4210- running, allowing it to be used in blackbox tests. (Robert Collins)
4211-
4212- API CHANGES:
4213-
4214- * ``WorkingTree.set_parent_(ids/trees)`` will now filter out revisions
4215- which are in the ancestry of other revisions. So if you merge the same
4216- tree twice, or merge an ancestor of an existing merge, it will only
4217- record the newest. (If you merge a descendent, it will replace its
4218- ancestor). (John Arbash Meinel, #235407)
4219-
4220- * ``RepositoryPolicy.__init__`` now requires stack_on and stack_on_pwd,
4221- through the derived classes do not. (Aaron Bentley)
4222-
4223- INTERNALS:
4224-
4225- * ``bzrlib.bzrdir.BzrDir.sprout`` now accepts ``stacked`` to control
4226- creating stacked branches. (Robert Collins)
4227-
4228- * Knit record serialisation is now stricter on what it will accept, to
4229- guard against potential internal bugs, or broken input. (Robert Collins)
4230+Bug Fixes
4231+*********
4232+
4233+* Avoid KnitCorrupt error extracting inventories from some repositories.
4234+ (The data is not corrupt; an internal check is detecting a problem
4235+ reading from the repository.)
4236+ (Martin Pool, Andrew Bennetts, Robert Collins, #234748)
4237+
4238+* ``bzr status`` was breaking if you merged the same revision twice.
4239+ (John Arbash Meinel, #235407)
4240+
4241+* Fix infinite loop consuming 100% CPU when a connection is lost while
4242+ reading a response body via the smart protocol v1 or v2.
4243+ (Andrew Bennetts)
4244+
4245+* Inserting a bundle which changes the contents of a file with no trailing
4246+ end of line, causing a knit snapshot in a 'knits' repository will no longer
4247+ cause KnitCorrupt. (Robert Collins)
4248+
4249+* ``RemoteBranch.pull`` needs to return the ``self._real_branch``'s
4250+ pull result. It was instead just returning None, which breaks ``bzr
4251+ pull``. (John Arbash Meinel, #238149)
4252+
4253+* Sanitize branch nick before using it as an attachment filename in
4254+ ``bzr send``. (Lukáš Lalinský, #210218)
4255+
4256+* Squash ``inv_entry.symlink_target`` to a plain string when
4257+ generating DirState details. This prevents from getting a
4258+ ``UnicodeError`` when you have symlinks and non-ascii filenames.
4259+ (John Arbash Meinel, #135320)
4260+
4261+Improvements
4262+************
4263+
4264+* Added the 'alias' command to set/unset and display aliases. (Tim Penhey)
4265+
4266+* ``added``, ``modified``, and ``unknowns`` behaviour made consistent (all three
4267+ now quote paths where required). Added ``--null`` option to ``added`` and
4268+ ``modified`` (for null-separated unknowns, use ``ls --unknown --null``)
4269+ (Adrian Wilkins)
4270+
4271+* Faster branching (1.09x) and lightweight checkouts (1.06x) on large trees.
4272+ (Ian Clatworthy, Aaron Bentley)
4273+
4274+Documentation
4275+*************
4276+
4277+* Added *Bazaar Zen* section to the User Guide. (Ian Clatworthy)
4278+
4279+Testing
4280+*******
4281+
4282+* Fix the test HTTPServer to be isolated from chdir calls made while it is
4283+ running, allowing it to be used in blackbox tests. (Robert Collins)
4284+
4285+API Changes
4286+***********
4287+
4288+* ``WorkingTree.set_parent_(ids/trees)`` will now filter out revisions
4289+ which are in the ancestry of other revisions. So if you merge the same
4290+ tree twice, or merge an ancestor of an existing merge, it will only
4291+ record the newest. (If you merge a descendent, it will replace its
4292+ ancestor). (John Arbash Meinel, #235407)
4293+
4294+* ``RepositoryPolicy.__init__`` now requires stack_on and stack_on_pwd,
4295+ through the derived classes do not. (Aaron Bentley)
4296+
4297+Internals
4298+*********
4299+
4300+* ``bzrlib.bzrdir.BzrDir.sprout`` now accepts ``stacked`` to control
4301+ creating stacked branches. (Robert Collins)
4302+
4303+* Knit record serialisation is now stricter on what it will accept, to
4304+ guard against potential internal bugs, or broken input. (Robert Collins)
4305
4306
4307 bzr 1.6beta1 2008-06-02
4308------------------------
4309+#######################
4310
4311
4312 Commands that work on the revision history such as push, pull, missing,
4313@@ -2233,395 +2329,409 @@
4314 and future extensions.
4315
4316
4317- NOTES WHEN UPGRADING:
4318-
4319- * There is a new version of the network protocol used for bzr://, bzr+ssh://
4320- and bzr+http:// connections. This will allow more efficient requests and
4321- responses, and more graceful fallback when a server is too old to
4322- recognise a request from a more recent client. Bazaar 1.6 will
4323- interoperate with 0.16 and later versions, but servers should be upgraded
4324- when possible. Bazaar 1.6 no longer interoperates with 0.15 and earlier via
4325- these protocols. Use alternatives like SFTP or upgrade those servers.
4326- (Andrew Bennetts, #83935)
4327-
4328- CHANGES:
4329-
4330- * Deprecation warnings will not be suppressed when running ``bzr selftest``
4331- so that developers can see if their code is using deprecated functions.
4332- (John Arbash Meinel)
4333-
4334- FEATURES:
4335-
4336- * Adding ``-Derror`` will now display a traceback when a plugin fails to
4337- load. (James Westby)
4338-
4339- IMPROVEMENTS:
4340-
4341- * ``bzr branch/push/pull -r XXX`` now have a helper function for finding
4342- the revno of the new revision (``Graph.find_distance_to_null``). This
4343- should make something like ``bzr branch -r -100`` in a shared, no-trees
4344- repository much snappier. (John Arbash Meinel)
4345-
4346- * ``bzr log --short -r X..Y`` no longer needs to access the full revision
4347- history. This makes it noticeably faster when logging the last few
4348- revisions. (John Arbash Meinel)
4349-
4350- * ``bzr ls`` now accepts ``-V`` as an alias for ``--versioned``.
4351- (Jerad Cramp, #165086)
4352-
4353- * ``bzr missing`` uses the new ``Graph.find_unique_ancestors`` and
4354- ``Graph.find_differences`` to determine missing revisions without having
4355- to search the whole ancestry. (John Arbash Meinel, #174625)
4356-
4357- * ``bzr uncommit`` now uses partial history access, rather than always
4358- extracting the full revision history for a branch. This makes it
4359- resolve the appropriate revisions much faster (in testing it drops
4360- uncommit from 1.5s => 0.4s). It also means ``bzr log --short`` is one
4361- step closer to not using full revision history.
4362- (John Arbash Meinel, #172649)
4363-
4364- BUGFIXES:
4365-
4366- * ``bzr merge --lca`` should handle when two revisions have no common
4367- ancestor other than NULL_REVISION. (John Arbash Meinel, #235715)
4368-
4369- * ``bzr status`` was breaking if you merged the same revision twice.
4370- (John Arbash Meinel, #235407)
4371-
4372- * ``bzr push`` with both ``--overwrite`` and ``-r NNN`` options no longer
4373- fails. (Andrew Bennetts, #234229)
4374-
4375- * Correctly track the base URL of a smart medium when using bzr+http://
4376- URLs, which was causing spurious "No repository present" errors with
4377- branches in shared repositories accessed over bzr+http.
4378- (Andrew Bennetts, #230550)
4379-
4380- * Define ``_remote_is_at_least_1_2`` on ``SmartClientMedium`` so that all
4381- implementations have the attribute. Fixes 'PyCurlTransport' object has no
4382- attribute '_remote_is_at_least_1_2' attribute errors.
4383- (Andrew Bennetts, #220806)
4384-
4385- * Failure to delete an obsolete pack file should just give a warning
4386- message, not a fatal error. It may for example fail if the file is still
4387- in use by another process.
4388- (Martin Pool)
4389-
4390- * Fix MemoryError during large fetches over HTTP by limiting the amount of
4391- data we try to read per ``recv`` call. The problem was observed with
4392- Windows and a proxy, but might affect other environments as well.
4393- (Eric Holmberg, #215426)
4394-
4395- * Handle old merge directives correctly in Merger.from_mergeable. Stricter
4396- get_parent_map requirements exposed a latent bug here. (Aaron Bentley)
4397-
4398- * Issue a warning and ignore passwords declared in authentication.conf when
4399- used for an ssh scheme (sftp or bzr+ssh).
4400- (Vincent Ladeuil, #203186)
4401-
4402- * Make both http implementations raise appropriate exceptions on 403
4403- Forbidden when POSTing smart requests.
4404- (Vincent Ladeuil, #230223)
4405-
4406- * Properly *title* header names in http requests instead of capitalizing
4407- them.
4408- (Vincent Ladeuil, #229076)
4409-
4410- * The "Unable to obtain lock" error message now also suggests using
4411- ``bzr break-lock`` to fix it. (Martin Albisetti, #139202)
4412-
4413- * Treat an encoding of '' as ascii; this can happen when bzr is run
4414- under vim on Mac OS X.
4415- (Neil Martinsen-Burrell)
4416-
4417- * ``VersionedFile.make_mpdiffs()`` was raising an exception that wasn't in
4418- scope. (Daniel Fischer #235687)
4419-
4420- DOCUMENTATION:
4421-
4422- * Added directory structure and started translation of docs in spanish.
4423- (Martin Albisetti, Lucio Albenga)
4424-
4425- * Incorporate feedback from Jelmer Vernooij and Neil Martinsen-Burrell
4426- on the plugin and integration chapters of the User Guide.
4427- (Ian Clatworthy)
4428-
4429- * More Bazaar developer documentation about packaging and release process,
4430- and about use of Python reprs.
4431- (Martin Pool, Martin Albisetti)
4432-
4433- * Updated Tortise strategy document. (Mark Hammond)
4434-
4435- TESTING:
4436-
4437- * ``bzrlib.tests.adapt_tests`` was broken and unused - it has been fixed.
4438- (Robert Collins)
4439-
4440- * Fix the test HTTPServer to be isolated from chdir calls made while it is
4441- running, allowing it to be used in blackbox tests. (Robert Collins)
4442-
4443- * New helper function for splitting test suites
4444- ``split_suite_by_condition``. (Robert Collins)
4445-
4446- INTERNALS:
4447-
4448- * ``Branch.missing_revisions`` has been deprecated. Similar functionality
4449- can be obtained using ``bzrlib.missing.find_unmerged``. The api was
4450- fairly broken, and the function was unused, so we are getting rid of it.
4451- (John Arbash Meinel)
4452-
4453- API CHANGES:
4454-
4455- * ``Branch.abspath`` is deprecated; use the Tree or Transport
4456- instead. (Martin Pool)
4457-
4458- * ``Branch.update_revisions`` now takes an optional ``Graph``
4459- object. This can be used by ``update_revisions`` when it is
4460- checking ancestry, and allows callers to prefer request to go to a
4461- local branch. (John Arbash Meinel)
4462-
4463- * Branch, Repository, Tree and BzrDir should expose a Transport as an
4464- attribute if they have one, rather than having it indirectly accessible
4465- as ``.control_files._transport``. This doesn't add a requirement
4466- to support a Transport in cases where it was not needed before;
4467- it just simplifies the way it is reached. (Martin Pool)
4468-
4469- * ``bzr missing --mine-only`` will return status code 0 if you have no
4470- new revisions, but the remote does. Similarly for ``--theirs-only``.
4471- The new code only checks one side, so it doesn't know if the other
4472- side has changes. This seems more accurate with the request anyway.
4473- It also changes the output to print '[This|Other] branch is up to
4474- date.' rather than displaying nothing. (John Arbash Meinel)
4475-
4476- * ``LockableFiles.put_utf8``, ``put_bytes`` and ``controlfilename``
4477- are now deprecated in favor of using Transport operations.
4478- (Martin Pool)
4479-
4480- * Many methods on ``VersionedFile``, ``Repository`` and in
4481- ``bzrlib.revision`` deprecated before bzrlib 1.5 have been removed.
4482- (Robert Collins)
4483-
4484- * ``RevisionSpec.wants_revision_history`` can be set to False for a given
4485- ``RevisionSpec``. This will disable the existing behavior of passing in
4486- the full revision history to ``self._match_on``. Useful for specs that
4487- don't actually need access to the full history. (John Arbash Meinel)
4488-
4489- * The constructors of ``SmartClientMedium`` and its subclasses now require a
4490- ``base`` parameter. ``SmartClientMedium`` implementations now also need
4491- to provide a ``remote_path_from_transport`` method. (Andrew Bennetts)
4492-
4493- * The default permissions for creating new files and directories
4494- should now be obtained from ``BzrDir._get_file_mode()`` and
4495- ``_get_dir_mode()``, rather than from LockableFiles. The ``_set_file_mode``
4496- and ``_set_dir_mode`` variables on LockableFiles which were advertised
4497- as a way for plugins to control this are no longer consulted.
4498- (Martin Pool)
4499-
4500- * ``VersionedFile.join`` is deprecated. This method required local
4501- instances of both versioned file objects and was thus hostile to being
4502- used for streaming from a smart server. The new get_record_stream and
4503- insert_record_stream are meant to efficiently replace this method.
4504- (Robert Collins)
4505-
4506- * ``WorkingTree.set_parent_(ids/trees)`` will now filter out revisions
4507- which are in the ancestry of other revisions. So if you merge the same
4508- tree twice, or merge an ancestor of an existing merge, it will only
4509- record the newest. (If you merge a descendent, it will replace its
4510- ancestor). (John Arbash Meinel, #235407)
4511-
4512- * ``WorkingTreeFormat2.stub_initialize_remote`` is now private.
4513- (Martin Pool)
4514+Notes When Upgrading
4515+********************
4516+
4517+* There is a new version of the network protocol used for bzr://, bzr+ssh://
4518+ and bzr+http:// connections. This will allow more efficient requests and
4519+ responses, and more graceful fallback when a server is too old to
4520+ recognise a request from a more recent client. Bazaar 1.6 will
4521+ interoperate with 0.16 and later versions, but servers should be upgraded
4522+ when possible. Bazaar 1.6 no longer interoperates with 0.15 and earlier via
4523+ these protocols. Use alternatives like SFTP or upgrade those servers.
4524+ (Andrew Bennetts, #83935)
4525+
4526+Changes
4527+*******
4528+
4529+* Deprecation warnings will not be suppressed when running ``bzr selftest``
4530+ so that developers can see if their code is using deprecated functions.
4531+ (John Arbash Meinel)
4532+
4533+Features
4534+********
4535+
4536+* Adding ``-Derror`` will now display a traceback when a plugin fails to
4537+ load. (James Westby)
4538+
4539+Improvements
4540+************
4541+
4542+* ``bzr branch/push/pull -r XXX`` now have a helper function for finding
4543+ the revno of the new revision (``Graph.find_distance_to_null``). This
4544+ should make something like ``bzr branch -r -100`` in a shared, no-trees
4545+ repository much snappier. (John Arbash Meinel)
4546+
4547+* ``bzr log --short -r X..Y`` no longer needs to access the full revision
4548+ history. This makes it noticeably faster when logging the last few
4549+ revisions. (John Arbash Meinel)
4550+
4551+* ``bzr ls`` now accepts ``-V`` as an alias for ``--versioned``.
4552+ (Jerad Cramp, #165086)
4553+
4554+* ``bzr missing`` uses the new ``Graph.find_unique_ancestors`` and
4555+ ``Graph.find_differences`` to determine missing revisions without having
4556+ to search the whole ancestry. (John Arbash Meinel, #174625)
4557+
4558+* ``bzr uncommit`` now uses partial history access, rather than always
4559+ extracting the full revision history for a branch. This makes it
4560+ resolve the appropriate revisions much faster (in testing it drops
4561+ uncommit from 1.5s => 0.4s). It also means ``bzr log --short`` is one
4562+ step closer to not using full revision history.
4563+ (John Arbash Meinel, #172649)
4564+
4565+Bugfixes
4566+********
4567+
4568+* ``bzr merge --lca`` should handle when two revisions have no common
4569+ ancestor other than NULL_REVISION. (John Arbash Meinel, #235715)
4570+
4571+* ``bzr status`` was breaking if you merged the same revision twice.
4572+ (John Arbash Meinel, #235407)
4573+
4574+* ``bzr push`` with both ``--overwrite`` and ``-r NNN`` options no longer
4575+ fails. (Andrew Bennetts, #234229)
4576+
4577+* Correctly track the base URL of a smart medium when using bzr+http://
4578+ URLs, which was causing spurious "No repository present" errors with
4579+ branches in shared repositories accessed over bzr+http.
4580+ (Andrew Bennetts, #230550)
4581+
4582+* Define ``_remote_is_at_least_1_2`` on ``SmartClientMedium`` so that all
4583+ implementations have the attribute. Fixes 'PyCurlTransport' object has no
4584+ attribute '_remote_is_at_least_1_2' attribute errors.
4585+ (Andrew Bennetts, #220806)
4586+
4587+* Failure to delete an obsolete pack file should just give a warning
4588+ message, not a fatal error. It may for example fail if the file is still
4589+ in use by another process.
4590+ (Martin Pool)
4591+
4592+* Fix MemoryError during large fetches over HTTP by limiting the amount of
4593+ data we try to read per ``recv`` call. The problem was observed with
4594+ Windows and a proxy, but might affect other environments as well.
4595+ (Eric Holmberg, #215426)
4596+
4597+* Handle old merge directives correctly in Merger.from_mergeable. Stricter
4598+ get_parent_map requirements exposed a latent bug here. (Aaron Bentley)
4599+
4600+* Issue a warning and ignore passwords declared in authentication.conf when
4601+ used for an ssh scheme (sftp or bzr+ssh).
4602+ (Vincent Ladeuil, #203186)
4603+
4604+* Make both http implementations raise appropriate exceptions on 403
4605+ Forbidden when POSTing smart requests.
4606+ (Vincent Ladeuil, #230223)
4607+
4608+* Properly *title* header names in http requests instead of capitalizing
4609+ them.
4610+ (Vincent Ladeuil, #229076)
4611+
4612+* The "Unable to obtain lock" error message now also suggests using
4613+ ``bzr break-lock`` to fix it. (Martin Albisetti, #139202)
4614+
4615+* Treat an encoding of '' as ascii; this can happen when bzr is run
4616+ under vim on Mac OS X.
4617+ (Neil Martinsen-Burrell)
4618+
4619+* ``VersionedFile.make_mpdiffs()`` was raising an exception that wasn't in
4620+ scope. (Daniel Fischer #235687)
4621+
4622+Documentation
4623+*************
4624+
4625+* Added directory structure and started translation of docs in spanish.
4626+ (Martin Albisetti, Lucio Albenga)
4627+
4628+* Incorporate feedback from Jelmer Vernooij and Neil Martinsen-Burrell
4629+ on the plugin and integration chapters of the User Guide.
4630+ (Ian Clatworthy)
4631+
4632+* More Bazaar developer documentation about packaging and release process,
4633+ and about use of Python reprs.
4634+ (Martin Pool, Martin Albisetti)
4635+
4636+* Updated Tortise strategy document. (Mark Hammond)
4637+
4638+Testing
4639+*******
4640+
4641+* ``bzrlib.tests.adapt_tests`` was broken and unused - it has been fixed.
4642+ (Robert Collins)
4643+
4644+* Fix the test HTTPServer to be isolated from chdir calls made while it is
4645+ running, allowing it to be used in blackbox tests. (Robert Collins)
4646+
4647+* New helper function for splitting test suites
4648+ ``split_suite_by_condition``. (Robert Collins)
4649+
4650+Internals
4651+*********
4652+
4653+* ``Branch.missing_revisions`` has been deprecated. Similar functionality
4654+ can be obtained using ``bzrlib.missing.find_unmerged``. The api was
4655+ fairly broken, and the function was unused, so we are getting rid of it.
4656+ (John Arbash Meinel)
4657+
4658+API Changes
4659+***********
4660+
4661+* ``Branch.abspath`` is deprecated; use the Tree or Transport
4662+ instead. (Martin Pool)
4663+
4664+* ``Branch.update_revisions`` now takes an optional ``Graph``
4665+ object. This can be used by ``update_revisions`` when it is
4666+ checking ancestry, and allows callers to prefer request to go to a
4667+ local branch. (John Arbash Meinel)
4668+
4669+* Branch, Repository, Tree and BzrDir should expose a Transport as an
4670+ attribute if they have one, rather than having it indirectly accessible
4671+ as ``.control_files._transport``. This doesn't add a requirement
4672+ to support a Transport in cases where it was not needed before;
4673+ it just simplifies the way it is reached. (Martin Pool)
4674+
4675+* ``bzr missing --mine-only`` will return status code 0 if you have no
4676+ new revisions, but the remote does. Similarly for ``--theirs-only``.
4677+ The new code only checks one side, so it doesn't know if the other
4678+ side has changes. This seems more accurate with the request anyway.
4679+ It also changes the output to print '[This|Other] branch is up to
4680+ date.' rather than displaying nothing. (John Arbash Meinel)
4681+
4682+* ``LockableFiles.put_utf8``, ``put_bytes`` and ``controlfilename``
4683+ are now deprecated in favor of using Transport operations.
4684+ (Martin Pool)
4685+
4686+* Many methods on ``VersionedFile``, ``Repository`` and in
4687+ ``bzrlib.revision`` deprecated before bzrlib 1.5 have been removed.
4688+ (Robert Collins)
4689+
4690+* ``RevisionSpec.wants_revision_history`` can be set to False for a given
4691+ ``RevisionSpec``. This will disable the existing behavior of passing in
4692+ the full revision history to ``self._match_on``. Useful for specs that
4693+ don't actually need access to the full history. (John Arbash Meinel)
4694+
4695+* The constructors of ``SmartClientMedium`` and its subclasses now require a
4696+ ``base`` parameter. ``SmartClientMedium`` implementations now also need
4697+ to provide a ``remote_path_from_transport`` method. (Andrew Bennetts)
4698+
4699+* The default permissions for creating new files and directories
4700+ should now be obtained from ``BzrDir._get_file_mode()`` and
4701+ ``_get_dir_mode()``, rather than from LockableFiles. The ``_set_file_mode``
4702+ and ``_set_dir_mode`` variables on LockableFiles which were advertised
4703+ as a way for plugins to control this are no longer consulted.
4704+ (Martin Pool)
4705+
4706+* ``VersionedFile.join`` is deprecated. This method required local
4707+ instances of both versioned file objects and was thus hostile to being
4708+ used for streaming from a smart server. The new get_record_stream and
4709+ insert_record_stream are meant to efficiently replace this method.
4710+ (Robert Collins)
4711+
4712+* ``WorkingTree.set_parent_(ids/trees)`` will now filter out revisions
4713+ which are in the ancestry of other revisions. So if you merge the same
4714+ tree twice, or merge an ancestor of an existing merge, it will only
4715+ record the newest. (If you merge a descendent, it will replace its
4716+ ancestor). (John Arbash Meinel, #235407)
4717+
4718+* ``WorkingTreeFormat2.stub_initialize_remote`` is now private.
4719+ (Martin Pool)
4720
4721
4722 bzr 1.5 2008-05-16
4723-------------------
4724+##################
4725
4726 This release of Bazaar includes several updates to the documentation, and fixes
4727 to prepare for making rich root support the default format. Many bugs have been
4728 squashed, including fixes to log, bzr+ssh inter-operation with older servers.
4729
4730- CHANGES:
4731-
4732- * Suppress deprecation warnings when bzrlib is a 'final' release. This way
4733- users of packaged software won't be bothered with DeprecationWarnings,
4734- but developers and testers will still see them. (John Arbash Meinel)
4735-
4736- DOCUMENTATION:
4737-
4738- * Incorporate feedback from Jelmer Vernooij and Neil Martinsen-Burrell
4739- on the plugin and integration chapters of the User Guide.
4740- (Ian Clatworthy)
4741+Changes
4742+*******
4743+
4744+* Suppress deprecation warnings when bzrlib is a 'final' release. This way
4745+ users of packaged software won't be bothered with DeprecationWarnings,
4746+ but developers and testers will still see them. (John Arbash Meinel)
4747+
4748+Documentation
4749+*************
4750+
4751+* Incorporate feedback from Jelmer Vernooij and Neil Martinsen-Burrell
4752+ on the plugin and integration chapters of the User Guide.
4753+ (Ian Clatworthy)
4754
4755
4756 bzr 1.5rc1 2008-05-09
4757----------------------
4758-
4759- NOTES WHEN UPGRADING:
4760-
4761- CHANGES:
4762-
4763- * Broader support of GNU Emacs mail clients. Set
4764- ``mail_client=emacsclient`` in your bazaar.conf and ``send`` will pop the
4765- bundle in a mail buffer according to the value of ``mail-user-agent``
4766- variable. (Xavier Maillard)
4767-
4768- FEATURES:
4769-
4770- IMPROVEMENTS:
4771-
4772- * Diff now handles revision specs like "branch:" and "submit:" more
4773- efficiently. (Aaron Bentley, #202928)
4774-
4775- * More friendly error given when attempt to start the smart server
4776- on an address already in use. (Andrea Corbellini, #200575)
4777-
4778- * Pull completes much faster when there is nothing to pull.
4779- (Aaron Bentley)
4780-
4781- BUGFIXES:
4782-
4783- * Authentication.conf can define sections without password.
4784- (Vincent Ladeuil, #199440)
4785-
4786- * Avoid muttering every time a child update does not cause a progress bar
4787- update. (John Arbash Meinel, #213771)
4788-
4789- * ``Branch.reconcile()`` is now implemented. This allows ``bzr reconcile``
4790- to fix when a Branch has a non-canonical mainline history. ``bzr check``
4791- also detects this condition. (John Arbash Meinel, #177855)
4792-
4793- * ``bzr log -r ..X bzr://`` was failing, because it was getting a request
4794- for ``revision_id=None`` which was not a string.
4795- (John Arbash Meinel, #211661)
4796-
4797- * ``bzr commit`` now works with Microsoft's FTP service.
4798- (Andreas Deininger)
4799-
4800- * Catch definitions outside sections in authentication.conf.
4801- (Vincent Ladeuil, #217650)
4802-
4803- * Conversion from non-rich-root to rich-root(-pack) updates inventory
4804- sha1s, even when bundles are used. (Aaron Bentley, #181391)
4805-
4806- * Conversion from non-rich-root to rich-root(-pack) works correctly even
4807- though search keys are not topologically sorted. (Aaron Bentley)
4808-
4809- * Conversion from non-rich-root to rich-root(-pack) works even when a
4810- parent revision has a different root id. (Aaron Bentley, #177874)
4811-
4812- * Disable strace testing until strace is fixed (see bug #103133) and emit a
4813- warning when selftest ends to remind us of leaking tests.
4814- (Vincent Ladeuil, #226769)
4815-
4816- * Fetching all revisions from a repository does not cause pack collisions.
4817- (Robert Collins, Aaron Bentley, #212908)
4818-
4819- * Fix error about "attempt to add line-delta in non-delta knit".
4820- (Andrew Bennetts, #217701)
4821-
4822- * Pushing a branch in "dirstate" format (Branch5) over bzr+ssh would break
4823- if the remote server was < version 1.2. This was due to a bug in the
4824- RemoteRepository.get_parent_map() fallback code.
4825- (John Arbash Meinel, #214894)
4826-
4827- * Remove leftover code in ``bzr_branch`` that inappropriately creates
4828- a ``branch-name`` file in the branch control directory.
4829- (Martin Pool)
4830-
4831- * Set SO_REUSEADDR on server sockets of ``bzr serve`` to avoid problems
4832- rebinding the socket when starting the server a second time.
4833- (John Arbash Meinel, Martin Pool, #164288)
4834-
4835- * Severe performance degradation in fetching from knit repositories to
4836- knits and packs due to parsing the entire revisions.kndx on every graph
4837- walk iteration fixed by using the Repository.get_graph API. There was
4838- another regression in knit => knit fetching which re-read the index for
4839- every revision each side had in common.
4840- (Robert Collins, John Arbash Meinel)
4841-
4842- * When logging the changes to a particular file, there was a bug if there
4843- were ghosts in the revision ancestry. (John Arbash Meinel, #209948)
4844-
4845- * xs4all's ftp server returns a temporary error when trying to list an
4846- empty directory, rather than returning an empty list. Adding a
4847- workaround so that we don't get spurious failures.
4848- (John Arbash Meinel, #215522)
4849-
4850- DOCUMENTATION:
4851-
4852- * Expanded the User Guide to include new chapters on popular plugins and
4853- integrating Bazaar into your environment. The *Best practices* chapter
4854- was renamed to *Miscellaneous topics* as suggested by community
4855- feedback as well. (Ian Clatworthy)
4856-
4857- * Document outlining strategies for TortoiseBzr. (Mark Hammond)
4858-
4859- * Improved the documentation on hooks. (Ian Clatworthy)
4860-
4861- * Update authentication docs regarding ssh agents.
4862- (Vincent Ladeuil, #183705)
4863-
4864- TESTING:
4865-
4866- * Add ``thread_name_suffix`` parameter to SmartTCPServer_for_testing, to
4867- make it easy to identify which test spawned a thread with an unhandled
4868- exception. (Andrew Bennetts)
4869-
4870- * New ``--debugflag``/``-E`` option to ``bzr selftest`` for setting
4871- options for debugging tests, these are complementary to the the -D
4872- options. The ``-Dselftest_debug`` global option has been replaced by the
4873- ``-E=allow_debug`` option for selftest. (Andrew Bennetts)
4874-
4875- * Parameterised test ids are preserved correctly to aid diagnosis of test
4876- failures. (Robert Collins, Andrew Bennetts)
4877-
4878- * selftest now accepts --starting-with <id> to load only the tests whose id
4879- starts with the one specified. This greatly speeds up running the test
4880- suite on a limited set of tests and can be used to run the tests for a
4881- single module, a single class or even a single test. (Vincent Ladeuil)
4882-
4883- * The test suite modules have been modified to define load_tests() instead
4884- of test_suite(). That speeds up selective loading (via --load-list)
4885- significantly and provides many examples on how to migrate (grep for
4886- load_tests). (Vincent Ladeuil)
4887-
4888- INTERNALS:
4889-
4890- * ``Hooks.install_hook`` is now deprecated in favour of
4891- ``Hooks.install_named_hook`` which adds a required ``name`` parameter, to
4892- avoid having to call ``Hooks.name_hook``. (Daniel Watkins)
4893-
4894- * Implement xml8 serializer. (Aaron Bentley)
4895-
4896- * New form ``@deprecated_method(deprecated_in(1, 5, 0))`` for making
4897- deprecation wrappers. (Martin Pool)
4898-
4899- * ``Repository.revision_parents`` is now deprecated in favour of
4900- ``Repository.get_parent_map([revid])[revid]``. (Jelmer Vernooij)
4901-
4902- * The Python ``assert`` statement is no longer used in Bazaar source, and
4903- a test checks this. (Martin Pool)
4904-
4905- API CHANGES:
4906-
4907- * ``bzrlib.status.show_pending_merges`` requires the repository to be
4908- locked by the caller. Callers should have been doing it anyway, but it
4909- will now raise an exception if they do not. (John Arbash Meinel)
4910-
4911- * Repository.get_data_stream, Repository.get_data_stream_for_search(),
4912- Repository.get_deltas_for_revsions(), Repository.revision_trees(),
4913- Repository.item_keys_introduced_by() no longer take read locks.
4914- (Aaron Bentley)
4915-
4916- * ``LockableFiles.get_utf8`` and ``.get`` are deprecated, as a start
4917- towards removing LockableFiles and ``.control_files`` entirely.
4918- (Martin Pool)
4919-
4920- * Methods deprecated prior to 1.1 have been removed.
4921- (Martin Pool)
4922+#####################
4923+
4924+Changes
4925+*******
4926+
4927+* Broader support of GNU Emacs mail clients. Set
4928+ ``mail_client=emacsclient`` in your bazaar.conf and ``send`` will pop the
4929+ bundle in a mail buffer according to the value of ``mail-user-agent``
4930+ variable. (Xavier Maillard)
4931+
4932+Improvements
4933+************
4934+
4935+* Diff now handles revision specs like "branch:" and "submit:" more
4936+ efficiently. (Aaron Bentley, #202928)
4937+
4938+* More friendly error given when attempt to start the smart server
4939+ on an address already in use. (Andrea Corbellini, #200575)
4940+
4941+* Pull completes much faster when there is nothing to pull.
4942+ (Aaron Bentley)
4943+
4944+Bugfixes
4945+********
4946+
4947+* Authentication.conf can define sections without password.
4948+ (Vincent Ladeuil, #199440)
4949+
4950+* Avoid muttering every time a child update does not cause a progress bar
4951+ update. (John Arbash Meinel, #213771)
4952+
4953+* ``Branch.reconcile()`` is now implemented. This allows ``bzr reconcile``
4954+ to fix when a Branch has a non-canonical mainline history. ``bzr check``
4955+ also detects this condition. (John Arbash Meinel, #177855)
4956+
4957+* ``bzr log -r ..X bzr://`` was failing, because it was getting a request
4958+ for ``revision_id=None`` which was not a string.
4959+ (John Arbash Meinel, #211661)
4960+
4961+* ``bzr commit`` now works with Microsoft's FTP service.
4962+ (Andreas Deininger)
4963+
4964+* Catch definitions outside sections in authentication.conf.
4965+ (Vincent Ladeuil, #217650)
4966+
4967+* Conversion from non-rich-root to rich-root(-pack) updates inventory
4968+ sha1s, even when bundles are used. (Aaron Bentley, #181391)
4969+
4970+* Conversion from non-rich-root to rich-root(-pack) works correctly even
4971+ though search keys are not topologically sorted. (Aaron Bentley)
4972+
4973+* Conversion from non-rich-root to rich-root(-pack) works even when a
4974+ parent revision has a different root id. (Aaron Bentley, #177874)
4975+
4976+* Disable strace testing until strace is fixed (see bug #103133) and emit a
4977+ warning when selftest ends to remind us of leaking tests.
4978+ (Vincent Ladeuil, #226769)
4979+
4980+* Fetching all revisions from a repository does not cause pack collisions.
4981+ (Robert Collins, Aaron Bentley, #212908)
4982+
4983+* Fix error about "attempt to add line-delta in non-delta knit".
4984+ (Andrew Bennetts, #217701)
4985+
4986+* Pushing a branch in "dirstate" format (Branch5) over bzr+ssh would break
4987+ if the remote server was < version 1.2. This was due to a bug in the
4988+ RemoteRepository.get_parent_map() fallback code.
4989+ (John Arbash Meinel, #214894)
4990+
4991+* Remove leftover code in ``bzr_branch`` that inappropriately creates
4992+ a ``branch-name`` file in the branch control directory.
4993+ (Martin Pool)
4994+
4995+* Set SO_REUSEADDR on server sockets of ``bzr serve`` to avoid problems
4996+ rebinding the socket when starting the server a second time.
4997+ (John Arbash Meinel, Martin Pool, #164288)
4998+
4999+* Severe performance degradation in fetching from knit repositories to
5000+ knits and packs due to parsing the entire revisions.kndx on every graph
The diff has been truncated for viewing.