37
41
* New HPSS call for ``Repository.reconcile``. (Jelmer Vernooij, #894455)
43
* Merge now has two new hooks ``pre_merge`` and ``post_merge``
44
that are called before and after a merge and can make
45
additional modifications to the trees involved.
46
(Jelmer Vernooij, #906877)
48
* Override the value returned by ``sys.getfilesystemencoding()`` for the bzr
49
script to utf-8 when it would otherwise be ascii on a posix system. This
50
will mean bzr works with non-ascii files when no locale or an incorrect
51
locale is set. (Martin Packman, #794353)
53
* ``bzr branches`` now indicates the active colocated branch.
54
(Jelmer Vernooij, #891667)
56
* ``bzr push`` now suggests using :parent if there is a parent location
57
set. (Jelmer Vernooij)
59
* ``bzr send`` now only opens a single connection, rather than two,
60
to the target branch. (Jelmer Vernooij)
45
68
* Allow configuration option default value to be a python callable at
46
69
registration. (Vincent Ladeuil, #832064)
71
* ``bzr config`` will now display the section ``[DEFAULT]`` used in
72
``bazaar.conf``. (Vincent Ladeuil, #907268)
74
* Configuration stores can now provides a specific quoting mechanism. This
75
is required to workaround ``configobj`` conflating quoting and list values
76
automatic conversion. (Vincent Ladeuil, #906897)
48
78
* Create obsolete_packs directory when repacking if it does not
49
79
exist. (Jonathan Riddell, Jelmer Vernooij, #314314)
81
* Fallback to the slower ``bzr log`` implementation when displaying a range
82
of revisions whose ancestry is not obviously on the same developement
83
line. (Vincent Ladeuil, #904744)
85
* Make lazy imports resilient when resolved concurrently from multiple
86
threads. Now the stand-in object will behave as a proxy for the real object
87
after the initial access, rather than throwing. Assigning the object to
88
multiple names should still be avoided. (Martin von Gagern, #396819)
90
* Not setting ``gpg_signing_key`` or setting it to ``default`` will use the
91
user email (obtained from the ``email`` configuration option or its
92
default value). (Vincent Ladeuil, Jelmer Vernooij, #904550)
94
* Prevent spurious InconsistentDelta error when committing a move of a
95
non-ascii directory with contents. (Rory Yorke, #185211)
51
97
* Properly ignore '\n' in an option reference since this cannot be part of a
52
98
config option identifier. (Vincent Ladeuil, #902125)
100
* Make sure that the bzr probers are always registered when
101
bzrlib.workingtree is imported. (Jelmer Vernooij, #905218)
103
* Report mistake trying to move a removed file with a non-ascii name without
104
UnicodeEncodeError being raised. (Martin Packman, #898541)
106
* Safely unquote configuration values in weird edge cases (a section seen as
107
a dictionary which is not a supported use case for the configuration
108
stacks). (Vincent Ladeuil, #908050)
110
* Stop altering ``sys.platform`` on OSX when initialising the locale.
111
(Martin Packman, #570495)
113
* Uncommit no longer removes tags if they are part of the working
114
trees pending merges. (Jelmer Vernooij, #905462)
62
124
.. Changes that may require updates in plugins or other code that uses
127
* ``Config.signature_needed``, ``Config.signing_policy``,
128
``Config.gpg_signing_key``, ``Config.gpg_signing_command``,
129
``Config.checking_policy`` and ``Config.post_commit`` are now deprecated.
132
* ``Repository.get_commit_builder`` now takes a ``config_stack``
133
rather than a ``config`` argument. (Jelmer Vernooij)
135
* Scripts using bzrlib should now ensure setlocale is called on posix
136
platforms if they need a non-ascii user encoding. (Martin Packman)
138
* Send formats now accept a new optional argument ``submit_branch``,
139
which can be None or a Branch object for the submit branch location.
142
* ``VersionedFileRepository.add_revision`` no longer takes a ``config``
143
argument. (Jelmer Vernooij)
68
148
.. Major internal changes, unlikely to be visible to users or plugin
69
149
developers, but interesting for bzr developers.
151
* ``bzrlib.urlutils`` now includes ``quote`` and ``unquote`` functions,
152
rather than importing them from ``urllib``. This prevents loading
153
of the ``socket``, ``ssl`` and ``urllib`` modules for
154
local bzr operations. (Jelmer Vernooij)
156
* Configuration options can be SI units by using ``int_SI_from_unicode`` as
157
their ``convert_from_unicode`` helper. (Vincent Ladeuil)
159
* Configuration stores can now save incremental changes by using
160
``save_changes()`` instead of ``save()``. This reduces the number or
161
required input/outputs and allows stores to be shared between
162
stacks. (Vincent Ladeuil)
71
164
* ControlDir now has a get_branches method that returns a dictionary
72
165
whose keys are the names of the branches and whose values are the
73
166
branches themselves. The active branch uses the key None.
74
167
(Neil Martinsen-Burrell)
169
* Helper ``osutils.path_from_environ`` added for extracting a unicode path
170
from an environment variable. (Martin Packman, #832028)
172
* Helper ``win32utils.get_environ_unicode`` added for avoiding encoding
173
problems with ``os.environ.get`` use. (Martin Packman, #262874)
175
* Lazy imports can now only be absolute. (Jelmer Vernooij)
177
* Merge3Mergers now have an optional ``other_branch`` argument
178
which contains the branch from which the ``other_tree``
179
was obtained, if any. (Jelmer Vernooij)
181
* MutableTree now has a hook ``post_build_tree`` which is called after
182
a new mutable tree has been created. (Jelmer Vernooij, #912765)
184
* New HPSS call ``BzrDir.checkout_metadir``. (Jelmer Vernooij, #894459)
186
* New HPSS call ``VersionedFileRepository.get_inventories``,
187
speeding up various commands including ``bzr export``,
188
``bzr checkout`` and ``bzr cat``. (Jelmer Vernooij, #608640)
190
* The ``ConfigCommandLineStore`` is now supported by ``bzr config`` and is
191
seen as single no-name section of configuration options. (Vincent Ladeuil)
80
197
suite. This can include new facilities for writing tests, fixes to
81
198
spurious test failures and changes to the way things should be tested.
200
* New matcher ``ContainsNoVfsCalls`` which filters a list of HPSS
201
calls for VFS requests. (Jelmer Vernooij)
203
* New ``MemoryStack`` class allows for diskless tests and locally injected
204
configuration stacks. Lower level tests for predefined set of options can
205
be written without setting up configuration files. (Vincent Ladeuil)
189
317
unreserved characters are unquoted in URLs. (Martin Packman, #842223)
191
319
* Split segments from URLs for colocated branches without assuming the
192
combined form is a valid. (Martin Packman, #842233)
320
combined form is valid. (Martin Packman, #842233)
194
322
* Support looking up revision numbers by revision id in empty branches.
195
323
(Jelmer Vernooij, #535031)
255
383
``Repository.get_revision_signature_text``.
256
384
(Jelmer Vernooij)
386
* Add HPSS call for ``Branch.get_checkout_format``. (Jelmer Vernooij, #894459)
388
* Add HPSS call for ``Repository.pack``. (Jelmer Vernooij, #894461)
390
* Add HPSS calls for ``Repository.iter_files_bytes``, speeding up
391
several commands including ``bzr export`` and ``bzr co --lightweight``.
392
(Jelmer Vernooij, #608640)
394
* Custom HPSS error handlers can now be installed in the smart server client
395
using the ``error_translators`` and ``no_context_error_translators``
396
registries. (Jelmer Vernooij)
258
398
* ``RemoteBranch.get_config_stack`` and ``RemoteBzrDir.get_config_stack``
259
399
will now use HPSS calls where possible. (Jelmer Vernooij)
265
405
* The registry of merge types has been moved to ``merge`` from ``option`` but
266
406
``merge.get_merge_type_registry`` remains as an accessor. (Martin Packman)
408
* All bzr control directories, branch formats, repository formats and
409
working tree formats now support feature flags, which are
410
serialized in their respective format files. See
411
``doc/developers/feature-flags.txt`` for details.