~bzr-pqm/bzr/bzr.dev

« back to all changes in this revision

Viewing changes to NEWS

  • Committer: Michael Ellerman
  • Date: 2006-02-28 14:45:51 UTC
  • mto: (1558.1.18 Aaron's integration)
  • mto: This revision was merged to the branch mainline in revision 1586.
  • Revision ID: michael@ellerman.id.au-20060228144551-3d9941ecde4a0b0a
Update contrib/pwk for -p1 diffs from bzr

Show diffs side-by-side

added added

removed removed

Lines of Context:
1
 
IN DEVELOPMENT
2
 
 
3
 
  IMPROVEMENTS:
4
 
 
5
 
   * The revision specifier "revno:" is extended to accept the syntax
6
 
     revno:N:branch. For example,
7
 
     revno:42:http://bazaar-vcs.org/bzr/bzr.dev/ means revision 42 in
8
 
     bzr.dev.  (Matthieu Moy)
9
 
 
10
 
   * No default ignore rules are applied by bzr - only the rules in .bzrignore
11
 
     are considered. This fixes bugs with default rules being enforced no
12
 
     matter what. The old list of ignore rules from bzr is available by
13
 
     running 'bzr ignore --old-default-rules'.
14
 
 
15
 
   * Tests updates to ensure proper URL handling, UNICODE support, and
16
 
     proper printing when the user's terminal encoding cannot display 
17
 
     the path of a file that has been versioned.
18
 
     ``bzr branch`` can take a target URL rather than only a local directory.
19
 
     Branch.get_parent()/set_parent() now save a relative path if possible,
20
 
     and normalize the parent based on root, allowing access across
21
 
     different transports. (John Arbash Meinel, Wouter van Heyst, Martin Pool)
22
 
     (Malone #48906, #42699, #40675, #5281, #3980, #36363, #43689,
23
 
      #42517, #42514)
24
 
 
25
 
   * On Unix, detect terminal width using an ioctl not just $COLUMNS.
26
 
     Use terminal width for single-line logs from ``bzr log --line`` and
27
 
     pending-merge display.  (Robert Widhopf-Fenk, Gustavo Niemeyer)
28
 
     (Malone #3507)
29
 
 
30
 
   * On Windows, detect terminal width using GetConsoleScreenBufferInfo.
31
 
     (Alexander Belchenko)
32
 
 
33
 
   * Speedup improvement for 'date:'-revision search. (Guillaume Pinot).
34
 
 
35
 
   * Show the correct number of revisions pushed when pushing a new branch.
36
 
     (Robert Collins).
37
 
 
38
 
   * 'bzr selftest' now shows a progress bar with the number of tests, and 
39
 
     progress made. 'make check' shows tests in -v mode, to be more useful
40
 
     for the PQM status window. (Robert Collins).
41
 
 
42
 
   * 'bzr selftest --benchmark' will run a new benchmarking selftest.
43
 
     'bzr selftest --benchmark --lsprof-timed' will use lsprofile to generate
44
 
     profile data for the individual profiled calls, allowing for fine
45
 
     grained analysis of performance.
46
 
     (Robert Collins, Martin Pool).
47
 
 
48
 
   * 'bzr commit' shows a progress bar. This is useful for commits over sftp
49
 
     where commit can take an appreciable time. (Robert Collins)
50
 
 
51
 
   * 'bzr add' is now less verbose in telling you what ignore globs were
52
 
     matched by files being ignored. Instead it just tells you how many 
53
 
     were ignored (because you might reasonably be expecting none to be
54
 
     ignored). 'bzr add -v' is unchanged and will report every ignored
55
 
     file. (Robert Collins).
56
 
 
57
 
   * ftp now has a test server if medusa is installed. As part of testing,
58
 
     ftp support has been improved, including support for supplying a
59
 
     non-standard port. (John Arbash Meinel).
60
 
 
61
 
   * 'bzr log --line' shows the revision number, and uses only the
62
 
     first line of the log message (#5162, Alexander Belchenko;
63
 
     Matthieu Moy)
64
 
 
65
 
   * 'bzr status' has had the --all option removed. The 'bzr ls' command
66
 
     should be used to retrieve all versioned files. (Robert Collins)
67
 
 
68
 
   * 'bzr bundle OTHER/BRANCH' will create a bundle which can be sent
69
 
     over email, and applied on the other end, while maintaining ancestry.
70
 
     This bundle can be applied with either 'bzr merge' or 'bzr pull',
71
 
     the same way you would apply another branch.
72
 
     (John Arbash Meinel, Aaron Bentley)
73
 
  
74
 
   * 'branches.conf' has been changed to 'locations.conf', since it can apply
75
 
     to more locations than just branch locations.
76
 
     (Aaron Bentley)
77
 
   
78
 
   * 'bzr whoami' can now be used to set your identity from the command line,
79
 
     for a branch or globally.  (Robey Pointer)
80
 
 
81
 
   * 'bzr checkout' now aliased to 'bzr co', and 'bzr annotate' to 'bzr ann'.
82
 
     (Michael Ellerman)
83
 
 
84
 
   * 'bzr revert DIRECTORY' now reverts the contents of the directory as well.
85
 
     (Aaron Bentley)
86
 
 
87
 
   * 'bzr get sftp://foo' gives a better error when paramiko is not present.
88
 
     Also updates things like 'http+pycurl://' if pycurl is not present.
89
 
     (John Arbash Meinel) (Malone #47821, #52204)
90
 
 
91
 
   * New env variable BZR_PROGRESS_BAR, sets the default progress bar type.
92
 
     Can be set to 'none' or 'dummy' to disable the progress bar, 'dots' or 
93
 
     'tty' to create the respective type. (John Arbash Meinel, #42197, #51107)
94
 
 
95
 
   * Improve the help text for 'bzr diff' to explain what various options do.
96
 
     (John Arbash Meinel, #6391)
97
 
 
98
 
   * 'bzr uncommit -r 10' now uncommits revisions 11.. rather than uncommitting
99
 
     revision 10. This makes -r10 more in line with what other commands do.
100
 
     'bzr uncommit' also now saves the pending merges of the revisions that
101
 
     were removed. So it is safe to uncommit after a merge, fix something,
102
 
     and commit again. (John Arbash Meinel, #32526, #31426)
103
 
 
104
 
  BUG FIXES:
105
 
 
106
 
    * Fix shadowed definition of TestLocationConfig that caused some 
107
 
      tests not to run.  (#32587, Erik Bågfors, Michael Ellerman, 
108
 
      Martin Pool)
109
 
 
110
 
    * Fix unnecessary requirement of sign-my-commits that it be run from
111
 
      a working directory.  (Martin Pool, Robert Collins)
112
 
 
113
 
    * 'bzr push location' will only remember the push location if it succeeds
114
 
      in connecting to the remote location. (#49742, John Arbash Meinel)
115
 
 
116
 
    * 'bzr revert' no longer toggles the executable bit on win32
117
 
      (#45010, John Arbash Meinel)
118
 
 
119
 
    * Handle broken pipe under win32 correctly. (John Arbash Meinel)
120
 
    
121
 
    * sftp tests now work correctly on win32 if you have a newer paramiko
122
 
      (John Arbash Meinel)
123
 
 
124
 
    * Cleanup win32 test suite, and general cleanup of places where
125
 
      file handles were being held open. (John Arbash Meinel)
126
 
 
127
 
    * When specifying filenames for 'diff -r x..y', the name of the file in the
128
 
      working directory can be used, even if its name is different in both x
129
 
      and y.
130
 
 
131
 
    * File-ids containing single- or double-quotes are handled correctly by
132
 
      push.  (#52227, Aaron Bentley)
133
 
 
134
 
    * Normalize unicode filenames to ensure cross-platform consistency.
135
 
      (John Arbash Meinel, #43689)
136
 
 
137
 
    * The argument parser can now handle '-' as an argument. Currently
138
 
      no code interprets it specially (it is mostly handled as a file named 
139
 
      '-'). But plugins, and future operations can use it.
140
 
      (John Arbash meinel, #50984)
141
 
 
142
 
    * Bundles can properly read binary files with a plain '\r' in them.
143
 
      (John Arbash Meinel, #51927)
144
 
 
145
 
    * Tuning iter_entries() to be more efficient (John Arbash Meinel, #5444)
146
 
 
147
 
    * Lots of win32 fixes (the test suite passes again).
148
 
      (John Arbash Meinel, #50155)
149
 
 
150
 
    * Handle openbsd returning None for sys.getfilesystemencoding() (#41183) 
151
 
 
152
 
    * Support ftp APPE (append) to allow Knits to be used over ftp (#42592)
153
 
 
154
 
    * Removals are only committed if they match the filespec (or if there is
155
 
      no filespec).  (#46635, Aaron Bentley)
156
 
 
157
 
    * smart-add recurses through all supplied directories 
158
 
      (John Arbash Meinel, #52578)
159
 
 
160
 
  INTERNALS:
161
 
 
162
 
    * Combine the ignore rules into a single regex rather than looping over
163
 
      them to reduce the threshold where  N^2 behaviour occurs in operations
164
 
      like status. (Jan Hudec, Robert Collins).
165
 
 
166
 
    * 'bzr push' should only push the ancestry of the current revision, not
167
 
      all of the history in the repository. This is especially important for
168
 
      shared repositories. (John Arbash Meinel)
169
 
 
170
 
    * bzrlib.delta.compare_trees now iterates in alphabetically sorted order,
171
 
      rather than randomly walking the inventories. (John Arbash Meinel)
172
 
 
173
 
    * Doctests are now run in temporary directories which are cleaned up when
174
 
      they finish, rather than using special ScratchDir/ScratchBranch objects.
175
 
      (Martin Pool)
176
 
 
177
 
    * Split ``check`` into separate methods on the branch and on the repository,
178
 
      so that it can be specialized in ways that are useful or efficient for
179
 
      different formats.  (Martin Pool, Robert Collins)
180
 
 
181
 
    * Deprecate Repository.all_revision_ids; most methods don't really need
182
 
      the global revision graph but only that part leading up to a particular
183
 
      revision.  (Martin Pool, Robert Collins)
184
 
 
185
 
    * Add a BzrDirFormat control_formats list which allows for control formats
186
 
      that do not use '.bzr' to store their data - i.e. '.svn', '.hg' etc.
187
 
      (Robert Collins, Jelmer Vernooij).
188
 
 
189
 
    * bzrlib.diff.external_diff can be redirected to any file-like object.
190
 
      Uses subprocess instead of spawnvp.
191
 
      (#4047, #48914, James Henstridge, John Arbash Meinel)
192
 
 
193
 
    * New command line option '--profile-imports', which will install a custom
194
 
      importer to log time to import modules and regex compilation time to 
195
 
      sys.stderr (John Arbash Meinel)
196
 
 
197
 
bzr 0.8.2  2006-05-17
198
 
  
199
 
  BUG FIXES:
200
 
   
201
 
    * setup.py failed to install launchpad plugin.  (Martin Pool)
202
 
 
203
 
bzr 0.8.1  2006-05-16
204
 
 
205
 
  BUG FIXES:
206
 
 
207
 
    * Fix failure to commit a merge in a checkout.  (Martin Pool, 
208
 
      Robert Collins, Erik Bågfors, #43959)
209
 
 
210
 
    * Nicer messages from 'commit' in the case of renames, and correct
211
 
      messages when a merge has occured. (Robert Collins, Martin Pool)
212
 
 
213
 
    * Separate functionality from assert statements as they are skipped in
214
 
      optimized mode of python. Add the same check to pending merges.
215
 
      (#44443, Olaf Conradi)
216
 
 
217
 
  CHANGES:
218
 
 
219
 
    * Do not show the None revision in output of bzr ancestry. (Olaf Conradi)
220
 
 
221
 
    * Add info on standalone branches without a working tree.
222
 
      (#44155, Olaf Conradi)
223
 
 
224
 
    * Fix bug in knits when raising InvalidRevisionId. (#44284, Olaf Conradi)
225
 
 
226
 
  CHANGES:
227
 
 
228
 
    * Make editor invocation comply with Debian Policy. First check
229
 
      environment variables VISUAL and EDITOR, then try editor from
230
 
      alternatives system. If that all fails, fall back to the pre-defined
231
 
      list of editors. (#42904, Olaf Conradi)
232
 
 
233
 
  NEW FEATURES:
234
 
 
235
 
    * New 'register-branch' command registers a public branch into 
236
 
      Launchpad.net, where it can be associated with bugs, etc.
237
 
      (Martin Pool, Bjorn Tillenius, Robert Collins)
238
 
 
239
 
  INTERNALS:
240
 
 
241
 
    * New public api in InventoryEntry - 'describe_change(old, new)' which
242
 
      provides a human description of the changes between two old and
243
 
      new. (Robert Collins, Martin Pool)
244
 
 
245
 
  TESTING:
246
 
 
247
 
    * Fix test case for bzr info in upgrading a standalone branch to metadir,
248
 
      uses bzrlib api now. (Olaf Conradi)
249
 
 
250
 
bzr 0.8  2006-05-08
251
 
 
252
 
  NOTES WHEN UPGRADING:
253
 
 
254
 
    Release 0.8 of bzr introduces a new format for history storage, called
255
 
    'knit', as an evolution of to the 'weave' format used in 0.7.  Local 
256
 
    and remote operations are faster using knits than weaves.  Several
257
 
    operations including 'init', 'init-repo', and 'upgrade' take a 
258
 
    --format option that controls this.  Branching from an existing branch
259
 
    will keep the same format.
260
 
 
261
 
    It is possible to merge, pull and push between branches of different
262
 
    formats but this is slower than moving data between homogenous
263
 
    branches.  It is therefore recommended (but not required) that you
264
 
    upgrade all branches for a project at the same time.  Information on
265
 
    formats is shown by 'bzr info'.
266
 
 
267
 
    bzr 0.8 now allows creation of 'repositories', which hold the history 
268
 
    of files and revisions for several branches.  Previously bzr kept all
269
 
    the history for a branch within the .bzr directory at the root of the
270
 
    branch, and this is still the default.  To create a repository, use
271
 
    the new 'bzr init-repo' command.  Branches exist as directories under
272
 
    the repository and contain just a small amount of information
273
 
    indicating the current revision of the branch.
274
 
 
275
 
    bzr 0.8 also supports 'checkouts', which are similar to in cvs and
276
 
    subversion.  Checkouts are associated with a branch (optionally in a
277
 
    repository), which contains all the historical information.  The
278
 
    result is that a checkout can be deleted without losing any
279
 
    already-committed revisions.  A new 'update' command is also available. 
280
 
 
281
 
    Repositories and checkouts are not supported with the 0.7 storage
282
 
    format.  To use them you must upgrad to either knits, or to the
283
 
    'metaweave' format, which uses weaves but changes the .bzr directory
284
 
    arrangement.
285
 
    
 
1
bzr development version
 
2
 
286
3
 
287
4
  IMPROVEMENTS:
288
5
 
321
38
    * Upgrade can now upgrade over the network. (Robert Collins)
322
39
 
323
40
    * Two new commands 'bzr checkout' and 'bzr update' allow for CVS/SVN-alike
324
 
      behaviour.  By default they will cache history in the checkout, but
325
 
      with --lightweight almost all data is kept in the master branch.
326
 
      (Robert Collins)
 
41
      behaviour. They use the existing serverless-mode and store no data
 
42
      locally. As such they are not suitable for use except in high bandwidth
 
43
      low latency environments like LAN's or local disk. (Robert Collins)
327
44
 
328
45
    * 'revert' unversions newly-versioned files, instead of deleting them.
329
46
 
335
52
    * Default log format can be set in configuration and plugins can register
336
53
      their own formatters. (Erik Bågfors)
337
54
 
338
 
    * New 'reconcile' command will check branch consistency and repair indexes
339
 
      that can become out of sync in pre 0.8 formats. (Robert Collins,
340
 
      Daniel Silverstone)
341
 
 
342
 
    * New 'bzr init --format' and 'bzr upgrade --format' option to control 
343
 
      what storage format is created or produced.  (Robert Collins, 
344
 
      Martin Pool)
345
 
 
346
 
    * Add parent location to 'bzr info', if there is one.  (Olaf Conradi)
347
 
 
348
 
    * New developer commands 'weave-list' and 'weave-join'.  (Martin Pool)
349
 
 
350
 
    * New 'init-repository' command, plus support for repositories in 'init'
351
 
      and 'branch' (Aaron Bentley, Erik Bågfors, Robert Collins)
352
 
 
353
 
    * Improve output of 'info' command. Show all relevant locations related to
354
 
      working tree, branch and repository. Use kibibytes for binary quantities.
355
 
      Fix off-by-one error in missing revisions of working tree.  Make 'info'
356
 
      work on branches, repositories and remote locations.  Show locations
357
 
      relative to the shared repository, if applicable.  Show locking status
358
 
      of locations.  (Olaf Conradi)
359
 
 
360
 
    * Diff and merge now safely handle binary files. (Aaron Bentley)
361
 
 
362
 
    * 'pull' and 'push' now normalise the revision history, so that any two
363
 
      branches with the same tip revision will have the same output from 'log'.
364
 
      (Robert Collins)
365
 
 
366
 
    * 'merge' accepts --remember option to store parent location, like 'push'
367
 
      and 'pull'. (Olaf Conradi)
368
 
 
369
 
    * bzr status and diff when files given as arguments do not exist
370
 
      in the relevant trees.  (Martin Pool, #3619)
371
 
 
372
 
    * Add '.hg' to the default ignore list.  (Martin Pool)
373
 
 
374
 
    * 'knit' is now the default disk format. This improves disk performance and
375
 
      utilization, increases incremental pull performance, robustness with SFTP
376
 
      and allows checkouts over SFTP to perform acceptably. 
377
 
      The initial Knit code was contributed by Johan Rydberg based on a
378
 
      specification by Martin Pool.
379
 
      (Robert Collins, Aaron Bentley, Johan Rydberg, Martin Pool).
380
 
 
381
 
    * New tool to generate all-in-one html version of the manual.  (Alexander
382
 
      Belchenko)
383
 
 
384
 
    * Hitting CTRL-C while doing an SFTP push will no longer cause stale locks
385
 
      to be left in the SFTP repository. (Robert Collins, Martin Pool).
386
 
 
387
 
    * New option 'diff --prefix' to control how files are named in diff
388
 
      output, with shortcuts '-p0' and '-p1' corresponding to the options for 
389
 
      GNU patch.  (Alexander Belchenko, Goffredo Baroncelli, Martin Pool)
390
 
 
391
 
    * Add --revision option to 'annotate' command.  (Olaf Conradi)
392
 
 
393
 
    * If bzr shows an unexpected revision-history after pulling (perhaps due
394
 
      to a reweave) it can now be corrected by 'bzr reconcile'.
395
 
      (Robert Collins)
396
 
 
397
 
  CHANGES:
398
 
 
399
 
    * Commit is now verbose by default, and shows changed filenames and the 
400
 
      new revision number.  (Robert Collins, Martin Pool)
401
 
 
402
 
    * Unify 'mv', 'move', 'rename'.  (#5379, Matthew Fuller)
403
 
 
404
 
    * 'bzr -h' shows help.  (#35940, Martin Pool, Ian Bicking)
405
 
 
406
 
    * Make 'pull' and 'push' remember location on failure using --remember.
407
 
      (Olaf Conradi)
408
 
 
409
 
    * For compatibility, make old format for using weaves inside metadir
410
 
      available as 'metaweave' format.  Rename format 'metadir' to 'default'.
411
 
      Clean up help for option --format in commands 'init', 'init-repo' and
412
 
      'upgrade'.  (Olaf Conradi)
413
 
 
414
55
  INTERNALS:
415
56
  
416
57
    * The internal storage of history, and logical branch identity have now
418
59
      management routines are now in bzrlib.lockablefiles. 
419
60
      (Aaron Bentley, Robert Collins, Martin Pool)
420
61
 
421
 
    * Transports can now raise DependencyNotPresent if they need a library
422
 
      which is not installed, and then another implementation will be 
423
 
      tried.  (Martin Pool)
424
 
 
425
 
    * Remove obsolete (and no-op) `decode` parameter to `Transport.get`.  
426
 
      (Martin Pool)
427
 
 
428
62
    * Using Tree Transform for merge, revert, tree-building
429
63
 
430
64
    * WorkingTree.create, Branch.create, WorkingTree.create_standalone,
446
80
      be checked, if you need to determine whether a given callable is 
447
81
      deprecated at runtime. (Robert Collins)
448
82
 
449
 
    * Progress bars are now nested - see
450
 
      bzrlib.ui.ui_factory.nested_progress_bar. (Robert Collins, Robey Pointer)
451
 
 
452
 
    * New API call get_format_description() for each type of format.
453
 
      (Olaf Conradi)
454
 
 
455
 
    * Changed branch.set_parent() to accept None to remove parent.
456
 
      (Olaf Conradi)
457
 
 
458
 
    * Deprecated BzrError AmbiguousBase.  (Olaf Conradi)
459
 
 
460
 
    * WorkingTree.branch is now a read only property.  (Robert Collins)
461
 
 
462
 
    * bzrlib.ui.text.TextUIFactory now accepts a bar_type parameter which
463
 
      can be None or a factory that will create a progress bar. This is
464
 
      useful for testing or for overriding the bzrlib.progress heuristic.
465
 
      (Robert Collins)
466
 
 
467
 
    * New API method get_physical_lock_status() to query locks present on a
468
 
      transport.  (Olaf Conradi)
469
 
 
470
 
    * Repository.reconcile now takes a thorough keyword parameter to allow
471
 
      requesting an indepth reconciliation, rather than just a data-loss 
472
 
      check. (Robert Collins)
473
 
 
474
 
    * bzrlib.ui.ui_factory protocol now supports 'get_boolean' to prompt
475
 
      the user for yes/no style input. (Robert Collins)
476
 
 
477
83
  TESTING:
478
84
 
479
85
    * SFTP tests now shortcut the SSH negotiation, reducing test overhead
490
96
      by this class (when its not being used as part of implementation
491
97
      contract testing). (Robert Collins)
492
98
 
493
 
    * Close logging handler on disabling the test log. This will remove the
494
 
      handler from the internal list inside python's logging module,
495
 
      preventing shutdown from closing it twice.  (Olaf Conradi)
496
 
 
497
 
    * Move test case for uncommit to blackbox tests.  (Olaf Conradi)
498
 
 
499
 
    * run_bzr and run_bzr_captured now accept a 'stdin="foo"' parameter which
500
 
      will provide String("foo") to the command as its stdin.
501
 
 
502
 
bzr 0.7 2006-01-09
 
99
 
 
100
bzr 0.7rc1 2006-01-09
503
101
 
504
102
  CHANGES:
505
103