/brz/remove-bazaar

To get this branch, use:
bzr branch http://gegoxaren.bato24.eu/bzr/brz/remove-bazaar

« back to all changes in this revision

Viewing changes to doc/en/whats-new/whats-new-in-2.3.txt

  • Committer: Vincent Ladeuil
  • Date: 2011-02-11 16:15:39 UTC
  • mto: This revision was merged to the branch mainline in revision 5661.
  • Revision ID: v.ladeuil+lp@free.fr-20110211161539-26o5a28ihyemvuzg
Fix pqm failure on python2.4.

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
*************************
 
2
What's New in Bazaar 2.3?
 
3
*************************
 
4
 
 
5
Bazaar 2.3 has been released on the 3rd of February 2011 and marks the start
 
6
of another long-term-stable series. From here, we will only make bugfix
 
7
releases on the 2.3 series (2.3.1, etc), while 2.4 will become our new
 
8
development series. The 2.1 and 2.2 series will also continue to get
 
9
bugfixes. (Currently 2.0 is planned to be EOLed circa September 2011.)
 
10
 
 
11
This document accumulates a high level summary of what's changed.
 
12
See the
 
13
:doc:`../release-notes/index` for a full list.
 
14
 
 
15
Users are encouraged to upgrade from the other stable series.  This document
 
16
outlines the improvements in Bazaar 2.3 vs Bazaar 2.2. As well as summarizing
 
17
improvements made to the core product, it highlights enhancements within the
 
18
broader Bazaar world of potential interest to those upgrading.
 
19
 
 
20
Bazaar 2.3.0 is fully compatible both locally and on the network with 2.0 2.1,
 
21
and 2.2, and can read and write repositories generated by all previous
 
22
versions.
 
23
 
 
24
Changed Behaviour
 
25
*****************
 
26
 
 
27
* Committing a new revision in a stacked branch is now supported, as long as
 
28
  you are using the current repository format (2a). It will preserve the
 
29
  stacking invariants, etc, so that fetching after commit is guaranteed to
 
