SHA256
1
0
forked from pool/borgbackup

12 Commits

Author SHA256 Message Date
2ccd48a57e Accepting request 1322855 from Archiving:Backup
OBS-URL: https://build.opensuse.org/request/show/1322855
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/borgbackup?expand=0&rev=55
2025-12-15 11:05:22 +00:00
989f890b75 - Allow to build with earlier distributions 15.{5,6,7}
OBS-URL: https://build.opensuse.org/package/show/Archiving:Backup/borgbackup?expand=0&rev=125
2025-12-14 17:58:51 +00:00
cc83b026f8 Accepting request 1312344 from Archiving:Backup
OBS-URL: https://build.opensuse.org/request/show/1312344
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/borgbackup?expand=0&rev=54
2025-10-21 09:15:45 +00:00
f9c539e763 - Prepare for support of older distributions
- msgpack-allow-1.1.1.patch exchanged with msgpack-allow-1.1.2.patch

OBS-URL: https://build.opensuse.org/package/show/Archiving:Backup/borgbackup?expand=0&rev=123
2025-10-20 09:19:19 +00:00
0a7e1a3745 Accepting request 1311962 from Archiving:Backup
OBS-URL: https://build.opensuse.org/request/show/1311962
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/borgbackup?expand=0&rev=53
2025-10-17 15:27:19 +00:00
55e99586a5 - replace 0001-platform-linux-fetch-flags-before-FS_IOC_SETFLAGS.patch
by upstream patches:
  * 0001-set_flags-use-get-set-to-only-influence-specific-fla.patch
  * 0002-set_flags-better-give-up-than-corrupt.patch
  * 0003-set_flags-remove-compression-flag.patch
  (bsc#1251048)

OBS-URL: https://build.opensuse.org/package/show/Archiving:Backup/borgbackup?expand=0&rev=121
2025-10-17 09:46:14 +00:00
187355955f Accepting request 1309631 from Archiving:Backup
OBS-URL: https://build.opensuse.org/request/show/1309631
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/borgbackup?expand=0&rev=52
2025-10-07 16:29:26 +00:00
7983059489 - add 0001-platform-linux-fetch-flags-before-FS_IOC_SETFLAGS.patch
(bsc#1251048)

OBS-URL: https://build.opensuse.org/package/show/Archiving:Backup/borgbackup?expand=0&rev=119
2025-10-07 13:04:55 +00:00
8a670271cd Accepting request 1294407 from Archiving:Backup
OBS-URL: https://build.opensuse.org/request/show/1294407
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/borgbackup?expand=0&rev=51
2025-07-20 13:29:00 +00:00
146adbfcc3 - add msgpack-allow-1.1.1.patch:
backport of upstream commit f6724bfef
- change the maximum version of msgpack to 1.1.1

OBS-URL: https://build.opensuse.org/package/show/Archiving:Backup/borgbackup?expand=0&rev=117
2025-07-18 14:57:14 +00:00
d65539fa26 Accepting request 1284804 from Archiving:Backup
OBS-URL: https://build.opensuse.org/request/show/1284804
OBS-URL: https://build.opensuse.org/package/show/openSUSE:Factory/borgbackup?expand=0&rev=50
2025-06-11 14:27:26 +00:00
ba9b84cfbb Update to version 1.4.1
OBS-URL: https://build.opensuse.org/package/show/Archiving:Backup/borgbackup?expand=0&rev=115
2025-06-11 11:42:41 +00:00
10 changed files with 288 additions and 50 deletions

View File

@@ -0,0 +1,65 @@
From: Thomas Waldmann <tw@waldmann-edv.de>
Date: Thu, 16 Oct 2025 21:26:49 +0200
Subject: set_flags: use get/set to only influence specific flags, fixes #9039
References: bsc#1251048
Git-repo: https://github.com/ThomasWaldmann/borg#fix-set_flags-1.4
Git-commit: 9214197a2cd18796553f1d2cce6faf5ad7576a95
Patch-mainline: Queued in subsystem maintainer repository
Linux platform only.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
src/borg/platform/linux.pyx | 22 +++++++++++++++++++---
1 file changed, 19 insertions(+), 3 deletions(-)
diff --git a/src/borg/platform/linux.pyx b/src/borg/platform/linux.pyx
index 35ad1bde5ba0..7a913791fc50 100644
--- a/src/borg/platform/linux.pyx
+++ b/src/borg/platform/linux.pyx
@@ -128,6 +128,8 @@ BSD_TO_LINUX_FLAGS = {
stat.UF_APPEND: FS_APPEND_FL,
stat.UF_COMPRESSED: FS_COMPR_FL,
}
+# must be a bitwise OR of all values in BSD_TO_LINUX_FLAGS.
+LINUX_MASK = FS_NODUMP_FL | FS_IMMUTABLE_FL | FS_APPEND_FL | FS_COMPR_FL
def set_flags(path, bsd_flags, fd=None):
@@ -136,17 +138,31 @@ def set_flags(path, bsd_flags, fd=None):
if stat.S_ISBLK(st.st_mode) or stat.S_ISCHR(st.st_mode) or stat.S_ISLNK(st.st_mode):
# see comment in get_flags()
return
- cdef int flags = 0
+ cdef int flags
+ cdef int mask = LINUX_MASK # 1 at positions we want to influence
+ cdef int new_flags = 0
for bsd_flag, linux_flag in BSD_TO_LINUX_FLAGS.items():
if bsd_flags & bsd_flag:
- flags |= linux_flag
+ new_flags |= linux_flag
+
open_fd = fd is None
if open_fd:
fd = os.open(path, os.O_RDONLY|os.O_NONBLOCK|os.O_NOFOLLOW)
try:
+ # Get current flags. If this fails, fall back to 0 so we can still attempt to set.
+ if ioctl(fd, FS_IOC_GETFLAGS, &flags) == -1:
+ flags = 0
+
+ # Replace only the bits we actually want to influence, keep others.
+ # We can't just set all flags to the archived value, because we might
+ # reset flags that are not controllable from userspace, see #9039.
+ flags = (flags & ~mask) | (new_flags & mask)
+
if ioctl(fd, FS_IOC_SETFLAGS, &flags) == -1:
error_number = errno.errno
- if error_number != errno.EOPNOTSUPP:
+ # Usually we would only catch EOPNOTSUPP here, but Linux Kernel 6.17
+ # has a bug where it returns ENOTTY instead of EOPNOTSUPP.
+ if error_number not in (errno.EOPNOTSUPP, errno.ENOTTY):
raise OSError(error_number, strerror(error_number).decode(), path)
finally:
if open_fd:
--
2.51.0

View File

@@ -0,0 +1,37 @@
From: Thomas Waldmann <tw@waldmann-edv.de>
Date: Fri, 17 Oct 2025 00:20:05 +0200
Subject: set_flags: better give up than corrupt
References: bsc#1251048
Git-repo: https://github.com/ThomasWaldmann/borg#fix-set_flags-1.4
Git-commit: 9c600a95715ec22a5dd6cfba9bb1bee8238fc938
Patch-mainline: Queued in subsystem maintainer repository
Thanks to Earnestly for the feedback on IRC.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
src/borg/platform/linux.pyx | 7 +++++--
1 file changed, 5 insertions(+), 2 deletions(-)
diff --git a/src/borg/platform/linux.pyx b/src/borg/platform/linux.pyx
index e849dbba32d1..d7680ccd62d2 100644
--- a/src/borg/platform/linux.pyx
+++ b/src/borg/platform/linux.pyx
@@ -149,9 +149,12 @@ def set_flags(path, bsd_flags, fd=None):
if open_fd:
fd = os.open(path, os.O_RDONLY|os.O_NONBLOCK|os.O_NOFOLLOW)
try:
- # Get current flags. If this fails, fall back to 0 so we can still attempt to set.
+ # Get current flags.
if ioctl(fd, FS_IOC_GETFLAGS, &flags) == -1:
- flags = 0
+ # If this fails, give up because it is either not supported by the fs
+ # or maybe not permitted? If we can't determine the current flags,
+ # we better not risk corrupting them by setflags, see the comment below.
+ return # give up silently
# Replace only the bits we actually want to influence, keep others.
# We can't just set all flags to the archived value, because we might
--
2.51.0

View File

@@ -0,0 +1,36 @@
From: Thomas Waldmann <tw@waldmann-edv.de>
Date: Fri, 17 Oct 2025 02:41:53 +0200
Subject: set_flags: remove compression flag
References: bsc#1251048
Git-repo: https://github.com/ThomasWaldmann/borg#fix-set_flags-1.4
Git-commit: 56dda841623f90556b37798e85f9371ebe4a3de2
Patch-mainline: Queued in subsystem maintainer repository
This flag needs to be set BEFORE writing to the file.
But "borg extract" sets the flags last (to support IMMUTABLE),
thus the compression flag would not work as expected.
Signed-off-by: Jiri Slaby <jslaby@suse.cz>
---
src/borg/platform/linux.pyx | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/src/borg/platform/linux.pyx b/src/borg/platform/linux.pyx
index d7680ccd62d2..1a8b7942cf8b 100644
--- a/src/borg/platform/linux.pyx
+++ b/src/borg/platform/linux.pyx
@@ -126,10 +126,9 @@ BSD_TO_LINUX_FLAGS = {
stat.UF_NODUMP: FS_NODUMP_FL,
stat.UF_IMMUTABLE: FS_IMMUTABLE_FL,
stat.UF_APPEND: FS_APPEND_FL,
- stat.UF_COMPRESSED: FS_COMPR_FL,
}
# must be a bitwise OR of all values in BSD_TO_LINUX_FLAGS.
-LINUX_MASK = FS_NODUMP_FL | FS_IMMUTABLE_FL | FS_APPEND_FL | FS_COMPR_FL
+LINUX_MASK = FS_NODUMP_FL | FS_IMMUTABLE_FL | FS_APPEND_FL
def set_flags(path, bsd_flags, fd=None):
--
2.51.0

View File

@@ -1,3 +0,0 @@
version https://git-lfs.github.com/spec/v1
oid sha256:c54c45155643fa66fed7f9ff2d134ea0a58d0ac197c18781ddc2fb236bf6ed29
size 3798511

View File

@@ -1,17 +0,0 @@
-----BEGIN PGP SIGNATURE-----
iQJHBAABCAAxFiEEL4Gv+6sE4R/o7mXUJDrPqVH3jgEFAmaEepITHHR3QHdhbGRt
YW5uLWVkdi5kZQAKCRAkOs+pUfeOAa+sD/4ykFePnQmYEpi/KYcntuXqY4w7eLe1
bxRHF9AdJVzfEw5YV0Kjsvj6XyyoxSLNz2zh6KS6mpUTZqvU9FBRumHG0gj4N/50
FOKUU8Auf0jWj8GpB7JrifUsLFUrRmc0DI+2lQLrruRSt9tXqRyYmBGImcT95tH0
Zd5F+AY/GM6RXbibD2Ud3SyeMJwzHMVb6PTyT2NxvHJ52LAYe+1PNesQAHD8VvSL
IPHhTc2myNr+LEBtRfnwYOfKxAZKO2wrTFvZHXTmNnkJB5zRtnOGLQrwplHyuI54
MU1h9uLfZJREL6PkMcg99jxzCy6yUZTzC6/dibTll/VTGbpJR5Tv2WQh99A06dg1
vJruTeLryUuAH8Duuf+4h9yUHOQpryyK0TFosGOqSBwceZXq+lAU9kXpOrezEFrm
rs0TNudsv5/98qvsff8wgGmIsoUxfsx4B8z2hCr8dDYqN/nb8Byz59wriT5IIyh8
a75qA5wv374ch+hSc/9V8la6Dnsrmo2aac6FuuyV/550MyTU82MB1PF2spALf0lQ
ahmbtqcLobycxui4URTQ8cRuU+ZkudP2PvIkV8UpehnOy6YykqBuNf3IhSYeBQg7
p4CEr0BK7VZxXsbnB2Vtpgu+/jPotCMxWcdIsG2K4ZfvzVnoIVwSKQ5vPvF+6WlB
7rnYwBT4/M7GKQ==
=yin2
-----END PGP SIGNATURE-----

3
borgbackup-1.4.1.tar.gz Normal file
View File

@@ -0,0 +1,3 @@
version https://git-lfs.github.com/spec/v1
oid sha256:b8fbf8f1c19d900b6b32a5a1dc131c5d8665a7c7eea409e9095209100b903839
size 3817197

View File

@@ -0,0 +1,17 @@
-----BEGIN PGP SIGNATURE-----
iQJHBAABCAAxFiEEL4Gv+6sE4R/o7mXUJDrPqVH3jgEFAmgCppETHHR3QHdhbGRt
YW5uLWVkdi5kZQAKCRAkOs+pUfeOAc7vEACw/b5VYjy5S5TWYstAwuHGbIiVq2S7
CcRtD149ZInv3uwT/Ye0De5hIUI0Em+/MCrLmHIm+BmZBYnzOBJ91w4wFOnjFggh
3crIRefzs/QqSQwF9jjD70OS/3eXpXF8yx6Ku25OhuZIQsxr7pNb4GnvDVo4ZTaK
r5zIrTjcQLITRMqnAQzvdGwza8PevDqPHc/uMmUI26ENb2AHvaHJ8BF4FYyMmCxl
6rAIWUvPOpUjzlbT02FKapXMKLeMz0W9JQqxk3ngfOHZmdSugQaSEU5oFq+Yuuq+
itnrB8jh19Sh2p37NUgYzxvayuUJ30NNxXJsIELD8h/8Uoul+YBNOZQGQbDESTgO
TDIjda30b2PQZglHxBemZVblhKRqXyDgvERYjsORFA6SPKE7k/zOvw/MqZJwqZFU
xdZo3d9ZC2XVJZdftDN3E3xiJ95OwQXEVEow38V40v7RjT+jkNlbEGDbVAeD5XY+
DM0U58DG2P5/EnycqBiPCGxzlu8GJcMMjSQHSPfNi4i8kwvvzgXzWt5xFo02xu6l
fpOIvZzecQ/EAEomIuDwCHTcSTKIMNnLVxgkdnfYqQTclO7UfOHkrmSWF6LsIFMl
m1noEdAOblP2A76gy/OjPYsmy4WgmyiWH7eGP6FS0cO1DNB+4+x4dqEvuSVnFe6l
JT6QJN6UMHFVkQ==
=KZis
-----END PGP SIGNATURE-----

View File

@@ -1,3 +1,46 @@
-------------------------------------------------------------------
Tue Dec 2 15:44:02 UTC 2025 - Hans-Peter Jansen <hpj@urpla.net>
- Allow to build with earlier distributions 15.{5,6,7}
-------------------------------------------------------------------
Mon Oct 20 08:58:19 UTC 2025 - Hans-Peter Jansen <hpj@urpla.net>
- Prepare for support of older distributions
- msgpack-allow-1.1.1.patch exchanged with msgpack-allow-1.1.2.patch
-------------------------------------------------------------------
Thu Oct 9 06:27:26 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
- replace 0001-platform-linux-fetch-flags-before-FS_IOC_SETFLAGS.patch
by upstream patches:
* 0001-set_flags-use-get-set-to-only-influence-specific-fla.patch
* 0002-set_flags-better-give-up-than-corrupt.patch
* 0003-set_flags-remove-compression-flag.patch
(bsc#1251048)
-------------------------------------------------------------------
Tue Oct 7 04:53:42 UTC 2025 - Jiri Slaby <jslaby@suse.cz>
- add 0001-platform-linux-fetch-flags-before-FS_IOC_SETFLAGS.patch
(bsc#1251048)
-------------------------------------------------------------------
Fri Jul 18 07:35:43 UTC 2025 - Benoît Monin <benoit.monin@gmx.fr>
- add msgpack-allow-1.1.1.patch:
backport of upstream commit f6724bfef
- change the maximum version of msgpack to 1.1.1
-------------------------------------------------------------------
Sun Jun 8 15:42:53 UTC 2025 - Michael Pujos <pujos.michael@gmail.com>
- update to version 1.4.1
Full changelog:
https://borgbackup.readthedocs.io/en/stable/changes.html#version-1-4-1-2025-04-19
-------------------------------------------------------------------
Fri Jul 12 09:23:48 UTC 2024 - Andreas Prittwitz <m4ng4n@gmx.de>

View File

@@ -1,8 +1,8 @@
#
# spec file for package borgbackup
#
# Copyright (c) 2024 SUSE LLC
# Copyright (c) 2016-2024 LISA GmbH, Bingen, Germany.
# Copyright (c) 2025 SUSE LLC and contributors
# Copyright (c) 2016-2025 LISA GmbH, Bingen, Germany.
#
# All modifications and additions to the file contributed by third parties
# remain the property of their copyright owners, unless otherwise agreed
@@ -17,6 +17,7 @@
#
%{?sle15_python_module_pythons}
# define variables needed to build/install borgbackup >= 1.2.0
%define borg_openssl_prefix BORG_OPENSSL_PREFIX=%{_prefix}/lib:%{_libdir}
# needed when building without the packaged algorithms
@@ -43,8 +44,16 @@
%else
%bcond_with borg_sysblake2
%endif
%if 0%{?suse_version} < 1600
%global py3ver 3.11
%global py3pkg python311
%else
%global py3ver 3.13
%global py3pkg python313
%endif
Name: borgbackup
Version: 1.4.0
Version: 1.4.1
Release: 0
Summary: Deduplicating backup program with compression and authenticated encryption
License: BSD-3-Clause
@@ -57,20 +66,27 @@ Source2: %{name}.keyring
# python3-guzzle_sphinx_theme isn't available everywhere,
# fall back to Sphinx default theme for older distributions
Patch0: borgbackup-1.1.4-sphinx-default-theme.patch
# PATCH-FIX-OPENSUSE msgpack-allow-1.1.2.patch -- let's hope, 1.1.2 will work as well
Patch1: msgpack-allow-1.1.2.patch
# PATCH-FIX-UPSTREAM 0001-set_flags-use-get-set-to-only-influence-specific-fla.patch #9039
Patch2: 0001-set_flags-use-get-set-to-only-influence-specific-fla.patch
# PATCH-FIX-UPSTREAM 0002-set_flags-better-give-up-than-corrupt.patch #9039
Patch3: 0002-set_flags-better-give-up-than-corrupt.patch
# PATCH-FIX-UPSTREAM 0003-set_flags-remove-compression-flag.patch #9039
Patch4: 0003-set_flags-remove-compression-flag.patch
# SECTION build dependencies
BuildRequires: bash
BuildRequires: %{py3pkg}-Cython >= 3.0.10
BuildRequires: %{py3pkg}-devel >= 3.9
BuildRequires: %{py3pkg}-packaging
BuildRequires: %{py3pkg}-setuptools
BuildRequires: %{py3pkg}-setuptools_scm
BuildRequires: fdupes
BuildRequires: fish
BuildRequires: gcc-c++
BuildRequires: libacl-devel >= 2.2.47
BuildRequires: openssl-devel >= 1.1.0
BuildRequires: pkgconfig
BuildRequires: python3-Cython >= 3.0.10
BuildRequires: python3-base >= 3.9
BuildRequires: python3-devel
BuildRequires: python3-packaging
BuildRequires: python3-setuptools
BuildRequires: python3-setuptools_scm
BuildRequires: zsh
BuildRequires: pkgconfig(libxxhash)
%if 0%{?suse_version} == 1320 || 0%{?sle_version} == 120200
@@ -88,30 +104,30 @@ BuildRequires: libzstd-devel >= 1.3.0
# msgpack is not included with borg version >= 1.2.0 anymore
# The metadata is very specific about the version, the command will fail if msgpack is out of range -- boo#1198267
# See https://github.com/borgbackup/borg/blob/1.2.1/setup.py#L68 and update this for every version bump!
BuildRequires: (python3-msgpack >= 1.0.3 with python3-msgpack <= 1.1.0)
Requires: python3-packaging
Requires: (python3-msgpack >= 1.0.3 with python3-msgpack <= 1.1.0)
BuildRequires: (%{py3pkg}-msgpack >= 1.0.3 with %{py3pkg}-msgpack <= 1.1.2)
Requires: %{py3pkg}-packaging
Requires: (%{py3pkg}-msgpack >= 1.0.3 with %{py3pkg}-msgpack <= 1.1.2)
%if 0%{?suse_version} > 1500
# upstream recommends a "Requires" if pyfuse3 is available
Requires: python3-pyfuse3 >= 3.1.1
Requires: %{py3pkg}-pyfuse3 >= 3.1.1
%else
Recommends: python3-llfuse >= 1.3.8
Recommends: %{py3pkg}-llfuse >= 1.3.8
%endif
# /SECTION
# SECTION docs requirements
BuildRequires: python3-Sphinx
BuildRequires: python3-sphinx_rtd_theme
BuildRequires: %{py3pkg}-Sphinx
BuildRequires: %{py3pkg}-sphinx_rtd_theme
%if %{with borg_guzzle}
BuildRequires: python3-guzzle_sphinx_theme
BuildRequires: %{py3pkg}-guzzle_sphinx_theme
%endif
# /SECTION
# SECTION testing requirements
%if %{with borg_test}
BuildRequires: python3-dateutil
BuildRequires: python3-pytest
BuildRequires: python3-pytest-benchmark
BuildRequires: python3-pytest-cov
BuildRequires: python3-pytest-xdist
BuildRequires: %{py3pkg}-dateutil
BuildRequires: %{py3pkg}-pytest
BuildRequires: %{py3pkg}-pytest-benchmark
BuildRequires: %{py3pkg}-pytest-cov
BuildRequires: %{py3pkg}-pytest-xdist
%endif
# /SECTION
@@ -188,6 +204,10 @@ This package contains the fish completion script for borgbackup.
%if ! %{with borg_guzzle}
%patch -P 0 -p1
%endif
%patch -P 1 -p1
%patch -P 2 -p1
%patch -P 3 -p1
%patch -P 4 -p1
%ifnarch %ix86 %arm
# https://github.com/borgbackup/borg/issues/6996
@@ -202,15 +222,20 @@ rm -rf src/borg/algorithms/blake2
# remove precompiled Cython code
find src/ -name '*.pyx' | sed -e 's/.pyx/.c/g' | xargs rm -f
# better name for msgpack license
cp -a %{_datadir}/licenses/%{python_flavor}-msgpack/COPYING LICENSE.msgpack
cp -a %{_datadir}/licenses/%{py3pkg}-msgpack/COPYING LICENSE.msgpack
# use the defined python version
for f in scripts/errorlist.py scripts/glibc_check.py; do
sed -i 's,#!/usr/bin/env python3,python-%{py3ver},' $f
done
sed -i 's/python3/python%{py3ver}/' src/borg/testsuite/archiver.py
%build
%{borg_openssl_prefix} %{borg_libzstd_prefix} %{borg_liblz4_prefix} %{borg_libxxhash_prefix} %{borg_libacl_prefix} CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" python3 setup.py build
%{borg_openssl_prefix} %{borg_libzstd_prefix} %{borg_liblz4_prefix} %{borg_libxxhash_prefix} %{borg_libacl_prefix} CFLAGS="%{optflags}" CXXFLAGS="%{optflags}" python%{py3ver} setup.py build
export PYTHONPATH=$(pwd)/build/lib.linux-$(uname -m)-%{py3_ver}
%make_build -C docs html man && rm docs/_build/html/.buildinfo
%install
%{borg_libacl_prefix} %{borg_libxxhash_prefix} %{borg_openssl_prefix} %{borg_liblz4_prefix} %{borg_libzstd_prefix} python3 setup.py install --prefix=%{_prefix} --root=%{buildroot}
%{borg_libacl_prefix} %{borg_libxxhash_prefix} %{borg_openssl_prefix} %{borg_liblz4_prefix} %{borg_libzstd_prefix} python%{py3ver} setup.py install --prefix=%{_prefix} --root=%{buildroot}
# install all man pages
mkdir -p %{buildroot}%{_mandir}/man1
install -m 0644 docs/man/borg*.1 %{buildroot}%{_mandir}/man1
@@ -219,7 +244,7 @@ install -D -m 0644 scripts/shell_completions/bash/borg %{buildroot}/%{_datadir}/
install -D -m 0644 scripts/shell_completions/zsh/_borg %{buildroot}/%{_datadir}/zsh/site-functions/_borg
install -D -m 0644 scripts/shell_completions/fish/borg.fish %{buildroot}/%{_datadir}/fish/vendor_completions.d/borg.fish
# link duplicate files
%fdupes %{buildroot}/%{python3_sitearch}/borgbackup-%{version}-py%{py3_ver}.egg-info/
%fdupes %{buildroot}/%{_libdir}/python%{py3ver}/site-packages/borgbackup-%{version}-py%{py3_ver}.egg-info/
# fix wrong-file-end-of-line-encoding
sed -i 's/\r$//' docs/_build/html/_static/fonts/open-sans/stylesheet.css
sed -i 's/\r$//' docs/_build/html/_static/fonts/source-serif-pro/LICENSE.txt
@@ -227,8 +252,8 @@ sed -i 's/\r$//' docs/_build/html/_static/fonts/source-serif-pro/LICENSE.txt
%if %{with borg_test}
%check
# tests need to run in the build env for some reason
export py3_ver_nodot=$(echo %{py3_ver} | tr -d '.')
export PYTHONPATH=$(pwd)/build/lib.linux-$(uname -m)-cpython-$py3_ver_nodot
export py3ver_nodot=$(echo %{py3ver} | tr -d '.')
export PYTHONPATH=$(pwd)/build/lib.linux-$(uname -m)-cpython-$py3ver_nodot
TEST_SELECTOR="not benchmark"
LANG=en_US.UTF-8 py.test -x -vk "$TEST_SELECTOR" $PYTHONPATH/borg/testsuite/*.py
%endif
@@ -236,8 +261,8 @@ LANG=en_US.UTF-8 py.test -x -vk "$TEST_SELECTOR" $PYTHONPATH/borg/testsuite/*.py
%files
%doc CHANGES.rst README.rst
%license LICENSE LICENSE.msgpack
%{python3_sitearch}/borg/
%{python3_sitearch}/borgbackup-%{version}-py%{py3_ver}.egg-info
%{_libdir}/python%{py3ver}/site-packages/borg/
%{_libdir}/python%{py3ver}/site-packages/borgbackup-%{version}-py%{py3ver}.egg-info
%{_bindir}/borg
%{_bindir}/borgfs
%{_mandir}/man1/borg*.1%{?ext_man}

32
msgpack-allow-1.1.2.patch Normal file
View File

@@ -0,0 +1,32 @@
Since 1.1.1 did fine, hopefully 1.1.2 will also be ok.
---
pyproject.toml | 2 +-
src/borg/helpers/msgpack.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diff --git a/pyproject.toml b/pyproject.toml
index f1a3dffb..05102a0f 100644
--- a/pyproject.toml
+++ b/pyproject.toml
@@ -35,7 +35,7 @@ dependencies = [
# Please note:
# using any other msgpack version is not supported by borg development and
# any feedback related to issues caused by this will be ignored.
- "msgpack >=1.0.3, <=1.1.0",
+ "msgpack >=1.0.3, <=1.1.2",
"packaging",
]
diff --git a/src/borg/helpers/msgpack.py b/src/borg/helpers/msgpack.py
index 5c8cedde..5c0d1a02 100644
--- a/src/borg/helpers/msgpack.py
+++ b/src/borg/helpers/msgpack.py
@@ -137,7 +137,7 @@ def is_slow_msgpack():
def is_supported_msgpack():
# DO NOT CHANGE OR REMOVE! See also requirements and comments in pyproject.toml.
import msgpack
- return (1, 0, 3) <= msgpack.version <= (1, 1, 0) and \
+ return (1, 0, 3) <= msgpack.version <= (1, 1, 2) and \
msgpack.version not in [] # < add bad releases here to deny list