[1/3] borgbackup: Update to version 1.4.0

Message ID 20240827115414.3428157-1-adolf.belka@ipfire.org
State Staged
Commit 3ba7cd1a5d29a16b24f3ae18b45dd02ebd6f1fdf
Headers
Series [1/3] borgbackup: Update to version 1.4.0 |

Commit Message

Adolf Belka Aug. 27, 2024, 11:54 a.m. UTC
  - Update from version 1.2.7 to 1.4.0
- Update of rootfile
- This version now requires libxxhash and can now work with python3-msgpack at version
   1.0.8 so additional patch submissions combined with this one for implementation of
   libxxhash and for update og python3-msgpack.
- Tested out changes on my vm testbed system and was able to access old repo info and
   fusemount the repo successfully and write a new backup. So everything I normally
   test is functioning.
- Changelog
    1.4.0
        Compatibility notes:
            By default, borg 1.4 will behave quite similar to borg 1.2 (it was forked off
             from 1.2-maint branch at 1.2.7).
               - the slashdot hack: be careful not to accidentally give paths containing
                 /./ to "borg create" if you do not want to trigger this feature (which
                 strips the left part of the path from archived items).
               - BORG_EXIT_CODES=modern is a feature that borg script, wrapper and GUI
                 authors may want to use to get more specific error and warning return
                 codes from borg.
                 In that case, of course they will need to make sure to correctly deal
                 with these new codes, see the internals/frontends docs.
       Other changes:
               - vagrant: revive the buster64 box, RHEL8 has same glibc
               - tests: fix pytest_report_header, #8232
               - docs:
                 - mount: add examples using :: positional argument, #8255
                 - Installation: update Arch Linux repo name
                 - update standalone binary section
   1.4.0rc1
       Fixes:
               - setup.py: fix import error reporting for cythonize import, #8208
               - setup.py: detect noexec build fs issue, #8208
       Other changes:
               - changed insufficiently reserved length for log message, #8152
               - use Python 3.11.9, Cython 3.0.10 and PyInstaller 6.7.0 for binary builds
               - docs:
                 - use python 3.9 in cygwin install docs, fixes #8196
                 - recreate: remove experimental status
               - github CI: fix PKG_CONFIG_PATH for openssl 3.0
               - vagrant:
                 - add a ubuntu noble (24.04) VM
                 - drop buster VM, fixes #8171
   1.4.0b2
       Fixes:
               - check: fix return code for index entry value discrepancies
               - benchmark: inherit options --rsh --remote-path, #8099
               - sdist: dynamically compute readme (long_description)
               - create: deal with EBUSY, #8123
               - No need to use OpenSSL 3.0 on OpenBSD, use LibreSSL.
               - fix Ctrl-C / SIGINT behaviour for pyinstaller-made binaries, #8155
       New features:
               - create: add the slashdot hack, update docs, #4685
               - upgrade --check-tam: check manifest TAM auth, exit with rc=1 if there
                 are issues.
               - upgrade --check-archives-tam: check archives TAM auth, exit with rc=1
                 if there are issues.
       Other changes:
               - improve acl_get / acl_set error handling, improved/added tests, #8125
               - remove bundled lz4/zstd/xxhash code (require the respective
                 libs/headers),
                 simplify setup.py, remove support for all BORG_USE_BUNDLED_*=YES, #8094
               - require Cython 3.0.3 at least (fixes py312 memory leak), #8133
               - allow msgpack 1.0.8, #8133
               - init: better borg key export instructions
               - init: remove compatibility warning for borg <=1.0.8
                 The warning refers to a compatibility issue not relevant any
                 more since borg 1.0.9 (released 2016-12).
               - locate libacl via pkgconfig
               - scripts/make.py: move clean, build_man, build_usage to there,
                 so we do not need to invoke setup.py directly, update docs
               - docs:
                 - how to run the testsuite using the dist package
                 - add non-root deployment strategy (systemd / capabilities)
                 - simplify TAM-related upgrade docs using the new commands
               - vagrant:
                 - use python 3.11.8
                 - use pyinstaller 6.5.0
                 - add xxhash for macOS, add libxxhash-dev for debianoid systems
                 - use openindiana/hipster box
   1.4.0b1
       Fixes:
               - fix CommandError args, #8029
       New features:
               - implement "borg version" (shows client and server version), #7829
       Other changes:
               - better error msg for corrupted key data, #8016
               - repository: give clean error msg for invalid nonce file, #7967
               - check_can_create_repository: deal with PermissionErrors, #7016
               - add ConnectionBrokenWithHint for BrokenPipeErrors and similar, #7016
               - with-lock: catch exception, print error msg, #8022
               - use cython 3.0.8
               - modernize msgpack wrapper
               - docs:
                 - add brew bundle instructions (macOS)
                 - improve docs for borg with-lock, #8022
   1.4.0a1
       New features:
               - BORG_EXIT_CODES=modern: optional more specific return codes (for
                 errors and warnings).
                 The default value of this new environment variable is "legacy", which
                 should result in a behaviour similar to borg 1.2 and older (only using
                 rc 0, 1 and 2).
                 "modern" exit codes are much more specific (see the
                 internals/frontends docs).
       Fixes:
               - PATH: do not accept empty strings, #4221.
                 This affects the cli interface of misc. commands (create, extract,
                 diff, mount, ...) and they now will reject "" (empty string) given as
                 a path.
       Other changes:
               - Python: require Python >= 3.9, drop support for 3.8, #6383
               - Cython: require Cython >= 3.0, drop support for Cython 0.29.x,
                 use 3str language level (default in cython3), #7978
               - use pyinstaller 6.3.0 and python 3.11 for binary build, #7987
               - msgpack: require >= 1.0.3, <= 1.0.7
               - replace flake8 by ruff style/issue checker
               - tests: remove python-dateutil dependency
               - tests: move conftest.py to src/borg/testsuite, #6386
               - move misc. config/metadata to pyproject.toml
               - vagrant:
                 - use a freebsd 14 box, #6871
                 - use generic/openbsd7 box
                 - use openssl 3 on macOS, FreeBSD, OpenBSD
                 - remove ubuntu 20.04 "focal" box
                 - remove debian 9 "stretch" box (remove stretch-based binary builds)
               - require recent setuptools and setuptools_scm
               - crypto: get rid of deprecated HMAC_* functions to avoid warnings.
                 Instead, use hmac.digest from Python stdlib.

