~bzr-pqm/bzr/bzr.dev

5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
1
*************************
5074.3.1 by Ian Clatworthy
Initial cut at a What's New in 2.2 document
2
What's New in Bazaar 2.2?
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
3
*************************
4
5
Bazaar 2.2.0, released on the 6th of August 2010, marks the start of
6
another long-term-stable series. From here, we will only make bugfix
7
releases on the 2.2 series (2.2.1, etc), while 2.3 will become our new
8
development series. The 2.0 and 2.1 series will also continue to get
9
bugfixes. (Currently 2.0 is planned to be supported for another 6 months.)
10
5050.27.2 by Martin Pool
Better summary of 2.2.0
11
The main changes in 2.2 are: **better local and network performance**,
12
**reduced memory usage**, and several user-interface improvements.
13
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
14
Users are encouraged to upgrade from the other stable series.  This
15
document outlines the improvements in Bazaar 2.2 vs Bazaar 2.1. As well as
16
summarizing improvements made to the core product, it highlights
17
enhancements within the broader Bazaar world of potential interest to
18
those upgrading.
19
20
Bazaar 2.2.0 includes all the fixes from 2.1.2 and 2.0.6.
21
22
Over 120 bugs have been fixed in total.  See the
23
:doc:`../release-notes/index` for a full list.
24
5050.42.1 by Vincent Ladeuil
Tweak whats-new-in-2.2.
25
Bazaar 2.2.1 includes all the fixes from 2.1.3 and 2.0.6 (that
5050.49.1 by Vincent Ladeuil
Fix typo.
26
weren't included in 2.2.0).
5050.42.1 by Vincent Ladeuil
Tweak whats-new-in-2.2.
27
28
See the :doc:`../release-notes/index` for details.
29
30
Bazaar 2.2 is fully compatible both locally and on the network with 2.0
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
31
and 2.1, and can read and write repositories generated by all previous
32
versions.
33
34
35
Behaviour changes
36
*****************
37
38
There are some compatibility changes in this release.  
39
40
* For commandline users we no longer guess user identity for ``bzr
41
  commit``: users must specify their identity using ``bzr whoami`` (you
42
  don't need to specify your identity for readonly operations).
43
  This avoids problems where the previous guessed default caused commits
44
  be recorded as coming from, for example ``<sam@localhost>``.
5074.3.1 by Ian Clatworthy
Initial cut at a What's New in 2.2 document
45
46
Improved conflict handling
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
47
**************************
5074.3.1 by Ian Clatworthy
Initial cut at a What's New in 2.2 document
48
49
Tree-shape conflicts can be resolved by providing ``--take-this`` and
50
``--take-other`` to the ``bzr resolve`` command. Just marking the conflict
51
as resolved is still accessible via the ``--done`` default action.
52
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
53
Local performance
54
*****************
55
56
* ``bzr init`` does not recursively scan directory contents anymore
57
  leading to faster init for directories with existing content.
58
  (Martin [gz], Parth Malwankar, #501307)
59
60
* Less code is loaded at startup, so there's less overhead on running all
61
  bzr commands.
62
  (Andrew Bennetts, Martin Pool)
63
64
* Reduce peak memory by one copy of compressed text.
65
  (John Arbash Meinel, #566940)
66
67
* Avoid repeated locking of local objects in ``diff``, ``missing``, and
68
  ``pull``, so those options are faster.
69
  (Andrew Bennetts)
70
71
Network performance
72
*******************
73
74
* Bazaar now reads data from SSH connections more efficiently on platforms
75
  that provide the ``socketpair`` function, and when using paramiko.
76
  (Andrew Bennetts, #590637)
77
78
* Index lookups in pack repositories search recently hit pack files
79
  first.  In repositories with many pack files this can greatly reduce the
80
  number of files accessed, the number of bytes read, and the number of
81
  read calls.  An incremental pull via plain HTTP takes half the time and
82
  bytes for a moderately large repository.  (Andrew Bennetts)
83
84
* Index lookups only re-order the indexes when the hit files aren't
85
  already first. Reduces the cost of reordering
86
  (John Arbash Meinel, #562429)
87
88
5050.27.1 by Martin Pool
fix typo
89
Command improvements
90
********************
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
91
92
* Added ``bzr remove-branch`` command that can remove a local or remote 
93
  branch. (Jelmer Vernooij, #276295)
94
95
* ``bzr export`` now takes an optional argument ``--per-file-timestamps``
96
  to set file mtimes to the last timestamp of the last revision in which
97
  they were changed rather than the current time. (Jelmer Vernooij)
98
99
* Tag names can now be determined automatically by ``automatic_tag_name`` 
100
  hooks on ``Branch`` if they are not specified on the command line.
101
  (Jelmer Vernooij)
102
103
* Tree-shape conflicts can be resolved by providing ``--take-this`` and
104
  ``--take-other`` to the ``bzr resolve`` command. Just marking the conflict
105
  as resolved is still accessible via the ``--done`` default action.
106
  (Vincent Ladeuil)
107
108
* The ``--directory`` option is supported for a number of additional
109
  commands: added, annotate, bind, cat, cat-revision, clean-tree,
110
  conflicts, deleted, export, ignore, ignored, lookup-revision, ls,
111
  merge-directive, missing, modified, nick, re-sign, resolve, shelve,
112
  switch, unbind, unknowns, unshelve, whoami.  
113
  (Martin von Gagern, #527878)
114
115
* ``bzr commit`` accepts ``-p`` (for "patch") as a shorter name for
116
  ``--show-diff``.
117
  (Parth Malwankar, #571467)
118
  
119
* ``bzr ignore`` now supports a ``--default-rules`` option that displays
120
  the default ignore rules used by bzr. The flag ``--old-default-rules``
121
  is no longer supported by ``ignore``.
122
  (Parth Malwankar, #538703)
123
124
* ``bzr pack`` now supports a ``--clean-obsolete-packs`` option that
125
  can save disk space by deleting obsolete pack files created during the
126
  pack operation.
127
  (Parth Malwankar, #304320)
128
129
* New command line option ``--authors`` to ``bzr log`` allows users to
130
  select which of the apparent authors and committer should be
131
  included in the log. Defaults depend on format. (Martin von Gagern, #513322)
132
133
* The bash_completion plugin from the bzr-bash-completion project has
134
  been merged into the tree. It provides a bash-completion command and
135
  replaces the outdated ``contrib/bash/bzr`` script with a version
136
  using the plugin. (Martin von Gagern, #560030)
137
138
* A new transport based on GIO (the gnome i/o library) provides access to
139
  samba shares, webdav using gio+smb and gio+dav. It is also possible to
140
  use gio for some already existing transport methods as gio+file,
141
  gio+sftp, gio+ftp. 
142
  (Mattias Eriksson)
143
144
145
Controlling plugins
146
*******************
147
148
* Plugins can be disabled by defining ``BZR_DISABLE_PLUGINS`` as
149
  a list of plugin names separated by ':' (';' on windows).
150
  (Vincent Ladeuil, #411413)
151
152
* Plugins can be loaded from arbitrary locations by defining
153
  ``BZR_PLUGINS_AT`` as a list of ``name@path`` separated by ':' (';' on
154
  Microsoft
155
  Windows). This takes precedence over ``BZR_PLUGIN_PATH`` for the
156
  specified plugins, and is expected to be most useful for plugin
157
  developers.
158
  (Vincent Ladeuil, #82693)
159
160
161
Apport crash reporting
162
**********************
163
164
* If the Apport crash-reporting tool is available, bzr crashes are now
165
  stored into the ``/var/crash`` apport spool directory, and the user is
166
  invited to report them to the developers from there, either
167
  automatically or by running ``apport-bug``.  No information is sent
168
  without specific permission from the user.  (Martin Pool, #515052)
169
5074.3.1 by Ian Clatworthy
Initial cut at a What's New in 2.2 document
170
171
Improved Launchpad integration
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
172
******************************
173
174
* Merges can be proposed on Launchpad with the new ``lp-propose-merge``
175
  command.
5074.3.1 by Ian Clatworthy
Initial cut at a What's New in 2.2 document
176
177
178
Better documentation
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
179
********************
180
181
* ``bzr help patterns`` now explains case insensitive patterns and
182
  points to Python regular expression documentation.
183
  (Parth Malwankar, #594386)
184
185
* Numerous improvements have been made to the developer documentation.
186
187
  
188
Changes to plugins
189
******************
190
191
192
bzr grep
193
========
194
195
The `grep plugin <https://launchpad.net/bzr-grep>`_  has developed well
196
during the bzr 2.2 cycle.  bzr grep can search the versioned files in the
197
working tree, or in one or a series of revisions, or it can search through
198
only the changes in a revision range.
199
200
qbzr
201
====
202
203
`qbzr <https://launchpad.net/qbzr>`_, a cross-platform graphical interface
204
to Bazaar, gained many features and fixes in its 0.19 release, including:
205
5050.19.3 by Martin Pool
Better qbzr docs from bialix
206
* qannotate has new look and feel; with new features: find text and goto
207
  to line.
208
209
* Improved performance of qlog, and treewidget-based dialogs (qcommit,
210
  qadd, qrevert etc.)
211
5050.25.1 by Alexander Belchenko
whats-new-in-2.2.txt: improved qbzr section
212
* qpush, qmerge, etc.: when there are uncommitted changes in the working
5050.19.3 by Martin Pool
Better qbzr docs from bialix
213
  tree, user has the option to commit, or revert.
214
5050.25.1 by Alexander Belchenko
whats-new-in-2.2.txt: improved qbzr section
215
* qcommit: user can update bound branch/checkout if it is not up to date.
216
217
* Better support of Mac OS X: dialog windows no more start in background.
218
219
* qlog: Context menu actions for tag and revert will now show a branch
5050.19.3 by Martin Pool
Better qbzr docs from bialix
220
  menu if more than one branch is open.
221
222
* qlog: more context menu actions for update, cherry-pick, and reverse
223
  cherry-pick.
224
5050.25.1 by Alexander Belchenko
whats-new-in-2.2.txt: improved qbzr section
225
* Language of GUI can be set in DEFAULT section of bazaar.conf 
226
  as ``language = code``. Language codes are the same 
227
  as for ``LANG`` environment variable. 
228
  Environment variable ``LANGUAGE`` still preferred over settings 
5050.19.3 by Martin Pool
Better qbzr docs from bialix
229
  in bazaar.conf.
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
230
231
232
Platform-specific changes
233
*************************
234
235
Microsoft Windows
236
=================
237
238
* There's a new py2exe windows program ``bzrw.exe``, which allows for starting a Bazaar GUI with out have a console open in the background.  (Gary van der Merwe, #433781`) 
239
240
* The all-in-one Windows installer will now be built with docstrings stripped
241
  from the library zip, reducing the size and slightly improving cold startup
242
  time. Bundled plugins are unchanged for the moment, but if adding other new
243
  plugins to an all-in-one installation, ensure they are compiled and
244
  installed with -O1 or help may not work. (Martin [gz])
245
246
* Parsing of command lines, for example in ``diff --using``, no longer
247
  treats backslash as an escape character on Windows.   (Gordon Tyler,
248
  #392248)
249
250
251
API changes
252
***********
253
254
* BzrError subclasses no longer support the name "message" to be used
255
  as an argument for __init__ or in _fmt format specification as this
256
  breaks in some Python versions. errors.LockError.__init__ argument
257
  is now named "msg" instead of earlier "message".
258
  (Parth Malwankar, #603461)
259
260
* The old ``bzr selftest --benchmark`` option has been removed.
261
  <https://launchpad.net/bzr-usertest> is an actively-maintained
262
  macrobenchmark suite.
263
  (Martin Pool)
264
265
* bzrlib library users now need to call ``__enter__`` and ``__exit__`` on
266
  the result of ``bzrlib.initialize``. This change was made when fixing
267
  the bad habit recent bzr versions have had of leaving progress bars 
268
  behind on the screen. That required calling another function before
269
  exiting the program, and it made sense to provide a full context
270
  manager at the same time. (Robert Collins)
271
272
* The ``bzr`` front end now requires a ``bzrlib.ui.ui_factory`` which is a
273
  context manager in the Python 2.5 and above sense. The bzrlib base class
274
  is such a manager, but third party UI factories which do not derive from
275
  ``bzrlib.ui.UIFactory`` will be incompatible with the command line front
276
  end.
277
278
* URLs like ``foo:bar/baz`` are now always parsed as a URL with scheme "foo"
279
  and path "bar/baz", even if bzr does not recognize "foo" as a known URL
280
  scheme.  Previously these URLs would be treated as local paths.
281
  (Gordon Tyler)
5074.3.1 by Ian Clatworthy
Initial cut at a What's New in 2.2 document
282
283
284
Further information
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
285
*******************
5074.3.1 by Ian Clatworthy
Initial cut at a What's New in 2.2 document
286
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
287
For more detailed information on the changes made, see the
5074.3.1 by Ian Clatworthy
Initial cut at a What's New in 2.2 document
288
the :doc:`../release-notes/index` for:
289
290
* the interim bzr `milestones <https://launchpad.net/bzr/2.2>`_
291
* the plugins you use.
292
293
For a summary of changes made in earlier releases, see:
294
295
* :doc:`whats-new-in-2.1`
296
5050.19.2 by Martin Pool
More useful whats-new documentation for 2.2
297
298
.. vim: ft=rst