~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/en/release-notes/bzr-1.13.txt

Fix up inter_changes with dirstate both C and python.

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
####################
2
 
Bazaar Release Notes
3
 
####################
4
 
 
5
 
.. toctree::
6
 
   :maxdepth: 1
7
 
 
8
 
 
9
 
bzr 1.13
10
 
########
11
 
 
12
 
:Codename: paraskavedekatriaphobia
13
 
:1.13: 2009-03-14
14
 
:1.13rc1: 2009-03-10
15
 
:1.13.1: 2009-03-23
16
 
:1.13.2: 2009-04-27
17
 
 
18
 
GNU Changelog output can now be produced by ``bzr log --gnu-changelog``.  Debug
19
 
flags can now be set in ``~/.bazaar/bazaar.conf``.  Lightweight checkouts and
20
 
stacked branches should both be much faster over remote connections.  
21
 
 
22
 
Changes From 1.13.1 to 1.13.2
23
 
*****************************
24
 
 
25
 
A regression was found in the 1.13.1 release. When bzr 1.13.1 and earlier push
26
 
a stacked branch they do not take care to push all the parent inventories for
27
 
the transferred revisions. This means that a smart server serving that branch
28
 
often cannot calculate inventory deltas for the branch (because smart server
29
 
does not/cannot open fallback repositories). Prior to 1.13 the server did not
30
 
have a verb to stream revisions out of a repository, so that's why this bug has
31
 
appeared now.
32
 
 
33
 
Bug Fixes
34
 
*********
35
 
 
36
 
* Fix for bug 354036 ErrorFromSmartServer - AbsentContentFactory object has no
37
 
  attribute 'get_bytes_as' exception while pulling from Launchpad 
38
 
  (Jean-Francois Roy, Andrew Bennetts, Robert Collins)
39
 
 
40
 
Changes From 1.13final to 1.13.1
41
 
********************************
42
 
 
43
 
A couple regessions where found in the 1.13 release. The pyrex-generated C
44
 
extensions are missing from the .tar.gz and .zip files.  Documentation on how
45
 
to generate GNU ChangeLogs is wrong.
46
 
 
47
 
Bug Fixes
48
 
*********
49
 
 
50
 
