~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to NEWS

Show diffs side-by-side

added added

removed removed

Lines of Context:
5
5
.. contents:: List of Releases
6
6
   :depth: 1
7
7
 
 
8
bzr 2.1.0rc1
 
9
############
 
10
 
 
11
:Codename: the 'new' stable
 
12
:2.1.0rc1: 2009-01-21
 
13
 
 
14
This is the first stable release candidate for Bazaar's 2.1 series. From
 
15
this point onwards, the 2.1 series will be considered stable (as the 2.0
 
16
series) and only bugfixes are expected to be incorporated. The dozen or so
 
17
bugfixes in the 2.0.4 release are also included in this release (along
 
18
with more than 15 more bugfixes). Some of the interesting features are
 
19
support for per-file merge hooks, ``bzr unshelve --preview``, support
 
20
for using ! in ignore files to exclude files from being ignored, a small
 
21
memory leak was squashed, and many ``ObjectNotLocked`` errors were fixed.
 
22
This looks to be a very good start for a new stable series.
 
23
 
 
24
 
 
25
New Features
 
26
************
 
27
 
 
28
* Add bug information to log output when available.
 
29
  (Neil Martinsen-Burrell, Guillermo Gonzalez, #251729)
 
30
 
 
31
* Added ``merge_file_content`` hook point to ``Merger``, allowing plugins
 
32
  to register custom merge logic, e.g. to provide smarter merging for
 
33
  particular files.
 
34
 
 
35
* Bazaar now includes the ``news_merge`` plugin.  It is disabled by
 
36
  default, to enable it add a ``news_merge_files`` option to your
 
37
  configuration.  Consult ``bzr help news_merge`` for more information.
 
38
  (Andrew Bennetts)
 
39
  
 
40
* ``bzr branch`` now takes a ``--bind`` option. This lets you
 
41
  branch and bind all in one command. (Ian Clatworthy)
 
42
 
 
43
* ``bzr switch`` now takes a ``--revision`` option, to allow switching to
 
44
  a specific revision of a branch. (Daniel Watkins, #183559)
 
45
 
 
46
* ``bzr unshelve --preview`` can now be used to show how a patch on the
 
47
  shelf would be applied to the working tree.
 
48
  (Guilherme Salgado, #308122)
 
49
 
 
50
* ``bzr update`` now takes a ``--revision`` argument. This lets you
 
51
  change the revision of the working tree to any revision in the
 
52
  ancestry of the current or master branch. (Matthieu Moy, Mark Hammond,
 
53
  Martin Pool, #45719)
 
54
 
 
55
* ``-Dbytes`` can now be used to display the total number of bytes
 
56
  transferred for the current command. This information is always logged
 
57
  to ``.bzr.log`` for later inspection. (John Arbash Meinel)
 
58
 
 
59
* New ignore patterns.  Patterns prefixed with '!' are exceptions to 
 
60
  ignore patterns and take precedence over regular ignores.  Such 
 
61
  exceptions are used to specify files that should be versioned which 
 
62
  would otherwise be ignored.  Patterns prefixed with '!!' act as regular 
 
63
  ignore patterns, but have highest precedence, even over the '!' 
 
64
  exception patterns. (John Whitley, #428031)
 
65
 
 
66
* The ``supress_warnings`` configuration option has been introduced to disable
 
67
  various warnings (it currently only supports the ``format_deprecation``
 
68
  warning). The new option can be set in any of the following locations:
 
69
  ``bazaar.conf``, ``locations.conf`` and/or ``branch.conf``.
 
70
  (Ted Gould, Matthew Fuller, Vincent Ladeuil)
 
71
 
 
72
Bug Fixes
 
73
*********
 
74
 
 
75
* Always show a message if an OS error occurs while trying to run a
 
76
  user-specified commit message editor.
 
77
  (Martin Pool, #504842)
 
78
 
 
79
* ``bzr diff`` will now use the epoch when it is unable to determine 
 
80
  the timestamp of a file, if the revision it was introduced in is a
 
81
  ghost. (Jelmer Vernooij, #295611)
 
82
 
 
83
* ``bzr switch -b`` can now create branches that are located using directory
 
84
  services such as ``lp:``, even when the branch name doesn't contain a
 
85
  '/'.  (Neil Martinsen-Burrell, #495263)
 
86
 
 
87
* ``bzr unshelve`` has improved messages about what it is doing.
 
88
  (Neil Martinsen-Burrell, #496917)
 
89
 
 
90
* Concurrent autopacking is more resilient to already-renamed pack files.
 
91
  If we find that a file we are about to obsolete is already obsoleted, we
 
92
  do not try to rename it, and we leave the file in ``obsolete_packs``.
 
93
  The code is also fault tolerant if a file goes missing, assuming that
 
94
  another process already removed the file.
 
95
  (John Arbash Meinel, Gareth White, #507557)
 
96
 
 
97
* Fix "Too many concurrent requests" in reconcile when network connection
 
98
  fails.  (Andrew Bennetts, #503878)
 
99
 
 
100
* Fixed a side effect mutation of ``RemoteBzrDirFormat._network_name``
 
101
  that caused some tests to fail when run in a non-default order.
 
102
  Probably no user impact.  (Martin Pool, #504102)
 
103
 
 
104
* Fixed ``ObjectNotLocked`` error in ``bzr cat -rbranch:../foo FILE``.
 
105
  (Andrew Bennetts, #506274)
 
106
 
 
107
* FTP transports support Unicode paths by encoding/decoding them as utf8.
 
108
  (Vincent Ladeuil, #472161)
 
109
 
 
110
* Listen to the SIGWINCH signal to update the terminal width.
 
111
  (Vincent Ladeuil, #316357)
 
112
 
 
113
* Progress bars are now hidden when ``--quiet`` is given.
 
114
  (Martin Pool, #320035)
 
115
 
 
116
* ``SilentUIFactory`` now supports ``make_output_stream`` and discards
 
117
  whatever is written to it.  This un-breaks some plugin tests that
 
118
  depended on this behaviour.
 
119
  (Martin Pool, #499757)
 
120
 
 
121
* When operations update the working tree, all affected files should end
 
122
  up with the same mtime. (eg. when versioning a generated file, if you
 
123
  update the source and the generated file together, the generated file
 
124
  should appear up-to-date.)
 
125
  (John Arbash Meinel, Martin <gzlist>, #488724)
 
126
 
 
127
Improvements
 
128
************
 
129
 
 
130
* Added ``add_cleanup`` and ``cleanup_now`` to ``bzrlib.command.Command``.
 
131
  All the builtin commands now use ``add_cleanup`` rather than
 
132
  ``try``/``finally`` blocks where applicable as it is simpler and more
 
133
  robust.  (Andrew Bennetts)
 
134
 
 
135
* All except a small number of storage formats are now hidden, making
 
136
  the help for numerous commands far more digestible. (Ian Clatworthy)
 
137
 
 
138
* Attempts to open a shared repository as a branch (e.g. ``bzr branch
 
139
  path/to/repo``) will now include "location is a repository" as a hint in
 
140
  the error message.  (Brian de Alwis, Andrew Bennetts, #440952)
 
141
 
 
142
* Push will now inform the user when they are trying to push to a foreign 
 
143
  VCS for which roundtripping is not supported, and will suggest them to 
 
144
  use dpush. (Jelmer Vernooij)
 
145
 
 
146
* The version of bzr being run is now written to the log file.
 
147
  (__monty__, #257170)
 
148
 
 
149
* Transport network activity indicator is shown more of the time when
 
150
  Bazaar is doing network IO.
 
151
  (Martin Pool)
 
152
 
 
153
Documentation
 
154
*************
 
155
 
 
156
* Add documentation on creating merges with more than one parent.
 
157
  (Neil Martinsen-Burrell, #481526)
 
158
 
 
159
* Better explain the --uncommitted option of merge.
 
160
  (Neil Martinsen-Burrell, #505088)
 
161
 
 
162
* Improve discussion of pending merges in the documentation for
 
163
  ``revert``.  (Neil Martinsen-Burrell, #505093)
 
164
 
 
165
* Improved help for ``bzr send``. 
 
166
  (Martin Pool, Bojan Nikolic)
 
167
 
 
168
* There is a System Administrator's Guide in ``doc/en/admin-guide``,
 
169
  including discussions of installation, relevant plugins, security and 
 
170
  backup. (Neil Martinsen-Burrell)
 
171
 
 
172
* The ``conflicts`` help topic has been renamed to ``conflict-types``.
 
173
  (Ian Clatworthy)
 
174
 
 
175
* The User Reference is now presented as a series of topics.
 
176
  Many of the included topics have link and format tweaks applied.
 
177
  (Ian Clatworthy)
 
178
 
 
179
API Changes
 
180
***********
 
181
 
 
182
* Added ``cachedproperty`` decorator to ``bzrlib.decorators``.
 
183
  (Andrew Bennetts)
 
184
 
 
185
* Many test features were renamed from ``FooFeature`` to ``foo_feature``
 
186
  to be consistent with instances being lower case and classes being
 
187
  CamelCase. For the features that were more likely to be used, we added a
 
188
  deprecation thunk, but not all. (John Arbash Meinel)
 
189
 
 
190
* Merger classes (such as ``Merge3Merger``) now expect a ``this_branch``
 
191
  parameter in their constructors, and provide ``this_branch`` as an
 
192
  attribute. (Andrew Bennetts)
 
193
  
 
194
* The Branch hooks pre_change_branch_tip no longer masks exceptions raised
 
195
  by plugins - the original exceptions are now preserved. (Robert Collins)
 
196
 
 
197
* The Transport ``Server.tearDown`` method is now renamed to
 
198
  ``stop_server`` and ``setUp`` to ``start_server`` for consistency with
 
199
  our normal naming pattern, and to avoid confusion with Python's
 
200
  ``TestCase.tearDown``.  (Martin Pool)
 
201
 
 
202
* ``WorkingTree.update`` implementations must now accept a ``revision``
 
203
  parameter.
 
204
 
 
205
Internals
 
206
*********
 
207
 
 
208
* Added ``BzrDir.open_branchV3`` smart server request, which can receive
 
209
  a string of details (such as "location is a repository") as part of a
 
210
  ``nobranch`` response.  (Andrew Bennetts, #440952)
 
211
  
 
212
* New helper osutils.UnicodeOrBytesToBytesWriter which encodes unicode
 
213
  objects but passes str objects straight through. This is used for
 
214
  selftest but may be useful for diff and other operations that generate
 
215
  mixed output. (Robert Collins)
 
216
 
 
217
* New exception ``NoRoundtrippingSupport``, for use by foreign branch 
 
218
  plugins. (Jelmer Vernooij)
 
219
 
 
220
Testing
 
221
*******
 
222
 
 
223
* ``bzrlib.tests.permute_for_extension`` is a helper that simplifies
 
224
  running all tests in the current module, once against a pure python
 
225
  implementation, and once against an extension (pyrex/C) implementation.
 
226
  It can be used to dramatically simplify the implementation of
 
227
  ``load_tests``.  (John Arbash Meinel)
 
228
 
 
229
* ``bzrlib.tests.TestCase`` now subclasses ``testtools.testcase.TestCase``.
 
230
  This permits features in testtools such as getUniqueInteger and
 
231
  getUniqueString to be used. Because of this, testtools version 0.9.2 or
 
232
  newer is now a dependency to run bzr selftest. Running with versions of
 
233
  testtools less than 0.9.2 will cause bzr to error while loading the test
 
234
  suite. (Robert Collins)
 
235
 
 
236
* Shell-like tests now support the command "mv" for moving files.  The
 
237
  syntax for ``mv file1 file2``, ``mv dir1 dir2`` and ``mv file dir`` is
 
238
  supported.  (Neil Martinsen-Burrell)
 
239
 
 
240
* The test progress bar no longer distinguishes tests that 'errored' from
 
241
  tests that 'failed' - they're all just failures.
 
242
  (Martin Pool)
 
243
 
 
244
 
 
245
bzr 2.0.4
 
246
#########
 
247
 
 
248
:Codename: smooth sailing
 
249
:2.0.4: 2010-01-21
 
250
 
 
251
The fourth bugfix-only release in the 2.0 series contains more than a
 
252
dozen bugfixes relative to 2.0.3. The primary focus is on handling
 
253
interruptions and concurrent operations more cleanly, there is also a fair
 
254
improvement to ``bzr export`` when exporting a remote branch.
 
255
 
 
256
 
 
257
Bug Fixes
 
258
*********
 
259
 
 
260
* ``bzr annotate`` on another branch with ``-r branch:...`` no longer
 
261
  fails with an ``ObjectNotLocked`` error.  (Andrew Bennetts, #496590)
 
262
 
 
263
* ``bzr export dir`` now requests all file content as a record stream,
 
264
  rather than requsting the file content one file-at-a-time. This can make
 
265
  exporting over the network significantly faster (54min => 9min in one
 
266
  case). (John Arbash Meinel, #343218)
 
267
 
 
268
* ``bzr serve`` no longer slowly leaks memory. The compiled
 
269
  ``bzrlib.bencode.Encoder()`` class was using ``__del__`` to cleanup and
 
270
  free resources, and it should have been using ``__dealloc__``.
 
271
  This will likely have an impact on any other process that is serving for
 
272
  an extended period of time.  (John Arbash Meinel, #494406)
 
273
 
 
274
* Check for SIGINT (Ctrl-C) and other signals immediately if ``readdir``
 
275
  returns ``EINTR`` by calling ``PyErr_CheckSignals``.  This affected the
 
276
  optional ``_readdir_pyx`` extension.  (Andrew Bennetts, #495023)
 
277
 
 
278
* Concurrent autopacks will no longer lose a newly created pack file.
 
279
  There was a race condition, where if the reload happened at the right
 
280
  time, the second packer would forget the name of the newly added pack
 
281
  file. (John Arbash Meinel, Gareth White, #507566)
 
282
 
 
283
* Give a clearer message if the lockdir disappears after being apparently
 
284
  successfully taken.  (Martin Pool, #498378)
 
285
 
 
286
* Give a warning when fetching between repositories (local or remote) with
 
287
  sufficiently different formats that the content will need to be
 
288
  serialized (ie ``InterDifferingSerializer`` or ``inventory-deltas``), so
 
289
  the user has a clue that upgrading could make it faster.
 
290
  (Martin Pool, #456077)
 
291
 
 
292
* If we fail to open ``~/.bzr.log`` write a clear message to stderr rather
 
293
  than using ``warning()``. The log file is opened before logging is set
 
294
  up, and it leads to very confusing: 'no handlers for "bzr"' messages for
 
295
  users, rather than something nicer.
 
296
  (John Arbash Meinel, Barry Warsaw, #503886)
 
297
 
 
298
* Refuse to build with any Pyrex 0.9.4 release, as they have known bugs.
 
299
  (Martin Pool, John Arbash Meinel, #449372)
 
300
 
 
301
* ``setup.py bdist_rpm`` now properly finds extra files needed for the
 
302
  build. (there is still the distutils bug
 
303
  http://bugs.python.org/issue644744) (Joe Julian, #175839)
 
304
 
 
305
* The 2a format wasn't properly restarting autopacks when something
 
306
  changed underneath it (like another autopack). Now concurrent
 
307
  autopackers will properly succeed. (John Arbash Meinel, #495000)
 
308
 
 
309
* ``TreeTransform`` can now handle when a delta says that the file id for
 
310
  the tree root changes. Rather than trying to rename your working
 
311
  directory, or failing early saying that you can't have multiple
 
312
  tree roots. This also fixes revert, update, and pull when the root id
 
313
  changes.  (John Arbash Meinel, #494269, #504390)
 
314
 
 
315
* ``_update_current_block`` no longer suppresses exceptions, so ^C at just
 
316
  the right time will get propagated, rather than silently failing to move
 
317
  the block pointer. (John Arbash Meinel, Gareth White, #495023)
 
318
 
 
319
Testing
 
320
*******
 
321
 
 
322
* We have a new ``test_source`` that ensures all pyrex ``cdef`` functions
 
323
  handle exceptions somehow. (Possibly by setting ``# cannot_raise``
 
324
  rather than an ``except ?:`` clause.) This should help prevent bugs like
 
325
  bug #495023. (John Arbash Meinel)
 
326
 
 
327
 
8
328
bzr 2.1.0b4
9
329
###########
10
330
 
47
367
  lengths. 
48
368
  (Vincent Ladeuil)
49
369
 
 
370
* The new command ``bzr lp-mirror`` will request that Launchpad update its
 
371
  mirror of a local branch. This command will only function if launchpadlib
 
372
  is installed.
 
373
  (Jonathan Lange)
 
374
 
 
375
 
50
376
Bug Fixes
51
377
*********
52
378
 
150
476
 
151
477
* ``bzrlib.textui`` (vestigial module) removed.  (Martin Pool)
152
478
 
 
479
* The Launchpad plugin now has a function ``login`` which will log in to
 
480
  Launchpad with launchpadlib, and ``load_branch`` which will return the
 
481
  Launchpad Branch object corresponding to a given Bazaar Branch object.
 
482
  (Jonathan Lange)
 
483
 
153
484
Internals
154
485
*********
155
486
 
302
633
* ``--parallel=fork`` is now compatible with --subunit.
303
634
  (Robert Collins, Vincent Ladeuil, #419776)
304
635
 
 
636
* Reporting of failures shows test ids not descriptions and thus shows
 
637
  parameterised tests correctly. (Robert Collins)
 
638
 
305
639
* TestNotApplicable is now handled within the TestCase.run method rather
306
640
  than being looked for within ``ExtendedTestResult.addError``. This
307
641
  provides better handling with other ``TestResult`` objects, degrading to
2659
2993
* Multiple authors for a commit can now be recorded by using the "--author"
2660
2994
  option multiple times. (James Westby, #185772)
2661
2995
 
2662
 
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernoij)
 
2996
* New clean-tree command, from bzrtools.  (Aaron Bentley, Jelmer Vernooij)
2663
2997
 
2664
2998
* New command ``bzr launchpad-open`` opens a Launchpad web page for that
2665
2999
  branch in your web browser, as long as the branch is on Launchpad at all.