Tested-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
---
 config/rootfiles/packages/borgbackup | 16 ++++++++--------
 lfs/borgbackup                       |  6 +++---
 2 files changed, 11 insertions(+), 11 deletions(-)
  

Patch

diff --git a/config/rootfiles/packages/borgbackup b/config/rootfiles/packages/borgbackup
index eb08045c2..1f62a2d66 100644
--- a/config/rootfiles/packages/borgbackup
+++ b/config/rootfiles/packages/borgbackup
@@ -68,6 +68,7 @@  usr/lib/python3.10/site-packages/borg/testsuite/chunker.py
 usr/lib/python3.10/site-packages/borg/testsuite/chunker_pytest.py
 usr/lib/python3.10/site-packages/borg/testsuite/chunker_slow.py
 usr/lib/python3.10/site-packages/borg/testsuite/compress.py
+usr/lib/python3.10/site-packages/borg/testsuite/conftest.py
 usr/lib/python3.10/site-packages/borg/testsuite/crypto.py
 usr/lib/python3.10/site-packages/borg/testsuite/efficient_collection_queue.py
 usr/lib/python3.10/site-packages/borg/testsuite/file_integrity.py
@@ -92,11 +93,10 @@  usr/lib/python3.10/site-packages/borg/testsuite/xattr.py
 usr/lib/python3.10/site-packages/borg/upgrader.py
 usr/lib/python3.10/site-packages/borg/version.py
 usr/lib/python3.10/site-packages/borg/xattr.py
-usr/lib/python3.10/site-packages/borgbackup-1.2.7-py3.10.egg-info
-usr/lib/python3.10/site-packages/borgbackup-1.2.7-py3.10.egg-info/PKG-INFO
-usr/lib/python3.10/site-packages/borgbackup-1.2.7-py3.10.egg-info/SOURCES.txt
-usr/lib/python3.10/site-packages/borgbackup-1.2.7-py3.10.egg-info/dependency_links.txt
-usr/lib/python3.10/site-packages/borgbackup-1.2.7-py3.10.egg-info/entry_points.txt
-usr/lib/python3.10/site-packages/borgbackup-1.2.7-py3.10.egg-info/not-zip-safe
-usr/lib/python3.10/site-packages/borgbackup-1.2.7-py3.10.egg-info/requires.txt
-usr/lib/python3.10/site-packages/borgbackup-1.2.7-py3.10.egg-info/top_level.txt
+usr/lib/python3.10/site-packages/borgbackup-1.4.0-py3.10.egg-info
+usr/lib/python3.10/site-packages/borgbackup-1.4.0-py3.10.egg-info/PKG-INFO
+usr/lib/python3.10/site-packages/borgbackup-1.4.0-py3.10.egg-info/SOURCES.txt
+usr/lib/python3.10/site-packages/borgbackup-1.4.0-py3.10.egg-info/dependency_links.txt
+usr/lib/python3.10/site-packages/borgbackup-1.4.0-py3.10.egg-info/entry_points.txt
+usr/lib/python3.10/site-packages/borgbackup-1.4.0-py3.10.egg-info/requires.txt
+usr/lib/python3.10/site-packages/borgbackup-1.4.0-py3.10.egg-info/top_level.txt
diff --git a/lfs/borgbackup b/lfs/borgbackup
index 7b77fd4bb..107e852a6 100644
--- a/lfs/borgbackup
+++ b/lfs/borgbackup
@@ -24,7 +24,7 @@ 
 
 include Config
 
-VER        = 1.2.7
+VER        = 1.4.0
 SUMMARY    = Deduplicating backup program with compression and authenticated encryption
 
 THISAPP    = borgbackup-$(VER)
@@ -33,7 +33,7 @@  DL_FROM    = $(URL_IPFIRE)
 DIR_APP    = $(DIR_SRC)/$(THISAPP)
 TARGET     = $(DIR_INFO)/$(THISAPP)
 PROG       = borgbackup
-PAK_VER    = 16
+PAK_VER    = 17
 
 DEPS       = python3-msgpack python3-packaging python3-pyfuse3
 # borgbackup only works with specific versions of python3-msgpack
@@ -48,7 +48,7 @@  objects = $(DL_FILE)
 
 $(DL_FILE) = $(DL_FROM)/$(DL_FILE)
 
-$(DL_FILE)_BLAKE2 = 8d69f3e7890ee117e1fe2cdf6b92c548bc40b337de09850948150034fc4724bf05c51c852a268df2294e3657676920a1c663a421331fd6dba5fffa558429f11e
+$(DL_FILE)_BLAKE2 = 06d4d67e211a3ab1bc6d7155cbce8205fb7408a1149e44c77b500af02c25e62a569e3eaf50c11916a2ff9adea47c5791febfb7d0c657d0b195e5c5bbbd33a7d7
 
 install : $(TARGET)