~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

(vila) Fix test failures blocking package builds. (Vincent Ladeuil)

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
bzr 0.15
 
9
########
 
10
 
 
11
:Released: 2007-04-01
 
12
 
 
13
Bugfixes
 
14
********
 
15
 
 
16
* Handle incompatible repositories as a user issue when fetching.
 
17
  (Aaron Bentley)
 
18
 
 
19
* Don't give a recommendation to upgrade when branching or
 
20
  checking out a branch that contains an old-format working tree.
 
21
  (Martin Pool)
 
22
 
 
23
bzr 0.15rc3
 
24
###########
 
25
 
 
26
:Released:  2007-03-26
 
27
 
 
28
Changes
 
29
*******
 
30
 
 
31
* A warning is now displayed when opening working trees in older
 
32
  formats, to encourage people to upgrade to WorkingTreeFormat4.
 
33
  (Martin Pool)
 
34
 
 
35
Improvements
 
36
************
 
37
 
 
38
* HTTP redirections are now taken into account when a branch (or a
 
39
  bundle) is accessed for the first time. A message is issued at each
 
40
  redirection to inform the user. In the past, HTTP redirections were
 
41
  silently followed for each request which significantly degraded the
 
42
  performances. The HTTP redirections are not followed anymore by
 
43
  default, instead a RedirectRequested exception is raised. For bzrlib
 
44
  users needing to follow HTTP redirections anyway,
 
45
  ``bzrlib.transport.do_catching_redirections`` provide an easy transition
 
46
  path.  (vila)
 
47
 
 
48
Internals
 
49
*********
 
50
 
 
51
* Added ``ReadLock.temporary_write_lock()`` to allow upgrading an OS read
 
52
  lock to an OS write lock. Linux can do this without unlocking, Win32
 
53
  needs to unlock in between. (John Arbash Meinel)
 
54
 
 
55
* New parameter ``recommend_upgrade`` to ``BzrDir.open_workingtree``
 
56
  to silence (when false) warnings about opening old formats.
 
57
  (Martin Pool)
 
58
 
 
59
* Fix minor performance regression with bzr-0.15 on pre-dirstate
 
60
  trees. (We were reading the working inventory too many times).
 
61
  (John Arbash Meinel)
 
62
 
 
63
* Remove ``Branch.get_transaction()`` in favour of a simple cache of
 
64
  ``revision_history``.  Branch subclasses should override
 
65
  ``_gen_revision_history`` rather than ``revision_history`` to make use of
 
66
  this cache, and call ``_clear_revision_history_cache`` and
 
67
  ``_cache_revision_history`` at appropriate times. (Andrew Bennetts)
 
68
 
 
69
Bugfixes
 
70
********
 
71
 
 
72
* Take ``smtp_server`` from user config into account.
 
