~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

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

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2010-11-11 08:45:19 UTC
  • mfrom: (4597.9.22 reports-conflict-resolved)
  • Revision ID: pqm@pqm.ubuntu.com-20101111084519-bmk1zmblp7kex41a
(vila) More feedback about the conflicts just resolved and the remaining
 ones. (Vincent Ladeuil)

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 is still under development, and will be released in February
 
6
2011.  This document accumulates a high level summary of what's changed.
 
7
See the
 
8
:doc:`../release-notes/index` for a full list.
 
9
 
 
10
Users are encouraged to upgrade from the other stable series.  This
 
11
document outlines the improvements in Bazaar 2.3 vs Bazaar 2.2. As well as
 
12
summarizing improvements made to the core product, it highlights
 
13
enhancements within the broader Bazaar world of potential interest to
 
14
those upgrading.
 
15
 
 
16
Bazaar 2.3.0 is fully compatible both locally and on the network with 2.0
 
17
2.1, and 2.2, and can read and write repositories generated by all
 
18
previous versions.
 
19
 
 
20
Changed Behaviour
 
21
*****************
 
22
 
 
23
* The default ``ignore`` file created by Bazaar will contain ``__pycache__``,
 
24
  which is the name of the directory that will be used by Python to store
 
25
  bytecode files.
 
26
  (Andrea Corbellini, #626687)
 
27
 
 
28
* The default sort order for the ``bzr tags`` command now uses a natural sort
 
29
  where numeric substrings are sorted numerically.  The previous default was
 
30
  "asciibetical" where tags were sorted by the characters they contained.  To
 
31
  get the old behavior, one can use ``bzr tags --sort=alpha``.
 
32
  (Neil Martinsen-Burrell, #640760)
 
33
 
 
34
Launchpad integration
 
35
*********************
 
36
 
 
37
* The ``lp:`` prefix will now use your known username (from
 
38
  ``bzr launchpad-login``) to expand ``~`` to your username.  For example:
 
39
  ``bzr launchpad-login user && bzr push lp:~/project/branch`` will now
 
40
  push to ``lp:~user/project/branch``.  (John Arbash Meinel)
 
41
 
 
42
Performance improvements
 
43
************************
 
44
 
 
45
* ``bzr revert`` and ``bzr status`` are up to 15% faster on large trees
 
46
  with many changes by not repeatedly building a list of all file-ids.
 
47
  (Andrew Bennetts)
 
48
 
 
49
* ``bzr send`` uses less memory.
 
50
  (John Arbash Meinel, #614576)
 
51
 
 
52
* Inventory entries now consume less memory (on 32-bit Ubuntu file entries
 
53
  have dropped from 68 bytes to 40, and directory entries from 120 bytes
 
54
  to 48).  This affects most operations, and depending on the size of the
 
55
  tree may substantially improve the speed of operations like ``bzr
 
56
  commit``.  (Andrew Bennetts)
 
57
 
 
58
* Lower memory consumption when reading many chk index pages. Helpful for
 
59
  things like ``bzr co`` or ``bzr ls -R`` on large trees.
 
60
  (John Arbash Meinel)
 
61
 
 
62
* When building new working trees, default to reading from the repository
 
63
  rather than the source tree unless explicitly requested. (via
 
64
  ``--files-from`` and ``--hardlink`` for ``bzr branch`` and
 
65
  ``bzr checkout``. Generally, 2a format repositories extract
 
66
  content faster than seeking and reading content from another tree,
 
67
  especially in cold-cache situations. (John Arbash Meinel, #607298)
 
68
 
 
69
New revision specifiers
 
70
***********************
 
71
 
 
72
* The ``mainline`` revision specifier has been added.  It takes another revision
 
73
  spec as its input, and selects the revision which merged that revision into
 
74
  the mainline.
 
75
  
 
76
  For example, ``bzr log -vp -r mainline:1.2.3`` will show the log of the
 
77
  revision that merged revision 1.2.3 into mainline, along with its status
 
78
  output and diff.  (Aaron Bentley)
 
79
 
 
80
* The ``annotate`` revision specifier has been added.  It takes a path and a
 
81
  line as its input (in the form ``path:line``), and selects the revision which
 
82
  introduced that line of that file.
 
83
 
 
84
  For example: ``bzr log -vp -r annotate:bzrlib/transform.py:500`` will select
 
85
  the revision that introduced line 500 of transform.py, and display its log,
 
86
  status output and diff.
 
87
 
 
88
  It can be combined with ``mainline`` to select the revision that landed this
 
89
  line into trunk, like so: 
 
90
  ``bzr log -vp -r mainline:annotate:bzrlib/transform.py:500``
 
91
  (Aaron Bentley)
 
92
 
 
93
Testing/Bug reporting
 
94
*********************
 
95
 
 
96
* Shell-like scripts can now be run directly from the command line without
 
97
  writing a python test. This should help users adding reproducing recipes
 
98
  to bug reports. (Vincent Ladeuil)
 
99
 
 
100
 
 
101
Improved conflict handling
 
102
**************************
 
103
 
 
104
* ``pull``, ``merge`` or ``switch`` can lead to conflicts when deleting a
 
105
  versioned directory contains unversioned files. The cause of the conflict
 
106
  is that deleting the directory will orphan the unversioned files so the
 
107
  user needs to instruct ``bzr`` what do to do about these orpahns. This is
 
108
  controlled by setting the ``bzr.transform.orphan_policy`` configuration
 
109
  variable with a value of ``move``. In this case the unversioned files are
 
110
  moved to a ``bzr-orphans`` directory at the root of the working tree. The
 
111
  default behaviour is specified (if needed) by setting the variable to
 
112
  ``conflict``.  (Vincent Ladeuil, #323111)
 
113
 
 
114
* ``bzr resolve`` now provides more feedback about the conflicts just
 
115
  resolved and the remaining ones. (Vincent Ladeuil)
 
116
 
 
117
Documentation
 
118
*************
 
119
 
 
120
* A beta version of the documentation is now available in GNU TexInfo
 
121
  format, used by emacs and the standalone ``info`` reader.
 
122
  (Vincent Ladeuil, #219334)
 
123
 
 
124
Configuration
 
125
*************
 
126
 
 
127
``bzr`` can be configured via environment variables, command-line options
 
128
and configurations files. We've started working on unifying this and give
 
129
access to more options. The first step is a new ``bzr config`` command that
 
130
can be used to display the active configuration options in the current
 
131
working tree or branch as well as the ability to set or remove an
 
132
option. Scripts can also use it to get only the value for a given option.
 
133
 
 
134
Expected releases for the 2.3 series
 
135
************************************
 
136
 
 
137
The 2.3 series has entered the beta phase and 2.3.0 should be released soon
 
138
enough to be included into Natty Narwhal. 
 
139
 
 
140
As a rough estimate, consider that 2.3.0 will be released in February
 
141
2011 and be supported until August 2012. Additional releases will be
 
142
made if critical bugs are encountered
 
143
 
 
144
 
 
145
Further information
 
146
*******************
 
147
 
 
148
For more detailed information on the changes made, see the
 
149
the :doc:`../release-notes/index` for:
 
150
 
 
151
* the interim bzr `milestones <https://launchpad.net/bzr/2.3>`_
 
152
* the plugins you use.
 
153
 
 
154
For a summary of changes made in earlier releases, see:
 
155
 
 
156
* :doc:`whats-new-in-2.1`
 
157
* :doc:`whats-new-in-2.2`
 
158
 
 
159
 
 
160
.. vim: ft=rst