~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to NEWS

  • Committer: John Arbash Meinel
  • Date: 2007-04-28 15:04:17 UTC
  • mfrom: (2466 +trunk)
  • mto: This revision was merged to the branch mainline in revision 2566.
  • Revision ID: john@arbash-meinel.com-20070428150417-trp3pi0pzd411pu4
[merge] bzr.dev 2466

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
1
IN DEVELOPMENT
2
2
 
 
3
  BUGFIXES:
 
4
 
 
5
    * Handle the case when you delete a file, and then rename another file
 
6
      on top of it. Also handle the case of ``bzr rm --keep foo``. ``bzr
 
7
      status`` should show the removed file and an unknown file in its
 
8
      place. (John Arbash Meinel, #109993)
 
9
 
 
10
    * Bundles properly read and write revision properties that have an
 
11
      empty value. And when the value is not ASCII.
 
12
      (John Arbash Meinel, #109613)
 
13
 
 
14
 
 
15
bzr 0.16rc1  2007-04-26
 
16
 
 
17
  NOTES WHEN UPGRADING:
 
18
 
 
19
    * ``bzr remove`` and ``bzr rm`` will now remove the working file, if
 
20
      it could be recovered again.
 
21
      This has been done for consistency with svn and the unix rm command.
 
22
      The old ``remove`` behaviour has been retained in the new option
 
23
      ``bzr remove --keep``, which will just stop versioning the file,
 
24
      but not delete it.
 
25
      ``bzr remove --force`` have been added which will always delete the
 
26
      files.
 
27
      ``bzr remove`` is also more verbose.
 
28
      (Marius Kruger, #82602)
 
29
 
3
30
  IMPROVEMENTS:
4
31
 
5
32
    * Merge directives can now be supplied as input to `merge` and `pull`,
6
33
      like bundles can.  (Aaron Bentley)
7
34
 
 
35
    * Sending the SIGQUIT signal to bzr, which can be done on Unix by
 
36
      pressing Control-Backslash, drops bzr into a debugger.  Type ``'c'``
 
37
      to continue.  This can be disabled by setting the environment variable
 
38
      ``BZR_SIGQUIT_PDB=0``.  (Martin Pool)
 
39
 
 
40
    * selftest now supports --list-only to list tests instead of running
 
41
      them. (Ian Clatworthy)
 
42
 
 
43
    * selftest now supports --exclude PATTERN (or -x PATTERN) to exclude
 
44
      tests with names that match that regular expression.
 
45
      (Ian Clatworthy, #102679)
 
46
 
 
47
    * selftest now supports --randomize SEED to run tests in a random order.
 
48
      SEED is typically the value 'now' meaning 'use the current time'.
 
49
      (Ian Clatworthy, #102686)
 
50
 
 
51
    * New option ``--fixes`` to commit, which stores bug fixing annotations as
 
52
      revision properties. Built-in support for Launchpad, Debian, Trac and
 
53
      Bugzilla bug trackers. (Jonathan Lange, James Henstridge, Robert Collins)
 
54
 
 
55
    * New API, ``bzrlib.bugtracker.tracker_registry``, for adding support for
 
56
      other bug trackers to ``fixes``. (Jonathan Lange, James Henstridge,
 
57
      Robert Collins)
 
58
 
 
59
    * ``selftest`` has new short options ``-f`` and ``-1``.  (Martin
 
60
      Pool)
 
61
 
 
62
    * ``bzrlib.tsort.MergeSorter`` optimizations. Change the inner loop
 
63
      into using local variables instead of going through ``self._var``.
 
64
      Improves the time to ``merge_sort`` a 10k revision graph by
 
65
      approximately 40% (~700->400ms).  (John Arbash Meinel)
 
66
 
 
67
    * ``make docs`` now creates a man page at ``man1/bzr.1`` fixing bug 107388.
 
68
      (Robert Collins)
 
69
 
 
70
    * ``bzr help`` now provides cross references to other help topics using
 
71
      the _see_also facility on command classes. Likewise the bzr_man
 
72
      documentation, and the bzr.1 man page also include this information.
 
73
      (Robert Collins)
 
74
 
 
75
    * Tags are now included in logs, that use the long log formatter. 
 
76
      (Erik Bågfors, Alexander Belchenko)
 
77
 
 
78
    * ``bzr help`` provides a clearer message when a help topic cannot be
 
79
      found. (Robert Collins, #107656)
 
80
 
 
81
    * ``bzr help`` now accepts optional prefixes for command help. The help
 
82
      for all commands can now be found at ``bzr help commands/COMMANDNAME``
 
83
      as well as ``bzr help COMMANDNAME`` (which only works for commands 
 
84
      where the name is not the same as a more general help topic). 
 
85
      (Robert Collins)
 
86
 
 
87
    * ``bzr help PLUGINNAME`` will now return the module docstring from the
 
88
      plugin PLUGINNAME. (Robert Collins, #50408)
 
89
 
 
90
    * New help topic ``urlspec`` which lists the availables transports.
 
91
      (Goffredo Baroncelli)
 
92
 
 
93
    * doc/server.txt updated to document the default bzr:// port
 
94
      and also update the blurb about the hpss' current status.
 
95
      (Robert Collins, #107125).
 
96
 
 
97
    * ``bzr serve`` now listens on interface 0.0.0.0 by default, making it
 
98
      serve out to the local LAN (and anyone in the world that can reach the
 
99
      machine running ``bzr serve``. (Robert Collins, #98918)
 
100
 
 
101
    * A new smart server protocol version has been added.  It prefixes requests
 
102
      and responses with an explicit version identifier so that future protocol
 
103
      revisions can be dealt with gracefully.  (Andrew Bennetts, Robert Collins)
 
104
 
 
105
    * The bzr protocol version 2 indicates success or failure in every response
 
106
      without depending on particular commands encoding that consistently,
 
107
      allowing future client refactorings to be much more robust about error
 
108
      handling. (Robert Collins, Martin Pool, Andrew Bennetts)
 
109
 
 
110
    * The smart protocol over HTTP client has been changed to always post to the
 
111
      same ``.bzr/smart`` URL under the original location when it can.  This allows
 
112
      HTTP servers to only have to pass URLs ending in .bzr/smart to the smart
 
113
      server handler, and not arbitrary ``.bzr/*/smart`` URLs.  (Andrew Bennetts)
 
114
 
 
115
    * digest authentication is now supported for proxies and HTTP by the urllib
 
116
      based http implementation. Tested against Apache 2.0.55 and Squid
 
117
      2.6.5. Basic and digest authentication are handled coherently for HTTP
 
118
      and proxy: if the user is provided in the url (bzr command line for HTTP,
 
119
      proxy environment variables for proxies), the password is prompted for
 
120
      (only once). If the password is provided, it is taken into account. Once
 
121
      the first authentication is successful, all further authentication
 
122
      roundtrips are avoided by preventively setting the right authentication
 
123
      header(s).
 
124
      (Vincent Ladeuil).
 
125
 
8
126
  INTERNALS:
9
127
 
10
128
    * bzrlib API compatability with 0.8 has been dropped, cleaning up some
16
134
      requires an explicit action using a ChrootServer.
17
135
      (Robert Collins, Andrew Bennetts)
18
136
 
19
 
    * Deprecate Branch.get_root_id() because branches don't have root ids,
 
137
    * Deprecate ``Branch.get_root_id()`` because branches don't have root ids,
20
138
      rather than fixing bug #96847.  (Aaron Bentley)
21
139
 
22
 
    * WorkingTree.apply_inventory_delta provides a better alternative to
23
 
      WorkingTree._write_inventory.  (Aaron Bentley)
 
140
    * ``WorkingTree.apply_inventory_delta`` provides a better alternative to
 
141
      ``WorkingTree._write_inventory``.  (Aaron Bentley)
24
142
 
25
 
    * Convenience method TestCase.expectFailure ensures that known failures
 
143
    * Convenience method ``TestCase.expectFailure`` ensures that known failures
26
144
      do not silently pass.  (Aaron Bentley)
27
145
 
 
146
    * ``Transport.local_abspath`` now raises ``NotLocalUrl`` rather than 
 
147
      ``TransportNotPossible``. (Martin Pool, Ian Clatworthy)
 
148
 
28
149
    * New SmartServer hooks facility. There are two initial hooks documented
29
 
      in bzrlib.transport.smart.SmartServerHooks. The two initial hooks allow
 
150
      in ``bzrlib.transport.smart.SmartServerHooks``. The two initial hooks allow
30
151
      plugins to execute code upon server startup and shutdown.
31
152
      (Robert Collins).
32
153
 
40
161
    * Move most SmartServer code into a new package, bzrlib/smart.
41
162
      bzrlib/transport/remote.py contains just the Transport classes that used
42
163
      to be in bzrlib/transport/smart.py.  (Andrew Bennetts)
 
164
 
 
165
    * urllib http implementation avoid roundtrips associated with
 
166
      401 (and 407) errors once the authentication succeeds.
 
167
      (Vincent Ladeuil).
 
168
 
 
169
    * urlib http now supports querying the user for a proxy password if
 
170
      needed. Realm is shown in the prompt for both HTTP and proxy
 
171
      authentication when the user is required to type a password. 
 
172
      (Vincent Ladeuil).
 
173
 
 
174
    * Renamed SmartTransport (and subclasses like SmartTCPTransport) to
 
175
      RemoteTransport (and subclasses to RemoteTCPTransport, etc).  This is more
 
176
      consistent with its new home in ``bzrlib/transport/remote.py``, and because
 
177
      it's not really a "smart" transport, just one that does file operations
 
178
      via remote procedure calls.  (Andrew Bennetts)
43
179
 
 
180
    * The ``lock_write`` method of ``LockableFiles``, ``Repository`` and
 
181
      ``Branch`` now accept a ``token`` keyword argument, so that separate
 
182
      instances of those objects can share a lock if it has the right token.
 
183
      (Andrew Bennetts, Robert Collins)
 
184
 
 
185
    * New method ``get_branch_reference`` on ``BzrDir`` allows the detection of
 
186
      branch references - which the smart server component needs.
 
187
 
 
188
    * The Repository API ``make_working_trees`` is now permitted to return
 
189
      False when ``set_make_working_trees`` is not implemented - previously
 
190
      an unimplemented ``set_make_working_trees`` implied the result True
 
191
      from ``make_working_trees``. This has been changed to accomodate the
 
192
      smart server, where it does not make sense (at this point) to ever
 
193
      make working trees by default. (Robert Collins)
 
194
 
 
195
    * Command objects can now declare related help topics by having _see_also
 
196
      set to a list of related topic. (Robert Collins)
 
197
 
 
198
    * ``bzrlib.help`` now delegates to the Command class for Command specific
 
199
      help. (Robert Collins)
 
200
 
 
201
    * New class ``TransportListRegistry``, derived from the Registry class, which 
 
202
      simplifies tracking the available Transports. (Goffredo Baroncelli)
 
203
 
 
204
    * New function ``Branch.get_revision_id_to_revno_map`` which will
 
205
      return a dictionary mapping revision ids to dotted revnos. Since
 
206
      dotted revnos are defined in the context of the branch tip, it makes
 
207
      sense to generate them from a ``Branch`` object.
 
208
      (John Arbash Meinel)
 
209
 
 
210
    * Fix the 'Unprintable error' message display to use the repr of the 
 
211
      exception that prevented printing the error because the str value
 
212
      for it is often not useful in debugging (e.g. KeyError('foo') has a
 
213
      str() of 'foo' but a repr of 'KeyError('foo')' which is much more
 
214
      useful. (Robert Collins)
 
215
 
 
216
    * ``urlutils.normalize_url`` now unescapes unreserved characters, such as "~".
 
217
      (Andrew Bennetts)
 
218
 
44
219
  BUGFIXES:
45
220
 
46
221
    * Don't fail bundle selftest if email has 'two' embedded.  
47
 
      (#98510, Ian Clatworthy)
 
222
      (Ian Clatworthy, #98510)
48
223
 
49
224
    * Remove ``--verbose`` from ``bzr bundle``. It didn't work anyway.
50
225
      (Robert Widhopf-Fenk, #98591)
51
226
 
52
227
    * Remove ``--basis`` from the checkout/branch commands - it didn't work
53
 
      properly and is no longer beneficial. Fixes #53675 and #43486.
54
 
      (Robert Collins)
 
228
      properly and is no longer beneficial.
 
229
      (Robert Collins, #53675, #43486)
55
230
 
56
231
    * Don't produce encoding error when adding duplicate files.
57
232
      (Aaron Bentley)
58
233
 
 
234
    * Fix ``bzr log <file>`` so it only logs the revisions that changed
 
235
      the file, and does it faster.
 
236
      (Kent Gibson, John Arbash Meinel, #51980, #69477)
 
237
 
 
238
    * Fix ``InterDirstateTre._iter_changes`` to handle when we come across
 
239
      an empty versioned directory, which now has files in it.
 
240
      (John Arbash Meinel, #104257)
 
241
 
59
242
    * Teach ``common_ancestor`` to shortcut when the tip of one branch is
60
243
      inside the ancestry of the other. Saves a lot of graph processing
61
244
      (with an ancestry of 16k revisions, ``bzr merge ../already-merged``
66
249
      in this versus base, but it isn't marked as a rename).
67
250
      (John Arbash Meinel, #103870)
68
251
 
 
252
    * FTP now works even when the FTP server does not support atomic rename.
 
253
      (Aaron Bentley, #89436)
 
254
 
 
255
    * Correct handling in bundles and merge directives of timezones with
 
256
      that are not an integer number of hours offset from UTC.  Always 
 
257
      represent the epoch time in UTC to avoid problems with formatting 
 
258
      earlier times on win32.  (Martin Pool, Alexander Belchenko, John
 
259
      Arbash Meinel)
 
260
 
 
261
    * Typo in the help for ``register-branch`` fixed. (Robert Collins, #96770)
 
262
 
 
263
    * "dirstate" and "dirstate-tags" formats now produce branches compatible
 
264
      with old versions of bzr. (Aaron Bentley, #107168))
 
265
 
 
266
    * Handle moving a directory when children have been added, removed,
 
267
      and renamed. (John Arbash Meinel, #105479)
 
268
 
 
269
    * Don't preventively use basic authentication for proxy before receiving a
 
270
      407 error. Otherwise people willing to use other authentication schemes
 
271
      may expose their password in the clear (or nearly). This add one
 
272
      roundtrip in case basic authentication should be used, but plug the
 
273
      security hole.
 
274
      (Vincent Ladeuil)
 
275
 
 
276
    * Handle http and proxy digest authentication.
 
277
      (Vincent Ladeuil, #94034).
 
278
 
69
279
  TESTING:
70
280
 
71
281
    * Added ``bzrlib.strace.strace`` which will strace a single callable and
75
285
    * New test method ``reduceLockdirTimeout`` to drop the default (ui-centric)
76
286
      default time down to one suitable for tests. (Andrew Bennetts)
77
287
 
78
 
    * Add new vfs_transport_factory attribute on tests which provides the 
 
288
    * Add new ``vfs_transport_factory`` attribute on tests which provides the 
79
289
      common vfs backing for both the readonly and readwrite transports.
80
290
      This allows the RemoteObject tests to back onto local disk or memory,
81
 
      and use the existing transport_server attribute all tests know about
 
291
      and use the existing ``transport_server`` attribute all tests know about
82
292
      to be the smart server transport. This in turn allows tests to 
83
293
      differentiate between 'transport to access the branch', and 
84
294
      'transport which is a VFS' - which matters in Remote* tests.
85
295
      (Robert Collins, Andrew Bennetts)
86
296
 
87
297
    * The ``make_branch_and_tree`` method for tests will now create a 
88
 
      lightweight checkout for the tree if the vfs_transport_factory is not
 
298
      lightweight checkout for the tree if the ``vfs_transport_factory`` is not
89
299
      a LocalURLServer. (Robert Collins, Andrew Bennetts)
90
300
 
91
301
    * Branch implementation tests have been audited to ensure that all urls 
96
306
      access.
97
307
      (Robert Collins, Andrew Bennetts)
98
308
 
 
309
    * Mark bzrlib.tests and bzrlib.tests.TestUtil as providing assertFOO helper
 
310
      functions by adding a ``__unittest`` global attribute. (Robert Collins,
 
311
      Andrew Bennetts, Martin Pool, Jonathan Lange)
 
312
 
 
313
    * Refactored proxy and authentication handling to simplify the
 
314
      implementation of new auth schemes for both http and proxy. 
 
315
      (Vincent Ladeuil)
99
316
 
100
317
bzr 0.15 2007-04-01
101
318
 
125
342
      performances. The http redirections are not followed anymore by
126
343
      default, instead a RedirectRequested exception is raised. For bzrlib
127
344
      users needing to follow http redirections anyway,
128
 
      bzrlib.transport.do_catching_redirections provide an easy transition
 
345
      ``bzrlib.transport.do_catching_redirections`` provide an easy transition
129
346
      path.  (vila)
130
347
 
131
348
  INTERNALS:
134
351
      lock to an OS write lock. Linux can do this without unlocking, Win32
135
352
      needs to unlock in between. (John Arbash Meinel)
136
353
 
137
 
    * New parameter ``recommend_upgrade`` to BzrDir.open_workingtree 
 
354
    * New parameter ``recommend_upgrade`` to ``BzrDir.open_workingtree``
138
355
      to silence (when false) warnings about opening old formats.
139
356
      (Martin Pool)
140
357
 
150
367
 
151
368
  BUGFIXES:
152
369
 
153
 
    * Take smtp_server from user config into account.
 
370
    * Take ``smtp_server`` from user config into account.
154
371
      (vila, #92195)
155
372
 
156
373
    * Restore Unicode filename handling for versioned and unversioned files.
168
385
 
169
386
    * ``bzr commit`` with a kind change was failing to update the
170
387
      last-changed-revision for directories.  The
171
 
      InventoryDirectory._unchanged only looked at the parent_id and name,
 
388
      InventoryDirectory._unchanged only looked at the ``parent_id`` and name,
172
389
      ignoring the fact that the kind could have changed, too.
173
390
      (John Arbash Meinel, #90111)
174
391
 
177
394
      etc. (John Arbash Meinel, #94037)
178
395
 
179
396
    * Correctly handles mutiple permanent http redirections.
180
 
     (vila, #88780)
181
 
 
 
397
      (vila, #88780)
182
398
 
183
399
bzr 0.15rc2  2007-03-14
184
400
 
243
459
    * For users of bzrlib: Two major changes have been made to the working tree
244
460
      api in bzrlib. The first is that many methods and attributes, including
245
461
      the inventory attribute, are no longer valid for use until one of
246
 
      lock_read/lock_write/lock_tree_write has been called, and become invalid
247
 
      again after unlock is called. This has been done to improve performance
248
 
      and correctness as part of the dirstate development. (Robert Collins,
249
 
      John A Meinel, Martin Pool, and others).
 
462
      ``lock_read``/``lock_write``/``lock_tree_write`` has been called,
 
463
      and become invalid again after unlock is called. This has been done
 
464
      to improve performance and correctness as part of the dirstate
 
465
      development.
 
466
      (Robert Collins, John A Meinel, Martin Pool, and others).
250
467
 
251
468
    * For users of bzrlib: The attribute 'tree.inventory' should be considered
252
469
      readonly. Previously it was possible to directly alter this attribute, or
296
513
      directory.  (Martin Pool)
297
514
 
298
515
    * Branch format 6: smaller, and potentially faster than format 5.  Supports
299
 
      "append_history_only" mode, where the log view and revnos do not change,
 
516
      ``append_history_only`` mode, where the log view and revnos do not change,
300
517
      except by being added to.  Stores policy settings in
301
518
      ".bzr/branch/branch.conf".
302
519
 
303
 
    * append_only branches:  Format 6 branches may be configured so that log
 
520
    * ``append_only`` branches:  Format 6 branches may be configured so that log
304
521
      view and revnos are always consistent.  Either create the branch using
305
522
      "bzr init --append-revisions-only" or edit the config file as descriped
306
523
      in docs/configuration.txt.
316
533
      upgrade, run ``bzr upgrade --dirstate-tags`` in your branch and
317
534
      repositories. (Martin Pool)
318
535
 
319
 
    * The bzr:// transport now has a well-known port number, 4155, which it will
320
 
      use by default.  (Andrew Bennetts, Martin Pool)
 
536
    * The ``bzr://`` transport now has a well-known port number, 4155,
 
537
      which it will use by default.  (Andrew Bennetts, Martin Pool)
321
538
 
322
539
    * Bazaar now looks for user-installed plugins before looking for site-wide
323
540
      plugins. (Jonathan Lange)
343
560
      (John Arbash Meinel)
344
561
 
345
562
    * New easier to use Branch hooks facility. There are five initial hooks,
346
 
      all documented in bzrlib.branch.BranchHooks.__init__ - 'set_rh',
347
 
      'post_push', 'post_pull', 'post_commit', 'post_uncommit'. These hooks
348
 
      fire after the matching operation on a branch has taken place, and were
349
 
      originally added for the branchrss plugin. (Robert Collins)
 
563
      all documented in bzrlib.branch.BranchHooks.__init__ - ``'set_rh'``,
 
564
      ``'post_push'``, ``'post_pull'``, ``'post_commit'``,
 
565
      ``'post_uncommit'``. These hooks fire after the matching operation
 
566
      on a branch has taken place, and were originally added for the
 
567
      branchrss plugin. (Robert Collins)
350
568
 
351
569
    * New method ``Branch.push()`` which should be used when pushing from a
352
570
      branch as it makes performance and policy decisions to match the UI
359
577
      repository.
360
578
      (Robert Collins, Martin Pool)
361
579
 
362
 
    * New Branch.last_revision_info method, this is being done to allow
 
580
    * New ``Branch.last_revision_info`` method, this is being done to allow
363
581
      optimization of requests for both the number of revisions and the last
364
582
      revision of a branch with smartservers and potentially future branch
365
583
      formats. (Wouter van Heyst, Robert Collins)
366
584
 
367
 
    * Allow 'import bzrlib.plugins.NAME' to work when the plugin NAME has not
368
 
      yet been loaded by load_plugins(). This allows plugins to depend on each
 
585
    * Allow ``'import bzrlib.plugins.NAME'`` to work when the plugin NAME has not
 
586
      yet been loaded by ``load_plugins()``. This allows plugins to depend on each
369
587
      other for code reuse without requiring users to perform file-renaming
370
588
      gymnastics. (Robert Collins)
371
589
 
372
 
    * New Repository method 'gather_stats' for statistic data collection.
 
590
    * New Repository method ``'gather_stats'`` for statistic data collection.
373
591
      This is expected to grow to cover a number of related uses mainly
374
592
      related to bzr info. (Robert Collins)
375
593
 
425
643
 
426
644
    * Fix problem with UNC paths on Windows 98. (Alexander Belchenko, #84728)
427
645
 
428
 
    * Searching location of CA bundle for PyCurl in env variable (CURL_CA_BUNDLE),
429
 
      and on win32 along the PATH. (Alexander Belchenko, #82086)
 
646
    * Searching location of CA bundle for PyCurl in env variable
 
647
      (``CURL_CA_BUNDLE``), and on win32 along the PATH.
 
648
      (Alexander Belchenko, #82086)
430
649
 
431
650
    * ``bzr init`` works with unicode argument LOCATION.
432
651
      (Alexander Belchenko, #85599)
433
652
 
434
 
    * Raise DependencyNotPresent if pycurl do not support https. (Vincent
435
 
      Ladeuil, #85305)
 
653
    * Raise ``DependencyNotPresent`` if pycurl do not support https. 
 
654
      (Vincent Ladeuil, #85305)
436
655
 
437
656
    * Invalid proxy env variables should not cause a traceback.
438
657
      (Vincent Ladeuil, #87765)
541
760
 
542
761
    * Test suite ends cleanly on Windows.  (Vincent Ladeuil)
543
762
 
544
 
    * When 'encoding_type' attribute of class Command is equal to 'exact', 
 
763
    * When ``encoding_type`` attribute of class Command is equal to 'exact', 
545
764
      force sys.stdout to be a binary stream on Windows, and therefore
546
765
      keep exact line-endings (without LF -> CRLF conversion).
547
766
      (Alexander Belchenko)
565
784
      ``--show-ids`` to display the original revision ids, rather than
566
785
      revision numbers and committer names. (John Arbash Meinel, #75637)
567
786
 
568
 
    * bzr now supports Win32 UNC path (e.g. \\HOST\path). 
 
787
    * bzr now supports Win32 UNC path (e.g. ``\HOST\path``. 
569
788
      (Alexander Belchenko, #57869)
570
789
 
571
790
    * Win32-specific: output of cat, bundle and diff commands don't mangle
652
871
 
653
872
    * ``MemoryTransport.list_dir()`` would strip the first character for
654
873
      files or directories in root directory. (John Arbash Meinel)
 
874
 
 
875
    * New method ``get_branch_reference`` on 'BzrDir' allows the detection of 
 
876
      branch references - which the smart server component needs.
655
877
  
656
878
    * New ``ChrootTransportDecorator``, accessible via the ``chroot+`` url
657
879
      prefix.  It disallows any access to locations above a set URL.  (Andrew
659
881
 
660
882
  BUG FIXES:
661
883
 
662
 
    * Now _KnitIndex properly decode revision ids when loading index data.
663
 
      And optimize the knit index parsing code.  (Dmitry Vasiliev, John
664
 
      Arbash Meinel)
 
884
    * Now ``_KnitIndex`` properly decode revision ids when loading index data.
 
885
      And optimize the knit index parsing code. 
 
886
      (Dmitry Vasiliev, John Arbash Meinel)
665
887
 
666
888
    * ``bzrlib/bzrdir.py`` was directly referencing ``bzrlib.workingtree``,
667
889
      without importing it. This prevented ``bzr upgrade`` from working
682
904
      line (for the urllib implementation). Don't request already
683
905
      known passwords (Vincent Ladeuil, #42383, #44647, #48527)
684
906
 
685
 
    * _KnitIndex.add_versions() dictionary compresses revision ids as they
 
907
    * ``_KnitIndex.add_versions()`` dictionary compresses revision ids as they
686
908
      are added. This fixes bug where fetching remote revisions records
687
 
      them as full references rather than integers. (John Arbash Meinel,
688
 
      #64789)
 
909
      them as full references rather than integers.
 
910
      (John Arbash Meinel, #64789)
689
911
 
690
912
    * ``bzr ignore`` strips trailing slashes in patterns.
691
913
      Also ``bzr ignore`` rejects absolute paths. (Kent Gibson, #4559)
751
973
    * New Registry class to provide name-to-object registry-like support,
752
974
      for example for schemes where plugins can register new classes to
753
975
      do certain tasks (e.g. log formatters). Also provides lazy registration
754
 
      to allow modules to be loaded on request. (John Arbash Meinel, Adeodato
755
 
      Simó)
 
976
      to allow modules to be loaded on request.
 
977
      (John Arbash Meinel, Adeodato Simó)
756
978
 
757
979
  API INCOMPATABILITY:
758
980
  
778
1000
      (Aaron Bentley)
779
1001
 
780
1002
    * ``WorkingTree.set_root_id(None)`` is now deprecated. Please
781
 
      pass in inventory.ROOT_ID if you want the default root id value.
 
1003
      pass in ``inventory.ROOT_ID`` if you want the default root id value.
782
1004
      (Robert Collins, John Arbash Meinel)
783
1005
 
784
1006
    * New method ``WorkingTree.flush()`` which will write the current memory
785
 
      inventory out to disk. At the same time, read_working_inventory will
 
1007
      inventory out to disk. At the same time, ``read_working_inventory`` will
786
1008
      no longer trash the current tree inventory if it has been modified within
787
1009
      the current lock, and the tree will now ``flush()`` automatically on
788
1010
      ``unlock()``. ``WorkingTree.set_root_id()`` has been updated to take
889
1111
      modules will not actually be imported if they are not used.
890
1112
      (John Arbash Meinel)
891
1113
 
892
 
    * Support bzr:// and bzr+ssh:// urls to work with the new RPC-based
 
1114
    * Support ``bzr://`` and ``bzr+ssh://`` urls to work with the new RPC-based
893
1115
      transport which will be used with the upcoming high-performance smart
894
1116
      server. The new command ``bzr serve`` will invoke bzr in server mode,
895
1117
      which processes these requests. (Andrew Bennetts, Robert Collins, Martin
902
1124
 
903
1125
  BUG FIXES:
904
1126
 
905
 
    * 'bzr inventory [FILE...]' allows restricting the file list to a
 
1127
    * ``'bzr inventory [FILE...]'`` allows restricting the file list to a
906
1128
      specific set of files. (John Arbash Meinel, #3631)
907
1129
 
908
1130
    * Don't abort when annotating empty files (John Arbash Meinel, #56814)
934
1156
    * Handle when LANG is not recognized by python. Emit a warning, but
935
1157
      just revert to using 'ascii'. (John Arbash Meinel, #35392)
936
1158
 
937
 
    * Don't use preexec_fn on win32, as it is not supported by subprocess.
 
1159
    * Don't use ``preexec_fn`` on win32, as it is not supported by subprocess.
938
1160
      (John Arbash Meinel)
939
1161
 
940
1162
    * Skip specific tests when the dependencies aren't met. This includes
966
1188
      than having HOME set to the same location as the working directory.
967
1189
      (John Arbash Meinel)
968
1190
 
969
 
    * run_bzr_subprocess() can take an optional 'env_changes={}' parameter,
 
1191
    * ``run_bzr_subprocess()`` can take an optional ``env_changes={}`` parameter,
970
1192
      which will update os.environ inside the spawned child. It also can
971
 
      take a 'universal_newlines=True', which helps when checking the output
 
1193
      take a ``universal_newlines=True``, which helps when checking the output
972
1194
      of the command. (John Arbash Meinel)
973
1195
 
974
1196
    * Refactor SFTP vendors to allow easier re-use when ssh is used. 
975
1197
      (Andrew Bennetts)
976
1198
 
977
 
    * Transport.list_dir() and Transport.iter_files_recursive() should always
 
1199
    * ``Transport.list_dir()`` and ``Transport.iter_files_recursive()`` should always
978
1200
      return urlescaped paths. This is now tested (there were bugs in a few
979
1201
      of the transports) (Andrew Bennetts, David Allouche, John Arbash Meinel)
980
1202
 
981
 
    * New utility function symbol_versioning.deprecation_string. Returns the
 
1203
    * New utility function ``symbol_versioning.deprecation_string``. Returns the
982
1204
      formatted string for a callable, deprecation format pair. (Robert Collins)
983
1205
 
984
1206
    * New TestCase helper applyDeprecated. This allows you to call a callable
986
1208
      the deprecation format string issued for it. (Robert Collins)
987
1209
 
988
1210
    * Transport.append and Transport.put have been deprecated in favor of
989
 
      .append_bytes, .append_file, .put_bytes, and .put_file. This removes the
990
 
      ambiguity in what type of object the functions take.
991
 
      Transport.non_atomic_put_{bytes,file} has also been added. Which works
992
 
      similarly to Transport.append() except for SFTP, it doesn't have a round
993
 
      trip when opening the file. Also, it provides functionality for creating
994
 
      a parent directory when trying to create a file, rather than raise
995
 
      NoSuchFile and forcing the caller to repeat their request.
 
1211
      ``.append_bytes``, ``.append_file``, ``.put_bytes``, and
 
1212
      ``.put_file``. This removes the ambiguity in what type of object the
 
1213
      functions take.  ``Transport.non_atomic_put_{bytes,file}`` has also
 
1214
      been added. Which works similarly to ``Transport.append()`` except for
 
1215
      SFTP, it doesn't have a round trip when opening the file. Also, it
 
1216
      provides functionality for creating a parent directory when trying
 
1217
      to create a file, rather than raise NoSuchFile and forcing the
 
1218
      caller to repeat their request.
996
1219
      (John Arbash Meinel)
997
1220
 
998
1221
    * WorkingTree has a new api ``unversion`` which allow the unversioning of
999
1222
      entries by their file id. (Robert Collins)
1000
1223
 
1001
 
    * WorkingTree.pending_merges is deprecated.  Please use the get_parent_ids
1002
 
      (introduced in 0.10) method instead. (Robert Collins)
 
1224
    * ``WorkingTree.pending_merges`` is deprecated.  Please use the
 
1225
      ``get_parent_ids`` (introduced in 0.10) method instead. (Robert Collins)
1003
1226
 
1004
 
    * WorkingTree has a new lock_tree_write method which locks the branch for
 
1227
    * WorkingTree has a new ``lock_tree_write`` method which locks the branch for
1005
1228
      read rather than write. This is appropriate for actions which only need
1006
1229
      the branch data for reference rather than mutation. A new decorator
1007
 
      needs_tree_write_lock is provided in the workingtree module. Like the
1008
 
      needs_read_lock and needs_write_lock decorators this allows static 
 
1230
      ``needs_tree_write_lock`` is provided in the workingtree module. Like the
 
1231
      ``needs_read_lock`` and ``needs_write_lock`` decorators this allows static 
1009
1232
      declaration of the locking requirements of a function to ensure that
1010
1233
      a lock is taken out for casual scripts. (Robert Collins, #54107)
1011
1234
 
1026
1249
    * WorkingTree has a new parent class MutableTree which represents the 
1027
1250
      specialisations of Tree which are able to be altered. (Robert Collins)
1028
1251
 
1029
 
    * New methods mkdir and put_file_bytes_non_atomic on MutableTree that
 
1252
    * New methods mkdir and ``put_file_bytes_non_atomic`` on MutableTree that
1030
1253
      mutate the tree and its contents. (Robert Collins)
1031
1254
 
1032
1255
    * Transport behaviour at the root of the URL is now defined and tested.
1037
1260
    * New test helper classs MemoryTree. This is typically accessed via
1038
1261
      ``self.make_branch_and_memory_tree()`` in test cases. (Robert Collins)
1039
1262
      
1040
 
    * Add start_bzr_subprocess and stop_bzr_subprocess to allow test code to
1041
 
      continue running concurrently with a subprocess of bzr. (Andrew Bennetts,
1042
 
      Robert Collins)
 
1263
    * Add ``start_bzr_subprocess`` and ``stop_bzr_subprocess`` to allow test
 
1264
      code to continue running concurrently with a subprocess of bzr.
 
1265
      (Andrew Bennetts, Robert Collins)
1043
1266
 
1044
1267
    * Add a new method ``Transport.get_smart_client()``. This is provided to
1045
1268
      allow upgrades to a richer interface than the VFS one provided by
1053
1276
  
1054
1277
    * 'bzr add --file-ids-from' can be used to specify another path to use
1055
1278
      for creating file ids, rather than generating all new ones. Internally,
1056
 
      the 'action' passed to smart_add_tree() can return file_ids that
 
1279
      the 'action' passed to ``smart_add_tree()`` can return ``file_ids`` that
1057
1280
      will be used, rather than having bzrlib generate new ones.
1058
1281
      (John Arbash Meinel, #55781)
1059
1282
 
1073
1296
    * Help diffutils 2.8.4 get along with binary tests (Marien Zwart: #57614)
1074
1297
 
1075
1298
    * Change LockDir so that if the lock directory doesn't exist when
1076
 
      lock_write() is called, an attempt will be made to create it.
 
1299
      ``lock_write()`` is called, an attempt will be made to create it.
1077
1300
      (John Arbash Meinel, #56974)
1078
1301
 
1079
1302
    * ``bzr uncommit`` preserves pending merges. (John Arbash Meinel, #57660)
1094
1317
    * Handle TZ=UTC properly when reading/writing revisions.
1095
1318
      (John Arbash Meinel, #55783, #56290)
1096
1319
 
1097
 
    * Use GPG_TTY to allow gpg --cl to work with gpg-agent in a pipeline,
 
1320
    * Use ``GPG_TTY`` to allow gpg --cl to work with gpg-agent in a pipeline,
1098
1321
      (passing text to sign in on stdin). (John Arbash Meinel, #54468)
1099
1322
 
1100
1323
    * External diff does the right thing for binaries even in foreign 
1101
1324
      languages. (John Arbash Meinel, #56307)
1102
1325
 
1103
1326
    * Testament handles more cases when content is unicode. Specific bug was
1104
 
      in handling of revision properties. (John Arbash Meinel, Holger Krekel,
1105
 
      #54723)
 
1327
      in handling of revision properties.
 
1328
      (John Arbash Meinel, Holger Krekel, #54723)
1106
1329
 
1107
1330
    * The bzr selftest was failing on installed versions due to a bug in a new
1108
1331
      test helper. (John Arbash Meinel, Robert Collins, #58057)
1125
1348
 
1126
1349
   * The hard-coded built-in ignore rules have been removed. There are
1127
1350
     now two rulesets which are enforced. A user global one in 
1128
 
     ~/.bazaar/ignore which will apply to every tree, and the tree
 
1351
     ``~/.bazaar/ignore`` which will apply to every tree, and the tree
1129
1352
     specific one '.bzrignore'.
1130
 
     ~/.bazaar/ignore will be created if it does not exist, but with
 
1353
     ``~/.bazaar/ignore`` will be created if it does not exist, but with
1131
1354
     a more conservative list than the old default.
1132
1355
     This fixes bugs with default rules being enforced no matter what. 
1133
1356
     The old list of ignore rules from bzr is available by
1149
1372
     proper printing when the user's terminal encoding cannot display 
1150
1373
     the path of a file that has been versioned.
1151
1374
     ``bzr branch`` can take a target URL rather than only a local directory.
1152
 
     Branch.get_parent()/set_parent() now save a relative path if possible,
 
1375
     ``Branch.get_parent()/set_parent()`` now save a relative path if possible,
1153
1376
     and normalize the parent based on root, allowing access across
1154
1377
     different transports. (John Arbash Meinel, Wouter van Heyst, Martin Pool)
1155
1378
     (Malone #48906, #42699, #40675, #5281, #3980, #36363, #43689,
1220
1443
     Also updates things like 'http+pycurl://' if pycurl is not present.
1221
1444
     (John Arbash Meinel) (Malone #47821, #52204)
1222
1445
 
1223
 
   * New env variable BZR_PROGRESS_BAR, sets the default progress bar type.
 
1446
   * New env variable ``BZR_PROGRESS_BAR``, sets the default progress bar type.
1224
1447
     Can be set to 'none' or 'dummy' to disable the progress bar, 'dots' or 
1225
1448
     'tty' to create the respective type. (John Arbash Meinel, #42197, #51107)
1226
1449
 
1252
1475
  BUG FIXES:
1253
1476
 
1254
1477
    * Fix shadowed definition of TestLocationConfig that caused some 
1255
 
      tests not to run.  (#32587, Erik Bågfors, Michael Ellerman, 
1256
 
      Martin Pool)
 
1478
      tests not to run.
 
1479
      (Erik Bågfors, Michael Ellerman, Martin Pool, #32587)
1257
1480
 
1258
1481
    * Fix unnecessary requirement of sign-my-commits that it be run from
1259
1482
      a working directory.  (Martin Pool, Robert Collins)
1260
1483
 
1261
1484
    * 'bzr push location' will only remember the push location if it succeeds
1262
 
      in connecting to the remote location. (#49742, John Arbash Meinel)
 
1485
      in connecting to the remote location. (John Arbash Meinel, #49742)
1263
1486
 
1264
1487
    * 'bzr revert' no longer toggles the executable bit on win32
1265
 
      (#45010, John Arbash Meinel)
 
1488
      (John Arbash Meinel, #45010)
1266
1489
 
1267
1490
    * Handle broken pipe under win32 correctly. (John Arbash Meinel)
1268
1491
    
1277
1500
      and y.
1278
1501
 
1279
1502
    * File-ids containing single- or double-quotes are handled correctly by
1280
 
      push.  (#52227, Aaron Bentley)
 
1503
      push. (Aaron Bentley, #52227)
1281
1504
 
1282
1505
    * Normalize unicode filenames to ensure cross-platform consistency.
1283
1506
      (John Arbash Meinel, #43689)
1290
1513
    * Bundles can properly read binary files with a plain '\r' in them.
1291
1514
      (John Arbash Meinel, #51927)
1292
1515
 
1293
 
    * Tuning iter_entries() to be more efficient (John Arbash Meinel, #5444)
 
1516
    * Tuning ``iter_entries()`` to be more efficient (John Arbash Meinel, #5444)
1294
1517
 
1295
1518
    * Lots of win32 fixes (the test suite passes again).
1296
1519
      (John Arbash Meinel, #50155)
1334
1557
 
1335
1558
    * Use the right suffixes for loading plugins (John Arbash Meinel, #51810)
1336
1559
 
1337
 
    * Fix Branch.get_parent() to handle the case when the parent is not 
 
1560
    * Fix ``Branch.get_parent()`` to handle the case when the parent is not 
1338
1561
      accessible (John Arbash Meinel, #52976)
1339
1562
 
1340
1563
  INTERNALS:
1343
1566
      them to reduce the threshold where  N^2 behaviour occurs in operations
1344
1567
      like status. (Jan Hudec, Robert Collins).
1345
1568
 
1346
 
    * Appending to bzrlib.DEFAULT_IGNORE is now deprecated. Instead, use
 
1569
    * Appending to ``bzrlib.DEFAULT_IGNORE`` is now deprecated. Instead, use
1347
1570
      one of the add functions in bzrlib.ignores. (John Arbash Meinel)
1348
1571
 
1349
1572
    * 'bzr push' should only push the ancestry of the current revision, not
1350
1573
      all of the history in the repository. This is especially important for
1351
1574
      shared repositories. (John Arbash Meinel)
1352
1575
 
1353
 
    * bzrlib.delta.compare_trees now iterates in alphabetically sorted order,
 
1576
    * ``bzrlib.delta.compare_trees`` now iterates in alphabetically sorted order,
1354
1577
      rather than randomly walking the inventories. (John Arbash Meinel)
1355
1578
 
1356
1579
    * Doctests are now run in temporary directories which are cleaned up when
1361
1584
      so that it can be specialized in ways that are useful or efficient for
1362
1585
      different formats.  (Martin Pool, Robert Collins)
1363
1586
 
1364
 
    * Deprecate Repository.all_revision_ids; most methods don't really need
 
1587
    * Deprecate ``Repository.all_revision_ids``; most methods don't really need
1365
1588
      the global revision graph but only that part leading up to a particular
1366
1589
      revision.  (Martin Pool, Robert Collins)
1367
1590
 
1368
 
    * Add a BzrDirFormat control_formats list which allows for control formats
 
1591
    * Add a BzrDirFormat ``control_formats`` list which allows for control formats
1369
1592
      that do not use '.bzr' to store their data - i.e. '.svn', '.hg' etc.
1370
1593
      (Robert Collins, Jelmer Vernooij).
1371
1594
 
1372
 
    * bzrlib.diff.external_diff can be redirected to any file-like object.
 
1595
    * ``bzrlib.diff.external_diff`` can be redirected to any file-like object.
1373
1596
      Uses subprocess instead of spawnvp.
1374
 
      (#4047, #48914, James Henstridge, John Arbash Meinel)
 
1597
      (James Henstridge, John Arbash Meinel, #4047, #48914)
1375
1598
 
1376
1599
    * New command line option '--profile-imports', which will install a custom
1377
1600
      importer to log time to import modules and regex compilation time to 
1378
1601
      sys.stderr (John Arbash Meinel)
1379
1602
 
1380
 
    * 'EmptyTree' is now deprecated, please use repository.revision_tree(None)
 
1603
    * 'EmptyTree' is now deprecated, please use ``repository.revision_tree(None)``
1381
1604
      instead. (Robert Collins)
1382
1605
 
1383
1606
    * "RevisionTree" is now in bzrlib/revisiontree.py. (Robert Collins)
1400
1623
 
1401
1624
    * Separate functionality from assert statements as they are skipped in
1402
1625
      optimized mode of python. Add the same check to pending merges.
1403
 
      (#44443, Olaf Conradi)
 
1626
      (Olaf Conradi, #44443)
1404
1627
 
1405
1628
  CHANGES:
1406
1629
 
1407
1630
    * Do not show the None revision in output of bzr ancestry. (Olaf Conradi)
1408
1631
 
1409
1632
    * Add info on standalone branches without a working tree.
1410
 
      (#44155, Olaf Conradi)
 
1633
      (Olaf Conradi, #44155)
1411
1634
 
1412
 
    * Fix bug in knits when raising InvalidRevisionId. (#44284, Olaf Conradi)
 
1635
    * Fix bug in knits when raising InvalidRevisionId. (Olaf Conradi, #44284)
1413
1636
 
1414
1637
  CHANGES:
1415
1638
 
1416
1639
    * Make editor invocation comply with Debian Policy. First check
1417
1640
      environment variables VISUAL and EDITOR, then try editor from
1418
1641
      alternatives system. If that all fails, fall back to the pre-defined
1419
 
      list of editors. (#42904, Olaf Conradi)
 
1642
      list of editors. (Olaf Conradi, #42904)
1420
1643
 
1421
1644
  NEW FEATURES:
1422
1645
 
1426
1649
 
1427
1650
  INTERNALS:
1428
1651
 
1429
 
    * New public api in InventoryEntry - 'describe_change(old, new)' which
 
1652
    * New public api in InventoryEntry - ``describe_change(old, new)`` which
1430
1653
      provides a human description of the changes between two old and
1431
1654
      new. (Robert Collins, Martin Pool)
1432
1655
 
1475
1698
  IMPROVEMENTS:
1476
1699
 
1477
1700
    * Sftp paths can now be relative, or local, according to the lftp
1478
 
      convention. Paths now take the form:
1479
 
      sftp://user:pass@host:port/~/relative/path
1480
 
      or
1481
 
      sftp://user:pass@host:port/absolute/path
 
1701
      convention. Paths now take the form::
 
1702
 
 
1703
          sftp://user:pass@host:port/~/relative/path
 
1704
          or
 
1705
          sftp://user:pass@host:port/absolute/path
1482
1706
 
1483
1707
    * The FTP transport now tries to reconnect after a temporary
1484
1708
      failure. ftp put is made atomic. (Matthieu Moy)
1487
1711
      reuses them to avoid multiple connections to the same host (like
1488
1712
      sftp did). (Daniel Silverstone)
1489
1713
 
1490
 
    * The bzr_man.py file has been removed. To create the man page now,
1491
 
      use ./generate_docs.py man. The new program can also create other files.
1492
 
      Run "python generate_docs.py --help" for usage information. (Hans
1493
 
      Ulrich Niedermann & James Blackwell).
 
1714
    * The ``bzr_man.py`` file has been removed. To create the man page now,
 
1715
      use ``./generate_docs.py man``. The new program can also create other files.
 
1716
      Run ``python generate_docs.py --help`` for usage information.
 
1717
      (Hans Ulrich Niedermann & James Blackwell).
1494
1718
 
1495
 
    * Man Page now gives full help (James Blackwell). Help also updated to 
1496
 
      reflect user config now being stored in .bazaar (Hans Ulrich
1497
 
      Niedermann)
 
1719
    * Man Page now gives full help (James Blackwell).
 
1720
      Help also updated to reflect user config now being stored in .bazaar
 
1721
      (Hans Ulrich Niedermann)
1498
1722
 
1499
1723
    * It's now possible to set aliases in bazaar.conf (Erik Bågfors)
1500
1724
 
1501
1725
    * Pull now accepts a --revision argument (Erik Bågfors)
1502
1726
 
1503
 
    * 'bzr re-sign' now allows multiple revisions to be supplied on the command
 
1727
    * ``bzr re-sign`` now allows multiple revisions to be supplied on the command
1504
1728
      line. You can now use the following command to sign all of your old
1505
1729
      commits::
1506
1730
 
1589
1813
    * Commit is now verbose by default, and shows changed filenames and the 
1590
1814
      new revision number.  (Robert Collins, Martin Pool)
1591
1815
 
1592
 
    * Unify 'mv', 'move', 'rename'.  (#5379, Matthew Fuller)
 
1816
    * Unify 'mv', 'move', 'rename'.  (Matthew Fuller, #5379)
1593
1817
 
1594
 
    * 'bzr -h' shows help.  (#35940, Martin Pool, Ian Bicking)
 
1818
    * 'bzr -h' shows help.  (Martin Pool, Ian Bicking, #35940)
1595
1819
 
1596
1820
    * Make 'pull' and 'push' remember location on failure using --remember.
1597
1821
      (Olaf Conradi)
1617
1841
 
1618
1842
    * Using Tree Transform for merge, revert, tree-building
1619
1843
 
1620
 
    * WorkingTree.create, Branch.create, WorkingTree.create_standalone,
1621
 
      Branch.initialize are now deprecated. Please see BzrDir.create_* for
 
1844
    * WorkingTree.create, Branch.create, ``WorkingTree.create_standalone``,
 
1845
      Branch.initialize are now deprecated. Please see ``BzrDir.create_*`` for
1622
1846
      replacement API's. (Robert Collins)
1623
1847
 
1624
1848
    * New BzrDir class represents the .bzr control directory and manages
1628
1852
      Repository actions and allows for clean selection of optimised code
1629
1853
      paths. (Robert Collins)
1630
1854
 
1631
 
    * bzrlib.fetch.fetch and bzrlib.fetch.greedy_fetch are now deprecated,
1632
 
      please use 'branch.fetch' or 'repository.fetch' depending on your
1633
 
      needs. (Robert Collins)
 
1855
    * ``bzrlib.fetch.fetch`` and ``bzrlib.fetch.greedy_fetch`` are now
 
1856
      deprecated, please use ``branch.fetch`` or ``repository.fetch``
 
1857
      depending on your needs. (Robert Collins)
1634
1858
 
1635
 
    * deprecated methods now have a 'is_deprecated' flag on them that can
 
1859
    * deprecated methods now have a ``is_deprecated`` flag on them that can
1636
1860
      be checked, if you need to determine whether a given callable is 
1637
1861
      deprecated at runtime. (Robert Collins)
1638
1862
 
1639
1863
    * Progress bars are now nested - see
1640
 
      bzrlib.ui.ui_factory.nested_progress_bar. (Robert Collins, Robey Pointer)
 
1864
      ``bzrlib.ui.ui_factory.nested_progress_bar``.
 
1865
      (Robert Collins, Robey Pointer)
1641
1866
 
1642
 
    * New API call get_format_description() for each type of format.
 
1867
    * New API call ``get_format_description()`` for each type of format.
1643
1868
      (Olaf Conradi)
1644
1869
 
1645
 
    * Changed branch.set_parent() to accept None to remove parent.
 
1870
    * Changed ``branch.set_parent()`` to accept None to remove parent.
1646
1871
      (Olaf Conradi)
1647
1872
 
1648
1873
    * Deprecated BzrError AmbiguousBase.  (Olaf Conradi)
1649
1874
 
1650
1875
    * WorkingTree.branch is now a read only property.  (Robert Collins)
1651
1876
 
1652
 
    * bzrlib.ui.text.TextUIFactory now accepts a bar_type parameter which
 
1877
    * bzrlib.ui.text.TextUIFactory now accepts a ``bar_type`` parameter which
1653
1878
      can be None or a factory that will create a progress bar. This is
1654
1879
      useful for testing or for overriding the bzrlib.progress heuristic.
1655
1880
      (Robert Collins)
1656
1881
 
1657
 
    * New API method get_physical_lock_status() to query locks present on a
 
1882
    * New API method ``get_physical_lock_status()`` to query locks present on a
1658
1883
      transport.  (Olaf Conradi)
1659
1884
 
1660
1885
    * Repository.reconcile now takes a thorough keyword parameter to allow
1661
1886
      requesting an indepth reconciliation, rather than just a data-loss 
1662
1887
      check. (Robert Collins)
1663
1888
 
1664
 
    * bzrlib.ui.ui_factory protocol now supports 'get_boolean' to prompt
 
1889
    * ``bzrlib.ui.ui_factory protocol`` now supports ``get_boolean`` to prompt
1665
1890
      the user for yes/no style input. (Robert Collins)
1666
1891
 
1667
1892
  TESTING:
1669
1894
    * SFTP tests now shortcut the SSH negotiation, reducing test overhead
1670
1895
      for testing SFTP protocol support. (Robey Pointer)
1671
1896
 
1672
 
    * Branch formats are now tested once per implementation (see bzrlib.
1673
 
      tests.branch_implementations. This is analagous to the transport
 
1897
    * Branch formats are now tested once per implementation (see ``bzrlib.
 
1898
      tests.branch_implementations``. This is analagous to the transport
1674
1899
      interface tests, and has been followed up with working tree,
1675
1900
      repository and BzrDir tests. (Robert Collins)
1676
1901
 
1686
1911
 
1687
1912
    * Move test case for uncommit to blackbox tests.  (Olaf Conradi)
1688
1913
 
1689
 
    * run_bzr and run_bzr_captured now accept a 'stdin="foo"' parameter which
1690
 
      will provide String("foo") to the command as its stdin.
 
1914
    * ``run_bzr`` and ``run_bzr_captured`` now accept a 'stdin="foo"'
 
1915
      parameter which will provide String("foo") to the command as its stdin.
1691
1916
 
1692
1917
bzr 0.7 2006-01-09
1693
1918
 
1701
1926
      versioned directories, now use "bzr inventory --kind directory".  
1702
1927
      (Johan Rydberg)
1703
1928
 
1704
 
    * Under Windows configuration directory is now %APPDATA%\bazaar\2.0
 
1929
    * Under Windows configuration directory is now ``%APPDATA%\bazaar\2.0``
1705
1930
      by default. (John Arbash Meinel)
1706
1931
 
1707
 
    * The parent of Bzr configuration directory can be set by BZR_HOME
1708
 
      environment variable. Now the path for it is searched in BZR_HOME, then
1709
 
      in HOME. Under Windows the order is: BZR_HOME, APPDATA (usually
1710
 
      points to C:\Documents and Settings\User Name\Application Data), HOME.
1711
 
      (John Arbash Meinel)
 
1932
    * The parent of Bzr configuration directory can be set by ``BZR_HOME``
 
1933
      environment variable. Now the path for it is searched in ``BZR_HOME``,
 
1934
      then in HOME. Under Windows the order is: ``BZR_HOME``, ``APPDATA``
 
1935
      (usually points to ``C:\Documents and Settings\User Name\Application Data``),
 
1936
      ``HOME``. (John Arbash Meinel)
1712
1937
 
1713
1938
    * Plugins with the same name in different directories in the bzr plugin
1714
1939
      path are no longer loaded: only the first successfully loaded one is
1753
1978
    * Added branch nicks, new nick command, printing them in log output. 
1754
1979
      (Aaron Bentley)
1755
1980
 
1756
 
    * If $BZR_PDB is set, pop into the debugger when an uncaught exception 
 
1981
    * If ``$BZR_PDB`` is set, pop into the debugger when an uncaught exception 
1757
1982
      occurs.  (Martin Pool)
1758
1983
 
1759
1984
    * Accept 'bzr resolved' (an alias for 'bzr resolve'), as this is
1762
1987
    * New ftp transport support (on ftplib), for ftp:// and aftp:// 
1763
1988
      URLs.  (Daniel Silverstone)
1764
1989
 
1765
 
    * Commit editor temporary files now start with 'bzr_log.', to allow 
 
1990
    * Commit editor temporary files now start with ``bzr_log.``, to allow 
1766
1991
      text editors to match the file name and set up appropriate modes or 
1767
1992
      settings.  (Magnus Therning)
1768
1993
 
1777
2002
      revno should be printed.  (Michael Ellerman)
1778
2003
 
1779
2004
    * bzr cat defaults to printing the last version of the file.  
1780
 
      (#3632, Matthieu Moy)
 
2005
      (Matthieu Moy, #3632)
1781
2006
 
1782
2007
    * New global option 'bzr --lsprof COMMAND' runs bzr under the lsprof 
1783
2008
      profiler.  (Denys Duchier)
1821
2046
    * Fix for sftp transport under windows when using interactive auth
1822
2047
 
1823
2048
    * Show files which are both renamed and modified as such in 'bzr 
1824
 
      status' output.  (#4503, Daniel Silverstone)
 
2049
      status' output.  (Daniel Silverstone, #4503)
1825
2050
 
1826
2051
    * Make annotate cope better with revisions committed without a valid 
1827
2052
      email address.  (Marien Zwart)
1828
2053
 
1829
 
    * Fix representation of tab characters in commit messages.  (Harald 
1830
 
      Meland)
 
2054
    * Fix representation of tab characters in commit messages.
 
2055
      (Harald Meland)
1831
2056
 
1832
 
    * List of plugin directories in BZR_PLUGIN_PATH environment variable is
 
2057
    * List of plugin directories in ``BZR_PLUGIN_PATH`` environment variable is
1833
2058
      now parsed properly under Windows. (Alexander Belchenko)
1834
2059
 
1835
2060
    * Show number of revisions pushed/pulled/merged. (Robey Pointer)
1837
2062
    * Keep a cached copy of the basis inventory to speed up operations 
1838
2063
      that need to refer to it.  (Johan Rydberg, Martin Pool)
1839
2064
 
1840
 
    * Fix bugs in bzr status display of non-ascii characters.  (Martin 
1841
 
      Pool)
 
2065
    * Fix bugs in bzr status display of non-ascii characters.
 
2066
      (Martin Pool)
1842
2067
 
1843
 
    * Remove Makefile.in from default ignore list.  (#6413, Tollef Fog 
1844
 
      Heen, Martin Pool)
 
2068
    * Remove Makefile.in from default ignore list.
 
2069
      (Tollef Fog Heen, Martin Pool, #6413)
1845
2070
 
1846
2071
    * Fix failure in 'bzr added'.  (Nathan McCallum, Martin Pool)
1847
2072
 
1856
2081
 
1857
2082
    * Make tests work even if HOME is not set (Aaron Bentley)
1858
2083
 
1859
 
    * Updated build_tree to use fixed line-endings for tests which read 
 
2084
    * Updated ``build_tree`` to use fixed line-endings for tests which read 
1860
2085
      the file cotents and compare. Make some tests use this to pass under
1861
2086
      Windows. (John Arbash Meinel)
1862
2087
 
1869
2094
 
1870
2095
    * Blackbox tests are maintained within the bzrlib.tests.blackbox directory.
1871
2096
      If adding a new test script please add that to
1872
 
      bzrlib.tests.blackbox.__init__. (Robert Collins)
 
2097
      ``bzrlib.tests.blackbox.__init__``. (Robert Collins)
1873
2098
 
1874
2099
    * Much better error message if one of the test suites can't be 
1875
2100
      imported.  (Martin Pool)
1896
2121
      see bzrlib.transport.TransportTestProviderAdapter() for this.
1897
2122
      (Robert Collins).
1898
2123
 
1899
 
    * TestCase.build_tree uses the transport interface to build trees, pass
1900
 
      in a transport parameter to give it an existing connection.
 
2124
    * ``TestCase.build_tree`` uses the transport interface to build trees,
 
2125
      pass in a transport parameter to give it an existing connection.
1901
2126
      (Robert Collins).
1902
2127
 
1903
2128
  INTERNALS:
1905
2130
    * WorkingTree.pull has been split across Branch and WorkingTree,
1906
2131
      to allow Branch only pulls. (Robert Collins)
1907
2132
 
1908
 
    * commands.display_command now returns the result of the decorated 
 
2133
    * ``commands.display_command`` now returns the result of the decorated 
1909
2134
      function. (Robert Collins)
1910
2135
 
1911
 
    * LocationConfig now has a set_user_option(key, value) call to save
 
2136
    * LocationConfig now has a ``set_user_option(key, value)`` call to save
1912
2137
      a setting in its matching location section (a new one is created
1913
2138
      if needed). (Robert Collins)
1914
2139
 
1915
 
    * Branch has two new methods, get_push_location and set_push_location
1916
 
      to respectively, get and set the push location. (Robert Collins)
 
2140
    * Branch has two new methods, ``get_push_location`` and
 
2141
      ``set_push_location`` to respectively, get and set the push location.
 
2142
      (Robert Collins)
1917
2143
 
1918
 
    * commands.register_command now takes an optional flag to signal that
 
2144
    * ``commands.register_command`` now takes an optional flag to signal that
1919
2145
      the registrant is planning to decorate an existing command. When 
1920
2146
      given multiple plugins registering a command is not an error, and
1921
2147
      the original command class (whether built in or a plugin based one) is
1926
2152
    * Some option parsing errors will raise 'BzrOptionError', allowing 
1927
2153
      granular detection for decorating commands. (Robert Collins).
1928
2154
 
1929
 
    * Branch.read_working_inventory has moved to
1930
 
      WorkingTree.read_working_inventory. This necessitated changes to
1931
 
      Branch.get_root_id, and a move of Branch.set_inventory to WorkingTree
1932
 
      as well. To make it clear that a WorkingTree cannot always be obtained
1933
 
      Branch.working_tree() will raise 'errors.NoWorkingTree' if one cannot
1934
 
      be obtained. (Robert Collins)
 
2155
    * ``Branch.read_working_inventory`` has moved to
 
2156
      ``WorkingTree.read_working_inventory``. This necessitated changes to
 
2157
      ``Branch.get_root_id``, and a move of ``Branch.set_inventory`` to
 
2158
      WorkingTree as well. To make it clear that a WorkingTree cannot always
 
2159
      be obtained ``Branch.working_tree()`` will raise
 
2160
      ``errors.NoWorkingTree`` if one cannot be obtained. (Robert Collins)
1935
2161
 
1936
2162
    * All pending merges operations from Branch are now on WorkingTree.
1937
2163
      (Robert Collins)
1938
2164
 
1939
 
    * The follow operations from Branch have moved to WorkingTree:
1940
 
      add()
1941
 
      commit()
1942
 
      move()
1943
 
      rename_one()
1944
 
      unknowns()
 
2165
    * The follow operations from Branch have moved to WorkingTree::
 
2166
 
 
2167
          add()
 
2168
          commit()
 
2169
          move()
 
2170
          rename_one()
 
2171
          unknowns()
 
2172
 
1945
2173
      (Robert Collins)
1946
2174
 
1947
 
    * bzrlib.add.smart_add_branch is now smart_add_tree. (Robert Collins)
 
2175
    * ``bzrlib.add.smart_add_branch`` is now ``smart_add_tree``. (Robert Collins)
1948
2176
 
1949
2177
    * New "rio" serialization format, similar to rfc-822. (Martin Pool)
1950
2178
 
1951
 
    * Rename selftests to `bzrlib.tests.test_foo`.  (John A Meinel, Martin 
 
2179
    * Rename selftests to ``bzrlib.tests.test_foo``.  (John A Meinel, Martin 
1952
2180
      Pool)
1953
2181
 
1954
 
    * bzrlib.plugin.all_plugins has been changed from an attribute to a 
 
2182
    * ``bzrlib.plugin.all_plugins`` has been changed from an attribute to a 
1955
2183
      query method. (Robert Collins)
1956
2184
 
1957
2185
    * New options to read only the table-of-contents of a weave.  
1960
2188
    * Raise NoSuchFile when someone tries to add a non-existant file.
1961
2189
      (Michael Ellerman)
1962
2190
 
1963
 
    * Simplify handling of DivergedBranches in cmd_pull().
 
2191
    * Simplify handling of DivergedBranches in ``cmd_pull()``.
1964
2192
      (Michael Ellerman)
1965
 
                   
1966
2193
   
1967
2194
    * Branch.controlfile* logic has moved to lockablefiles.LockableFiles, which
1968
 
      is exposed as Branch().control_files. Also this has been altered with the
 
2195
      is exposed as ``Branch().control_files``. Also this has been altered with the
1969
2196
      controlfile pre/suffix replaced by simple method names like 'get' and
1970
2197
      'put'. (Aaron Bentley, Robert Collins).
1971
2198
 
1972
2199
    * Deprecated functions and methods can now be marked as such using the 
1973
 
      bzrlib.symbol_versioning module. Marked method have their docstring
 
2200
      ``bzrlib.symbol_versioning`` module. Marked method have their docstring
1974
2201
      updated and will issue a DeprecationWarning using the warnings module
1975
2202
      when they are used. (Robert Collins)
1976
2203
 
1977
 
    * bzrlib.osutils.safe_unicode now exists to provide parameter coercion
 
2204
    * ``bzrlib.osutils.safe_unicode`` now exists to provide parameter coercion
1978
2205
      for functions that need unicode strings. (Robert Collins)
1979
2206
 
1980
2207
bzr 0.6 2005-10-28
2015
2242
    * New command 're-sign' which will regenerate the gpg signature for 
2016
2243
      a revision. (Robert Collins)
2017
2244
 
2018
 
    * If you set check_signatures=require for a path in 
2019
 
      ~/.bazaar/branches.conf then bzr will invoke your
2020
 
      gpg_signing_command (defaults to gpg) and record a digital signature
 
2245
    * If you set ``check_signatures=require`` for a path in 
 
2246
      ``~/.bazaar/branches.conf`` then bzr will invoke your
 
2247
      ``gpg_signing_command`` (defaults to gpg) and record a digital signature
2021
2248
      of your commit. (Robert Collins)
2022
2249
 
2023
2250
    * New sftp transport, based on Paramiko.  (Robey Pointer)
2031
2258
    * 'bzr branch' will now set the branch-name to the last component of the
2032
2259
      output directory, if one was supplied.
2033
2260
 
2034
 
    * If the option 'post_commit' is set to one (or more) python function
 
2261
    * If the option ``post_commit`` is set to one (or more) python function
2035
2262
      names (must be in the bzrlib namespace), then they will be invoked
2036
 
      after the commit has completed, with the branch and revision_id as
 
2263
      after the commit has completed, with the branch and ``revision_id`` as
2037
2264
      parameters. (Robert Collins)
2038
2265
 
2039
2266
    * Merge now has a retcode of 1 when conflicts occur. (Robert Collins)
2100
2327
 
2101
2328
    * Plugins are now loaded under bzrlib.plugins, not bzrlib.plugin, and
2102
2329
      they are made available for other plugins to use. You should not 
2103
 
      import other plugins during the __init__ of your plugin though, as 
 
2330
      import other plugins during the ``__init__`` of your plugin though, as 
2104
2331
      no ordering is guaranteed, and the plugins directory is not on the
2105
2332
      python path. (Robert Collins)
2106
2333
 
2113
2340
      Scott James Remnant.  (Martin Pool)
2114
2341
 
2115
2342
    * Branch.remove has been moved to WorkingTree, which has also gained
2116
 
      lock_read, lock_write and unlock methods for convenience. (Robert
2117
 
      Collins)
 
2343
      ``lock_read``, ``lock_write`` and ``unlock`` methods for convenience.
 
2344
      (Robert Collins)
2118
2345
 
2119
 
    * Two decorators, needs_read_lock and needs_write_lock have been added
2120
 
      to the branch module. Use these to cause a function to run in a
 
2346
    * Two decorators, ``needs_read_lock`` and ``needs_write_lock`` have been
 
2347
      added to the branch module. Use these to cause a function to run in a
2121
2348
      read or write lock respectively. (Robert Collins)
2122
2349
 
2123
 
    * Branch.open_containing now returns a tuple (Branch, relative-path),
 
2350
    * ``Branch.open_containing`` now returns a tuple (Branch, relative-path),
2124
2351
      which allows direct access to the common case of 'get me this file
2125
2352
      from its branch'. (Robert Collins)
2126
2353
 
2127
 
    * Transports can register using register_lazy_transport, and they 
 
2354
    * Transports can register using ``register_lazy_transport``, and they 
2128
2355
      will be loaded when first used.  (Martin Pool)
2129
2356
 
2130
 
    * 'pull' has been factored out of the command as WorkingTree.pull().
 
2357
    * 'pull' has been factored out of the command as ``WorkingTree.pull()``.
2131
2358
      A new option to WorkingTree.pull has been added, clobber, which will
2132
2359
      ignore diverged history and pull anyway.
2133
2360
      (Robert Collins)
2134
2361
 
2135
 
    * config.Config has a 'get_user_option' call that accepts an option name.
 
2362
    * config.Config has a ``get_user_option`` call that accepts an option name.
2136
2363
      This will be looked up in branches.conf and bazaar.conf as normal.
2137
2364
      It is intended that this be used by plugins to support options - 
2138
2365
      options of built in programs should have specific methods on the config.
2139
2366
      (Robert Collins)
2140
2367
 
2141
 
    * merge.merge_inner now has tempdir as an optional parameter. (Robert
2142
 
      Collins)
 
2368
    * ``merge.merge_inner`` now has tempdir as an optional parameter.
 
2369
      (Robert Collins)
2143
2370
 
2144
2371
    * Tree.kind is not recorded at the top level of the hierarchy, as it was
2145
2372
      missing on EmptyTree, leading to a bug with merge on EmptyTrees.
2146
2373
      (Robert Collins)
2147
2374
 
2148
 
    * WorkingTree.__del__ has been removed, it was non deterministic and not 
2149
 
      doing what it was intended to. See WorkingTree.__init__ for a comment
 
2375
    * ``WorkingTree.__del__`` has been removed, it was non deterministic and not 
 
2376
      doing what it was intended to. See ``WorkingTree.__init__`` for a comment
2150
2377
      about future directions. (Robert Collins/Martin Pool)
2151
2378
 
2152
2379
    * bzrlib.transport.http has been modified so that only 404 urllib errors
2157
2384
      to apis like 'put', 'get' and 'has'. This is to provide consistent
2158
2385
      behaviour - it operates on url's only. (Robert Collins)
2159
2386
 
2160
 
    * Transports can register using register_lazy_transport, and they 
 
2387
    * Transports can register using ``register_lazy_transport``, and they 
2161
2388
      will be loaded when first used.  (Martin Pool)
2162
2389
 
2163
 
    * 'merge_flex' no longer calls conflict_handler.finalize(), instead that
2164
 
      is called by merge_inner. This is so that the conflict count can be 
 
2390
    * ``merge_flex`` no longer calls ``conflict_handler.finalize()``, instead that
 
2391
      is called by ``merge_inner``. This is so that the conflict count can be 
2165
2392
      retrieved (and potentially manipulated) before returning to the caller
2166
 
      of merge_inner. Likewise 'merge' now returns the conflict count to the
 
2393
      of ``merge_inner``. Likewise 'merge' now returns the conflict count to the
2167
2394
      caller. (Robert Collins)
2168
2395
 
2169
 
    * 'revision.revision_graph can handle having only partial history for
 
2396
    * ``revision.revision_graph`` can handle having only partial history for
2170
2397
      a revision - that is no revisions in the graph with no parents.
2171
2398
      (Robert Collins).
2172
2399
 
2173
 
    * New builtins.branch_files uses the standard file_list rules to produce
2174
 
      a branch and a list of paths, relative to that branch (Aaron Bentley)
 
2400
    * New ``builtins.branch_files`` uses the standard ``file_list`` rules to
 
2401
      produce a branch and a list of paths, relative to that branch
 
2402
      (Aaron Bentley)
2175
2403
 
2176
2404
    * New TestCase.addCleanup facility.
2177
2405
 
2178
 
    * New bzrlib.version_info tuple (similar to sys.version_info), which can
2179
 
      be used by programs importing bzrlib.
 
2406
    * New ``bzrlib.version_info`` tuple (similar to ``sys.version_info``),
 
2407
      which can be used by programs importing bzrlib.
2180
2408
 
2181
2409
  BUG FIXES:
2182
2410
 
2239
2467
      bzr will correct this when it encounters it. Fixed by
2240
2468
      Robert Collins
2241
2469
 
2242
 
    * HTTP tests now force off the use of http_proxy for the duration.
 
2470
    * HTTP tests now force off the use of ``http_proxy`` for the duration.
2243
2471
      Contributed by Gustavo Niemeyer.
2244
2472
 
2245
2473
    * Fix problems in merging weave-based branches that have 
2298
2526
      bzr branch it cannot understand. This allows for precise
2299
2527
      handling of such circumstances.
2300
2528
 
2301
 
    * Remove RevisionReference class; Revision.parent_ids is now simply a
2302
 
      list of their ids and parent_sha1s is a list of their corresponding
 
2529
    * Remove RevisionReference class; ``Revision.parent_ids`` is now simply a
 
2530
      list of their ids and ``parent_sha1s`` is a list of their corresponding
2303
2531
      sha1s (for old branches only at the moment.)
2304
2532
 
2305
2533
    * New method-object style interface for Commit() and Fetch().
2306
2534
 
2307
 
    * Renamed Branch.last_patch() to Branch.last_revision(), since
 
2535
    * Renamed ``Branch.last_patch()`` to ``Branch.last_revision()``, since
2308
2536
      we call them revisions not patches.
2309
2537
 
2310
 
    * Move copy_branch to bzrlib.clone.copy_branch.  The destination
 
2538
    * Move ``copy_branch`` to ``bzrlib.clone.copy_branch``.  The destination
2311
2539
      directory is created if it doesn't exist.
2312
2540
 
2313
2541
    * Inventories now identify the files which were present by 
2323
2551
      bzr installed by 'bzr selftest'.
2324
2552
 
2325
2553
    * 'bzr selftest' command-line arguments can now be partial ids
2326
 
      of tests to run, e.g. 'bzr selftest test_weave'
 
2554
      of tests to run, e.g. ``bzr selftest test_weave``
2327
2555
 
2328
2556
      
2329
2557
bzr 0.0.9 2005-09-23
2374
2602
      get added when you add a file in the directory.  Contributed by
2375
2603
      Michael Ellerman.
2376
2604
 
2377
 
    * Ignore .DS_Store (contains Mac metadata) by default.  Patch from
2378
 
      Nir Soffer.
 
2605
    * Ignore ``.DS_Store`` (contains Mac metadata) by default.
 
2606
      (Nir Soffer)
2379
2607
 
2380
 
    * If you set BZR_EDITOR in the environment, it is checked in
 
2608
    * If you set ``BZR_EDITOR`` in the environment, it is checked in
2381
2609
      preference to EDITOR and the config file for the interactive commit
2382
2610
      editing program. Related to this is a bugfix where a missing program
2383
2611
      set in EDITOR would cause editing to fail, now the fallback program
2464
2692
  NEW FEATURES:
2465
2693
 
2466
2694
    * Python plugins, automatically loaded from the directories on
2467
 
      BZR_PLUGIN_PATH or ~/.bzr.conf/plugins by default.
 
2695
      ``BZR_PLUGIN_PATH`` or ``~/.bzr.conf/plugins`` by default.
2468
2696
 
2469
2697
    * New 'bzr mkdir' command.
2470
2698
 
2502
2730
    * Moved plugins directory to bzrlib/, so that there's a standard
2503
2731
      plugin directory which is not only installed with bzr itself but
2504
2732
      is also available when using bzr from the development tree.
2505
 
      BZR_PLUGIN_PATH and DEFAULT_PLUGIN_PATH are then added to the
 
2733
      ``BZR_PLUGIN_PATH`` and ``DEFAULT_PLUGIN_PATH`` are then added to the
2506
2734
      standard plugins directory.
2507
2735
 
2508
2736
    * When exporting to a tarball with ``bzr export --format tgz``, put 
2654
2882
 
2655
2883
    * Better help messages for many commands.
2656
2884
 
2657
 
    * Expose bzrlib.open_tracefile() to start the tracefile; until
 
2885
    * Expose ``bzrlib.open_tracefile()`` to start the tracefile; until
2658
2886
      this is called trace messages are just discarded.
2659
2887
 
2660
 
    * New internal function find_touching_revisions() and hidden
 
2888
    * New internal function ``find_touching_revisions()`` and hidden
2661
2889
      command touching-revisions trace the changes to a given file.
2662
2890
 
2663
 
    * Simpler and faster compare_inventories() function.
 
2891
    * Simpler and faster ``compare_inventories()`` function.
2664
2892
 
2665
 
    * bzrlib.open_tracefile() takes a tracefilename parameter.
 
2893
    * ``bzrlib.open_tracefile()`` takes a tracefilename parameter.
2666
2894
 
2667
2895
    * New AtomicFile class.
2668
2896
 
2712
2940
 
2713
2941
    * Some Unicode/locale fixes.
2714
2942
 
2715
 
    * Partial workaround for difflib.unified_diff not handling
 
2943
    * Partial workaround for ``difflib.unified_diff`` not handling
2716
2944
      trailing newlines properly.
2717
2945
 
2718
2946