30
  work. (John Arbash Meinel, #375013)
 
31
 
 
32
* Support for some old development formats have been removed:
 
33
  ``development-rich-root``, ``development6-rich-root``, and
 
34
  ``development7-rich-root``.  These formats were always labelled experimental
 
35
  and not used unless the user specifically asked for them.  If you have
 
36
  repositories using these old formats you should upgrade them to ``2a`` using
 
37
  Bazaar 2.2.  (Andrew Bennetts)
 
38
 
 
39
* The default ``ignore`` file created by Bazaar will contain ``__pycache__``,
 
40
  which is the name of the directory that will be used by Python to store
 
41
  bytecode files.
 
42
  (Andrea Corbellini, #626687)
 
43
 
 
44
* The default sort order for the ``bzr tags`` command now uses a natural sort
 
45
  where numeric substrings are sorted numerically.  The previous default was
 
46
  "asciibetical" where tags were sorted by the characters they contained.  To
 
47
  get the old behavior, one can use ``bzr tags --sort=alpha``.
 
48
  (Neil Martinsen-Burrell, #640760)
 
49
 
 
50
* On platforms other than Windows and Mac OS X, Bazaar will use configuration
 
51
  files that live in $XDG_CONFIG_HOME/bazaar if that directory exists.  This
 
52
  allows interested individuals to conform to the XDG Base Directory
 
53
  specification.  The plugin location has not changed and is still
 
54
  ~/.bazaar/plugins.  To use a different directory for plugins, use the
 
55
  environment variable BZR_PLUGIN_PATH.  (Neil Martinsen-Burrell, #195397)
 
56
 
 
57
* ``bzr upgrade`` now operates recursively when run on a shared
 
58
  repository, automatically upgrading the branches within it, and has
 
59
  grown additional options for showing what it will do and cleaning up
 
60
  after itself.  (Ian Clatworthy, Matthew Fuller, #89830, #374734, #422450)
 
61
 
 
62
Launchpad integration
 
63
*********************
 
64
 
 
65
* The ``lp:`` prefix will now use your known username (from
 
66
  ``bzr launchpad-login``) to expand ``~`` to your username.  For example:
 
67
  ``bzr launchpad-login user && bzr push lp:~/project/branch`` will now
 
68
  push to ``lp:~user/project/branch``.  (John Arbash Meinel)
 
69
 
 
70
* Launchpad has announced that the ``edge.launchpad.net`` instance is
 
71
  deprecated and may be shut down in the future
 
72
  <http://blog.launchpad.net/general/edge-is-deprecated>.  Bazaar has therefore
 
73
  been updated in this release to talk to the main (``launchpad.net``) servers,
 
74
  rather than the ``edge`` ones.
 
75
 
 
76
Performance improvements
 
77
************************
 
78
 
 
79
* ``bzr revert`` and ``bzr status`` are up to 15% faster on large trees
 
80
  with many changes by not repeatedly building a list of all file-ids.
 
81
  (Andrew Bennetts)
 
82
 
 
83
* ``bzr send`` uses less memory.
 
84
  (John Arbash Meinel, #614576)
 
85
 
 
86
* Fetches involving stacked branches and branches with tags now do slightly less
 
87
  I/O, and so does branching from an existing branch.  This also improves the
 
88
  network performance of these operations.  (Andrew Bennetts)
 
89
 
 
90
* Inventory entries now consume less memory (on 32-bit Ubuntu file entries
 
91
  have dropped from 68 bytes to 40, and directory entries from 120 bytes
 
92
  to 48).  This affects most operations, and depending on the size of the
 
93
  tree may substantially improve the speed of operations like ``bzr
 
94
  commit``.  (Andrew Bennetts)
 
95
 
 
96
* Lower memory consumption when reading many chk index pages. Helpful for
 
97
  things like ``bzr co`` or ``bzr ls -R`` on large trees.
 
98
  (John Arbash Meinel)
 
99
 
 
100
* When building new working trees, default to reading from the repository
 
101
  rather than the source tree unless explicitly requested. (via
 
102
  ``--files-from`` and ``--hardlink`` for ``bzr branch`` and
 
103
  ``bzr checkout``. Generally, 2a format repositories extract
 
104
  content faster than seeking and reading content from another tree,
 
105
  especially in cold-cache situations. (John Arbash Meinel, #607298)
 
106
 
 
107
New revision specifiers
 
108
***********************
 
109
 
 
110
* The ``mainline`` revision specifier has been added.  It takes another revision
 
111
  spec as its input, and selects the revision which merged that revision into
 
112
  the mainline.
 
113
  
 
114
  For example, ``bzr log -vp -r mainline:1.2.3`` will show the log of the
 
115
  revision that merged revision 1.2.3 into mainline, along with its status
 
116
  output and diff.  (Aaron Bentley)
 
117
 
 
118
* The ``annotate`` revision specifier has been added.  It takes a path and a
 
119
  line as its input (in the form ``path:line``), and selects the revision which
 
120
  introduced that line of that file.
 
121
 
 
122
  For example: ``bzr log -vp -r annotate:bzrlib/transform.py:500`` will select
 
123
  the revision that introduced line 500 of transform.py, and display its log,
 
124
  status output and diff.
 
125
 
 
126
  It can be combined with ``mainline`` to select the revision that landed this
 
127
  line into trunk, like so: 
 
128
  ``bzr log -vp -r mainline:annotate:bzrlib/transform.py:500``
 
129
  (Aaron Bentley)
 
130
 
 
131
Testing/Bug reporting
 
132
*********************
 
133
 
 
134
* Shell-like scripts can now be run directly from the command line without
 
135
  writing a python test. This should help users adding reproducing recipes
 
136
  to bug reports. (Vincent Ladeuil)
 
137
 
 
138
 
 
139
Improved conflict handling
 
140
**************************
 
141
 
 
142
* ``pull``, ``merge`` or ``switch`` can lead to conflicts when deleting a
 
143
  versioned directory contains unversioned files. The cause of the conflict
 
144
  is that deleting the directory will orphan the unversioned files so the
 
145
  user needs to instruct ``bzr`` what do to do about these orpahns. This is
 
146
  controlled by setting the ``bzr.transform.orphan_policy`` configuration
 
147
  variable with a value of ``move``. In this case the unversioned files are
 
148
  moved to a ``bzr-orphans`` directory at the root of the working tree. The
 
149
  default behaviour is specified (if needed) by setting the variable to
 
150
  ``conflict``.  (Vincent Ladeuil, #323111)
 
151
 
 
152
* ``bzr resolve --take-this`` and ``bzr resolve --take-other`` can now be
 
153
  used for text conflicts. This will ignore the differences that were merged
 
154
  cleanly and replace the file with its content in the current branch
 
155
  (``--take-this``) or with its content in the merged branch
 
156
  (``--take-other``). (Vincent Ladeuil, #638451)
 
157
 
 
158
* ``bzr resolve`` now provides more feedback about the conflicts just
 
159
  resolved and the remaining ones. (Vincent Ladeuil)
 
160
 
 
161
Documentation
 
162
*************
 
163
 
 
164
* A beta version of the documentation is now available in GNU TexInfo
 
165
  format, used by emacs and the standalone ``info`` reader.
 
166
  (Vincent Ladeuil, #219334)
 
167
 
 
168
Configuration
 
169
*************
 
170
 
 
171
``bzr`` can be configured via environment variables, command-line options
 
172
and configurations files. We've started working on unifying this and give
 
173
access to more options. The first step is a new ``bzr config`` command that
 
174
can be used to display the active configuration options in the current
 
175
working tree or branch as well as the ability to set or remove an
 
176
option. Scripts can also use it to get only the value for a given option.
 
177
 
 
178
Further information
 
179
*******************
 
180
 
 
181
For more detailed information on the changes made, see the
 
182
the :doc:`../release-notes/index` for:
 
183
 
 
184
* the interim bzr `milestones <https://launchpad.net/bzr/2.3>`_
 
185
* the plugins you use.
 
186
 
 
187
For a summary of changes made in earlier releases, see:
 
188
 
 
189
* :doc:`whats-new-in-2.1`
 
190
* :doc:`whats-new-in-2.2`
 
191
 
 
192
 
 
193
.. vim: ft=rst