Log message:
duplicity: Update to 3.0.7
upstream changes:
-----------------
rel.3.0.7 / 2025-12-31
* ad175c22:fix: replace custom deltree with built-in shutil.rmtree.
* 101be7fd:fix: delete duplicate code in DirDelta.
* c0d3e72d:fix: webdavs with "--concurrency 1" failed because of \
missing auth header
* a08f8bef:fix: disable s3 checksum workaround, warn only...
* f7055a7a:fix: --log-timestamp no longer working.
* ac163d5e:fix: Combined fix to related issues 912 and 914
rel.3.0.6.3 / 2025-12-05
* dd45a92d:chg: Update check_tags to use current branch.
* 5bbb5813:fix: Change log level from Info to Notice in get_passphrase().
* a9c4fbad:chg: Add key_needs_passphrase(key).
* abaf8485:chg: Better error message from get_remote_file().
* b083fca8:fix: 'duplicity --no-check-remote inc' prints spurious warning \
"found missing difftar(s) in backup sets"
* 9400fc37:chg: Add check_tags minor fix to setversion.
* 29227571:fix: delete unused diffdir.DirSig, diffdir.SigTarBlockIter, \
librsync.SigFile.
* 29205145:fix: Delete unused IndexedTuple.
* b0653566:fix: Delete unused Patch, patch_diff_tarfile, PathPatcher.
* bd2742f6:fix: Delete unused Patch_from_iter.
* 41ffec77:chg: Merge branch 'unusedbvr' into dev
* 540f2c04:chg: Fix .gitlab-ci.yml
* 9324947e:fix: delete unused BadVolumeException.
|
Log message:
duplicity: Update to 3.0.6.2
upstream changes:
-----------------
rel.3.0.6.2 (2025-11-20)
Changes
* Fix merge conflict resolution error. [Kenneth Loafman]
* Add tty to Docker images for colored output. [Kenneth Loafman]
* Changes from Thomas’s review. See MR 318. [Kenneth Loafman]
Fix
* Remove test not running under Docker. [Kenneth Loafman]
* Don’t check for missing in first CollectionStatus().set_values(). [Kenneth \
Loafman]
* Fix “full” not working. Add more tests. [Kenneth Loafman]
* Fix “Upgrade to 3.0.6 on Archlinux gives gcry_kdf_derive failed” (#901) \
[Kenneth Loafman]
* Ssh_pexpect_backend: fix TypeError. [Martin Wilck]
* Fix compilation with gcc 15. [Martin Wilck]
* –files-from fails when backing up root. [Jindřich Makovička]
* Crash with b2backend when b2sk isn’t available, rather than proper error. [ede]
* Fixes #905.
* Parsing the gpg version failed when using Sequoia Chameleon. [ede]
* Remove test not running under Docker. [Kenneth Loafman]
* Don’t check for missing in first CollectionStatus().set_values(). [Kenneth \
Loafman]
* Fix “full” not working. Add more tests. [Kenneth Loafman]
* Fix “Upgrade to 3.0.6 on Archlinux gives gcry_kdf_derive failed” (#901) \
[Kenneth Loafman]
rel.3.0.6.1 (2025-11-13)
Changes
* Revert “chg:pkg: Cleanup the build system.” [Kenneth Loafman]
* This reverts commit 3547dc29
* Fixes #899.
* Changes to .gitchangelog.rc. [Kenneth Loafman]
Fix
* Use the same executable as parent. [Kenneth Loafman]
* Fix test_restore_to_nonexisting_dir(). [Kenneth Loafman]
* Add sorted() around listdir()
* Fixes #898.
* Regression in pexpect+sftp backend. [Kenneth Loafman]
* This reverts commit 186ffcac
* fixes #903.
* Unpin httplib2 but add pysocks needed for proxy support… [ede]
* Pin httplib2 for HTTP(S)_PROXY env var support. [ede]
rel.3.0.6 (2025-11-02)
New
* Set black>=24.8.0. [Kenneth Loafman]
Changes
* Run po/update-pot. [Kenneth Loafman]
* Cleanup the build system. [Kenneth Loafman]
o Manually apply fixes from @branchv MR 301.
o Leave ./setup.py build_ext as is.
o setuptools needs to be in requirements.txt not .dev for cibuildwheel to \
set up his environment.
* Fix .gitchangelog.rc. [Kenneth Loafman]
* Fix wheels publish. [Kenneth Loafman]
* Misc build tools upgrades. [Kenneth Loafman]
* Add error message to raw assert statements. [Kenneth Loafman]
* Remove may fail py3.14. [Kenneth Loafman]
* Use python:314 not -rc. [Kenneth Loafman]
* Use python -m build –sdist. [Kenneth Loafman]
* Add recent .dev versions to CHANGELOG.md. [Kenneth Loafman]
* Add py314 to wheels build. [Kenneth Loafman]
* Better assert error message. [Thomas Laubrock]
* Fix chdir() in tools/setversion. [Kenneth Loafman]
* Move SetVersionCommand to tools/setversion. [Kenneth Loafman]
* Don’t check versions under pytest. [Kenneth Loafman]
* Fix/add TODO’s for argparse311. [Kenneth Loafman]
* Mark test_GzipWriteFile as xfail, may fail. [Kenneth Loafman]
o xfail because random data may cause Compression Failure.
* Only run on py39 thru py314. [Kenneth Loafman]
* Change version max to 3.13. [Kenneth Loafman]
* Updates to wheels build. [Kenneth Loafman]
* Upload manylinux wheels to PyPi. [Kenneth Loafman]
o supports python 39,310,311,312,313 arches x86_64, aarch64 on Linux
o supports python 39,310,311,312,313 arches x86_64, arm64 on macOS.
* More changes for Docker testing. [Kenneth Loafman]
* Boto3 1.36+ breaks Duplicity…but there is a workaround. [ede]
* Add regression test for #881. [Catalin Patulea]
* Docker changes ported from issue815. [Kenneth Loafman]
* A number of changes to testing/docker in issue815 that need to be released \
separately.
Fix
* Fix so readthedocs.io builds. [Kenneth Loafman]
* Gdrive dies with 503 during init. [ede]
* Fixes #895.
* ‘duplicity incremental’ attempts to fetch remote manifest which is not \
needed for the current backup. [Kenneth Loafman]
* Fixes #891.
* If using authentication, send warmup OPTIONS request. [Catalin Patulea]
* This avoids an edge case with –no-check-remote, HTTP authentication and a \
cpython bug (https://github.com/python/cpython/issues/70107) which can cause \
ConnectionResetError – see details in: \
https://gitlab.com/duplicity/duplicity/-/merge_requests/320#note_2818250084.
* ‘duplicity incremental’ attempts to fetch remote manifest which is not \
needed for the current backup. [Kenneth Loafman]
o extended option –no-check-remote
o faked collection-status out with local metadata
o neutered the check for missing difftar volumes
o Fixes #891.
* Fix removal of signature from latest backup. [Thomas Laubrock]
* Fix test_out_of_order_volume() in concurrency. [Thomas Laubrock]
* Black to run on py314. [Kenneth Loafman]
* Fix check for optimization. [Kenneth Loafman]
* Isolate .pytest_cache using volumes. [Kenneth Loafman]
* Minor s3 clarification. [ede]
* Fix check for optimization. [Kenneth Loafman]
* Collection-status with a specific file fails with TypeError. [Kenneth Loafman]
* Duplicity verify fails with KeyError. [Kenneth Loafman]
o Fixes #815
o Optimizes imports
o Misc. test/doc fixes.
* Restore a file to directory fails and empties target directory - related to \
#111. [Kenneth Loafman]
* Add gpg to install lists. [Kenneth Loafman]
* GPG test fixes from issue815. [Kenneth Loafman]
* Make swiftbackend imports global. [Kenneth Loafman]
* Fixes #886.
* Multi backend: if we looped around, and any passed, break out. [Catalin Patulea]
* Fix:usr: make @retry report fatals as exceptions, not log.FatalError. \
[Catalin Patulea]
* Final retry exceptions are now passed up to the handler in main.py.
* This fixes #881 where the outer ‘multi’ backend actually wants to catch \
the exception (onfail=continue) instead of exiting the process.
* Based on the preparation in earlier commits, this commit does not affect the \
process exit code, it’s still backend_error.
* Handling of such exceptions in multiprocessing parent/child process is now \
the same and no longer requires a special case.
* This will enable more cleanups in future commits.
* On uncaught BackendException, make the exit code backend_error (50). \
[Catalin Patulea]
* BackendException handler was added in March 2009 (commit 2d37baa3). Not \
clear if exit code user_error was intentional or copy/paste from the ‘except \
UserError’ block above.
* This is in preparation to modify @retry to pass fatal exceptions up, instead \
of immediately exiting using log.FatalError, while keeping the same exit code.
* Fix typo in collection-status –jsonstat example. [Catalin Patulea]
* Revert “use pyproject plugin for ppa” [Kenneth Loafman]
* This reverts commit 4dc57cc0.
* Use pyproject plugin for ppa. [Branch Vincent]
* Relanding 3683aa4d after fixing the debian package for #877. Before, debian \
used the legacy setup.py install method, meaning none of the metadata in \
pyproject.toml was used (including scripts, hence the need for workarounds like \
4636e043308e79bfd693c40f6c8076d5e5680d2d). To fix:
o Opt-in to using a PEP 517 build by depending on pybuild-plugin-pyproject \
(following the guidance of pybuild’s manpage)
o Replace other various invocations of setup.py with the same build frontend.
* Fix TotalDestinationSizeChange with concurrency. [Martin Wilck]
* With –concurrency n (n > 1), duplicity always prints \
TotalDestinationSizeChange 0 (0 bytes).
* Fix it by returning bytes_written from collect_put_results(). Fixes #880.
* Pexpect+sftp: support absolute path in URL. [Martin Wilck]
* Fix it by stripping only a single / from parsed_url.path.
* Fixes #879.
Other
* Chr:usr: remove ‘are_errors_fatal’ mechanism, no longer needed. [Catalin \
Patulea]
* Since the recent commit to raise @retry final errors as exceptions, \
are_errors_fatal mechanism is no longer needed, we can use a normal ‘except’ \
block.
|
Log message:
duplicity: Update to 3.0.5.1
upstream changes:
-----------------
rel.3.0.5.1 (2025-06-25)
Changes
* Fixes for LP builds. See #877 (closed). [Kenneth Loafman]
Fix
* Revert "Fix build-system.requires and requirements.txt" [Kenneth \
Loafman]
This reverts commit 3683aa4d.
rel.3.0.5 (2025-06-19)
New
* Add basic Ubuntu LTS Docker builds. [Kenneth Loafman]
Changes
* Run po/update-pot. [Kenneth Loafman]
* Changes to support Ubuntu 20.04. [Kenneth Loafman]
move setuptools back to version 68.1.0
o add py38 test to CI
* Add ENODEV to list of "robust" ignored exceptions. [Michael Terry]
This is a "No such device" error and can happen for example when a
NAS mount folder is unavailable.
A deja-dup user hit this with a dir like /truenas that was unavailable.
* Delete unused CollectionsStatus.action variable. [Catalin Patulea]
Added in 754b34bf but no longer needed for that purpose.
* Fix tools/makesnap. CLI changes. [Kenneth Loafman]
* Document --use-gpgsm flag in man page. [Catalin Patulea]
Related to #866 (closed)
* Delete unused BackupSet.action variable. [Catalin Patulea]
It was introduced in commit 754b34bf as an optimization.
Uses of it varied over time (commits 606fb53e, 33668f95, 83dda9b6) but is
currently unused.
* Support gpg binary 'gpgsm'. [Catalin Patulea]
Fixes #866 (closed)
* Accept GPG user id formats other than hex. [Kenneth Loafman]
https://www.gnupg.org/documentation/manuals/gnupg/Specify-a-User-ID.html
* Add env var BACKEND_PASSWORD, deprecate FTP_PASSWORD. [ede]
* Restore backends. Set setuptools<78.0.0. [Kenneth Loafman]
* Issue883.sh ==> issue863.sh. [Kenneth Loafman]
* Move import in function to __init__(). [Kenneth Loafman]
* PyPA struck again. 'positional' does not build now. [Kenneth Loafman]
* Enhance Docker testing. [Kenneth Loafman]
* Simplify snap by not packaging python but using core24's python
instead... [ede]
* Fix issue103.sh and add issue103-conc.sh. [Kenneth Loafman]
* Improve contact points. [Kenneth Loafman]
o pyproject.toml has the biggest set. Added URLs, etc.
o lots of 1-liners removing select email addresses.
o correct multi-line copyright statements.
Fix
* Fix build-system.requires and requirements.txt. [Branch Vincent]
o Moves setuptools from requirements.txt to requirements.dev, since neither
setuptools nor pkg_resources is used/imported at runtime. Some dev
scripts still execute setup.py directly (which is deprecated) or else we
could remove it entirely and just rely on PEP 517's build reqs
o Remove unused requirements from the build-system.requires table. These
requirements are only what's needed by the build backend, which in this
case is setuptools and thus whatever setup.py needs to import
o Removes python-gettext (which provides a pythongettext package) from
requirements.txt, which was unused (only the stdlib's gettext package is
currently used)
o Simplifies pyproject.toml's tool.setuptools.packages.find metadata and
removes the duplication from setup.py
o Updates CI to test a PEP 517 build rather than directly executing
setup.py and adds a dev extra for convenience
* Fix handling of .p7m filename suffix during sync. [Catalin Patulea]
* Cache negative getpwnam/getgrnam lookups. [Arda Gürcan]
Fixes #875 (closed)
* Fix gpgsm version check. [Catalin Patulea]
* Incompatible with par2cmdline v1.0.0. [ede]
fixes #871 (closed)
* Allow the full range of time formats as arguments to --full-if-older-
than. [Timothy Allen]
Fixes #869 (closed)
* Fix problems with password request and metadata sync. [Kenneth Loafman]
o skip sync on full. not needed.
o skip password prompt if full and has encrypt keys.
* Snapcraft.io didn't like us to symlink core24's python... [ede]
* "OverflowError: bytes object is too large to make repr" see issue 862.
[ede]
* Prevent webdav log password at info log level... [ede]
o lower logging of requests etc. to debug level
o munge password in url in startup parameters
o do not print auth headers in Webdav
rel.3.0.4.1 (2025-02-26)
New
* Introduce core24 snaps now in even more flavor errr archs... [ede]
namely amd64, arm64, armhf, ppc64el, riscv64, s390x
Changes
* Replace 4 short files with 4 lines in build.sh. [Kenneth Loafman]
* Delete unneeded tools. [Kenneth Loafman]
* Run po/update-pot. [Kenneth Loafman]
Fix
* Par2 files for vol1.difftar not being created when --concurrency is
set. [Thomas Laubrock]
fixes #858 (closed)
* Fix typo in previous. [Kenneth Loafman]
* Suppress deprecation error for core20 snap users. [Kenneth Loafman]
|
Log message:
duplicity: Update to 3.0.4
upstream changes:
-----------------
rel.3.0.4 (2025-02-08)
New
* Support for Microsoft Azure "Cold" blob storage tier. [Thomas Kent]
Changes
* Emulate CI for duplicity testing. [Kenneth Loafman]
* Allow to build with py3.13.x. [Rui Chen]
Fix
* Fix snap PATH handling... [ede]
to allow usage custom backend binaries e.g. in /snap/bin unified launcher
script moved PATH handling there to correctly handle empty PATH vars
fixes issue #855 (closed)
* SNAPCRAFT_BUILD_FOR unbound error when building snap on Ubuntu24. [ede]
* Allow for python versions 3.12+ e.g. 3.12.8. [ede]
* INFO and DEBUG messages when verbosity is warning. [Kenneth Loafman]
fixes #851 (closed)
* Fix typo in pip command. [Alexis Urien]
rel.3.0.3.2 (2024-11-25)
Changes
* Improve round512 method docstring. [ede]
* Remove 'test' mentions from setup.py. [Kenneth Loafman]
* Set dev version for LP. [Kenneth Loafman]
* Fix so amd64 snaps build with tahoe support. [Kenneth Loafman]
* Set dev version for LP. [Kenneth Loafman]
Fix
* Concurrency without setting verbosity throws exception. [Kenneth Loafman]
* Argument --max-blocksize: invalid round512 value. [Kenneth Loafman]
* Fix handling of zero length files for older librsync versions. [edeso]
Fixes #848 (closed)
rel.3.0.3.1 (2024-11-19)
Changes
* Fix .gitchangelog.rc for 4 digit version. [Kenneth Loafman]
* Fix so amd64 snaps build with tahoe support. [Kenneth Loafman]
Fix
* Fix handling of zero length files for older librsync versions. [edeso]
Fixes #848 (closed)
rel.3.0.3 (2024-11-17)
Changes
* Run po/update-pot. [Kenneth Loafman]
* Move config from code to pyproject.toml. [Kenneth Loafman]
* Fix docs for --max-blocksize. [Kenneth Loafman]
* Upgrade black to 24.10.0 for py313. [Kenneth Loafman]
* Allow Python 3.13 to install. [Kenneth Loafman]
* Some code test changes. [Kenneth Loafman]
o move pylint to pyproject.toml
o remove giobackend.py from files to test
* High memory usage when creating duplicity backup of a single very
large file. [Kenneth Loafman]
Return a reasonable block size to use on files of length file_len
If max_blocksize==N is supplied use it, otherwise use the
integer square root of file_len as the block size.
Block size is rounded up to the nearest 512 byte boundary.
* Fix problem with reading ".../progress" file after aborted. \
[Charles Lane]
This is mentioned in (long ago!) issue #80 (closed) I've hit the same
problem many times, so tracked it down with a fix.
Fix problem with reading ".../progress" file after aborted backup \
run. This
results in an error message (and lack of %backup) when using the --progress
command line option.
Note that the code to save the "progress" file worked fine, and \
this change
is so that reading the "progress" file is similar: making the path \
to the
"progress" file, and having the "b" flag for binary i/o.
Fixes #80 (closed)
* Allow failure on py13 test. [Kenneth Loafman]
* Revert gdocsbackend.py. Remove TODO's. [Kenneth Loafman]
* Fix requirements for upcoming atom release. [Kenneth Loafman]
o 0.10.5 or earlier for python <= 3.12
o 0.11.0 or later for python >= 3.13
* Turn off atom for py313. [Kenneth Loafman]
o add error for py313 in gdocksbackend.py
o Only used by gdocsbackend.py
o fails install on py313.
* Temp removal of atom requirement. [Kenneth Loafman]
Only used by gdocsbackend.py. Fails install.
* Remove py38 and add py313. [Kenneth Loafman]
* Cleanup pytest run. [Kenneth Loafman]
make sure super().setUp() and super().tearDown() are called.
o remove files from the _runtest_dir that we created.
o added conftest:pytest_sessionfinish().
o added more warning suppression.
* Fix unit/test_file_naming.py. [Kenneth Loafman]
o curtime* set in wrong place for tests.
o set curtime and curtimestr from setUp().
* Mark test_GPGWriteFile as xfail. [Kenneth Loafman]
o some machines like ppc64* and i686 may fail
* Testfortestsonlys and other dirs should be in _runtest_dir. [Kenneth Loafman]
Fixes #838 (closed)
* Testing/functional/test_concurrency.py hangs on ppc64le only. [Kenneth Loafman]
* Remove version specs in requirements.txt. [Kenneth Loafman]
o pipdeptree shows no upper limit that forced specs.
* Only log if backend import failed. [Kenneth Loafman]
* Set version for LP. [Kenneth Loafman]
Fix
* Typo in max block size doc. [ede]
* Fix testing/docker to enable pytest to run w/o gpg fails. [Kenneth Loafman]
Also fixes the following new issues:
o ignores new pylint error (new pylint)
o fixes RCloneBackenTest (new rclone)
o ignore fork() DeprecationWarning (nonsense)
o change tests from tox to pytest
o exclude pytest plugins that cause problems
* Add setuptools to requirements.txt. [Kenneth Loafman]
Seems py312 no longer supplies by default.
* Verbosity setting is broken with concurrency. [Kenneth Loafman]
Fixes #839 (closed)
|