#################### Breezy Release Notes #################### .. toctree:: :maxdepth: 1 brz 3.0.3 ######### :3.0.3: NOT RELEASED YET External Compatibility Breaks ***************************** .. These may require users to change the way they use Breezy. New Features ************ .. New commands, options, etc that users may wish to try out. Improvements ************ .. Improvements to existing commands, especially improved performance or memory usage, or better results. Bug Fixes ********* .. Fixes for situations where brz would previously crash or give incorrect or undesirable results. * Don't throw an error attempting to read the parent of a ref. (Jelmer Vernooij) * Fix fast-exporting of symlinks on Python 3. (Jelmer Vernooij, #1851478) * Don't rely on private transport attribute in fast-import. (Jelmer Vernooij, #1854607) * Fix conversion of time_t to int on certain platforms (arm64, armhf, ppc64el). (Jelmer Vernooij) Documentation ************* .. Improved or updated documentation. API Changes *********** .. Changes that may require updates in plugins or other code that uses breezy. Internals ********* .. Major internal changes, unlikely to be visible to users or plugin developers, but interesting for brz developers. Testing ******* .. Fixes and changes that are only relevant to brz's test framework and suite. This can include new facilities for writing tests, fixes to spurious test failures and changes to the way things should be tested. brz 3.0.2 ######### :3.0.2: 2019-11-19 External Compatibility Breaks ***************************** None. New Features ************ None. Improvements ************ None. Bug Fixes ********* * Disable loading from entrypoints by default, since it can significantly slow down startup on some platforms. (Jelmer Vernooij, #1832868) * Don't fail when unable to write per-user ignore list due to one of the intermediate directories not existing (Jelmer Vernooij, #1851904) * Fix file graph operations on Git repositories. (Jelmer Vernooij, #1847913) * Allow running tests without launchpadlib installed. (Jelmer Vernooij, #1849988) * Fix compatibility with Python 3.8. (Jelmer Vernooij, Victor Stinner, #1844684) Documentation ************* None API Changes *********** None. Internals ********* None. Testing ******* * Fix bb.test_testament.TestTestament.test_testament_non_ascii when the host encoding is non-utf8. (Jelmer Vernooij, #1849986) bzr 3.0.1 ######### :3.0.1: 2019-06-16 brz 3.0.1 is the second release of ``Breezy``, a fork of Bazaar. For more information, see our release announcement on the Bazaar mailing list and README. External Compatibility Breaks ***************************** None. New Features ************ None. Improvements ************ None. Bug Fixes ********* * Fix compatibility with newer versions of Dulwich (>= 0.19.12). (Jelmer Vernooij) * Fix a nasty corner case merging changes into a tree with changed symlinks when pushing from bzr into git. (Jelmer Vernooij) * Fix installation on Windows. (Raoul Snyman, #1818947) * Fix switching between branches while preserving uncommitted changes in git. (Jelmer Vernooij, #1820606) * Return consist errors from ``Branch.get_revid`` and ``Repository.get_revid_for_revno`` when the revision number is invalid. (Jelmer Vernooij, #701953) * Print full upgrade command to run when complaining about lack of support for tags. (Jelmer Vernooij, #163908) * Refactor auto conflict handling and add a ``--auto`` flag to ``bzr resolve``. (Martin Packman, #688506) Documentation ************* None. API Changes *********** None. Internals ********* None. Changed Behaviour ***************** None. Testing ******* None. brz 3.0.0 ######### :Codename: Pelican :3.0.0: 2019-03-06 brz 3.0.0 is the first release of ``Breezy``, a fork of Bazaar. For more information, see our release announcement on the Bazaar mailing list and README. External Compatibility Breaks ***************************** * The bzr command has been renamed to brz, to prevent clashes with upstream Bazaar. (Martin Packman, Jelmer Vernooij) * The --prefix/-p argument for ``brz diff`` now defaults to -p1 rather than -p0. (Jelmer Vernooij, #1695126) * The ``brz register-branch`` command from the Launchpad plugin has been removed, because it has not worked for at least five years: it relies on password authentication rather than SSO, the relevant systems no longer have firewall-level access to the outside world, and in general the Mirrored branch type is deprecated. Either just push the branch to Launchpad or use code imports instead (https://help.launchpad.net/VcsImports). (Colin Watson, #254567, #483689) * brz no longer supports building the C extensions using Pyrex. Only Cython is supported. (Jelmer Vernooij) * Support for HTTP support using "pycurl" and the associated URL schemes "http+pycurl://" and "https+pycurl://" has been dropped. (Jelmer Vernooij, #82086, #377389, #122258, #516222, #545776, #1696602) * Support for medusa for FTP tests has been dropped, only pyftpdlib is now supported. (Jelmer Vernooij) * The deprecated ``brz get`` and ``brz clone`` commands have been removed. (Jelmer Vernooij) * The setting to ignore missing C extensions has been changed from ``ignore_missing_extensions=True`` to ``suppress_warnings=missing_extensions``. (Jelmer Vernooij) * Remove format names as options to ``brz init`` and ``brz init-repository``.. Now you must use ``brz init --format=...``. This simplifies ``brz init --help``. (Neil Martinsen-Burrell, #330494) * ``python-gpg`` is now used for checking GPG signatures rather than ``python-gpgme``. (Jelmer Vernooij, #1702308) * ``python-gpg`` is now used for signing commits, rather than shelling out to the gnupg command. The ``gpg_signing_command`` option has been removed. (Jelmer Vernooij, #847388) * The ``bzr.transform.orphan_policy`` configuration option has been renamed to ``transform.orphan_policy``. (Jelmer Vernooij) * Backslash (\) is no longer accepted as a path separator on platforms where it is not the default path separator, e.g. POSIX systems. This is so that filenames with backslashes in their name can be added explicitly. (#176263, #165151) * One-letter shortcuts for Ubuntu releases are no longer supported after 'ubuntu:'. Bazaar's mapping for one-letter distroseries had not been updated since natty. (Jelmer Vernooij) * The ``brz lp-mirror-branch`` subcommand has been removed. Please use the ``lp-force-branch-mirror`` command from the lptools package instead. (Jelmer Vernooij, #518807) * Up-to-date checking for Bazaar packaging branches is no longer performed, since there are no longer any automated imports. (Jelmer Vernooij) * ``setuptools`` is now required to build and install Breezy. (Jelmer Vernooij) New Features ************ * The 'bisect' plugin is now shipped with brz. (Jelmer Vernooij) * The 'fastimport' plugin is now bundled with Breezy. (Jelmer Vernooij) * The ``grep`` plugin has been merged into Breezy. (Parth Malwankar, Martin Packman, Jelmer Vernooij) * The 'stats' plugin is now bundled with Breezy. (Jelmer Vernooij) * The 'upload' plugin is now bundled with Breezy. (Jelmer Vernooij) * The 'cvs' and 'mtn' plugins are now bundled with Breezy. (Jelmer Vernooij) * The 'email' plugin is now bundled with Breezy. (Jelmer Vernooij) * The 'import' command is now bundled with brz. Imported from bzrtools by Aaron Bentley. (Jelmer Vernooij, #773241) * The 'link-tree' command is now bundled with brz. Imported from bzrtools by Aaron Bentley. (Jelmer Vernooij) * The 'fetch-ghosts' command is now bundled with brz. Imported from bzrtools by Aaron Bentley. (Jelmer Vernooij) * The 'commitfromnews' plugin is now bundled and can be enabled by setting ``commit.template_from_files = NEWS``. (Jelmer Vernooij) * The 'darcs' plugin is now bundled. (Jelmer Vernooij) * The functionality from ``bzr-guess`` is now merged into Breezy. It will provide suggestions if the user typoes a command. (Jelmer Vernooij) * Support the creation of colocated branches in ``brz fast-import``. (Jelmer Vernooij, #1744626) * New ``lp-logout`` command to unset launchpad username. (Jelmer Vernooij, #349143) * Plugins can now be registered using the 'entrypoints' mechanism in setuptools. (Jelmer Vernooij, #1802647) * The Breezy UI now handles RCP-style URLs and suggests the user specify either ``git+ssh`` or ``bzr+ssh``. (Jelmer Vernooij) Improvements ************ * Doc generators now support the SOURCE_DATE_EPOCH environment variable (https://reproducible-builds.org/specs/source-date-epoch/). (Jelmer Vernooij) * The ``repodebug`` plugin is now bundled. (Jelmer Vernooij) * New ``brz cp`` command which copies files (but does not currently track history). (Jelmer Vernooij, start towards #269095) * HPSS calls for ``RevisionTree.archive`` and ``RevisionTree.annotate_iter`` have been added. (Jelmer Vernooij, #897781) * Branches with symlinks are now supported on Windows. Symlinks are ignored by operations like branch, diff etc. with a warning as Symlinks are not created on Windows. (Parth Malwankar, #81689) * New ``lp+bzr://`` URL scheme for Bazaar-only branches on Launchpad. (Jelmer Vernooij) * Report colocated branch information in ``brz info``. (Jelmer Vernooij, #1803846) Bug Fixes ********* * Support Server Name Indication (SNI) when talking to https servers. Cherry-picked from lp:~vila/bzr/1089352-sni-support (Vincent Ladeuil, #1089352) * The ``bisect`` command now works in non-``.bzr`` directories. (Jelmer Vernooij) * When creating ``authentication.conf``, umask is now set so only the current user can read the file. Breezy warns if the file is accessible for other users when it starts. (Joke de Buhr, Jelmer Vernooij, #475501) * Support ``brz commit -x`` in combination with iter_changes. (Jelmer Vernooij, #796582, #403811, #694946, #268135, #299879) * Print a proper error when encountering ghost revisions in mainline in ``brz log``. (Jelmer Vernooij, #726466) * Security fix: hostnames starting with a dash in bzr+ssh URLs are now filtered out when using a subprocess SSH client. . Thanks to Augie Fackler for reporting. (Jelmer Vernooij, #1710979) * Mark all options as unicode. Allows using non-ASCII values in most options. (Jelmer Vernooij, #563692) * Support automatic rename tracking into new directories. (mnn, #373319) * Avoid writing directly to sys.stdout, but use self.outf in Command implementations instead. (#268573, B. Clausius) * It is now possible to version files with backslashes in their name on platforms that support it. (Jelmer Vernooij, #81844) * Support '0' markers in fastimport plugin. (Jelmer Vernooij, #1744615) * Support adding/removing filenames that consist of just backslashes in where backslash is not the path separator. (Jelmer Vernooij, #176263, #165151) * Report correct path in output of ``brz add``. (Brian de Alwis, Jelmer Vernooij, #1799482) * Don't report empty directories in git trees as changes. (Jelmer Vernooij, #1804072) * Fix support for 'brz ignore' in Git trees. (Jelmer Vernooij, #1804053) * Print a clearer error when GPG can't be found. (Jelmer Vernooij, #1803898) * Fix a corner case when moving files. (Jelmer Vernooij, #533152) * Fix fastexport output to standard output when running under Python 3. (Jelmer Vernooij, #1805172) * Restore absolute URLs in branch reference URLs. This is needed for backwards compatibility with Bazaar. (Jelmer Vernooij, #1803845) * Don't report .git files as unknown files. (Jelmer Vernooij, Debian Bug #921240) * Raise better error when path subsegments lack =. (Jelmer Vernooij, #891483) * Display correct pull location argument in output of ``brz uncommit``. (Jelmer Vernooij, #386577) Documentation ************* * Various documents have been updated to explain that Breezy is a fork of Bazaar. * Documentation translations into Japanese, Spanish and Russian have been removed since there are no current translators to update them. (Jelmer Vernooij) * A quick introduction about using Breezy with GitHub has been added. (Jelmer Vernooij, #1803867) API Changes *********** * bzrlib has been renamed to breezy. (Martin Packman, Jelmer Vernooij) * Signature of ``load_tests`` used by ``TestLoader`` changed to be compatible with standard libarary unittest. (Martin Packman) * All previously deprecated functionality has been removed. (Jelmer Vernooij) * ``CommitBuilder.record_entry_contents`` has been removed. (Jelmer Vernooij, #731433, #604953) * Renamed ``breezy.delta.report_delta`` parameter ``filter=`` to ``predicate=``. (Martin Packman) * ``Branch.bzrdir``, ``Repository.bzrdir`` and ``WorkingTree.bzrdir`` have been renamed to ``Branch.controldir``, ``Repository.controldir`` and ``WorkingTree.controldir``, respectively. (Jelmer Vernooij, #1695774) * ``BzrBranch`` and the various bzr branch format implementations have been moved to ``breezy.bzr``. (Jelmer Vernooij) * ``MetaDirBranchFormatFactory`` has been removed. Use lazy registration on ``breezy.branch.format_registry`` instead. (Jelmer Vernooij) * ``breezy.bzrdir.format_registry`` has been removed; use ``breezy.controldir.format_registry`` instead. (Jelmer Vernooij) * ``breezy.api`` has been removed. (Jelmer Vernooij, #742192) * ``ControlDir.find_bzrdirs`` has been renamed to ``ControlDir.find_controldirs``. (Jelmer Vernooij) * ``Repository.get_revisions`` no longer accepts ``None`` as argument. (Jelmer Vernooij) * A new ``Repository.iter_revisions`` method has been added. (Jelmer Vernooij) * A new ``WorkingTreeFormat.supports_setting_file_ids`` property has been added that can be set to False to indicate a working tree doesn't support e.g. passing a file_id into ``WorkingTree.mkdir``. (Jelmer Vernooij, #1707533) * A new ``RepositoryFormat.supports_setting_revision_ids`` property has been added that can be set to False to indicate a repository doesn't support passing revision ids to ``CommitBuilder.commit``. (Jelmer Vernooij) * A new ``RepositoryFormat.supports_overriding_transport`` property has been added that can be set to False to indicate a repository doesn't support passing an alternative transport to ``RepositoryFormat.open``. (Jelmer Vernooij) * ``Repository.print_file`` and ``Branch.print_file`` have been removed. (Jelmer Vernooij) * Various ``lock_write`` and ``lock_read`` functions now return a context manager. (Jelmer Vernooij) * The ``BranchWriteLockResult.branch_token`` (returned by ``Branch.lock_write``) has been renamed to ``BranchWriteLockResult.token``. (Jelmer Vernooij) * ``breezy.decorators.needs_write_lock``, ``breezy.decorators.needs_read_lock`` and ``breezy.mutabletree.needs_tree_write_lock`` have been deprecated. Instead, use the context managers returned by ``.lock_write``, ``.lock_read`` and ``.lock_tree_write`` respectively. (Jelmer Vernooij) * ``Tree`` methods now take a ``path`` as primary key argument, rather than a ``file_id``. ``file_id`` is still present as optional argument for most functions, and can be specified to speed up lookups. (Jelmer Vernooij) Internals ********* .. Major internal changes, unlikely to be visible to users or plugin developers, but interesting for brz developers. * Allow overriding of default HTTP headers by caller. (Jelmer Vernooij, #1753734) Testing ******* * Allow /dev/null to be a symlink to a chardev. (Igo Pashev, #832257) * A test isolation issue in ``breezy.tests.test_ui`` was fixed, which caused ``output_encoding = iso-8859-1`` to be added to the users' bazaar.conf. (Jelmer Vernooij) * Newer versions of ``pyftpdlib`` are now supported for running FTP tests. (Jelmer Vernooij) * The ``--subunit`` argument for ``brz selftest`` has been renamed to ``--subunit1``, and a new argument ``--subunit2`` has been added that outputs subunit v2. (Jelmer Vernooij, #1699346, #661205) * Launchpad plugin tests no longer try to connect to production Launchpad. (Jelmer Vernooij, #723183) * Set the ``GPGHOME`` environment variable during testing, to prevent e.g. leaking keys into the users' GNUPG directory. (Jelmer Vernooij, #843885) * Allow some slack when comparing times. (Jelmer Vernooij, #1804121) * Fix a spuriously failing fastexport test due to dictionary ordering. (Jelmer Vernooij, #1808630) .. vim: tw=74 ft=rst ff=unix