* Change ``./bzr``'s ``_script_version`` to match ./bzrlib/__init__.py
51
 
  version_info. (Bob Tanner, Martin Pool, #345232)
52
 
 
53
 
* Distribution archives for 1.13 do not contain generated C extension modules
54
 
  (Jean-Francois Roy, Bob Tanner, #344465)
55
 
 
56
 
* GNU ChangeLog output can now be produced by bzr log --format gnu-changelog is
57
 
  incorrect (Deejay, Bob Tanner, Martin Pool, Robert Collins, #343928)
58
 
 
59
 
* ``merge --force`` works again. (Robert Collins, #342105)
60
 
 
61
 
Changes From 1.13rc1 to 1.13final
62
 
*********************************
63
 
 
64
 
* Fix "is not a stackable format" error when pushing a
65
 
  stackable-format branch with an unstackable-format repository to a
66
 
  destination with a default stacking policy.  (Andrew Bennetts)
67
 
 
68
 
* Progress bars now show the rate of network activity for
69
 
  ``bzr+ssh://`` and ``bzr://`` connections.  (Andrew Bennetts)
70
 
 
71
 
Compatibility Breaks
72
 
********************
73
 
 
74
 
* ``bzr log --line`` now indicates which revisions are merges with
75
 
  `[merge]` after the date.  Scripts which parse the output of this
76
 
  command may need to be adjusted.
77
 
  (Neil Martinsen-Burrell)
78
 
 
79
 
New Features
80
 
************
81
 
 
82
 
* ``bzr reconfigure`` now supports --with-trees and --with-no-trees
83
 
  options to change the default tree-creation policy of shared
84
 
  repositories.  (Matthew Fuller, Marius Kruger, #145033)
85
 
 
86
 
* Debug flags can now be set in ``~/.bazaar/bazaar.conf``.
87
 
  (Martin Pool)
88
 
 
89
 
* Filtered views provide a mask over the tree so that users can focus
90
 
  on a subset of a tree when doing their work. See ``Filtered views``
91
 
  in chapter 7 of the User Guide and ``bzr help view`` for details.
92
 
  (Ian Clatworthy)
93
 
 
94
 
* GNU Changelog output can now be produced by ``bzr log --gnu-changelog``.
95
 
  (Andrea Bolognani, Martin Pool)
96
 
 
97
 
* The ``-Dmemory`` flag now gives memory information on Windows.
98
 
  (John Arbash Meinel)
99
 
 
100
 
* Multiple authors for a commit can now be recorded by using the "--author"
101
 
  option multiple times. (James Westby, #185772)
102
 
 
103
 
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernooij)
104
 
 
105
 
* New command ``bzr launchpad-open`` opens a Launchpad web page for that
106
 
  branch in your web browser, as long as the branch is on Launchpad at all.
107
 
  (Jonathan Lange)
108
 
 
109
 
* New API for getting bugs fixed by a revision: Revision.iter_bugs().
110
 
  (Jonathan Lange)
111
 
 
112
 
Improvements
113
 
************
114
 
 
115
 
* All bzr ``Hooks`` classes are now registered in
116
 
  ``bzrlib.hooks.known_hooks``. This removes the separate list from
117
 
  ``bzrlib.tests`` and ensures that all hooks registered there are
118
 
  correctly isolated by the test suite (previously
119
 
  ``MutableTreeHooks`` were not being isolated correctly). Further, 
120
 
  documentation for hooks is now dynamically generated from the
121
 
  present HookPoints. ``bzr hooks`` will now also report on all the
122
 
  hooks present in the ``bzrlib.hooks.known_hooks`` registry.
123
 
  (Robert Collins)
124
 
 
125
 
* ``bzr add`` no longer prints ``add completed`` on success. Failure
126
 
  still prints an error message. (Robert Collins)
127
 
 
128
 
* ``bzr branch`` now has a ``--no-tree`` option which turns off the
129
 
  generation of a working tree in the new branch.
130
 
  (Daniel Watkins, John Klinger, #273993)
131
 
 
132
 
* Bazaar will now point out ``bzr+ssh://`` to the user when they 
133
 
  use ssh://. (Jelmer Vernooij, #330535)
134
 
 
135
 
* ``bzr -v info`` now omits the number of committers branch statistic,
136
 
  making it many times faster for large projects. To include that
137
 
  statistic in the output, use ``bzr -vv info``.
138
 
  (Ian Clatworthy)
139
 
 
140
 
* ``bzr push`` to a ``bzr`` url (``bzr://``, ``bzr+ssh://`` etc) will
141
 
  stream if the server is version 1.13 or greater, reducing roundtrips
142
 
  significantly. (Andrew Bennetts, Robert Collins)
143
 
 
144
 
* Lightweight Checkouts and Stacked Branches should both be much
145
 
  faster over remote connections. Building the working tree now
146
 
  batches up requests into approx 5MB requests, rather than a separate
147
 
  request for each file. (John Arbash Meinel)
148
 
 
149
 
* Support for GSSAPI authentication when using HTTP or HTTPS. 
150
 
  (Jelmer Vernooij)
151
 
 
152
 
* The ``bzr shelve`` prompt now includes a '?' help option to explain the
153
 
  short options better. (Daniel Watkins, #327429)
154
 
 
155
 
* ``bzr lp-open`` now falls back to the push location if it cannot find a
156
 
  public location. (Jonathan Lange, #332372)
157
 
 
158
 
* ``bzr lp-open`` will try to find the Launchpad URL for the location
159
 
  passed on the command line. This makes ``bzr lp-open lp:foo`` work as
160
 
  expected. (Jonathan Lange, #332705)
161
 
 
162
 
* ``bzr send`` now supports MH-E via ``emacsclient``. (Eric Gillespie)
163
 
 
164
 
Bug Fixes
165
 
*********
166
 
 
167
 
* Allows ``bzr log <FILE>`` to be called in an empty branch without
168
 
  backtracing. (Vincent Ladeuil, #346431)
169
 
 
170
 
* Bazaar now gives a better message including the filename if it's
171
 
  unable to read a file in the working directory, for example because
172
 
  of a permission error.  (Martin Pool, #338653)
173
 
 
174
 
* ``bzr cat -r<old> <path>`` doesn't traceback anymore when <path> has a
175
 
  file id in the working tree different from the one in revision <old>.
176
 
  (Vincent Ladeuil, #341517, #253806)
177
 
 
178
 
* ``bzr send`` help is more specific about how to apply merge
179
 
  directives.  (Neil Martinsen-Burrell, #253470)
180
 
 
181
 
* ``bzr missing`` now uses ``Repository.get_revision_delta()`` rather
182
 
  than fetching trees and determining a delta itself. (Jelmer
183
 
  Vernooij, #315048)
184
 
 
185
 
* ``bzr push`` to a smart server no longer causes "Revision
186
 
  {set([('null:',)])} not present ..." errors when the branch has
187
 
  multiple root revisions. (Andrew Bennetts, #317654)
188
 
 
189
 
* ``bzr shelve`` now properly handle patches with no terminating newline.
190
 
  (Benoît PIERRE, #303569)
191
 
 
192
 
* ``bzr unshelve`` gives a more palatable error if passed a non-integer
193
 
  shelf id. (Daniel Watkins)
194
 
 
195
 
* Export now handles files that are not present in the tree.
196
 
  (James Westby, #174539)
197
 
 
198
 
* Fixed incorrect "Source format does not support stacking" warning
199
 
  when pushing to a smart server.  (Andrew Bennetts, #334114)
200
 
  
201
 
* Fixed "sprout() got an unexpected keyword argument 'source_branch'"
202
 
  error branching from old repositories.
203
 
  (Martin Pool, #321695)
204
 
 
205
 
* Make ``bzr push --quiet <non-local location>`` less chatty.
206
 
  (Kent Gibson, #221461)
207
 
 
208
 
* Many Branch hooks would not fire with ``bzr://`` and ``bzr+ssh://``
209
 
  branches, and this was not noticed due to a bug in the test logic
210
 
  for branches. This is now fixed and a test added to prevent it
211
 
  reoccuring. (Robert Collins, Andrew Bennetts)
212
 
 
213
 
* Restore the progress bar on Windows. We were disabling it when TERM
214
 
  wasn't set, but Windows doesn't set TERM. (Alexander Belchenko,
215
 
  #334808)
216
 
 
217
 
* ``setup.py build_ext`` now gives a proper error when an extension
218
 
  fails to build. (John Arbash Meinel)
219
 
 
220
 
* Symlinks to non ascii file names are now supported.
221
 
  (Robert Collins, Vincent Ladeuil, #339055, #272444)    
222
 
 
223
 
* Under rare circumstances (aka nobody reported a bug about it), the FTP
224
 
  transport could revert to ascii mode. It now stays in binary mode except
225
 
  when needed.  (Vincent Ladeuil)
226
 
 
227
 
* Unshelve does not generate warnings about progress bars.
228
 
  (Aaron Bentley, #328148)
229
 
 
230
 
* shelve cleans up properly when unversioned files are specified.
231
 
  (Benoît Pierre, Aaron Bentley)
232
 
 
233
 
Documentation
234
 
*************
235
 
 
236
 
* Added ``Organizing your workspace`` to the User Guide appendices,
237
 
  summarizing some common ways of organizing trees, branches and
238
 
  repositories and the processes/workflows implied/enabled by each.
239
 
  (Ian Clatworthy)
240
 
 
241
 
* Hooks can now be self documenting. ``bzrlib.hooks.Hooks.create_hook``
242
 
  is the entry point for this feature. (Robert Collins)
243
 
 
244
 
* The documentation for ``shelve`` and ``unshelve`` has been clarified.
245
 
  (Daniel Watkins, #327421, #327425)
246
 
 
247
 
API Changes
248
 
***********
249
 
 
250
 
* ``bzr selftest`` now fails if the bazaar sources contain trailing
251
 
  whitespace, non-unix style line endings and files not ending in a
252
 
  newline. About 372 files and 3243 lines with trailing whitespace was
253
 
  updated to comply with this. The code already complied with the other
254
 
  criteria, but now it is enforced. (Marius Kruger)
255
 
 
256
 
* ``bzrlib.branch.PushResult`` was renamed to 
257
 
  ``bzrlib.branch.BranchPushResult``. (Jelmer Vernooij)
258
 
 
259
 
* ``Branch.fetch`` and ``Repository.fetch`` now return None rather
260
 
  than a count of copied revisions and failed revisions. A while back
261
 
  we stopped ever reporting failed revisions because we started
262
 
  erroring instead, and the copied revisions count is not used in the
263
 
  UI at all - indeed it only reflects the repository status not
264
 
  changes to the branch itself. (Robert Collins)
265
 
 
266
 
* ``Inventory.apply_delta`` now raises an AssertionError if a file-id
267
 
  appears multiple times within the delta. (Ian Clatworthy)
268
 
 
269
 
* MutableTree.commit now favours the "authors" argument, with the old
270
 
  "author" argument being deprecated.
271
 
 
272
 
* Remove deprecated EmptyTree.  (Martin Pool)
273
 
 
274
 
* ``Repository.fetch`` now accepts an optional ``fetch_spec``
275
 
  parameter.  A ``SearchResult`` or ``MiniSearchResult`` may be passed
276
 
  to ``fetch_spec`` instead of a ``last_revision`` to specify exactly
277
 
  which revisions to fetch. (Andrew Bennetts)
278
 
 
279
 
* ``RepositoryAcquisitionPolicy.acquire_repository`` now returns a
280
 
  tuple of ``(repository, is_new_flag)``, rather than just the
281
 
  repository.  (Andrew Bennetts)
282
 
 
283
 
* Revision.get_apparent_author() is now deprecated, replaced by
284
 
  Revision.get_apparent_authors(), which returns a list. The former
285
 
  now returns the first item that would be returned from the second.
286
 
 
287
 
* The ``BranchBuilder`` test helper now accepts a ``timestamp``
288
 
  parameter to ``build_commit`` and ``build_snapshot``.  (Martin Pool)
289
 
 
290
 
* The ``_fetch_*`` attributes on ``Repository`` are now on
291
 
  ``RepositoryFormat``, more accurately reflecting their intent (they
292
 
  describe a disk format capability, not state of a particular
293
 
  repository of that format). (Robert Collins)
294
 
 
295
 
Internals
296
 
*********
297
 
 
298
 
* Branching from a non-stacked branch on a smart protocol is now
299
 
  free of virtual file system methods.
300
 
  (Robert Collins, Andrew Bennetts)
301
 
 
302
 
* Branch and Repository creation on a bzr+ssh://server are now done
303
 
  via RPC calls rather than VFS calls, reducing round trips for
304
 
  pushing new branches substantially. (Robert Collins)
305
 
 
306
 
* ``Branch.clone`` now takes the ``repository_policy`` formerly used
307
 
  inside ``BzrDir.clone_on_transport``, allowing stacking to be
308
 
  configured before the branch tags and revision tip are set. This
309
 
  fixes a race condition cloning stacked branches that would cause
310
 
  plugins to have hooks called on non-stacked instances.
311
 
  (Robert Collins, #334187)
312
 
 
313
 
* ``BzrDir.cloning_metadir`` now has a RPC call. (Robert Collins)
314
 
 
315
 
* ``BzrDirFormat.__str__`` now uses the human readable description
316
 
  rather than the sometimes-absent disk label. (Robert Collins)
317
 
 
318
 
* ``bzrlib.fetch`` is now composed of a sender and a sink component
319
 
  allowing for decoupling over a network connection. Fetching from
320
 
  or into a RemoteRepository with a 1.13 server will use this to
321
 
  stream the operation.
322
 
  (Andrew Bennetts, Robert Collins)
323
 
 
324
 
* ``bzrlib.tests.run_suite`` accepts a runner_class parameter
325
 
  supporting the use of different runners. (Robert Collins)
326
 
 
327
 
* Change how file_ids and revision_ids are interned as part of
328
 
  inventory deserialization. Now we use the real ``intern()``, rather
329
 
  than our own workaround that would also cache a Unicode copy of the
330
 
  string, and never emptied the cache. This should slightly reduce
331
 
  memory consumption. (John Arbash Meinel)
332
 
 
333
 
* New branch method ``create_clone_on_transport`` that returns a
334
 
  branch object. (Robert Collins)
335
 
 
336
 
* New hook Commands['extend_command'] to allow plugins to access a
337
 
  command object before the command is run (or help generated from
338
 
  it), without overriding the command. (Robert Collins)
339
 
 
340
 
* New version of the ``BzrDir.find_repository`` verb supporting
341
 
  ``_network_name`` to support removing more _ensure_real calls.
342
 
  (Robert Collins)
343
 
 
344
 
* ``RemoteBranchFormat`` no longer claims to have a disk format string.
345
 
  (Robert Collins)
346
 
 
347
 
* ``Repository`` objects now have ``suspend_write_group`` and
348
 
  ``resume_write_group`` methods.  These are currently only useful
349
 
  with pack repositories. (Andrew Bennetts, Robert Collins)
350
 
 
351
 
* ``BzrDirFormat``, ``BranchFormat`` and ``RepositoryFormat`` objects
352
 
  now have a ``network_name`` for passing the format across RPC calls.
353
 
  (Robert Collins, Andrew Bennetts)
354
 
 
355
 
* ``RepositoryFormat`` objects now all have a new attribute
356
 
  ``_serializer`` used by fetch when reserialising is required.
357
 
  (Robert Collins, Andrew Bennetts)
358
 
 
359
 
* Some methods have been pulled up from ``BzrBranch`` to ``Branch``
360
 
  to aid branch types that are not bzr branch objects (like
361
 
  RemoteBranch). (Robert Collins, Andrew Bennetts)
362
 
 
363
 
* Test adaptation has been made consistent throughout the built in
364
 
  tests. ``TestScenarioApplier``, ``multiply_tests_from_modules``,
365
 
  ``adapt_tests``, ``adapt_modules`` have all been deleted. Please
366
 
  use ``multiply_tests``, or for lower level needs ``apply_scenarios``
367
 
  and ``apply_scenario``. (Robert Collins)
368
 
 
369
 
* ``TestSkipped`` is now detected by TestCase and passed to the
370
 
  ``TestResult`` by calling ``addSkip``. For older TestResult objects,
371
 
  where ``addSkip`` is not available, ``addError`` is still called.
372
 
  This permits test filtering in subunit to strip out skipped tests
373
 
  resulting in a faster fix-shrink-list-run cycle. This is compatible
374
 
  with the testtools protocol for skips. (Robert Collins)
375
 
 
376
 
* The ``_index`` of ``KnitVersionedFiles`` now supports the ability
377
 
  to scan an underlying index that is going to be incorporated into
378
 
  the ``KnitVersionedFiles`` object, to determine if it has missing
379
 
  delta references. The method is ``scan_unvalidated_index``.
380
 
  (Andrew Bennetts, Robert Collins)
381
 
 
382
 
* There is a RemoteSink object which handles pushing to smart servers.
383
 
  (Andrew Bennetts, Robert Collins)
384
 
 
385
 
* ``TransportTraceDecorator`` now logs ``put_bytes_non_atomic`` and
386
 
  ``rmdir`` calls. (Robert Collins)
387
 
 
388
 
* ``VersionedFiles`` record adapters have had their signature change
389
 
  from ``(record, record.get_bytes_as(record.storage_kind))`` to
390
 
  ``(record)`` reducing excess duplication and allowing adapters
391
 
  to access private data in record to obtain content more
392
 
  efficiently. (Robert Collins)
393
 
 
394
 
* We no longer probe to see if we should create a working tree during
395
 
  clone if we cannot get a local_abspath for the new bzrdir.
396
 
  (Robert Collins)
397
 
 
398
 
 
399
 
..
400
 
   vim: tw=74 ft=rst ff=unix