/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.4.txt

  • Committer: Bastian Bowe
  • Date: 2011-08-08 12:47:07 UTC
  • mto: (6015.14.1 bzr24-filter-809901)
  • mto: This revision was merged to the branch mainline in revision 6066.
  • Revision ID: bastian.bowe@gmail.com-20110808124707-3jegg252r1d804v0
Merged fix regarding error in CHKInventory.filter method from mainline

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
***********************************
 
2
What's New in Bazaar 2.4 (Oronsay)?
 
3
***********************************
 
4
 
 
5
Bazaar 2.4 is still under development, and will be released in August 2011.
 
6
This document accumulates a high level summary of what's changed.  See the
 
7
:doc:`../release-notes/index` for a full list.
 
8
 
 
9
Users are encouraged to upgrade from the other stable series.  This
 
10
document outlines the improvements in Bazaar 2.4 vs Bazaar 2.3. As well as
 
11
summarizing improvements made to the core product, it highlights
 
12
enhancements within the broader Bazaar world of potential interest to
 
13
those upgrading.
 
14
 
 
15
Bazaar 2.4.0 is fully compatible both locally and on the network with 2.0,
 
16
2.1, 2.2 and 2.3, and can read and write repositories generated by all
 
17
previous versions.
 
18
 
 
19
Dropping Python2.4 and Python2.5 support
 
20
****************************************
 
21
 
 
22
Bazaar 2.4.0 is the first version of bzr to drop support for python
 
23
versions before 2.6. The 2.3 series will still be maintained in bugfix
 
24
mode for people who need older versions of python. You can also use
 
25
Launchpad to nominate fixes for 2.3. We can't fix everything, but that can
 
26
help guide us to what people are running into. Upgrading to python2.6
 
27
allows us to clean up the syntax in our files, and makes it easier to work
 
28
on python3 compatibility.
 
29
 
 
30
External merge tools
 
31
********************
 
32
 
 
33
External merge tool configuration has been added to ``bzr`` core. The name
 
34
and commandline of one or more external merge tools can be defined in
 
35
bazaar.conf. See the help topic ``configuration`` for more details.
 
36
 
 
37
Tagged revisions are copied
 
38
***************************
 
39
 
 
40
When tags are copied from a branch, the associated revisions are now copied
 
41
too.  Previously operations like branching, merging or pulling might have
 
42
copied new tags visible in ``bzr tags``, but not copied the revisions.  Now
 
43
revisions from tags will always be present, so that operations like ``bzr
 
44
log -r tag:foo`` will always work.
 
45
 
 
46
Deprecated command synonyms
 
47
***************************
 
48
 
 
49
Two built-in synonyms for ``bzr branch`` have been deprecated: ``clone`` and
 
50
``get``.
 
51
 
 
52
Command options
 
53
***************
 
54
 
 
55
* The ``bzr log`` and ``bzr missing`` commands now accept ``-S`` as a
 
56
  shorthand for ``--short``.
 
57
 
 
58
Configuration files
 
59
*******************
 
60
 
 
61
Option values can now refer to other options in the same configuration file by
 
62
enclosing them in curly brackets (``{option}``). This is an opt-in feature
 
63
during the beta period controlled by the ``bzr.config.expand`` option that
 
64
should be declared in ``bazaar.conf`` and no other file.
 
65
 
 
66
Changelog merge plugin
 
67
**********************
 
68
 
 
69
The ``changelog_merge`` plugin has been added.  It provides a merge hook
 
70
to automate merging of changes to ``ChangeLog`` files in GNU's change log
 
71
format.  Refer to ``bzr help changelog_merge`` for documentation on how to
 
72
enable it and what it can do.
 
73
 
 
74
Faster operations on Large Trees
 
75
********************************
 
76
 
 
77
Many bzr commands used to run into pathological behavior on large trees
 
78
(>10k files), reading the inventory data in random order causing cache
 
79
thrashing (the fix was backported to bzr-2.3.2). We also updated several
 
80
code paths that were updating the WT state using an O(tree) operation to
 
81
one that was an O(changes) operation.  A possibly incomplete list is as
 
82
follows for running commands on a 70k file tree::
 
83
 
 
84
    bzr-2.3.1 bzr-2.3.2 bzr-2.4  action
 
85
    3m39s         1m08s   1m03s  bzr co --lightweight
 
86
      38s            8s      2s  bzr revert (in a clean tree)
 
87
    4m47s         3m56s     15s  bzr merge
 
88
    4m45s           20s      3s  bzr pull
 
89
    4m58s         3m00s      2s  bzr up
 
90
    9m33s           21s     19s  bzr uncommit (including a merge)
 
91
    4m44s           17s      2s  bzr uncommit (simple commit)
 
92
    
 
93
This is a smaller table of times for the Launchpad tree (~8k items)::
 
94
 
 
95
    bzr-2.3.1   bzr-2.4     action
 
96
    5.3s        5.2s        bzr co --lightweight
 
97
    0.9s        0.3s        bzr revert
 
98
    1.4s        0.4s        bzr pull
 
99
    3.9s        3.7s        bzr uncommit (with merge)
 
100
    0.9s        0.3s        bzr uncommit (without merge)
 
101
 
 
102
Faster stacked branches
 
103
***********************
 
104
 
 
105
Creating a stacked branch from a smart server with ``bzr branch
 
106
--stacked`` is a bit faster now.  For small branches it does 20% fewer
 
107
network roundtrips.  Other operations where a local branch is stacked on a
 
108
branch hosted on a smart server will also benefit.
 
109
 
 
110
More export control
 
111
*******************
 
112
 
 
113
When exporting a tree, you may now use get_export_generator() to 
 
114
do an operation after each file is exported. 
 
115
 
 
116
Testing
 
117
*******
 
118
 
 
119
The ``selftest --exclude`` option can now be specified multiple times and
 
120
the tests that match any of the specified patterns will be excluded. Only
 
121
the last specified patetrn was previously taken into account.
 
122
 
 
123
Digital Signature Verification
 
124
******************************
 
125
 
 
126
A new command ``bzr verify-signatures`` has been added to check that commits
 
127
are correctly signed with trusted keys by GPG.  This requires python-gpgme to
 
128
be installed.  ``bzr log`` has gained a ``--signatures`` option to list the
 
129
validity of signatures for each commit.  New config options ``acceptable_keys``
 
130
and ``validate_signatures_in_log`` can be set to control options to these
 
131
commands.
 
132
 
 
133
Further information
 
134
*******************
 
135
 
 
136
For more detailed information on the changes made, see the the
 
137
:doc:`../release-notes/index` for:
 
138
 
 
139
* the interim bzr `milestones <https://launchpad.net/bzr/2.4>`_
 
140
* the plugins you use.
 
141
 
 
142
For a summary of changes made in earlier releases, see:
 
143
 
 
144
* :doc:`whats-new-in-2.1`
 
145
* :doc:`whats-new-in-2.2`
 
146
* :doc:`whats-new-in-2.3`
 
147
 
 
148
..
 
149
   vim: tw=74 ft=rst ff=unix