11
:3.0.3: NOT RELEASED YET
13
External Compatibility Breaks
14
*****************************
16
.. These may require users to change the way they use Breezy.
21
.. New commands, options, etc that users may wish to try out.
26
.. Improvements to existing commands, especially improved performance
27
or memory usage, or better results.
32
.. Fixes for situations where brz would previously crash or give incorrect
33
or undesirable results.
35
* Don't throw an error attempting to read the parent of a ref.
38
* Fix fast-exporting of symlinks on Python 3. (Jelmer Vernooij, #1851478)
40
* Don't rely on private transport attribute in fast-import.
41
(Jelmer Vernooij, #1854607)
46
.. Improved or updated documentation.
51
.. Changes that may require updates in plugins or other code that uses
57
.. Major internal changes, unlikely to be visible to users or plugin
58
developers, but interesting for brz developers.
63
.. Fixes and changes that are only relevant to brz's test framework and
64
suite. This can include new facilities for writing tests, fixes to
65
spurious test failures and changes to the way things should be tested.
73
External Compatibility Breaks
74
*****************************
91
* Disable loading from entrypoints by default, since it can
92
significantly slow down startup on some platforms.
93
(Jelmer Vernooij, #1832868)
95
* Don't fail when unable to write per-user ignore list due to
96
one of the intermediate directories not existing
97
(Jelmer Vernooij, #1851904)
99
* Fix file graph operations on Git repositories.
100
(Jelmer Vernooij, #1847913)
102
* Allow running tests without launchpadlib installed.
103
(Jelmer Vernooij, #1849988)
105
* Fix compatibility with Python 3.8.
106
(Jelmer Vernooij, Victor Stinner, #1844684)
126
* Fix bb.test_testament.TestTestament.test_testament_non_ascii
127
when the host encoding is non-utf8.
128
(Jelmer Vernooij, #1849986)
136
brz 3.0.1 is the second release of ``Breezy``, a fork of Bazaar. For more
137
information, see our release announcement on the Bazaar mailing list and
140
External Compatibility Breaks
141
*****************************
159
* Fix compatibility with newer versions of Dulwich (>= 0.19.12).
162
* Fix a nasty corner case merging changes into a tree with changed
163
symlinks when pushing from bzr into git.
166
* Fix installation on Windows. (Raoul Snyman, #1818947)
168
* Fix switching between branches while preserving uncommitted changes in git.
169
(Jelmer Vernooij, #1820606)
171
* Return consist errors from ``Branch.get_revid`` and
172
``Repository.get_revid_for_revno`` when the revision
173
number is invalid. (Jelmer Vernooij, #701953)
175
* Print full upgrade command to run when complaining about lack of
176
support for tags. (Jelmer Vernooij, #163908)
178
* Refactor auto conflict handling and add a ``--auto`` flag
179
to ``bzr resolve``. (Martin Packman, #688506)
213
brz 3.0.0 is the first release of ``Breezy``, a fork of Bazaar. For more
214
information, see our release announcement on the Bazaar mailing list and
217
External Compatibility Breaks
218
*****************************
220
* The bzr command has been renamed to brz, to prevent clashes with upstream
222
(Martin Packman, Jelmer Vernooij)
224
* The --prefix/-p argument for ``brz diff`` now defaults to -p1 rather
225
than -p0. (Jelmer Vernooij, #1695126)
227
* The ``brz register-branch`` command from the Launchpad plugin has been
228
removed, because it has not worked for at least five years: it relies on
229
password authentication rather than SSO, the relevant systems no longer
230
have firewall-level access to the outside world, and in general the
231
Mirrored branch type is deprecated. Either just push the branch to
232
Launchpad or use code imports instead
233
(https://help.launchpad.net/VcsImports).
234
(Colin Watson, #254567, #483689)
236
* brz no longer supports building the C extensions using Pyrex.
237
Only Cython is supported. (Jelmer Vernooij)
239
* Support for HTTP support using "pycurl" and the associated
240
URL schemes "http+pycurl://" and "https+pycurl://" has been dropped.
241
(Jelmer Vernooij, #82086, #377389, #122258, #516222, #545776, #1696602)
243
* Support for medusa for FTP tests has been dropped, only
244
pyftpdlib is now supported. (Jelmer Vernooij)
246
* The deprecated ``brz get`` and ``brz clone`` commands have been
247
removed. (Jelmer Vernooij)
249
* The setting to ignore missing C extensions has been changed from
250
``ignore_missing_extensions=True`` to
251
``suppress_warnings=missing_extensions``. (Jelmer Vernooij)
253
* Remove format names as options to ``brz init`` and ``brz
254
init-repository``.. Now you must use ``brz init --format=...``.
255
This simplifies ``brz init --help``.
256
(Neil Martinsen-Burrell, #330494)
258
* ``python-gpg`` is now used for checking GPG signatures rather than
259
``python-gpgme``. (Jelmer Vernooij, #1702308)
261
* ``python-gpg`` is now used for signing commits, rather than shelling
262
out to the gnupg command. The ``gpg_signing_command`` option has been
263
removed. (Jelmer Vernooij, #847388)
265
* The ``bzr.transform.orphan_policy`` configuration option
266
has been renamed to ``transform.orphan_policy``.
269
* Backslash (\) is no longer accepted as a path separator
270
on platforms where it is not the default path separator,
271
e.g. POSIX systems. This is so that filenames with backslashes
272
in their name can be added explicitly. (#176263, #165151)
274
* One-letter shortcuts for Ubuntu releases are no
275
longer supported after 'ubuntu:'. Bazaar's mapping for
276
one-letter distroseries had not been updated since natty.
279
* The ``brz lp-mirror-branch`` subcommand has been removed.
280
Please use the ``lp-force-branch-mirror`` command from
281
the lptools package instead. (Jelmer Vernooij, #518807)
283
* Up-to-date checking for Bazaar packaging branches is no
284
longer performed, since there are no longer
285
any automated imports. (Jelmer Vernooij)
287
* ``setuptools`` is now required to build and install Breezy.
293
* The 'bisect' plugin is now shipped with brz. (Jelmer Vernooij)
295
* The 'fastimport' plugin is now bundled with Breezy.
298
* The ``grep`` plugin has been merged into Breezy.
299
(Parth Malwankar, Martin Packman, Jelmer Vernooij)
301
* The 'stats' plugin is now bundled with Breezy.
304
* The 'upload' plugin is now bundled with Breezy.
307
* The 'cvs' and 'mtn' plugins are now bundled with Breezy.
310
* The 'email' plugin is now bundled with Breezy.
313
* The 'import' command is now bundled with brz.
314
Imported from bzrtools by Aaron Bentley. (Jelmer Vernooij, #773241)
316
* The 'link-tree' command is now bundled with brz.
317
Imported from bzrtools by Aaron Bentley. (Jelmer Vernooij)
319
* The 'fetch-ghosts' command is now bundled with brz.
320
Imported from bzrtools by Aaron Bentley. (Jelmer Vernooij)
322
* The 'commitfromnews' plugin is now bundled and
323
can be enabled by setting ``commit.template_from_files = NEWS``.
326
* The 'darcs' plugin is now bundled.
329
* The functionality from ``bzr-guess`` is now merged into Breezy.
330
It will provide suggestions if the user typoes a command.
333
* Support the creation of colocated branches in ``brz fast-import``.
334
(Jelmer Vernooij, #1744626)
336
* New ``lp-logout`` command to unset launchpad username.
337
(Jelmer Vernooij, #349143)
339
* Plugins can now be registered using the 'entrypoints' mechanism in
340
setuptools. (Jelmer Vernooij, #1802647)
342
* The Breezy UI now handles RCP-style URLs and suggests the
343
user specify either ``git+ssh`` or ``bzr+ssh``.
349
* Doc generators now support the SOURCE_DATE_EPOCH environment
350
variable (https://reproducible-builds.org/specs/source-date-epoch/).
353
* The ``repodebug`` plugin is now bundled.
356
* New ``brz cp`` command which copies files (but does not currently track
357
history). (Jelmer Vernooij, start towards #269095)
359
* HPSS calls for ``RevisionTree.archive`` and
360
``RevisionTree.annotate_iter`` have been added. (Jelmer Vernooij,
363
* Branches with symlinks are now supported on Windows. Symlinks are
364
ignored by operations like branch, diff etc. with a warning as Symlinks
365
are not created on Windows.
366
(Parth Malwankar, #81689)
368
* New ``lp+bzr://`` URL scheme for Bazaar-only branches on Launchpad.
371
* Report colocated branch information in ``brz info``.
372
(Jelmer Vernooij, #1803846)
377
* Support Server Name Indication (SNI) when talking to https servers.
378
Cherry-picked from lp:~vila/bzr/1089352-sni-support
379
(Vincent Ladeuil, #1089352)
381
* The ``bisect`` command now works in non-``.bzr`` directories.
384
* When creating ``authentication.conf``, umask is now set so only the
385
current user can read the file. Breezy warns if the file is
386
accessible for other users when it starts.
387
(Joke de Buhr, Jelmer Vernooij, #475501)
389
* Support ``brz commit -x`` in combination with iter_changes.
390
(Jelmer Vernooij, #796582, #403811, #694946, #268135, #299879)
392
* Print a proper error when encountering ghost revisions in
393
mainline in ``brz log``. (Jelmer Vernooij, #726466)
395
* Security fix: hostnames starting with a dash in bzr+ssh URLs
396
are now filtered out when using a subprocess SSH client.
398
Thanks to Augie Fackler for reporting.
399
(Jelmer Vernooij, #1710979)
401
* Mark all options as unicode. Allows using non-ASCII values in most
402
options. (Jelmer Vernooij, #563692)
404
* Support automatic rename tracking into new directories.
407
* Avoid writing directly to sys.stdout, but use self.outf in
408
Command implementations instead. (#268573, B. Clausius)
410
* It is now possible to version files with backslashes in their name
411
on platforms that support it. (Jelmer Vernooij, #81844)
413
* Support '0' markers in fastimport plugin. (Jelmer Vernooij, #1744615)
415
* Support adding/removing filenames that consist of just
416
backslashes in where backslash is not the path separator.
417
(Jelmer Vernooij, #176263, #165151)
419
* Report correct path in output of ``brz add``.
420
(Brian de Alwis, Jelmer Vernooij, #1799482)
422
* Don't report empty directories in git trees as changes.
423
(Jelmer Vernooij, #1804072)
425
* Fix support for 'brz ignore' in Git trees.
426
(Jelmer Vernooij, #1804053)
428
* Print a clearer error when GPG can't be found.
429
(Jelmer Vernooij, #1803898)
431
* Fix a corner case when moving files.
432
(Jelmer Vernooij, #533152)
434
* Fix fastexport output to standard output when
435
running under Python 3. (Jelmer Vernooij, #1805172)
437
* Restore absolute URLs in branch reference URLs. This is
438
needed for backwards compatibility with Bazaar.
439
(Jelmer Vernooij, #1803845)
441
* Don't report .git files as unknown files.
442
(Jelmer Vernooij, Debian Bug #921240)
444
* Raise better error when path subsegments lack =.
445
(Jelmer Vernooij, #891483)
447
* Display correct pull location argument in
448
output of ``brz uncommit``.
449
(Jelmer Vernooij, #386577)
454
* Various documents have been updated to explain that Breezy is a fork
457
* Documentation translations into Japanese, Spanish and Russian have been
458
removed since there are no current translators to update them.
461
* A quick introduction about using Breezy with GitHub has been added.
462
(Jelmer Vernooij, #1803867)
467
* bzrlib has been renamed to breezy. (Martin Packman, Jelmer Vernooij)
469
* Signature of ``load_tests`` used by ``TestLoader`` changed to be
470
compatible with standard libarary unittest. (Martin Packman)
472
* All previously deprecated functionality has been removed.
475
* ``CommitBuilder.record_entry_contents`` has been removed.
476
(Jelmer Vernooij, #731433, #604953)
478
* Renamed ``breezy.delta.report_delta`` parameter ``filter=`` to
479
``predicate=``. (Martin Packman)
481
* ``Branch.bzrdir``, ``Repository.bzrdir`` and ``WorkingTree.bzrdir``
482
have been renamed to ``Branch.controldir``, ``Repository.controldir``
483
and ``WorkingTree.controldir``, respectively.
484
(Jelmer Vernooij, #1695774)
486
* ``BzrBranch`` and the various bzr branch format implementations
487
have been moved to ``breezy.bzr``. (Jelmer Vernooij)
489
* ``MetaDirBranchFormatFactory`` has been removed.
490
Use lazy registration on ``breezy.branch.format_registry``
491
instead. (Jelmer Vernooij)
493
* ``breezy.bzrdir.format_registry`` has been removed; use
494
``breezy.controldir.format_registry`` instead.
497
* ``breezy.api`` has been removed. (Jelmer Vernooij, #742192)
499
* ``ControlDir.find_bzrdirs`` has been renamed to
500
``ControlDir.find_controldirs``. (Jelmer Vernooij)
502
* ``Repository.get_revisions`` no longer accepts ``None`` as
503
argument. (Jelmer Vernooij)
505
* A new ``Repository.iter_revisions`` method has been added.
508
* A new ``WorkingTreeFormat.supports_setting_file_ids`` property
509
has been added that can be set to False to indicate a working tree
510
doesn't support e.g. passing a file_id into ``WorkingTree.mkdir``.
511
(Jelmer Vernooij, #1707533)
513
* A new ``RepositoryFormat.supports_setting_revision_ids`` property
514
has been added that can be set to False to indicate a repository
515
doesn't support passing revision ids to ``CommitBuilder.commit``.
518
* A new ``RepositoryFormat.supports_overriding_transport`` property
519
has been added that can be set to False to indicate a repository
520
doesn't support passing an alternative transport to
521
``RepositoryFormat.open``.
524
* ``Repository.print_file`` and ``Branch.print_file`` have been removed.
527
* Various ``lock_write`` and ``lock_read`` functions now return a
528
context manager. (Jelmer Vernooij)
530
* The ``BranchWriteLockResult.branch_token`` (returned by
531
``Branch.lock_write``) has been renamed to
532
``BranchWriteLockResult.token``. (Jelmer Vernooij)
534
* ``breezy.decorators.needs_write_lock``,
535
``breezy.decorators.needs_read_lock`` and
536
``breezy.mutabletree.needs_tree_write_lock`` have been deprecated.
537
Instead, use the context managers returned by ``.lock_write``,
538
``.lock_read`` and ``.lock_tree_write`` respectively. (Jelmer Vernooij)
540
* ``Tree`` methods now take a ``path`` as primary key argument, rather
541
than a ``file_id``. ``file_id`` is still present as optional argument
542
for most functions, and can be specified to speed up lookups.
548
.. Major internal changes, unlikely to be visible to users or plugin
549
developers, but interesting for brz developers.
551
* Allow overriding of default HTTP headers by caller.
552
(Jelmer Vernooij, #1753734)
557
* Allow /dev/null to be a symlink to a chardev. (Igo Pashev, #832257)
559
* A test isolation issue in ``breezy.tests.test_ui`` was fixed,
560
which caused ``output_encoding = iso-8859-1`` to be added to the
561
users' bazaar.conf. (Jelmer Vernooij)
563
* Newer versions of ``pyftpdlib`` are now supported for running FTP tests.
566
* The ``--subunit`` argument for ``brz selftest`` has been renamed to
567
``--subunit1``, and a new argument ``--subunit2`` has been added that
569
(Jelmer Vernooij, #1699346, #661205)
571
* Launchpad plugin tests no longer try to connect to production
572
Launchpad. (Jelmer Vernooij, #723183)
574
* Set the ``GPGHOME`` environment variable during testing, to prevent
575
e.g. leaking keys into the users' GNUPG directory.
576
(Jelmer Vernooij, #843885)
578
* Allow some slack when comparing times.
579
(Jelmer Vernooij, #1804121)
581
* Fix a spuriously failing fastexport test due to dictionary
582
ordering. (Jelmer Vernooij, #1808630)
585
vim: tw=74 ft=rst ff=unix