From mboxrd@z Thu Jan 1 00:00:00 1970 From: Adolf Belka To: development@lists.ipfire.org Subject: Re: [PATCH 1/2] borgbackup: Update to version 1.2.0 Date: Wed, 13 Apr 2022 12:37:31 +0200 Message-ID: <80f6fc57-8194-5c30-5928-46d409ecd258@ipfire.org> In-Reply-To: <06C444C7-82F4-4182-8724-5CD44FF17F57@ipfire.org> MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="===============6354233298922966151==" List-Id: --===============6354233298922966151== Content-Type: text/plain; charset="utf-8" Content-Transfer-Encoding: quoted-printable Hi Michael, On 13/04/2022 10:47, Michael Tremer wrote: > Hello Adolf, >=20 >> On 12 Apr 2022, at 11:32, Adolf Belka wrote: >> >> - Update from 1.1.17 to 1.2.0 >> - Update of rootfile >> - borgbackup now requires the python module pkgconfig, installed as a set = with this patch >> - Changelog >> Compatibility notes: >> dropped support / testing for older Pythons, minimum requirement is 3= .8. In >> case your OS does not provide Python >=3D 3.8, consider using= our binary, >> which does not need an external Python interpreter. Or contin= ue using >> borg 1.1.x, which is still supported. >> freeing repository space only happens when =E2=80=9Cborg compact=E2= =80=9D is invoked. >> mount: the default for --numeric-ids is False now (same as borg extra= ct) >> borg create --noatime is deprecated. Not storing atime is the default >> behaviour now (use --atime if you want to store the atime). >> list: corrected mix-up of =E2=80=9Cisomtime=E2=80=9D and =E2=80=9Cmti= me=E2=80=9D formats. Previously, >> =E2=80=9Cisomtime=E2=80=9D was the default but produced a ver= bose human format, while >> =E2=80=9Cmtime=E2=80=9D produced a ISO-8601-like format. The = behaviours have been swapped >> (so =E2=80=9Cmtime=E2=80=9D is human, =E2=80=9Cisomtime=E2=80= =9D is ISO-like), and the default is now >> =E2=80=9Cmtime=E2=80=9D. =E2=80=9Cisomtime=E2=80=9D is now a = real ISO-8601 format (=E2=80=9CT=E2=80=9D between date and >> time, not a space). >> create/recreate --list: file status for all files used to get announc= ed >> AFTER the file (with borg < 1.2). Now, file status is announc= ed BEFORE the >> file contents are processed. If the file status changes later= (e.g. due to >> an error or a content change), the updated/final file status = will be >> printed again. >> removed deprecated-since-long stuff (deprecated since): >> command =E2=80=9Cborg change-passphrase=E2=80=9D (2017-02), use = =E2=80=9Cborg key =E2=80=A6=E2=80=9D >> option =E2=80=9C--keep-tag-files=E2=80=9D (2017-01), use =E2=80= =9C--keep-exclude-tags=E2=80=9D >> option =E2=80=9C--list-format=E2=80=9D (2017-10), use =E2=80=9C--= format=E2=80=9D >> option =E2=80=9C--ignore-inode=E2=80=9D (2017-09), use =E2=80=9C-= -files-cache=E2=80=9D w/o =E2=80=9Cinode=E2=80=9D >> option =E2=80=9C--no-files-cache=E2=80=9D (2017-09), use =E2=80= =9C--files-cache=3Ddisabled=E2=80=9D >> removed BORG_HOSTNAME_IS_UNIQUE env var. to use borg you must impleme= nt one >> of these 2 scenarios: >> the combination of FQDN and result of uuid.getnode() must be = unique >> and stable (this should be the case for almost everyb= ody, except >> when having duplicate FQDN and MAC address or all-zer= o MAC address) >> if you are aware that 1) is not the case for you, you must set >> BORG_HOST_ID env var to something unique. >> exit with 128 + signal number, #5161. if you have scripts expecting r= c =3D=3D 2 >> for a signal exit, you need to update them to check for >=3D = 128. >> Fixes: >> diff: reduce memory consumption, fix is_hardlink_master, #6295 >> compact: fix / improve freeable / freed space log output >> derive really freed space from quota use before/after, #5679 >> do not say =E2=80=9Cfreeable=E2=80=9D, but =E2=80=9Cmaybe freeabl= e=E2=80=9D (based on hint, unsure) >> fix race conditions in internal SaveFile function, #6306 #6028 >> implement internal safe_unlink (was: truncate_and_unlink) function mo= re >> safely: usually it does not truncate any more, only under =E2= =80=9Cdisk full=E2=80=9D >> circumstances and only if there is only one hardlink. see: >> https://github.com/borgbackup/borg/discussions/6286 >> Other changes: >> info: use a pre12-meta cache to accelerate stats for borg < 1.2 archi= ves. >> the first time borg info is invoked on a borg 1.1 repo, it ca= n take a >> rather long time computing and caching some stats values for = 1.1 archives, >> which borg 1.2 archives have in their archive metadata struct= ure. be >> patient, esp. if you have lots of old archives. following inv= ocations are >> much faster due to the cache. related change: add archive nam= e to >> calc_stats progress display. >> docs: >> add borg 1.2 upgrade notes, #6217 >> link to borg placeholders and borg patterns help >> init: explain the encryption modes better >> clarify usage of patternfile roots >> put import-tar docs into same file as export-tar docs >> explain the difference between a path that ends with or without a= slash, >> #6297 >> >> Signed-off-by: Adolf Belka >> --- >> config/rootfiles/packages/borgbackup | 64 ++++++++++++++++------------ >> lfs/borgbackup | 6 +-- >> 2 files changed, 40 insertions(+), 30 deletions(-) >> >> diff --git a/config/rootfiles/packages/borgbackup b/config/rootfiles/packa= ges/borgbackup >> index dccaf4711..041d9e89a 100644 >> --- a/config/rootfiles/packages/borgbackup >> +++ b/config/rootfiles/packages/borgbackup >> @@ -6,33 +6,38 @@ usr/lib/python3.10/site-packages/borg/__main__.py >> usr/lib/python3.10/site-packages/borg/_version.py >> #usr/lib/python3.10/site-packages/borg/algorithms >> usr/lib/python3.10/site-packages/borg/algorithms/__init__.py >> -usr/lib/python3.10/site-packages/borg/algorithms/checksums.cpython-310-xx= xMACHINExxx-linux-gnu.so >> -#usr/lib/python3.10/site-packages/borg/algorithms/msgpack >> -usr/lib/python3.10/site-packages/borg/algorithms/msgpack/__init__.py >> -usr/lib/python3.10/site-packages/borg/algorithms/msgpack/_packer.cpp >> -usr/lib/python3.10/site-packages/borg/algorithms/msgpack/_packer.cpython-= 310-xxxMACHINExxx-linux-gnu.so >> -usr/lib/python3.10/site-packages/borg/algorithms/msgpack/_unpacker.cpp >> -usr/lib/python3.10/site-packages/borg/algorithms/msgpack/_unpacker.cpytho= n-310-xxxMACHINExxx-linux-gnu.so >> -usr/lib/python3.10/site-packages/borg/algorithms/msgpack/_version.py >> -usr/lib/python3.10/site-packages/borg/algorithms/msgpack/exceptions.py >> -usr/lib/python3.10/site-packages/borg/algorithms/msgpack/fallback.py >> +usr/lib/python3.10/site-packages/borg/algorithms/checksums.cpython-310-x8= 6_64-linux-gnu.so >> usr/lib/python3.10/site-packages/borg/archive.py >> usr/lib/python3.10/site-packages/borg/archiver.py >> usr/lib/python3.10/site-packages/borg/cache.py >> -usr/lib/python3.10/site-packages/borg/chunker.cpython-310-xxxMACHINExxx-l= inux-gnu.so >> -usr/lib/python3.10/site-packages/borg/compress.cpython-310-xxxMACHINExxx-= linux-gnu.so >> +usr/lib/python3.10/site-packages/borg/chunker.cpython-310-x86_64-linux-gn= u.so >> +usr/lib/python3.10/site-packages/borg/compress.cpython-310-x86_64-linux-g= nu.so >> usr/lib/python3.10/site-packages/borg/constants.py >> #usr/lib/python3.10/site-packages/borg/crypto >> usr/lib/python3.10/site-packages/borg/crypto/__init__.py >> usr/lib/python3.10/site-packages/borg/crypto/file_integrity.py >> usr/lib/python3.10/site-packages/borg/crypto/key.py >> usr/lib/python3.10/site-packages/borg/crypto/keymanager.py >> -usr/lib/python3.10/site-packages/borg/crypto/low_level.cpython-310-xxxMAC= HINExxx-linux-gnu.so >> +usr/lib/python3.10/site-packages/borg/crypto/low_level.cpython-310-x86_64= -linux-gnu.so >> usr/lib/python3.10/site-packages/borg/crypto/nonces.py >> usr/lib/python3.10/site-packages/borg/fuse.py >> -usr/lib/python3.10/site-packages/borg/hashindex.cpython-310-xxxMACHINExxx= -linux-gnu.so >> -usr/lib/python3.10/site-packages/borg/helpers.py >> -usr/lib/python3.10/site-packages/borg/item.cpython-310-xxxMACHINExxx-linu= x-gnu.so >> +usr/lib/python3.10/site-packages/borg/fuse_impl.py >> +usr/lib/python3.10/site-packages/borg/hashindex.cpython-310-x86_64-linux-= gnu.so >> +#usr/lib/python3.10/site-packages/borg/helpers >> +usr/lib/python3.10/site-packages/borg/helpers/__init__.py >> +usr/lib/python3.10/site-packages/borg/helpers/checks.py >> +usr/lib/python3.10/site-packages/borg/helpers/datastruct.py >> +usr/lib/python3.10/site-packages/borg/helpers/errors.py >> +usr/lib/python3.10/site-packages/borg/helpers/fs.py >> +usr/lib/python3.10/site-packages/borg/helpers/manifest.py >> +usr/lib/python3.10/site-packages/borg/helpers/misc.py >> +usr/lib/python3.10/site-packages/borg/helpers/msgpack.py >> +usr/lib/python3.10/site-packages/borg/helpers/parseformat.py >> +usr/lib/python3.10/site-packages/borg/helpers/process.py >> +usr/lib/python3.10/site-packages/borg/helpers/progress.py >> +usr/lib/python3.10/site-packages/borg/helpers/time.py >> +usr/lib/python3.10/site-packages/borg/helpers/yes.py >> +usr/lib/python3.10/site-packages/borg/item.cpython-310-x86_64-linux-gnu.so >=20 > You re-introduced the architecture name here. x86_64 should be xxxMACHINExx= x. What a great variable name :) Yes I missed that. Will redo the patch set as a v2. make.sh build must also have missed those, as I would have fixed it if there = was a message about that. I suspect that the whitelisting that was put in to deal with a false alarm th= at occurred has also covered this situation. Regards, Adolf. >=20 >> usr/lib/python3.10/site-packages/borg/locking.py >> usr/lib/python3.10/site-packages/borg/logger.py >> usr/lib/python3.10/site-packages/borg/lrucache.py >> @@ -42,9 +47,11 @@ usr/lib/python3.10/site-packages/borg/patterns.py >> #usr/lib/python3.10/site-packages/borg/platform >> usr/lib/python3.10/site-packages/borg/platform/__init__.py >> usr/lib/python3.10/site-packages/borg/platform/base.py >> -usr/lib/python3.10/site-packages/borg/platform/linux.cpython-310-xxxMACHI= NExxx-linux-gnu.so >> -usr/lib/python3.10/site-packages/borg/platform/posix.cpython-310-xxxMACHI= NExxx-linux-gnu.so >> -usr/lib/python3.10/site-packages/borg/platform/syncfilerange.cpython-310-= xxxMACHINExxx-linux-gnu.so >> +usr/lib/python3.10/site-packages/borg/platform/linux.cpython-310-x86_64-l= inux-gnu.so >> +usr/lib/python3.10/site-packages/borg/platform/posix.cpython-310-x86_64-l= inux-gnu.so >> +usr/lib/python3.10/site-packages/borg/platform/syncfilerange.cpython-310-= x86_64-linux-gnu.so >> +usr/lib/python3.10/site-packages/borg/platform/xattr.py >> +usr/lib/python3.10/site-packages/borg/platformflags.py >> usr/lib/python3.10/site-packages/borg/remote.py >> usr/lib/python3.10/site-packages/borg/repository.py >> usr/lib/python3.10/site-packages/borg/selftest.py >> @@ -58,8 +65,11 @@ usr/lib/python3.10/site-packages/borg/testsuite/benchma= rk.py >> usr/lib/python3.10/site-packages/borg/testsuite/cache.py >> usr/lib/python3.10/site-packages/borg/testsuite/checksums.py >> 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/crypto.py >> +usr/lib/python3.10/site-packages/borg/testsuite/efficient_collection_queu= e.py >> usr/lib/python3.10/site-packages/borg/testsuite/file_integrity.py >> usr/lib/python3.10/site-packages/borg/testsuite/hashindex.py >> usr/lib/python3.10/site-packages/borg/testsuite/helpers.py >> @@ -81,11 +91,11 @@ 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.1.17-py3.10.egg-info >> -usr/lib/python3.10/site-packages/borgbackup-1.1.17-py3.10.egg-info/PKG-IN= FO >> -usr/lib/python3.10/site-packages/borgbackup-1.1.17-py3.10.egg-info/SOURCE= S.txt >> -usr/lib/python3.10/site-packages/borgbackup-1.1.17-py3.10.egg-info/depend= ency_links.txt >> -usr/lib/python3.10/site-packages/borgbackup-1.1.17-py3.10.egg-info/entry_= points.txt >> -usr/lib/python3.10/site-packages/borgbackup-1.1.17-py3.10.egg-info/not-zi= p-safe >> -usr/lib/python3.10/site-packages/borgbackup-1.1.17-py3.10.egg-info/requir= es.txt >> -usr/lib/python3.10/site-packages/borgbackup-1.1.17-py3.10.egg-info/top_le= vel.txt >> +#usr/lib/python3.10/site-packages/borgbackup-1.2.0-py3.10.egg-info >> +#usr/lib/python3.10/site-packages/borgbackup-1.2.0-py3.10.egg-info/PKG-IN= FO >> +#usr/lib/python3.10/site-packages/borgbackup-1.2.0-py3.10.egg-info/SOURCE= S.txt >> +#usr/lib/python3.10/site-packages/borgbackup-1.2.0-py3.10.egg-info/depend= ency_links.txt >> +#usr/lib/python3.10/site-packages/borgbackup-1.2.0-py3.10.egg-info/entry_= points.txt >> +#usr/lib/python3.10/site-packages/borgbackup-1.2.0-py3.10.egg-info/not-zi= p-safe >> +#usr/lib/python3.10/site-packages/borgbackup-1.2.0-py3.10.egg-info/requir= es.txt >> +#usr/lib/python3.10/site-packages/borgbackup-1.2.0-py3.10.egg-info/top_le= vel.txt >> diff --git a/lfs/borgbackup b/lfs/borgbackup >> index 9244900bf..08a3e8ec7 100644 >> --- a/lfs/borgbackup >> +++ b/lfs/borgbackup >> @@ -24,7 +24,7 @@ >> >> include Config >> >> -VER =3D 1.1.17 >> +VER =3D 1.2.0 >> SUMMARY =3D Deduplicating backup program with compression and authentic= ated encryption >> >> THISAPP =3D borgbackup-$(VER) >> @@ -33,7 +33,7 @@ DL_FROM =3D $(URL_IPFIRE) >> DIR_APP =3D $(DIR_SRC)/$(THISAPP) >> TARGET =3D $(DIR_INFO)/$(THISAPP) >> PROG =3D borgbackup >> -PAK_VER =3D 10 >> +PAK_VER =3D 11 >> >> DEPS =3D >> >> @@ -47,7 +47,7 @@ objects =3D $(DL_FILE) >> >> $(DL_FILE) =3D $(DL_FROM)/$(DL_FILE) >> >> -$(DL_FILE)_BLAKE2 =3D 3ceb51f3c2e4ee4e38495ca0bdef2d5c1b30225afe9a3c9987a= 82f4a1facd4aa203fb21512e655fbbab400bcbd412ff4aefa80242aa21a579e086d38bf3e1078 >> +$(DL_FILE)_BLAKE2 =3D 9e6cb8d85ca196cbdd6baba694bc7987d63f85d2ba0e25f3ac1= e59400882fff71e29b04ca218ee78f23daeb52d13547062b0c80bd0d3f5b460b28b4f274d11ec >> >> install : $(TARGET) >> >> --=20 >> 2.35.1 >> >=20 --===============6354233298922966151==--