12
* ``bzr export`` can now export a subdirectory of a project.
15
* ``bzr rm`` will now scan for files that are missing and remove just
16
them automatically, much as ``bzr add`` scans for new files that
17
are not ignored and adds them automatically. (Robert Collins)
21
* ``bzr init`` and ``bzr init-repo`` will now print out the same as
22
``bzr info`` if it completed successfully.
25
* ``bzr uncommit`` logs the old tip revision id, and displays how to
26
restore the branch to that tip using ``bzr pull``. This allows you
27
to recover if you realize you uncommitted the wrong thing.
32
* ``bzr rm`` is now aliased to ``bzr del`` for the convenience of svn
33
users. (Robert Collins, #205416)
35
* Running ``bzr st PATH_TO_TREE`` will no longer suppress merge
36
status. Status is also about 7% faster on mozilla sized trees
37
when the path to the root of the tree has been given. Users of
38
the internal ``show_tree_status`` function should be aware that
39
the show_pending flag is now authoritative for showing pending
40
merges, as it was originally. (Robert Collins, #225204)
42
* ``WorkingTree4`` trees will now correctly report missing-and-new
43
paths in the output of ``iter_changes``. (Robert Collins)
47
* Exporters now take 4 parameters. (Robert Collins)
49
* ``Tree.iter_changes`` will now return False for the content change
50
field when a file is missing in the basis tree and not present in
51
the target tree. Previously it returned True unconditionally.
56
* ``addCleanup`` now takes ``*arguments`` and ``**keyword_arguments``
57
which are then passed to the cleanup callable as it is run. In
58
addition, addCleanup no longer requires that the callables passed to
59
it be unique. (Jonathan Lange)
63
* ``bzrlib.btree_index`` is now available, providing a b-tree index
64
layer. The design is memory conservative (limited memory cache),
65
faster to seek (approx 100 nodes per page, gives 100-way fan out),
66
and stores compressed pages allowing more keys per page.
67
(Robert Collins, John Arbash Meinel)
69
* ``bzrlib.diff.DiffTree.show_diff`` now skips changes where the kind
70
is unknown in both source and target.
71
(Robert Collins, Aaron Bentley)
79
* Fix a regression in knit => pack fetching. We had a logic
80
inversion, causing the fetch to insert fulltexts in random order,
81
rather than preserving deltas. (John Arbash Meinel, #256757)
89
* Disable reading ``.bzrrules`` as a per-branch rule preferences
90
file. The feature was not quite ready for a full release.
95
* Update the windows installer to bundle TortoiseBzr and ``qbzr``
96
into the standalone installer. This will be the first official
97
windows release that installs Tortoise by default.
102
* Fix a regression in ``bzr+http`` support. There was a missing
103
function (``_read_line``) that needed to be carried over from
104
``bzr+ssh`` support. (Andrew Bennetts)
106
* ``GraphIndex`` objects will internally read an entire index if more
107
than 1/20th of their keyspace is requested in a single operation.
108
This largely mitigates a performance regression in ``bzr log FILE``
109
and completely corrects the performance regression in ``bzr log``.
110
The regression was caused by removing an accomodation which had been
111
supporting the index format in use. A newer index format is in
112
development which is substantially faster. (Robert Collins)
115
bzr 1.6rc2 2008-08-13
116
---------------------
118
This release candidate has a few minor bug fixes, and some regression
123
* ``bzr upgrade`` on remote branches accessed via bzr:// and
124
bzr+ssh:// now works. (Andrew Bennetts)
126
* Change the ``get_format_description()`` strings for
127
``RepositoryFormatKnitPack5`` et al to be single line messages.
130
* Fix for a regression on Win32 where we would try to call
131
``os.listdir()`` on a file and not catch the exception properly.
132
(Windows raises a different exception.) This would manifest in
133
places like ``bzr rm file`` or ``bzr switch``.
134
(Mark Hammond, John Arbash Meinel)
136
* ``Inventory.copy()`` was failing to set the revision property for
137
the root entry. (Jelmer Vernooij)
139
* sftp transport: added missing ``FileExists`` case to
140
``_translate_io_exception`` (Christophe Troestler, #123475)
142
* The help for ``bzr ignored`` now suggests ``bzr ls --ignored`` for
143
scripting use. (Robert Collins, #3834)
145
* The default ``annotate`` logic will now always assign the
146
last-modified value of a line to one of the revisions that modified
147
it, rather than a merge revision. This would happen when both sides
148
claimed to have modified the line resulting in the same text. The
149
choice is arbitrary but stable, so merges in different directions
150
will get the same results. (John Arbash Meinel, #232188)
153
bzr 1.6rc1 2008-08-06
154
---------------------
156
This release candidate for bzr 1.6 solidifies the new branch stacking
157
feature. Bazaar now recommends that users upgrade all knit repositories,
158
because later formats are much faster. However, we plan to continue read/write and
159
upgrade support for knit repostories for the forseeable future. Several
160
other bugs and performance issues were fixed.
164
* Knit format repositories are deprecated and bzr will now emit
165
warnings whenever it encounters one. Use ``bzr upgrade`` to upgrade
166
knit repositories to pack format. (Andrew Bennetts)
170
* ``bzr check`` can now be told which elements at a location it should
171
check. (Daniel Watkins)
173
* Commit now supports ``--exclude`` (or ``-x``) to exclude some files
174
from the commit. (Robert Collins, #3117)
176
* Fetching data between repositories that have the same model but no
177
optimised fetcher will not reserialise all the revisions, increasing
178
performance. (Robert Collins, John Arbash Meinel)
180
* Give a more specific error when target branch is not reachable.
183
* Implemented a custom ``walkdirs_utf8`` implementation for win32.
184
This uses a pyrex extension to get direct access to the
185
``FindFirstFileW`` style apis, rather than using ``listdir`` +
186
``lstat``. Shows a very strong improvement in commands like
187
``status`` and ``diff`` which have to iterate the working tree.
188
Anywhere from 2x-6x faster depending on the size of the tree (bigger
189
trees, bigger benefit.) (John Arbash Meinel)
191
* New registry for log properties handles and the method in
192
LongLogFormatter to display the custom properties returned by the
193
registered handlers. (Guillermo Gonzalez, #162469)
197
* Add more tests that stacking does not create deltas spanning
198
physical repository boundaries.
199
(Martin Pool, #252428)
201
* Better message about incompatible repositories.
202
(Martin Pool, #206258)
204
* ``bzr branch --stacked`` ensures the destination branch format can
205
support stacking, even if the origin does not.
208
* ``bzr export`` no longer exports ``.bzrrules``.
211
* ``bzr serve --directory=/`` now correctly allows the whole
212
filesystem to be accessed on Windows, not just the root of the drive
213
that Python is running from.
214
(Adrian Wilkins, #240910)
216
* Deleting directories by hand before running ``bzr rm`` will not
217
cause subsequent errors in ``bzr st`` and ``bzr commit``.
218
(Robert Collins, #150438)
220
* Fix a test case that was failing if encoding wasn't UTF-8.
221
(John Arbash Meinel, #247585)
223
* Fix "no buffer space available" error when branching with the new
224
smart server protocol to or from Windows.
225
(Andrew Bennetts, #246180)
227
* Fixed problem in branching from smart server.
228
(#249256, Michael Hudson, Martin Pool)
230
* Handle a file turning in to a directory in TreeTransform.
231
(James Westby, #248448)
235
* ``MutableTree.commit`` has an extra optional keywork parameter
236
``exclude`` that will be unconditionally supplied by the command
237
line UI - plugins that add tree formats may need an update.
240
* The API minimum version for plugin compatibility has been raised to
241
1.6 - there are significant changes throughout the code base.
244
* The generic fetch code now uses three attributes on Repository objects
245
to control fetch. The streams requested are controlled via :
246
``_fetch_order`` and ``_fetch_uses_deltas``. Setting these
247
appropriately allows different repository implementations to recieve
248
data in their optimial form. If the ``_fetch_reconcile`` is set then
249
a reconcile operation is triggered at the end of the fetch.
252
* The ``put_on_disk`` and ``get_tar_item`` methods in
253
``InventoryEntry`` were deprecated. (Ian Clatworthy)
255
* ``Repository.is_shared`` doesn't take a read lock. It didn't
256
need one in the first place (nobody cached the value, and
257
``RemoteRepository`` wasn't taking one either). This saves a round
258
trip when probing Pack repositories, as they read the ``pack-names``
259
file when locked. And during probe, locking the repo isn't very
260
useful. (John Arbash Meinel)
264
* ``bzrlib.branchbuilder.BranchBuilder`` is now much more capable of
265
putting together a real history without having to create a full
266
WorkingTree. It is recommended that tests that are not directly
267
testing the WorkingTree use BranchBuilder instead. See
268
``BranchBuilder.build_snapshot`` or
269
``TestCaseWithMemoryTree.make_branch_builder``. (John Arbash Meinel)
271
* ``bzrlib.builtins.internal_tree_files`` broken into two giving a new
272
helper ``safe_relpath_files`` - used by the new ``exclude``
273
parameter to commit. (Robert Collins)
275
* Make it easier to introduce new WorkingTree formats.
278
* The code for exporting trees was refactored not to use the
279
deprecated ``InventoryEntry`` methods. (Ian Clatworthy)
281
* RuleSearchers return () instead of [] now when there are no matches.
285
bzr 1.6beta3 2008-07-17
286
-----------------------
288
This release adds a new 'stacked branches' feature allowing branches to
289
share storage without being in the same repository or on the same machine.
290
(See the user guide for more details.) It also adds a new hook, improved
291
weaves, aliases for related locations, faster bzr+ssh push, and several
296
* New ``pre_change_branch_tip`` hook that is called before the
297
branch tip is moved, while the branch is write-locked. See the User
298
Reference for signature details. (Andrew Bennetts)
300
* Rule-based preferences can now be defined for selected files in
301
selected branches, allowing commands and plugins to provide
302
custom behaviour for files matching defined patterns.
303
See ``Rule-based preferences`` (part of ``Configuring Bazaar``)
304
in the User Guide and ``bzr help rules`` for more information.
307
* Sites may suggest a branch to stack new branches on. (Aaron Bentley)
309
* Stacked branches are now supported. See ``bzr help branch`` and
310
``bzr help push``. Branches must be in the ``development1`` format
311
to stack, though the stacked-on branch can be of any format.
316
* ``bzr export --format=tgz --root=NAME -`` to export a gzipped tarball
317
to stdout; also ``tar`` and ``tbz2``.
320
* ``bzr (re)merge --weave`` will now use a standard Weave algorithm,
321
rather than the annotation-based merge it was using. It does so by
322
building up a Weave of the important texts, without needing to build
323
the full ancestry. (John Arbash Meinel, #238895)
325
* ``bzr send`` documents and better supports ``emacsclient`` (proper
326
escaping of mail headers and handling of the MUA Mew).
327
(Christophe Troestler)
329
* Remembered locations can be specified by aliases, e.g. :parent, :public,
330
:submit. (Aaron Bentley)
332
* The smart protocol now has improved support for setting branches'
333
revision info directly. This makes operations like push
334
faster. The new request method name is
335
``Branch.set_last_revision_ex``. (Andrew Bennetts)
339
* Bazaar is now able to be a client to the web server of IIS 6 and 7.
340
The broken implementations of RFC822 in Python and RFC2046 in IIS
341
combined with boundary-line checking in Bazaar previously made this
342
impossible. (NB, IIS 5 does not suffer from this problem).
343
(Adrian Wilkins, #247585)
345
* ``bzr log --long`` with a ghost in your mainline now handles that
346
ghost properly. (John Arbash Meinel, #243536)
348
* ``check`` handles the split-up .bzr layout correctly, so no longer
349
requires a branch to be present.
350
(Daniel Watkins, #64783)
352
* Clearer message about how to set the PYTHONPATH if bzrlib can't be
354
(Martin Pool, #205230)
356
* Errors about missing libraries are now shown without a traceback,
357
and with a suggestion to install the library. The full traceback is
358
still in ``.bzr.log`` and can be shown with ``-Derror``.
359
(Martin Pool, #240161)
361
* Fetch from a stacked branch copies all required data.
362
(Aaron Bentley, #248506)
364
* Handle urls such as ftp://user@host.com@www.host.com where the user
366
(Neil Martinsen-Burrell, #228058)
368
* ``needs_read_lock`` and ``needs_write_lock`` now suppress an error during
369
``unlock`` if there was an error in the original function. This helps
370
most when there is a failure with a smart server action, since often the
371
connection closes and we cannot unlock.
372
(Andrew Bennetts, John Arbash Meinel, #125784)
374
* Obsolete hidden command ``bzr fetch`` removed.
375
(Martin Pool, #172870)
377
* Raise the correct exception when doing ``-rbefore:0`` or ``-c0``.
378
(John Arbash Meinel, #239933)
380
* You can now compare file revisions in Windows diff programs from
382
(Matt McClure, #209281)
384
* revision_history now tolerates mainline ghosts for Branch format 6.
385
(Aaron Bentley, #235055)
387
* Set locale from environment for third party libs.
388
(Martin von Gagern, #128496)
392
* Added *Using stacked branches* to the User Guide.
395
* Updated developer documentation.
400
* ``-Dmemory`` will cause /proc/PID/status to be catted before bzr
401
exits, allowing low-key analysis of peak memory use. (Robert Collins)
403
* ``TestCaseWithTransport.make_branch_and_tree`` tries harder to return
404
a tree with a ``branch`` attribute of the right format. This was
405
preventing some ``RemoteBranch`` tests from actually running with
406
``RemoteBranch`` instances. (Andrew Bennetts)
410
* Removed ``Repository.text_store``, ``control_store``, etc. Instead,
411
there are new attributes ``texts, inventories, revisions,
412
signatures``, each of which is a ``VersionedFiles``. See the
413
Repository docstring for more details.
416
* ``Branch.pull`` now accepts an ``_override_hook_target`` optional
417
parameter. If you have a subclass of ``Branch`` that overrides
418
``pull`` then you should add this parameter. (Andrew Bennetts)
420
* ``bzrlib.check.check()`` has been deprecated in favour of the more
421
aptly-named ``bzrlib.check.check_branch()``.
424
* ``Tree.print_file`` and ``Repository.print_file`` are deprecated.
425
These methods are bad APIs because they write directly to sys.stdout.
426
bzrlib does not use them internally, and there are no direct tests
427
for them. (Alexander Belchenko)
431
* ``cat`` command no longer uses ``Tree.print_file()`` internally.
432
(Alexander Belchenko)
434
* New class method ``BzrDir.open_containing_tree_branch_or_repository``
435
which eases the discovery of the tree, the branch and the repository
436
containing a given location.
439
* New ``versionedfile.KeyMapper`` interface to abstract out the access to
440
underlying .knit/.kndx etc files in repositories with partitioned
441
storage. (Robert Collins)
443
* Obsolete developer-use command ``weave-join`` has been removed.
446
* ``RemoteToOtherFetcher`` and ``get_data_stream_for_search`` removed,
447
to support new ``VersionedFiles`` layering.
451
bzr 1.6beta2 2008-06-10
452
-----------------------
454
This release contains further progress towards our 1.6 goals of shallow
455
repositories, and contains a fix for some user-affecting bugs in the
456
repository layer. Building working trees during checkout and branch is
461
* Avoid KnitCorrupt error extracting inventories from some repositories.
462
(The data is not corrupt; an internal check is detecting a problem
463
reading from the repository.)
464
(Martin Pool, Andrew Bennetts, Robert Collins, #234748)
466
* ``bzr status`` was breaking if you merged the same revision twice.
467
(John Arbash Meinel, #235407)
469
* Fix infinite loop consuming 100% CPU when a connection is lost while
470
reading a response body via the smart protocol v1 or v2.
473
* Inserting a bundle which changes the contents of a file with no trailing
474
end of line, causing a knit snapshot in a 'knits' repository will no longer
475
cause KnitCorrupt. (Robert Collins)
477
* ``RemoteBranch.pull`` needs to return the ``self._real_branch``'s
478
pull result. It was instead just returning None, which breaks ``bzr
479
pull``. (John Arbash Meinel, #238149)
481
* Sanitize branch nick before using it as an attachment filename in
482
``bzr send``. (Lukáš Lalinský, #210218)
484
* Squash ``inv_entry.symlink_target`` to a plain string when
485
generating DirState details. This prevents from getting a
486
``UnicodeError`` when you have symlinks and non-ascii filenames.
487
(John Arbash Meinel, #135320)
491
* Added the 'alias' command to set/unset and display aliases. (Tim Penhey)
493
* ``added``, ``modified``, and ``unknowns`` behaviour made consistent (all three
494
now quote paths where required). Added ``--null`` option to ``added`` and
495
``modified`` (for null-separated unknowns, use ``ls --unknown --null``)
498
* Faster branching (1.09x) and lightweight checkouts (1.06x) on large trees.
499
(Ian Clatworthy, Aaron Bentley)
503
* Added *Bazaar Zen* section to the User Guide. (Ian Clatworthy)
507
* Fix the test HTTPServer to be isolated from chdir calls made while it is
508
running, allowing it to be used in blackbox tests. (Robert Collins)
512
* ``WorkingTree.set_parent_(ids/trees)`` will now filter out revisions
513
which are in the ancestry of other revisions. So if you merge the same
514
tree twice, or merge an ancestor of an existing merge, it will only
515
record the newest. (If you merge a descendent, it will replace its
516
ancestor). (John Arbash Meinel, #235407)
518
* ``RepositoryPolicy.__init__`` now requires stack_on and stack_on_pwd,
519
through the derived classes do not. (Aaron Bentley)
523
* ``bzrlib.bzrdir.BzrDir.sprout`` now accepts ``stacked`` to control
524
creating stacked branches. (Robert Collins)
526
* Knit record serialisation is now stricter on what it will accept, to
527
guard against potential internal bugs, or broken input. (Robert Collins)
530
bzr 1.6beta1 2008-06-02
531
-----------------------
534
Commands that work on the revision history such as push, pull, missing,
535
uncommit and log are now substantially faster. This release adds a
536
translation of some of the user documentation into Spanish. (Contributions of
537
other translations would be very welcome.) Bazaar 1.6beta1 adds a new network
538
protocol which is used by default and which allows for more efficient transfers
539
and future extensions.
542
NOTES WHEN UPGRADING:
544
* There is a new version of the network protocol used for bzr://, bzr+ssh://
545
and bzr+http:// connections. This will allow more efficient requests and
546
responses, and more graceful fallback when a server is too old to
547
recognise a request from a more recent client. Bazaar 1.6 will
548
interoperate with 0.16 and later versions, but servers should be upgraded
549
when possible. Bazaar 1.6 no longer interoperates with 0.15 and earlier via
550
these protocols. Use alternatives like SFTP or upgrade those servers.
551
(Andrew Bennetts, #83935)
555
* Deprecation warnings will not be suppressed when running ``bzr selftest``
556
so that developers can see if their code is using deprecated functions.
561
* Adding ``-Derror`` will now display a traceback when a plugin fails to
566
* ``bzr branch/push/pull -r XXX`` now have a helper function for finding
567
the revno of the new revision (``Graph.find_distance_to_null``). This
568
should make something like ``bzr branch -r -100`` in a shared, no-trees
569
repository much snappier. (John Arbash Meinel)
571
* ``bzr log --short -r X..Y`` no longer needs to access the full revision
572
history. This makes it noticeably faster when logging the last few
573
revisions. (John Arbash Meinel)
575
* ``bzr ls`` now accepts ``-V`` as an alias for ``--versioned``.
576
(Jerad Cramp, #165086)
578
* ``bzr missing`` uses the new ``Graph.find_unique_ancestors`` and
579
``Graph.find_differences`` to determine missing revisions without having
580
to search the whole ancestry. (John Arbash Meinel, #174625)
582
* ``bzr uncommit`` now uses partial history access, rather than always
583
extracting the full revision history for a branch. This makes it
584
resolve the appropriate revisions much faster (in testing it drops
585
uncommit from 1.5s => 0.4s). It also means ``bzr log --short`` is one
586
step closer to not using full revision history.
587
(John Arbash Meinel, #172649)
591
* ``bzr merge --lca`` should handle when two revisions have no common
592
ancestor other than NULL_REVISION. (John Arbash Meinel, #235715)
594
* ``bzr status`` was breaking if you merged the same revision twice.
595
(John Arbash Meinel, #235407)
597
* ``bzr push`` with both ``--overwrite`` and ``-r NNN`` options no longer
598
fails. (Andrew Bennetts, #234229)
600
* Correctly track the base URL of a smart medium when using bzr+http://
601
URLs, which was causing spurious "No repository present" errors with
602
branches in shared repositories accessed over bzr+http.
603
(Andrew Bennetts, #230550)
605
* Define ``_remote_is_at_least_1_2`` on ``SmartClientMedium`` so that all
606
implementations have the attribute. Fixes 'PyCurlTransport' object has no
607
attribute '_remote_is_at_least_1_2' attribute errors.
608
(Andrew Bennetts, #220806)
610
* Failure to delete an obsolete pack file should just give a warning
611
message, not a fatal error. It may for example fail if the file is still
612
in use by another process.
615
* Fix MemoryError during large fetches over HTTP by limiting the amount of
616
data we try to read per ``recv`` call. The problem was observed with
617
Windows and a proxy, but might affect other environments as well.
618
(Eric Holmberg, #215426)
620
* Handle old merge directives correctly in Merger.from_mergeable. Stricter
621
get_parent_map requirements exposed a latent bug here. (Aaron Bentley)
623
* Issue a warning and ignore passwords declared in authentication.conf when
624
used for an ssh scheme (sftp or bzr+ssh).
625
(Vincent Ladeuil, #203186)
627
* Make both http implementations raise appropriate exceptions on 403
628
Forbidden when POSTing smart requests.
629
(Vincent Ladeuil, #230223)
631
* Properly *title* header names in http requests instead of capitalizing
633
(Vincent Ladeuil, #229076)
635
* The "Unable to obtain lock" error message now also suggests using
636
``bzr break-lock`` to fix it. (Martin Albisetti, #139202)
638
* Treat an encoding of '' as ascii; this can happen when bzr is run
639
under vim on Mac OS X.
640
(Neil Martinsen-Burrell)
642
* ``VersionedFile.make_mpdiffs()`` was raising an exception that wasn't in
643
scope. (Daniel Fischer #235687)
647
* Added directory structure and started translation of docs in spanish.
648
(Martin Albisetti, Lucio Albenga)
650
* Incorporate feedback from Jelmer Vernooij and Neil Martinsen-Burrell
651
on the plugin and integration chapters of the User Guide.
654
* More Bazaar developer documentation about packaging and release process,
655
and about use of Python reprs.
656
(Martin Pool, Martin Albisetti)
658
* Updated Tortise strategy document. (Mark Hammond)
662
* ``bzrlib.tests.adapt_tests`` was broken and unused - it has been fixed.
665
* Fix the test HTTPServer to be isolated from chdir calls made while it is
666
running, allowing it to be used in blackbox tests. (Robert Collins)
668
* New helper function for splitting test suites
669
``split_suite_by_condition``. (Robert Collins)
673
* ``Branch.missing_revisions`` has been deprecated. Similar functionality
674
can be obtained using ``bzrlib.missing.find_unmerged``. The api was
675
fairly broken, and the function was unused, so we are getting rid of it.
680
* ``Branch.abspath`` is deprecated; use the Tree or Transport
681
instead. (Martin Pool)
683
* ``Branch.update_revisions`` now takes an optional ``Graph``
684
object. This can be used by ``update_revisions`` when it is
685
checking ancestry, and allows callers to prefer request to go to a
686
local branch. (John Arbash Meinel)
688
* Branch, Repository, Tree and BzrDir should expose a Transport as an
689
attribute if they have one, rather than having it indirectly accessible
690
as ``.control_files._transport``. This doesn't add a requirement
691
to support a Transport in cases where it was not needed before;
692
it just simplifies the way it is reached. (Martin Pool)
694
* ``bzr missing --mine-only`` will return status code 0 if you have no
695
new revisions, but the remote does. Similarly for ``--theirs-only``.
696
The new code only checks one side, so it doesn't know if the other
697
side has changes. This seems more accurate with the request anyway.
698
It also changes the output to print '[This|Other] branch is up to
699
date.' rather than displaying nothing. (John Arbash Meinel)
701
* ``LockableFiles.put_utf8``, ``put_bytes`` and ``controlfilename``
702
are now deprecated in favor of using Transport operations.
705
* Many methods on ``VersionedFile``, ``Repository`` and in
706
``bzrlib.revision`` deprecated before bzrlib 1.5 have been removed.
709
* ``RevisionSpec.wants_revision_history`` can be set to False for a given
710
``RevisionSpec``. This will disable the existing behavior of passing in
711
the full revision history to ``self._match_on``. Useful for specs that
712
don't actually need access to the full history. (John Arbash Meinel)
714
* The constructors of ``SmartClientMedium`` and its subclasses now require a
715
``base`` parameter. ``SmartClientMedium`` implementations now also need
716
to provide a ``remote_path_from_transport`` method. (Andrew Bennetts)
718
* The default permissions for creating new files and directories
719
should now be obtained from ``BzrDir._get_file_mode()`` and
720
``_get_dir_mode()``, rather than from LockableFiles. The ``_set_file_mode``
721
and ``_set_dir_mode`` variables on LockableFiles which were advertised
722
as a way for plugins to control this are no longer consulted.
725
* ``VersionedFile.join`` is deprecated. This method required local
726
instances of both versioned file objects and was thus hostile to being
727
used for streaming from a smart server. The new get_record_stream and
728
insert_record_stream are meant to efficiently replace this method.
731
* ``WorkingTree.set_parent_(ids/trees)`` will now filter out revisions
732
which are in the ancestry of other revisions. So if you merge the same
733
tree twice, or merge an ancestor of an existing merge, it will only
734
record the newest. (If you merge a descendent, it will replace its
735
ancestor). (John Arbash Meinel, #235407)
737
* ``WorkingTreeFormat2.stub_initialize_remote`` is now private.
744
This release of Bazaar includes several updates to the documentation, and fixes
745
to prepare for making rich root support the default format. Many bugs have been
746
squashed, including fixes to log, bzr+ssh inter-operation with older servers.
750
* Suppress deprecation warnings when bzrlib is a 'final' release. This way
751
users of packaged software won't be bothered with DeprecationWarnings,
752
but developers and testers will still see them. (John Arbash Meinel)
756
* Incorporate feedback from Jelmer Vernooij and Neil Martinsen-Burrell
757
on the plugin and integration chapters of the User Guide.
761
bzr 1.5rc1 2008-05-09
762
---------------------
764
NOTES WHEN UPGRADING:
768
* Broader support of GNU Emacs mail clients. Set
769
``mail_client=emacsclient`` in your bazaar.conf and ``send`` will pop the
770
bundle in a mail buffer according to the value of ``mail-user-agent``
771
variable. (Xavier Maillard)
777
* Diff now handles revision specs like "branch:" and "submit:" more
778
efficiently. (Aaron Bentley, #202928)
780
* More friendly error given when attempt to start the smart server
781
on an address already in use. (Andrea Corbellini, #200575)
783
* Pull completes much faster when there is nothing to pull.
788
* Authentication.conf can define sections without password.
789
(Vincent Ladeuil, #199440)
791
* Avoid muttering every time a child update does not cause a progress bar
792
update. (John Arbash Meinel, #213771)
794
* ``Branch.reconcile()`` is now implemented. This allows ``bzr reconcile``
795
to fix when a Branch has a non-canonical mainline history. ``bzr check``
796
also detects this condition. (John Arbash Meinel, #177855)
798
* ``bzr log -r ..X bzr://`` was failing, because it was getting a request
799
for ``revision_id=None`` which was not a string.
800
(John Arbash Meinel, #211661)
802
* ``bzr commit`` now works with Microsoft's FTP service.
805
* Catch definitions outside sections in authentication.conf.
806
(Vincent Ladeuil, #217650)
808
* Conversion from non-rich-root to rich-root(-pack) updates inventory
809
sha1s, even when bundles are used. (Aaron Bentley, #181391)
811
* Conversion from non-rich-root to rich-root(-pack) works correctly even
812
though search keys are not topologically sorted. (Aaron Bentley)
814
* Conversion from non-rich-root to rich-root(-pack) works even when a
815
parent revision has a different root id. (Aaron Bentley, #177874)
817
* Disable strace testing until strace is fixed (see bug #103133) and emit a
818
warning when selftest ends to remind us of leaking tests.
819
(Vincent Ladeuil, #226769)
821
* Fetching all revisions from a repository does not cause pack collisions.
822
(Robert Collins, Aaron Bentley, #212908)
824
* Fix error about "attempt to add line-delta in non-delta knit".
825
(Andrew Bennetts, #217701)
827
* Pushing a branch in "dirstate" format (Branch5) over bzr+ssh would break
828
if the remote server was < version 1.2. This was due to a bug in the
829
RemoteRepository.get_parent_map() fallback code.
830
(John Arbash Meinel, #214894)
832
* Remove leftover code in ``bzr_branch`` that inappropriately creates
833
a ``branch-name`` file in the branch control directory.
836
* Set SO_REUSEADDR on server sockets of ``bzr serve`` to avoid problems
837
rebinding the socket when starting the server a second time.
838
(John Arbash Meinel, Martin Pool, #164288)
840
* Severe performance degradation in fetching from knit repositories to
841
knits and packs due to parsing the entire revisions.kndx on every graph
842
walk iteration fixed by using the Repository.get_graph API. There was
843
another regression in knit => knit fetching which re-read the index for
844
every revision each side had in common.
845
(Robert Collins, John Arbash Meinel)
847
* When logging the changes to a particular file, there was a bug if there
848
were ghosts in the revision ancestry. (John Arbash Meinel, #209948)
850
* xs4all's ftp server returns a temporary error when trying to list an
851
empty directory, rather than returning an empty list. Adding a
852
workaround so that we don't get spurious failures.
853
(John Arbash Meinel, #215522)
857
* Expanded the User Guide to include new chapters on popular plugins and
858
integrating Bazaar into your environment. The *Best practices* chapter
859
was renamed to *Miscellaneous topics* as suggested by community
860
feedback as well. (Ian Clatworthy)
862
* Document outlining strategies for TortoiseBzr. (Mark Hammond)
864
* Improved the documentation on hooks. (Ian Clatworthy)
866
* Update authentication docs regarding ssh agents.
867
(Vincent Ladeuil, #183705)
871
* Add ``thread_name_suffix`` parameter to SmartTCPServer_for_testing, to
872
make it easy to identify which test spawned a thread with an unhandled
873
exception. (Andrew Bennetts)
875
* New ``--debugflag``/``-E`` option to ``bzr selftest`` for setting
876
options for debugging tests, these are complementary to the the -D
877
options. The ``-Dselftest_debug`` global option has been replaced by the
878
``-E=allow_debug`` option for selftest. (Andrew Bennetts)
880
* Parameterised test ids are preserved correctly to aid diagnosis of test
881
failures. (Robert Collins, Andrew Bennetts)
883
* selftest now accepts --starting-with <id> to load only the tests whose id
884
starts with the one specified. This greatly speeds up running the test
885
suite on a limited set of tests and can be used to run the tests for a
886
single module, a single class or even a single test. (Vincent Ladeuil)
888
* The test suite modules have been modified to define load_tests() instead
889
of test_suite(). That speeds up selective loading (via --load-list)
890
significantly and provides many examples on how to migrate (grep for
891
load_tests). (Vincent Ladeuil)
895
* ``Hooks.install_hook`` is now deprecated in favour of
896
``Hooks.install_named_hook`` which adds a required ``name`` parameter, to
897
avoid having to call ``Hooks.name_hook``. (Daniel Watkins)
899
* Implement xml8 serializer. (Aaron Bentley)
901
* New form ``@deprecated_method(deprecated_in(1, 5, 0))`` for making
902
deprecation wrappers. (Martin Pool)
904
* ``Repository.revision_parents`` is now deprecated in favour of
905
``Repository.get_parent_map([revid])[revid]``. (Jelmer Vernooij)
907
* The Python ``assert`` statement is no longer used in Bazaar source, and
908
a test checks this. (Martin Pool)
912
* ``bzrlib.status.show_pending_merges`` requires the repository to be
913
locked by the caller. Callers should have been doing it anyway, but it
914
will now raise an exception if they do not. (John Arbash Meinel)
916
* Repository.get_data_stream, Repository.get_data_stream_for_search(),
917
Repository.get_deltas_for_revsions(), Repository.revision_trees(),
918
Repository.item_keys_introduced_by() no longer take read locks.
921
* ``LockableFiles.get_utf8`` and ``.get`` are deprecated, as a start
922
towards removing LockableFiles and ``.control_files`` entirely.
925
* Methods deprecated prior to 1.1 have been removed.
932
This release of Bazaar includes handy improvements to the speed of log and
933
status, new options for several commands, improved documentation, and better
934
hooks, including initial code for server-side hooks. A number of bugs have
935
been fixed, particularly in interoperability between different formats or
936
different releases of Bazaar over there network. There's been substantial
937
internal work in both the repository and network code to enable new features
938
and faster performance.
942
* Pushing a branch in "dirstate" format (Branch5) over bzr+ssh would break
943
if the remote server was < version 1.2. This was due to a bug in the
944
RemoteRepository.get_parent_map() fallback code.
945
(John Arbash Meinel, Andrew Bennetts, #214894)
948
bzr 1.4rc2 2008-04-21
949
---------------------
953
* ``bzr log -r ..X bzr://`` was failing, because it was getting a request
954
for ``revision_id=None`` which was not a string.
955
(John Arbash Meinel, #211661)
957
* Fixed a bug in handling ghost revisions when logging changes in a
958
particular file. (John Arbash Meinel, #209948)
960
* Fix error about "attempt to add line-delta in non-delta knit".
961
(Andrew Bennetts, #205156)
963
* Fixed performance degradation in fetching from knit repositories to
964
knits and packs due to parsing the entire revisions.kndx on every graph
965
walk iteration fixed by using the Repository.get_graph API. There was
966
another regression in knit => knit fetching which re-read the index for
967
every revision each side had in common.
968
(Robert Collins, John Arbash Meinel)
971
bzr 1.4rc1 2008-04-11
972
---------------------
976
* bzr main script cannot be imported (Benjamin Peterson)
978
* On Linux bzr additionally looks for plugins in arch-independent site
979
directory. (Toshio Kuratomi)
981
* The ``set_rh`` branch hook is now deprecated. Please migrate
982
any plugins using this hook to use an alternative, e.g.
983
``post_change_branch_tip``. (Ian Clatworthy)
985
* When a plugin cannot be loaded as the file path is not a valid
986
python module name bzr will now strip a ``bzr_`` prefix from the
987
front of the suggested name, as many plugins (e.g. bzr-svn)
988
want to be installed without this prefix. It is a common mistake
989
to have a folder named "bzr-svn" for that plugin, especially
990
as this is what bzr branch lp:bzr-svn will give you. (James Westby,
993
* UniqueIntegerBugTracker now appends bug-ids instead of joining
994
them to the base URL. Plugins that register bug trackers may
995
need a trailing / added to the base URL if one is not already there.
996
(James Wesby, Andrew Cowie)
1000
* Added start_commit hook for mutable trees. (Jelmer Vernooij, #186422)
1002
* ``status`` now accepts ``--no-pending`` to show the status without
1003
listing pending merges, which speeds up the command a lot on large
1004
histories. (James Westby, #202830)
1006
* New ``post_change_branch_tip`` hook that is called after the
1007
branch tip is moved but while the branch is still write-locked.
1008
See the User Reference for signature details.
1009
(Ian Clatworthy, James Henstridge)
1011
* Reconfigure can convert a branch to be standalone or to use a shared
1012
repository. (Aaron Bentley)
1016
* The smart protocol now has support for setting branches' revision info
1017
directly. This should make operations like push slightly faster, and is a
1018
step towards server-side hooks. The new request method name is
1019
``Branch.set_last_revision_info``. (Andrew Bennetts)
1021
* ``bzr commit --fixes`` now recognises "gnome" as a tag by default.
1022
(James Westby, Andrew Cowie)
1024
* ``bzr switch`` will attempt to find branches to switch to relative to the
1025
current branch. E.g. ``bzr switch branchname`` will look for
1026
``current_branch/../branchname``. (Robert Collins, Jelmer Vernooij,
1029
* Diff is now more specific about execute-bit changes it describes
1032
* Fetching data over HTTP is a bit faster when urllib is used. This is done
1033
by forcing it to recv 64k at a time when reading lines in HTTP headers,
1034
rather than just 1 byte at a time. (Andrew Bennetts)
1036
* Log --short and --line are much faster when -r is not specified.
1039
* Merge is faster. We no longer check a file's existence unnecessarily
1040
when merging the execute bit. (Aaron Bentley)
1042
* ``bzr status`` on an explicit list of files no longer shows pending
1043
merges, making it much faster on large trees. (John Arbash Meinel)
1045
* The launchpad directory service now warns the user if they have not set
1046
their launchpad login and are trying to resolve a URL using it, just
1047
in case they want to do a write operation with it. (James Westby)
1049
* The smart protocol client is slightly faster, because it now only queries
1050
the server for the protocol version once per connection. Also, the HTTP
1051
transport will now automatically probe for and use a smart server if
1052
one is present. You can use the new ``nosmart+`` transport decorator
1053
to get the old behaviour. (Andrew Bennetts)
1055
* The ``version`` command takes a ``--short`` option to print just the
1056
version number, for easier use in scripts. (Martin Pool)
1058
* Various operations with revision specs and commands that calculate
1059
revnos and revision ids are faster. (John A. Meinel, Aaron Bentley)
1063
* Add ``root_client_path`` parameter to SmartWSGIApp and
1064
SmartServerRequest. This makes it possible to publish filesystem
1065
locations that don't exactly match URL paths. SmartServerRequest
1066
subclasses should use the new ``translate_client_path`` and
1067
``transport_from_client_path`` methods when dealing with paths received
1068
from a client to take this into account. (Andrew Bennetts, #124089)
1070
* ``bzr mv a b`` can be now used also to rename previously renamed
1071
directories, not only files. (Lukáš Lalinský, #107967)
1073
* ``bzr uncommit --local`` can now remove revisions from the local
1074
branch to be symmetric with ``bzr commit --local``.
1075
(John Arbash Meinel, #93412)
1077
* Don't ask for a password if there is no real terminal.
1078
(Alexander Belchenko, #69851)
1080
* Fix a bug causing a ValueError crash in ``parse_line_delta_iter`` when
1081
fetching revisions from a knit to pack repository or vice versa using
1082
bzr:// (including over http or ssh).
1083
(#208418, Andrew Bennetts, Martin Pool, Robert Collins)
1085
* Fixed ``_get_line`` in ``bzrlib.smart.medium``, which was buggy. Also
1086
fixed ``_get_bytes`` in the same module to use the push back buffer.
1087
These bugs had no known impact in normal use, but were problematic for
1088
developers working on the code, and were likely to cause real bugs sooner
1089
or later. (Andrew Bennetts)
1091
* Implement handling of basename parameter for DefaultMail. (James Westby)
1093
* Incompatibility with Paramiko versions newer than 1.7.2 was fixed.
1094
(Andrew Bennetts, #213425)
1096
* Launchpad locations (lp: URLs) can be pulled. (Aaron Bentley, #181945)
1098
* Merges that add files to deleted root directories complete. They
1099
do create conflicts. (Aaron Bentley, #210092)
1101
* vsftp's return ``550 RNFR command failed.`` supported.
1102
(Marcus Trautwig, #129786)
1106
* Improved documentation on send/merge relationship. (Peter Schuller)
1108
* Minor fixes to the User Guide. (Matthew Fuller)
1110
* Reduced the evangelism in the User Guide. (Ian Clatworthy)
1112
* Added Integrating with Bazaar document for developers (Martin Albisetti)
1116
* Attempting to pull data from a ghost aware repository (e.g. knits) into a
1117
non-ghost aware repository such as weaves will now fail if there are
1118
ghosts. (Robert Collins)
1120
* ``KnitVersionedFile`` no longer accepts an ``access_mode`` parameter, and
1121
now requires the ``index`` and ``access_method`` parameters to be
1122
supplied. A compatible shim has been kept in the new function
1123
``knit.make_file_knit``. (Robert Collins)
1125
* Log formatters must now provide log_revision instead of show and
1126
show_merge_revno methods. The latter had been deprecated since the 0.17
1127
release. (James Westby)
1129
* ``LoopbackSFTP`` is now called ``SocketAsChannelAdapter``.
1132
* ``osutils.backup_file`` is removed. (Alexander Belchenko)
1134
* ``Repository.get_revision_graph`` is deprecated, with no replacement
1135
method. The method was size(history) and not desirable. (Robert Collins)
1137
* ``revision.revision_graph`` is deprecated, with no replacement function.
1138
The function was size(history) and not desirable. (Robert Collins)
1140
* ``Transport.get_shared_medium`` is deprecated. Use
1141
``Transport.get_smart_medium`` instead. (Andrew Bennetts)
1143
* ``VersionedFile`` factories now accept a get_scope parameter rather
1144
than using a call to ``transaction_finished``, allowing the removal of
1145
the fixed list of versioned files per repository. (Robert Collins)
1147
* ``VersionedFile.annotate_iter`` is deprecated. While in principle this
1148
allowed lower memory use, all users of annotations wanted full file
1149
annotations, and there is no storage format suitable for incremental
1150
line-by-line annotation. (Robert Collins)
1152
* ``VersionedFile.clone_text`` is deprecated. This performance optimisation
1153
is no longer used - reading the content of a file that is undergoing a
1154
file level merge to identical state on two branches is rare enough, and
1155
not expensive enough to special case. (Robert Collins)
1157
* ``VersionedFile.clear_cache`` and ``enable_cache`` are deprecated.
1158
These methods added significant complexity to the ``VersionedFile``
1159
implementation, but were only used for optimising fetches from knits -
1160
which can be done from outside the knit layer, or via a caching
1161
decorator. As knits are not the default format, the complexity is no
1162
longer worth paying. (Robert Collins)
1164
* ``VersionedFile.create_empty`` is removed. This method presupposed a
1165
sensible mapping to a transport for individual files, but pack backed
1166
versioned files have no such mapping. (Robert Collins)
1168
* ``VersionedFile.get_graph`` is deprecated, with no replacement method.
1169
The method was size(history) and not desirable. (Robert Collins)
1171
* ``VersionedFile.get_graph_with_ghosts`` is deprecated, with no
1172
replacement method. The method was size(history) and not desirable.
1175
* ``VersionedFile.get_parents`` is deprecated, please use
1176
``VersionedFile.get_parent_map``. (Robert Collins)
1178
* ``VersionedFile.get_sha1`` is deprecated, please use
1179
``VersionedFile.get_sha1s``. (Robert Collins)
1181
* ``VersionedFile.has_ghost`` is now deprecated, as it is both expensive
1182
and unused outside of a single test. (Robert Collins)
1184
* ``VersionedFile.iter_parents`` is now deprecated in favour of
1185
``get_parent_map`` which can be used to instantiate a Graph on a
1186
VersionedFile. (Robert Collins)
1188
* ``VersionedFileStore`` no longer uses the transaction parameter given
1189
to most methods; amongst other things this means that the
1190
get_weave_or_empty method no longer guarantees errors on a missing weave
1191
in a readonly transaction, and no longer caches versioned file instances
1192
which reduces memory pressure (but requires more careful management by
1193
callers to preserve performance). (Robert Collins)
1197
* New -Dselftest_debug flag disables clearing of the debug flags during
1198
tests. This is useful if you want to use e.g. -Dhpss to help debug a
1199
failing test. Be aware that using this feature is likely to cause
1200
spurious test failures if used with the full suite. (Andrew Bennetts)
1202
* selftest --load-list now uses a new more agressive test loader that will
1203
avoid loading unneeded modules and building their tests. Plugins can use
1204
this new loader by defining a load_tests function instead of a test_suite
1205
function. (a forthcoming patch will provide many examples on how to
1209
* selftest --load-list now does some sanity checks regarding duplicate test
1210
IDs and tests present in the list but not found in the actual test suite.
1213
* Slightly more concise format for the selftest progress bar, so there's
1214
more space to show the test name. (Martin Pool) ::
1216
[2500/10884, 1fail, 3miss in 1m29s] test_revisionnamespaces.TestRev
1218
* The test suite takes much less memory to run, and is a bit faster. This
1219
is done by clearing most attributes of TestCases after running them, if
1220
they succeeded. (Andrew Bennetts)
1224
* Added ``_build_client_protocol`` to ``_SmartClient``. (Andrew Bennetts)
1226
* Added basic infrastructure for automatic plugin suggestion.
1229
* If a ``LockableFiles`` object is not explicitly unlocked (for example
1230
because of a missing ``try/finally`` block, it will give a warning but
1231
not automatically unlock itself. (Previously they did.) This
1232
sometimes caused knock-on errors if for example the network connection
1233
had already failed, and should not be relied upon by code.
1234
(Martin Pool, #109520)
1236
* ``make dist`` target to build a release tarball, and also
1237
``check-dist-tarball`` and ``dist-upload-escudero``. (Martin Pool)
1239
* The ``read_response_tuple`` method of ``SmartClientRequestProtocol*``
1240
classes will now raise ``UnknownSmartMethod`` when appropriate, so that
1241
callers don't need to try distinguish unknown request errors from other
1242
errors. (Andrew Bennetts)
1244
* ``set_make_working_trees`` is now implemented provided on all repository
1245
implementations (Aaron Bentley)
1247
* ``VersionedFile`` now has a new method ``get_parent_map`` which, like
1248
``Graph.get_parent_map`` returns a dict of key:parents. (Robert Collins)
1251
bzr 1.3.1 2008-04-09
1252
--------------------
1254
No changes from 1.3.1rc1.
1257
bzr 1.3rc1 2008-04-04
1258
---------------------
1262
* Fix a bug causing a ValueError crash in ``parse_line_delta_iter`` when
1263
fetching revisions from a knit to pack repository or vice versa using
1264
bzr:// (including over http or ssh).
1265
(#208418, Andrew Bennetts, Martin Pool, Robert Collins)
1271
Bazaar has become part of the GNU project <http://www.gnu.org>
1273
Many operations that act on history, including ``log`` and ``annotate`` are now
1274
substantially faster. Several bugs have been fixed and several new options and
1275
features have been added.
1279
* Avoid spurious failure of ``TestVersion.test_version`` matching
1281
(#202778, Martin Pool)
1284
bzr 1.3rc1 2008-03-16
1285
---------------------
1287
NOTES WHEN UPGRADING:
1289
* The backup directory created by ``upgrade`` is now called
1290
``backup.bzr``, not ``.bzr.backup``. (Martin Albisetti)
1294
* A new repository format 'development' has been added. This format will
1295
represent the latest 'in-progress' format that the bzr developers are
1296
interested in getting early-adopter testing and feedback on.
1297
``doc/developers/development-repo.txt`` has detailed information.
1300
* BZR_LOG environment variable controls location of .bzr.log trace file.
1301
User can suppress writing messages to .bzr.log by using '/dev/null'
1302
filename (on Linux) or 'NUL' (on Windows). If BZR_LOG variable
1303
is not defined but BZR_HOME is defined then default location
1304
for .bzr.log trace file is ``$BZR_HOME/.bzr.log``.
1305
(Alexander Belchenko)
1307
* ``launchpad`` builtin plugin now shipped as separate part in standalone
1308
bzr.exe, installed to ``C:\Program Files\Bazaar\plugins`` directory,
1309
and standalone installer allows user to skip installation of this plugin.
1310
(Alexander Belchenko)
1312
* Restore auto-detection of plink.exe on Windows. (Dmitry Vasiliev)
1314
* Version number is now shown as "1.2" or "1.2pr2", without zeroed or
1315
missing final fields. (Martin Pool)
1319
* ``branch`` and ``checkout`` can hard-link working tree files, which is
1320
faster and saves space. (Aaron Bentley)
1322
* ``bzr send`` will now also look at the ``child_submit_to`` setting in
1323
the submit branch to determine the email address to send to.
1328
* BzrBranch._lefthand_history is faster on pack repos. (Aaron Bentley)
1330
* Branch6.generate_revision_history is faster. (Aaron Bentley)
1332
* Directory services can now be registered, allowing special URLs to be
1333
dereferenced into real URLs. This is a generalization and cleanup of
1334
the lp: transport lookup. (Aaron Bentley)
1336
* Merge directives that are automatically attached to emails have nicer
1337
filenames, based on branch-nick + revno. (Aaron Bentley)
1339
* ``push`` has a ``--revision`` option, to specify what revision to push up
1340
to. (Daniel Watkins)
1342
* Significantly reducing execution time and network traffic for trivial
1343
case of running ``bzr missing`` command for two identical branches.
1344
(Alexander Belchenko)
1346
* Speed up operations that look at the revision graph (such as 'bzr log').
1347
``KnitPackRepositor.get_revision_graph`` uses ``Graph.iter_ancestry`` to
1348
extract the revision history. This allows filtering ghosts while
1349
stepping instead of needing to peek ahead. (John Arbash Meinel)
1351
* The ``hooks`` command lists installed hooks, to assist in debugging.
1354
* Updates to how ``annotate`` work. Should see a measurable improvement in
1355
performance and memory consumption for file with a lot of merges.
1356
Also, correctly handle when a line is introduced by both parents (it
1357
should be attributed to the first merge which notices this, and not
1358
to all subsequent merges.) (John Arbash Meinel)
1362
* Autopacking no longer holds the full set of inventory lines in
1363
memory while copying. For large repositories, this can amount to
1364
hundreds of MB of ram consumption.
1365
(Ian Clatworthy, John Arbash Meinel)
1367
* Cherrypicking when using ``--format=merge3`` now explictly excludes
1368
BASE lines. (John Arbash Meinel, #151731)
1370
* Disable plink's interactive prompt for password.
1371
(#107593, Dmitry Vasiliev)
1373
* Encode command line arguments from unicode to user_encoding before
1374
invoking external mail client in `bzr send` command.
1375
(#139318, Alexander Belchenko)
1377
* Fixed problem connecting to ``bzr+https://`` servers.
1378
(#198793, John Ferlito)
1380
* Improved error reporting in the Launchpad plugin. (Daniel Watkins,
1383
* Include quick-start-summary.svg file to python-based installer(s)
1384
for Windows. (#192924, Alexander Belchenko)
1386
* lca merge now respects specified files. (Aaron Bentley)
1388
* Make version-info --custom imply --all. (#195560, James Westby)
1390
* ``merge --preview`` now works for merges that add or modify
1391
symlinks (James Henstridge)
1393
* Redirecting the output from ``bzr merge`` (when the remembered
1394
location is used) now works. (John Arbash Meinel)
1396
* setup.py script explicitly checks for Python version.
1397
(Jari Aalto, Alexander Belchenko, #200569)
1399
* UnknownFormatErrors no longer refer to branches regardless of kind of
1400
unknown format. (Daniel Watkins, #173980)
1402
* Upgrade bundled ConfigObj to version 4.5.2, which properly quotes #
1403
signs, among other small improvements. (Matt Nordhoff, #86838)
1405
* Use correct indices when emitting LCA conflicts. This fixes IndexError
1406
errors. (Aaron Bentley, #196780)
1410
* Explained how to use ``version-info --custom`` in the User Guide.
1411
(Neil Martinsen-Burrell)
1415
* Support for loading plugins from zip files and
1416
``bzrlib.plugin.load_from_zip()`` function are deprecated.
1417
(Alexander Belchenko)
1421
* Added missing blackbox tests for ``modified`` (Adrian Wilkins)
1423
* The branch interface tests were invalid for branches using rich-root
1424
repositories because the empty string is not a valid file-id.
1429
* ``Graph.iter_ancestry`` returns the ancestry of revision ids. Similar to
1430
``Repository.get_revision_graph()`` except it includes ghosts and you can
1431
stop part-way through. (John Arbash Meinel)
1433
* New module ``tools/package_mf.py`` provide custom module finder for
1434
python packages (improves standard python library's modulefinder.py)
1435
used by ``setup.py`` script while building standalone bzr.exe.
1436
(Alexander Belchenko)
1438
* New remote method ``RemoteBzrDir.find_repositoryV2`` adding support for
1439
detecting external lookup support on remote repositories. This method is
1440
now attempted first when lookup up repositories, leading to an extra
1441
round trip on older bzr smart servers. (Robert Collins)
1443
* Repository formats have a new supported-feature attribute
1444
``supports_external_lookups`` used to indicate repositories which support
1445
falling back to other repositories when they have partial data.
1448
* ``Repository.get_revision_graph_with_ghosts`` and
1449
``bzrlib.revision.(common_ancestor,MultipleRevisionSources,common_graph)``
1450
have been deprecated. (John Arbash Meinel)
1452
* ``Tree.iter_changes`` is now a public API, replacing the work-in-progress
1453
``Tree._iter_changes``. The api is now considered stable and ready for
1454
external users. (Aaron Bentley)
1456
* The bzrdir format registry now accepts an ``alias`` keyword to
1457
register_metadir, used to indicate that a format name is an alias for
1458
some other format and thus should not be reported when describing the
1459
format. (Robert Collins)
1467
* Fix failing test in Launchpad plugin. (Martin Pool)
1470
bzr 1.2rc1 2008-02-13
1471
---------------------
1473
NOTES WHEN UPGRADING:
1475
* Fetching via the smart protocol may need to reconnect once during a fetch
1476
if the remote server is running Bazaar 1.1 or earlier, because the client
1477
attempts to use more efficient requests that confuse older servers. You
1478
may be required to re-enter a password or passphrase when this happens.
1479
This won't happen if the server is upgraded to Bazaar 1.2.
1484
* Fetching via bzr+ssh will no longer fill ghosts by default (this is
1485
consistent with pack-0.92 fetching over SFTP). (Robert Collins)
1487
* Formatting of ``bzr plugins`` output is changed to be more human-
1488
friendly. Full path of plugins locations will be shown only with
1489
``--verbose`` command-line option. (Alexander Belchenko)
1491
* ``merge`` now prefers to use the submit branch, but will fall back to
1492
parent branch. For many users, this has no effect. But some users who
1493
pull and merge on the same branch will notice a change. This change
1494
makes it easier to work on a branch on two different machines, pulling
1495
between the machines, while merging from the upstream.
1496
``merge --remember`` can now be used to set the submit_branch.
1501
* ``merge --preview`` produces a diff of the changes merge would make,
1502
but does not actually perform the merge. (Aaron Bentley)
1504
* New smart method ``Repository.get_parent_map`` for getting revision
1505
parent data. This returns additional parent information topologically
1506
adjacent to the requested data to reduce round trip latency impacts.
1509
* New smart method, ``Repository.stream_revisions_chunked``, for fetching
1510
revision data that streams revision data via a chunked encoding. This
1511
avoids buffering large amounts of revision data on the server and on the
1512
client, and sends less data to the server to request the revisions.
1513
(Andrew Bennetts, Robert Collins, #178353)
1515
* The launchpad plugin now handles lp urls of the form
1516
``lp://staging/``, ``lp://demo/``, ``lp://dev/`` to use the appropriate
1517
launchpad instance to do the resolution of the branch identities.
1518
This is primarily of use to Launchpad developers, but can also
1519
be used by other users who want to try out Launchpad as
1520
a branch location without messing up their public Launchpad
1521
account. Branches that are pushed to the staging environment
1522
have an expected lifetime of one day. (Tim Penhey)
1526
* Creating a new branch no longer tries to read the entire revision-history
1527
unnecessarily over smart server operations. (Robert Collins)
1529
* Fetching between different repository formats with compatible models now
1530
takes advantage of the smart method to stream revisions. (Andrew Bennetts)
1532
* The ``--coverage`` option is now global, rather specific to ``bzr
1533
selftest``. (Andrew Bennetts)
1535
* The ``register-branch`` command will now use the public url of the branch
1536
containing the current directory, if one has been set and no explicit
1537
branch is provided. (Robert Collins)
1539
* Tweak the ``reannotate`` code path to optimize the 2-parent case.
1540
Speeds up ``bzr annotate`` with a pack repository by approx 3:2.
1541
(John Arbash Meinel)
1545
* Calculate remote path relative to the shared medium in _SmartClient. This
1546
is related to the problem in bug #124089. (Andrew Bennetts)
1548
* Cleanly handle connection errors in smart protocol version two, the same
1549
way as they are handled by version one. (Andrew Bennetts)
1551
* Clearer error when ``version-info --custom`` is used without
1552
``--template`` (Lukáš Lalinský)
1554
* Don't raise UnavailableFeature during test setup when medusa is not
1555
available or tearDown is never called leading to nasty side effects.
1556
(#137823, Vincent Ladeuil)
1558
* If a plugin's test suite cannot be loaded, for example because of a syntax
1559
error in the tests, then ``selftest`` fails, rather than just printing
1560
a warning. (Martin Pool, #189771)
1562
* List possible values for BZR_SSH environment variable in env-variables
1563
help topic. (Alexander Belchenko, #181842)
1565
* New methods ``push_log_file`` and ``pop_log_file`` to intercept messages:
1566
popping the log redirection now precisely restores the previous state,
1567
which makes it easier to use bzr log output from other programs.
1568
TestCaseInTempDir no longer depends on a log redirection being established
1569
by the test framework, which lets bzr tests cleanly run from a normal
1571
(#124153, #124849, Martin Pool, Jonathan Lange)
1573
* ``pull --quiet`` is now more quiet, in particular a message is no longer
1574
printed when the remembered pull location is used. (James Westby,
1577
* ``reconfigure`` can safely be interrupted while fetching.
1578
(Aaron Bentley, #179316)
1580
* ``reconfigure`` preserves tags when converting to and from lightweight
1581
checkouts. (Aaron Bentley, #182040)
1583
* Stop polluting /tmp when running selftest.
1584
(Vincent Ladeuil, #123623)
1586
* Switch from NFKC => NFC for normalization checks. NFC allows a few
1587
more characters which should be considered valid.
1588
(John Arbash Meinel, #185458)
1590
* The launchpad plugin now uses the ``edge`` xmlrpc server to avoid
1591
interacting badly with a bug on the launchpad side. (Robert Collins)
1593
* Unknown hostnames when connecting to a ``bzr://`` URL no longer cause
1594
tracebacks. (Andrew Bennetts, #182849)
1598
* Classes implementing Merge types like Merge3Merger must now accept (and
1599
honour) a do_merge flag in their constructor. (Aaron Bentley)
1601
* ``Repository.add_inventory`` and ``add_revision`` now require the caller
1602
to previously take a write lock (and start a write group.)
1607
* selftest now accepts --load-list <file> to load a test id list. This
1608
speeds up running the test suite on a limited set of tests.
1613
* Add a new method ``get_result`` to graph search objects. The resulting
1614
``SearchResult`` can be used to recreate the search later, which will
1615
be useful in reducing network traffic. (Robert Collins)
1617
* Use convenience function to check whether two repository handles
1618
are referring to the same repository in ``Repository.get_graph``.
1619
(Jelmer Vernooij, #187162)
1621
* Fetching now passes the find_ghosts flag through to the
1622
``InterRepository.missing_revision_ids`` call consistently for all
1623
repository types. This will enable faster missing revision discovery with
1624
bzr+ssh. (Robert Collins)
1626
* Fix error handling in Repository.insert_data_stream. (Lukas Lalinsky)
1628
* ``InterRepository.missing_revision_ids`` is now deprecated in favour of
1629
``InterRepository.search_missing_revision_ids`` which returns a
1630
``bzrlib.graph.SearchResult`` suitable for making requests from the smart
1631
server. (Robert Collins)
1633
* New error ``NoPublicBranch`` for commands that need a public branch to
1634
operate. (Robert Collins)
1636
* New method ``iter_inventories`` on Repository for access to many
1637
inventories. This is primarily used by the ``revision_trees`` method, as
1638
direct access to inventories is discouraged. (Robert Collins)
1640
* New method ``next_with_ghosts`` on the Graph breadth-first-search objects
1641
which will split out ghosts and present parents into two separate sets,
1642
useful for code which needs to be aware of ghosts (e.g. fetching data
1643
cares about ghosts during revision selection). (Robert Collins)
1645
* Record a timestamp against each mutter to the trace file, relative to the
1646
first import of bzrlib. (Andrew Bennetts)
1648
* ``Repository.get_data_stream`` is now deprecated in favour of
1649
``Repository.get_data_stream_for_search`` which allows less network
1650
traffic when requesting data streams over a smart server. (Robert Collins)
1652
* ``RemoteBzrDir._get_tree_branch`` no longer triggers ``_ensure_real``,
1653
removing one round trip on many network operations. (Robert Collins)
1655
* RemoteTransport's ``recommended_page_size`` method now returns 64k, like
1656
SFTPTransport and HttpTransportBase. (Andrew Bennetts)
1658
* Repository has a new method ``has_revisions`` which signals the presence
1659
of many revisions by returning a set of the revisions listed which are
1660
present. This can be done by index queries without reading data for parent
1661
revision names etc. (Robert Collins)
1667
(no changes from 1.1rc1)
1669
bzr 1.1rc1 2008-01-05
1670
---------------------
1674
* Dotted revision numbers have been revised. Instead of growing longer with
1675
nested branches the branch number just increases. (eg instead of 1.1.1.1.1
1676
we now report 1.2.1.) This helps scale long lived branches which have many
1677
feature branches merged between them. (John Arbash Meinel)
1679
12
* The syntax ``bzr diff branch1 branch2`` is no longer supported.
1680
13
Use ``bzr diff branch1 --new branch2`` instead. This change has
1681
14
been made to remove the ambiguity where ``branch2`` is in fact a