~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to doc/en/release-notes/bzr-0.90.txt

  • Committer: Canonical.com Patch Queue Manager
  • Date: 2010-09-01 08:02:42 UTC
  • mfrom: (5390.3.3 faster-revert-593560)
  • Revision ID: pqm@pqm.ubuntu.com-20100901080242-esg62ody4frwmy66
(spiv) Avoid repeatedly calling self.target.all_file_ids() in
 InterTree.iter_changes. (Andrew Bennetts)

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
####################
2
 
Bazaar Release Notes
3
 
####################
4
 
 
5
 
.. toctree::
6
 
   :maxdepth: 1
7
 
 
8
 
bzr 0.90
9
 
########
10
 
 
11
 
:Released: 2007-08-28
12
 
 
13
 
Improvements
14
 
************
15
 
 
16
 
* Documentation is now organized into multiple directories with a level
17
 
  added for different languages or locales. Added the Mini Tutorial
18
 
  and Quick Start Summary (en) documents from the Wiki, improving the
19
 
  content and readability of the former. Formatted NEWS as Release Notes
20
 
  complete with a Table of Conents, one heading per release. Moved the
21
 
  Developer Guide into the main document catalog and provided a link
22
 
  from the developer document catalog back to the main one.
23
 
  (Ian Clatworthy, Sabin Iacob, Alexander Belchenko)
24
 
 
25
 
 
26
 
API Changes
27
 
***********
28
 
 
29
 
* The static convenience method ``BzrDir.create_repository``
30
 
  is deprecated.  Callers should instead create a ``BzrDir`` instance
31
 
  and call ``create_repository`` on that.  (Martin Pool)
32
 
 
33
 
 
34
 
bzr 0.90rc1
35
 
###########
36
 
 
37
 
:Released: 2007-08-14
38
 
 
39
 
Bugfixes
40
 
********
41
 
 
42
 
* ``bzr init`` should connect to the remote location one time only.  We
43
 
  have been connecting several times because we forget to pass around the
44
 
  Transport object. This modifies ``BzrDir.create_branch_convenience``,
45
 
  so that we can give it the Transport we already have.
