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