73
  (vila, #92195)
 
74
 
 
75
* Restore Unicode filename handling for versioned and unversioned files.
 
76
  (John Arbash Meinel, #92608)
 
77
 
 
78
* Don't fail during ``bzr commit`` if a file is marked removed, and
 
79
  the containing directory is auto-removed.  (John Arbash Meinel, #93681)
 
80
 
 
81
* ``bzr status FILENAME`` failed on Windows because of an uncommon
 
82
  errno. (``ERROR_DIRECTORY == 267 != ENOTDIR``).
 
83
  (Wouter van Heyst, John Arbash Meinel, #90819)
 
84
 
 
85
* ``bzr checkout source`` should create a local branch in the same
 
86
  format as source. (John Arbash Meinel, #93854)
 
87
 
 
88
* ``bzr commit`` with a kind change was failing to update the
 
89
  last-changed-revision for directories.  The
 
90
  InventoryDirectory._unchanged only looked at the ``parent_id`` and name,
 
91
  ignoring the fact that the kind could have changed, too.
 
92
  (John Arbash Meinel, #90111)
 
93
 
 
94
* ``bzr mv dir/subdir other`` was incorrectly updating files inside
 
95
  the directory. So that there was a chance it would break commit,
 
96
  etc. (John Arbash Meinel, #94037)
 
97
 
 
98
* Correctly handles mutiple permanent HTTP redirections.
 
99
  (vila, #88780)
 
100
 
 
101
bzr 0.15rc2
 
102
###########
 
103
 
 
104
:Released:  2007-03-14
 
105
 
 
106
Notes When Upgrading
 
107
********************
 
108
 
 
109
* Release 0.15rc2 of bzr changes the ``bzr init-repo`` command to
 
110
  default to ``--trees`` instead of ``--no-trees``.
 
111
  Existing shared repositories are not affected.
 
112
 
 
113
Improvements
 
114
************
 
115
 
 
116
* New ``merge-directive`` command to generate machine- and human-readable
 
117
  merge requests.  (Aaron Bentley)
 
118
 
 
119
* New ``submit:`` revision specifier makes it easy to diff against the
 
120
  common ancestor with the submit location (Aaron Bentley)
 
121
 
 
122
* Added support for Putty's SSH implementation. (Dmitry Vasiliev)
 
123
 
 
124
* Added ``bzr status --versioned`` to report only versioned files,
 
125
  not unknowns. (Kent Gibson)
 
126
 
 
127
* Merge now autodetects the correct line-ending style for its conflict
 
128
  markers.  (Aaron Bentley)
 
129
 
 
130
Internals
 
131
*********
 
132
 
 
133
* Refactored SSH vendor registration into SSHVendorManager class.
 
134
  (Dmitry Vasiliev)
 
135
 
 
136
Bugfixes
 
137
********
 
138
 
 
139
* New ``--numbered-dirs`` option to ``bzr selftest`` to use
 
140
  numbered dirs for TestCaseInTempDir. This is default behavior
 
141
  on Windows. Anyone can force named dirs on Windows
 
142
  with ``--no-numbered-dirs``. (Alexander Belchenko)
 
143
 
 
144
* Fix ``RevisionSpec_revid`` to handle the Unicode strings passed in
 
145
  from the command line. (Marien Zwart, #90501)
 
146
 
 
147
* Fix ``TreeTransform._iter_changes`` when both the source and
 
148
  destination are missing. (Aaron Bentley, #88842)
 
149
 
 
150
* Fix commit of merges with symlinks in dirstate trees.
 
151
  (Marien Zwart)
 
152
 
 
153
* Switch the ``bzr init-repo`` default from --no-trees to --trees.
 
154
  (Wouter van Heyst, #53483)
 
155
 
 
156
 
 
157
bzr 0.15rc1
 
158
###########
 
159
 
 
160
:Released:  2007-03-07
 
161
 
 
162
Surprises
 
163
*********
 
164
 
 
165
* The default disk format has changed. Please run 'bzr upgrade' in your
 
166
  working trees to upgrade. This new default is compatible for network
 
167
  operations, but not for local operations. That is, if you have two
 
168
  versions of bzr installed locally, after upgrading you can only use the
 
169
  bzr 0.15 version. This new default does not enable tags or nested-trees
 
170
  as they are incompatible with bzr versions before 0.15 over the network.
 
171
 
 
172
* For users of bzrlib: Two major changes have been made to the working tree
 
173
  api in bzrlib. The first is that many methods and attributes, including
 
174
  the inventory attribute, are no longer valid for use until one of
 
175
  ``lock_read``/``lock_write``/``lock_tree_write`` has been called,
 
176
  and become invalid again after unlock is called. This has been done
 
177
  to improve performance and correctness as part of the dirstate
 
178
  development.
 
179
  (Robert Collins, John A Meinel, Martin Pool, and others).
 
180
 
 
181
* For users of bzrlib: The attribute 'tree.inventory' should be considered
 
182
  readonly. Previously it was possible to directly alter this attribute, or
 
183
  its contents, and have the tree notice this. This has been made
 
184
  unsupported - it may work in some tree formats, but in the newer dirstate
 
185
  format such actions will have no effect and will be ignored, or even
 
186
  cause assertions. All operations possible can still be carried out by a
 
187
  combination of the tree API, and the bzrlib.transform API. (Robert
 
188
  Collins, John A Meinel, Martin Pool, and others).
 
189
 
 
190
Improvements
 
191
************
 
192
 
 
193
* Support for OS Windows 98. Also .bzr.log on any windows system
 
194
  saved in My Documents folder. (Alexander Belchenko)
 
195
 
 
196
* ``bzr mv`` enhanced to support already moved files.
 
197
  In the past the mv command would have failed if the source file doesn't
 
198
  exist. In this situation ``bzr mv`` would now detect that the file has
 
199
  already moved and update the repository accordingly, if the target file
 
200
  does exist.
 
201
  A new option ``--after`` has been added so that if two files already
 
202
  exist, you could notify Bazaar that you have moved a (versioned) file
 
203
  and replaced it with another. Thus in this case ``bzr move --after``
 
204
  will only update the Bazaar identifier.
 
205
  (Steffen Eichenberg, Marius Kruger)
 
206
 
 
207
* ``ls`` now works on treeless branches and remote branches.
 
208
  (Aaron Bentley)
 
209
 
 
210
* ``bzr help global-options`` describes the global options.
 
211
  (Aaron Bentley)
 
212
 
 
213
* ``bzr pull --overwrite`` will now correctly overwrite checkouts.
 
214
  (Robert Collins)
 
215
 
 
216
* Files are now allowed to change kind (e.g. from file to symlink).
 
217
  Supported by ``commit``, ``revert`` and ``status``
 
218
  (Aaron Bentley)
 
219
 
 
220
* ``inventory`` and ``unknowns`` hidden in favour of ``ls``
 
221
  (Aaron Bentley)
 
222
 
 
223
* ``bzr help checkouts`` descibes what checkouts are and some possible
 
224
  uses of them. (James Westby, Aaron Bentley)
 
225
 
 
226
* A new ``-d`` option to push, pull and merge overrides the default
 
227
  directory.  (Martin Pool)
 
228
 
 
229
* Branch format 6: smaller, and potentially faster than format 5.  Supports
 
230
  ``append_history_only`` mode, where the log view and revnos do not change,
 
231
  except by being added to.  Stores policy settings in
 
232
  ".bzr/branch/branch.conf".
 
233
 
 
234
* ``append_only`` branches:  Format 6 branches may be configured so that log
 
235
  view and revnos are always consistent.  Either create the branch using
 
236
  "bzr init --append-revisions-only" or edit the config file as descriped
 
237
  in docs/configuration.txt.
 
238
 
 
239
* rebind: Format 6 branches retain the last-used bind location, so if you
 
240
  "bzr unbind", you can "bzr bind" to bind to the previously-selected
 
241
  bind location.
 
242
 
 
243
* Builtin tags support, created and deleted by the ``tag`` command and
 
244
  stored in the branch.  Tags can be accessed with the revisionspec
 
245
  ``-rtag:``, and listed with ``bzr tags``.  Tags are not versioned
 
246
  at present. Tags require a network incompatible upgrade. To perform this
 
247
  upgrade, run ``bzr upgrade --dirstate-tags`` in your branch and
 
248
  repositories. (Martin Pool)
 
249
 
 
250
* The ``bzr://`` transport now has a well-known port number, 4155,
 
251
  which it will use by default.  (Andrew Bennetts, Martin Pool)
 
252
 
 
253
* Bazaar now looks for user-installed plugins before looking for site-wide
 
254
  plugins. (Jonathan Lange)
 
255
 
 
256
* ``bzr resolve`` now detects and marks resolved text conflicts.
 
257
  (Aaron Bentley)
 
258
 
 
259
Internals
 
260
*********
 
261
 
 
262
* Internally revision ids and file ids are now passed around as utf-8
 
263
  bytestrings, rather than treating them as Unicode strings. This has
 
264
  performance benefits for Knits, since we no longer need to decode the
 
265
  revision id for each line of content, nor for each entry in the index.
 
266
  This will also help with the future dirstate format.
 
267
  (John Arbash Meinel)
 
268
 
 
269
* Reserved ids (any revision-id ending in a colon) are rejected by
 
270
  versionedfiles, repositories, branches, and working trees
 
271
  (Aaron Bentley)
 
272
 
 
273
* Minor performance improvement by not creating a ProgressBar for
 
274
  every KnitIndex we create. (about 90ms for a bzr.dev tree)
 
275
  (John Arbash Meinel)
 
276
 
 
277
* New easier to use Branch hooks facility. There are five initial hooks,
 
278
  all documented in bzrlib.branch.BranchHooks.__init__ - ``'set_rh'``,
 
279
  ``'post_push'``, ``'post_pull'``, ``'post_commit'``,
 
280
  ``'post_uncommit'``. These hooks fire after the matching operation
 
281
  on a branch has taken place, and were originally added for the
 
282
  branchrss plugin. (Robert Collins)
 
283
 
 
284
* New method ``Branch.push()`` which should be used when pushing from a
 
285
  branch as it makes performance and policy decisions to match the UI
 
286
  level command ``push``. (Robert Collins).
 
287
 
 
288
* Add a new method ``Tree.revision_tree`` which allows access to cached
 
289
  trees for arbitrary revisions. This allows the in development dirstate
 
290
  tree format to provide access to the callers to cached copies of
 
291
  inventory data which are cheaper to access than inventories from the
 
292
  repository.
 
293
  (Robert Collins, Martin Pool)
 
294
 
 
295
* New ``Branch.last_revision_info`` method, this is being done to allow
 
296
  optimization of requests for both the number of revisions and the last
 
297
  revision of a branch with smartservers and potentially future branch
 
298
  formats. (Wouter van Heyst, Robert Collins)
 
299
 
 
300
* Allow ``'import bzrlib.plugins.NAME'`` to work when the plugin NAME has not
 
301
  yet been loaded by ``load_plugins()``. This allows plugins to depend on each
 
302
  other for code reuse without requiring users to perform file-renaming
 
303
  gymnastics. (Robert Collins)
 
304
 
 
305
* New Repository method ``'gather_stats'`` for statistic data collection.
 
306
  This is expected to grow to cover a number of related uses mainly
 
307
  related to bzr info. (Robert Collins)
 
308
 
 
309
* Log formatters are now managed with a registry.
 
310
  ``log.register_formatter`` continues to work, but callers accessing
 
311
  the FORMATTERS dictionary directly will not.
 
312
 
 
313
* Allow a start message to be passed to the ``edit_commit_message``
 
314
  function.  This will be placed in the message offered to the user
 
315
  for editing above the separator. It allows a template commit message
 
316
  to be used more easily. (James Westby)
 
317
 
 
318
* ``GPGStrategy.sign()`` will now raise ``BzrBadParameterUnicode`` if
 
319
  you pass a Unicode string rather than an 8-bit string. Callers need
 
320
  to be updated to encode first. (John Arbash Meinel)
 
321
 
 
322
* Branch.push, pull, merge now return Result objects with information
 
323
  about what happened, rather than a scattering of various methods.  These
 
324
  are also passed to the post hooks.  (Martin Pool)
 
325
 
 
326
* File formats and architecture is in place for managing a forest of trees
 
327
  in bzr, and splitting up existing trees into smaller subtrees, and
 
328
  finally joining trees to make a larger tree. This is the first iteration
 
329
  of this support, and the user-facing aspects still require substantial
 
330
  work.  If you wish to experiment with it, use ``bzr upgrade
 
331
  --dirstate-with-subtree`` in your working trees and repositories.
 
332
  You can use the hidden commands ``split`` and ``join`` and to create
 
333
  and manipulate nested trees, but please consider using the nested-trees
 
334
  branch, which contains substantial UI improvements, instead.
 
335
  http://code.aaronbentley.com/bzr/bzrrepo/nested-trees/
 
336
  (Aaron Bentley, Martin Pool, Robert Collins).
 
337
 
 
338
Bugfixes
 
339
********
 
340
 
 
341
* ``bzr annotate`` now uses dotted revnos from the viewpoint of the
 
342
  branch, rather than the last changed revision of the file.
 
343
  (John Arbash Meinel, #82158)
 
344
 
 
345
* Lock operations no longer hang if they encounter a permission problem.
 
346
  (Aaron Bentley)
 
347
 
 
348
* ``bzr push`` can resume a push that was canceled before it finished.
 
349
  Also, it can push even if the target directory exists if you supply
 
350
  the ``--use-existing-dir`` flag.
 
351
  (John Arbash Meinel, #30576, #45504)
 
352
 
 
353
* Fix HTTP proxy authentication when user and an optional
 
354
  password appears in the ``*_proxy`` vars. (Vincent Ladeuil,
 
355
  #83954).
 
356
 
 
357
* ``bzr log branch/file`` works for local treeless branches
 
358
  (Aaron Bentley, #84247)
 
359
 
 
360
* Fix problem with UNC paths on Windows 98. (Alexander Belchenko, #84728)
 
361
 
 
362
* Searching location of CA bundle for PyCurl in env variable
 
363
  (``CURL_CA_BUNDLE``), and on win32 along the PATH.
 
364
  (Alexander Belchenko, #82086)
 
365
 
 
366
* ``bzr init`` works with unicode argument LOCATION.
 
367
  (Alexander Belchenko, #85599)
 
368
 
 
369
* Raise ``DependencyNotPresent`` if pycurl do not support https.
 
370
  (Vincent Ladeuil, #85305)
 
371
 
 
372
* Invalid proxy env variables should not cause a traceback.
 
373
  (Vincent Ladeuil, #87765)
 
374
 
 
375
* Ignore patterns normalised to use '/' path separator.
 
376
  (Kent Gibson, #86451)
 
377
 
 
378
* bzr rocks. It sure does! Fix case. (Vincent Ladeuil, #78026)
 
379
 
 
380
* Fix bzrtools shelve command for removed lines beginning with "--"
 
381
  (Johan Dahlberg, #75577)
 
382
 
 
383
Testing
 
384
*******
 
385
 
 
386
* New ``--first`` option to ``bzr selftest`` to run specified tests
 
387
  before the rest of the suite.  (Martin Pool)
 
388
 
 
389
 
 
390
..
 
391
   vim: tw=74 ft=rst ff=unix