46
 
  (John Arbash Meinel, Vincent Ladeuil, #111702)
47
 
 
48
 
* Get rid of SFTP connection cache (get rid of the FTP one too).
49
 
  (Vincent Ladeuil, #43731)
50
 
 
51
 
* bzr branch {local|remote} remote don't try to create a working tree
52
 
  anymore.
53
 
  (Vincent Ladeuil, #112173)
54
 
 
55
 
* All identified multiple connections for a single bzr command have been
56
 
  fixed. See bzrlib/tests/commands directory.
57
 
  (Vincent Ladeuil)
58
 
 
59
 
* ``bzr rm`` now does not insist on ``--force`` to delete files that
60
 
  have been renamed but not otherwise modified.  (Marius Kruger,
61
 
  #111664)
62
 
 
63
 
* ``bzr selftest --bench`` no longer emits deprecation warnings
64
 
  (Lukáš Lalinský)
65
 
 
66
 
* ``bzr status`` now honours FILE parameters for conflict lists
67
 
  (Aaron Bentley, #127606)
68
 
 
69
 
* ``bzr checkout`` now honours -r when reconstituting a working tree.
70
 
  It also honours -r 0.  (Aaron Bentley, #127708)
71
 
 
72
 
* ``bzr add *`` no more fails on Windows if working tree contains
73
 
  non-ascii file names. (Kuno Meyer, #127361)
74
 
 
75
 
* allow ``easy_install bzr`` runs without fatal errors.
76
 
  (Alexander Belchenko, #125521)
77
 
 
78
 
* Graph._filter_candidate_lca does not raise KeyError if a candidate
79
 
  is eliminated just before it would normally be examined.  (Aaron Bentley)
80
 
 
81
 
* SMTP connection failures produce a nice message, not a traceback.
82
 
  (Aaron Bentley)
83
 
 
84
 
Improvements
85
 
************
86
 
 
87
 
* Don't show "dots" progress indicators when run non-interactively, such
88
 
  as from cron.  (Martin Pool)
89
 
 
90
 
* ``info`` now formats locations more nicely and lists "submit" and
91
 
  "public" branches (Aaron Bentley)
92
 
 
93
 
* New ``pack`` command that will trigger database compression within
94
 
  the repository (Robert Collins)
95
 
 
96
 
* Implement ``_KnitIndex._load_data`` in a pyrex extension. The pyrex
97
 
  version is approximately 2-3x faster at parsing a ``.kndx`` file.
98
 
  Which yields a measurable improvement for commands which have to
99
 
  read from the repository, such as a 1s => 0.75s improvement in
100
 
  ``bzr diff`` when there are changes to be shown.  (John Arbash Meinel)
101
 
 
102
 
* Merge is now faster.  Depending on the scenario, it can be more than 2x
103
 
  faster. (Aaron Bentley)
104
 
 
105
 
* Give a clearer warning, and allow ``python setup.py install`` to
106
 
  succeed even if pyrex is not available.
107
 
  (John Arbash Meinel)
108
 
 
109
 
* ``DirState._read_dirblocks`` now has an optional Pyrex
110
 
  implementation. This improves the speed of any command that has to
111
 
  read the entire DirState. (``diff``, ``status``, etc, improve by
112
 
  about 10%).
113
 
  ``bisect_dirblocks`` has also been improved, which helps all
114
 
  ``_get_entry`` type calls (whenever we are searching for a
115
 
  particular entry in the in-memory DirState).
116
 
  (John Arbash Meinel)
117
 
 
118
 
* ``bzr pull`` and ``bzr push`` no longer do a complete walk of the
119
 
  branch revision history for ui display unless -v is supplied.
120
 
  (Robert Collins)
121
 
 
122
 
* ``bzr log -rA..B`` output shifted to the left margin if the log only
123
 
  contains merge revisions. (Kent Gibson)
124
 
 
125
 
* The ``plugins`` command is now public with improved help.
126
 
  (Ian Clatworthy)
127
 
 
128
 
* New bundle and merge directive formats are faster to generate, and
129
 
 
130
 
* Annotate merge now works when there are local changes. (Aaron Bentley)
131
 
 
132
 
* Commit now only shows the progress in terms of directories instead of
133
 
  entries. (Ian Clatworthy)
134
 
 
135
 
* Fix ``KnitRepository.get_revision_graph`` to not request the graph 2
136
 
  times. This makes ``get_revision_graph`` 2x faster. (John Arbash
137
 
  Meinel)
138
 
 
139
 
* Fix ``VersionedFile.get_graph()`` to avoid using
140
 
  ``set.difference_update(other)``, which has bad scaling when
141
 
  ``other`` is large. This improves ``VF.get_graph([version_id])`` for
142
 
  a 12.5k graph from 2.9s down to 200ms. (John Arbash Meinel)
143
 
 
144
 
* The ``--lsprof-file`` option now generates output for KCacheGrind if
145
 
  the file starts with ``callgrind.out``. This matches the default file
146
 
  filtering done by KCacheGrind's Open Dialog. (Ian Clatworthy)
147
 
 
148
 
* Fix ``bzr update`` to avoid an unnecessary
149
 
  ``branch.get_master_branch`` call, which avoids 1 extra connection
150
 
  to the remote server. (Partial fix for #128076, John Arbash Meinel)
151
 
 
152
 
* Log errors from the smart server in the trace file, to make debugging
153
 
  test failures (and live failures!) easier.  (Andrew Bennetts)
154
 
 
155
 
* The HTML version of the man page has been superceded by a more
156
 
  comprehensive manual called the Bazaar User Reference. This manual
157
 
  is completed generated from the online help topics. As part of this
158
 
  change, limited reStructuredText is now explicitly supported in help
159
 
  topics and command help with 'unnatural' markup being removed prior
160
 
  to display by the online help or inclusion in the man page.
161
 
  (Ian Clatworthy)
162
 
 
163
 
* HTML documentation now use files extension ``*.html``
164
 
  (Alexander Belchenko)
165
 
 
166
 
* The cache of ignore definitions is now cleared in WorkingTree.unlock()
167
 
  so that changes to .bzrignore aren't missed. (#129694, Daniel Watkins)
168
 
 
169
 
* ``bzr selftest --strict`` fails if there are any missing features or
170
 
  expected test failures. (Daniel Watkins, #111914)
171
 
 
172
 
* Link to registration survey added to README. (Ian Clatworthy)
173
 
 
174
 
* Windows standalone installer show link to registration survey
175
 
  when installation finished. (Alexander Belchenko)
176
 
 
177
 
Library API Breaks
178
 
******************
179
 
 
180
 
* Deprecated dictionary ``bzrlib.option.SHORT_OPTIONS`` removed.
181
 
  Options are now required to provide a help string and it must
182
 
  comply with the style guide by being one or more sentences with an
183
 
  initial capital and final period. (Martin Pool)
184
 
 
185
 
* KnitIndex.get_parents now returns tuples. (Robert Collins)
186
 
 
187
 
* Ancient unused ``Repository.text_store`` attribute has been removed.
188
 
  (Robert Collins)
189
 
 
190
 
* The ``bzrlib.pack`` interface has changed to use tuples of bytestrings
191
 
  rather than just bytestrings, making it easier to represent multiple
192
 
  element names. As this interface was not used by any internal facilities
193
 
  since it was introduced in 0.18 no API compatibility is being preserved.
194
 
  The serialised form of these packs is identical with 0.18 when a single
195
 
  element tuple is in use. (Robert Collins)
196
 
 
197
 
Internals
198
 
*********
199
 
 
200
 
* merge now uses ``iter_changes`` to calculate changes, which makes room for
201
 
  future performance increases.  It is also more consistent with other
202
 
  operations that perform comparisons, and reduces reliance on
203
 
  Tree.inventory.  (Aaron Bentley)
204
 
 
205
 
* Refactoring of transport classes connected to a remote server.
206
 
  ConnectedTransport is a new class that serves as a basis for all
207
 
  transports needing to connect to a remote server.  transport.split_url
208
 
  have been deprecated, use the static method on the object instead. URL
209
 
  tests have been refactored too.
210
 
  (Vincent Ladeuil)
211
 
 
212
 
* Better connection sharing for ConnectedTransport objects.
213
 
  transport.get_transport() now accepts a 'possible_transports' parameter.
214
 
  If a newly requested transport can share a connection with one of the
215
 
  list, it will.
216
 
  (Vincent Ladeuil)
217
 
 
218
 
* Most functions now accept ``bzrlib.revision.NULL_REVISION`` to indicate
219
 
  the null revision, and consider using ``None`` for this purpose
220
 
  deprecated.  (Aaron Bentley)
221
 
 
222
 
* New ``index`` module with abstract index functionality. This will be
223
 
  used during the planned changes in the repository layer. Currently the
224
 
  index layer provides a graph aware immutable index, a builder for the
225
 
  same index type to allow creating them, and finally a composer for
226
 
  such indices to allow the use of many indices in a single query. The
227
 
  index performance is not optimised, however the API is stable to allow
228
 
  development on top of the index. (Robert Collins)
229
 
 
230
 
* ``bzrlib.dirstate.cmp_by_dirs`` can be used to compare two paths by
231
 
  their directory sections. This is equivalent to comparing
232
 
  ``path.split('/')``, only without having to split the paths.
233
 
  This has a Pyrex implementation available.
234
 
  (John Arbash Meinel)
235
 
 
236
 
* New transport decorator 'unlistable+' which disables the list_dir
237
 
  functionality for testing.
238
 
 
239
 
* Deprecated ``change_entry`` in transform.py. (Ian Clatworthy)
240
 
 
241
 
* RevisionTree.get_weave is now deprecated.  Tree.plan_merge is now used
242
 
  for performing annotate-merge.  (Aaron Bentley)
243
 
 
244
 
* New EmailMessage class to create email messages. (Adeodato Simó)
245
 
 
246
 
* Unused functions on the private interface KnitIndex have been removed.
247
 
  (Robert Collins)
248
 
 
249
 
* New ``knit.KnitGraphIndex`` which provides a ``KnitIndex`` layered on top
250
 
  of a ``index.GraphIndex``. (Robert Collins)
251
 
 
252
 
* New ``knit.KnitVersionedFile.iter_parents`` method that allows querying
253
 
  the parents of many knit nodes at once, reducing round trips to the
254
 
  underlying index. (Robert Collins)
255
 
 
256
 
* Graph now has an is_ancestor method, various bits use it.
257
 
  (Aaron Bentley)
258
 
 
259
 
* The ``-Dhpss`` flag now includes timing information. As well as
260
 
  logging when a new connection is opened. (John Arbash Meinel)
261
 
 
262
 
* ``bzrlib.pack.ContainerWriter`` now returns an offset, length tuple to
263
 
  callers when inserting data, allowing generation of readv style access
264
 
  during pack creation, without needing a separate pass across the output
265
 
  pack to gather such details. (Robert Collins)
266
 
 
267
 
* ``bzrlib.pack.make_readv_reader`` allows readv based access to pack
268
 
  files that are stored on a transport. (Robert Collins)
269
 
 
270
 
* New ``Repository.has_same_location`` method that reports if two
271
 
  repository objects refer to the same repository (although with some risk
272
 
  of false negatives).  (Andrew Bennetts)
273
 
 
274
 
* InterTree.compare now passes require_versioned on correctly.
275
 
  (Marius Kruger)
276
 
 
277
 
* New methods on Repository - ``start_write_group``,
278
 
  ``commit_write_group``, ``abort_write_group`` and ``is_in_write_group`` -
279
 
  which provide a clean hook point for transactional Repositories - ones
280
 
  where all the data for a fetch or commit needs to be made atomically
281
 
  available in one step. This allows the write lock to remain while making
282
 
  a series of data insertions.  (e.g. data conversion). (Robert Collins)
283
 
 
284
 
* In ``bzrlib.knit`` the internal interface has been altered to use
285
 
  3-tuples (index, pos, length) rather than two-tuples (pos, length) to
286
 
  describe where data in a knit is, allowing knits to be split into
287
 
  many files. (Robert Collins)
288
 
 
289
 
* ``bzrlib.knit._KnitData`` split into cache management and physical access
290
 
  with two access classes - ``_PackAccess`` and ``_KnitAccess`` defined.
291
 
  The former provides access into a .pack file, and the latter provides the
292
 
  current production repository form of .knit files. (Robert Collins)
293
 
 
294
 
Testing
295
 
*******
296
 
 
297
 
* Remove selftest ``--clean-output``, ``--numbered-dirs`` and
298
 
  ``--keep-output`` options, which are obsolete now that tests
299
 
  are done within directories in $TMPDIR.  (Martin Pool)
300
 
 
301
 
* The SSH_AUTH_SOCK environment variable is now reset to avoid
302
 
  interaction with any running SSH agents.  (Jelmer Vernooij, #125955)
303
 
 
304
 
* run_bzr_subprocess handles parameters the same way as run_bzr:
305
 
  either a string or a list of strings should be passed as the first
306
 
  parameter.  Varargs-style parameters are deprecated. (Aaron Bentley)
307
 
 
308
 
 
309
 
..
310
 
   vim: tw=74 ft=rst ff=unix
311