head 1.4; access; symbols pkgsrc-2026Q3:1.3.0.4 pkgsrc-2026Q3-base:1.3 pkgsrc-2026Q2:1.3.0.2 pkgsrc-2025Q3:1.1.0.2; locks; strict; comment @# @; 1.4 date 2026.10.05.13.18.30; author adam; state dead; branches; next 1.3; commitid CmLtOV8EL6DQ2iYG; 1.3 date 2026.07.21.14.10.28; author he; state Exp; branches 1.3.2.1; next 1.2; commitid OcVkNCJp78a0MwOG; 1.2 date 2025.11.10.19.44.33; author bsiegert; state dead; branches; next 1.1; commitid qhM5vwVtL5weL2iG; 1.1 date 2025.10.16.21.30.21; author he; state Exp; branches 1.1.2.1; next ; commitid Fl4WrWCFskqC8QeG; 1.3.2.1 date 2026.07.21.14.10.28; author maya; state dead; branches; next 1.3.2.2; commitid 5V5qYtXM6MxkfyOG; 1.3.2.2 date 2026.07.21.18.35.28; author maya; state Exp; branches; next ; commitid 5V5qYtXM6MxkfyOG; 1.1.2.1 date 2025.10.16.21.30.21; author maya; state dead; branches; next 1.1.2.2; commitid lgE4xXbvjcQdqnfG; 1.1.2.2 date 2025.10.21.01.43.30; author maya; state Exp; branches; next ; commitid lgE4xXbvjcQdqnfG; desc @@ 1.4 log @py-borgbackup: updated to 1.4.5 1.4.5 (2026-07-19) For upgrade and compatibility hints, please also read the "Upgrade Notes" section above. New features: - create/import-tar/delete/prune --quick-stats: faster than --stats by omitting "All archives" and repository chunk statistics - prune: show total vs matching archives in output - create --exclude-dataless: macOS: skip cloud files not materialized locally - support BORG_HOSTNAME and BORG_USERNAME env vars to override the hostname/username stored in archives and used by the {hostname}/{user} placeholders - Minimal implementation of "related repositories" This feature allows multiple repositories to share deduplication-relevant secrets (id_key and chunk_seed) while maintaining secure, independent encryption keys. - borg key export-related-secrets - borg init --import-related-secrets - BORG_JSON_INDENT env var for JSON output formatting - BORG_HOSTNAME and BORG_USERNAME env vars Fixes: - extract: security fixes for CVE-2026-62268 (low severity: attacker would need repository write access and, if the repo is encrypted, also borg key and passphrase). - create: do not wrap repository writes in backup_io("read") - Archive.delete: don't reuse msgpack Unpacker after an unpacking failure - slashdot hack: fix exclusion of source directory metadata - hashindex: fix new checks for big endian archs - Note: Many of the fixed issues listed below relate to rather rare or theoretical issues and were found by automated code checking. - LRUCache: resolve KeyError and memory leaks - crypto.low_level: fix freeing of memory - extract: resolve memory leak on abandoned async requests in RemoteRepository This can happen if borg fails to extract a file due to permission or other errors or if the archived file had all-zero replacement chunks or inconsistent size. - Chunker fixes - Strictly check the return value of fd.read(n) and reject if it returns more bytes than requested. - Avoid giving len <= 0 to posix_fadvise(), which could drop the rest of the file from the cache. - buzhash: check for len == 0 edge case - Correctly Py_DECREF in cases of errors. - Check for malloc/calloc failures. - Hashindex fixes - Make it possible to look up in compacted hashtables. - Avoid buckets_length integer overflow on 32-bit systems via huge num_buckets. - Deal safely with empty index: we must use num_buckets = 1 to avoid division by zero and sanity check in hashindex_read. - Always initialize min_empty and num_empty. - Reinitialize upper/lower limit and min_empty after compact. - Fix size_idx / fit_size / grow_size / shrink_size (mind array bounds). - Deal with growing when already at max capacity. - hashindex_resize: replace num_entries assertion, return an error instead. - Correctly free memory when header validation fails. - BaseIndex.clear: always stay in valid state. Do not free the old index before we successfully have allocated a new one. Other changes: - msgpack: also allow up to 1.2.1 - use F_FULLFSYNC on macOS for SyncFile data durability - mount: drop runtime warning about symlinks and improve corresponding docs - mount: improve error msg when uid/gid cannot be resolved - properly handle invalid and dev versions in version parser - tests: reset borg.output.progress logger between tests to fix flakiness - docs @ text @$NetBSD: patch-pyproject.toml,v 1.3 2026/07/21 14:10:28 he Exp $ Reinstate a patch to accept newer py-msgpack versions. --- pyproject.toml.orig 2026-07-21 13:28:54.888622385 +0000 +++ 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.2", + "msgpack >=1.0.3, <=1.2.1", "packaging", ] @ 1.3 log @sysutils/py-borgbackup: make this accept a newer py-msgpack. This is in contravention to the upstream policy which insists that because the maintainers of py-msgpack in the distant past made a non-compatible change (apparently in a version before 0.5.6 of py-msgpack, many, many years ago), they now insist that you *cannot* use a newer version of py-msgpack than what the code insists on, ref. https://github.com/borgbackup/borg/issues/3753 This collides (hard) with the pkgsrc default stance which is to "upgrade everything to the newest available version", and makes this package break each time a new version of py-msgpack is integrated in pkgsrc. For now just patch this to accept py-msgpack versions between 0.5.6 and 1.2.1 and not just between 0.5.6 and 1.1.2. At least testing by doing a backup run makes that backup run complete successfully with py-mgspack 1.2.1 installed, instead of a sour error message that a non-supported version of msgpack is installed. This time I'll leave a comment over on the py-msgpack package, in an attempt at preventing this problem from once again creep into a pkgsrc maintenance branch. Bump PKGREVISION. @ text @d1 1 a1 1 $NetBSD$ @ 1.3.2.1 log @file patch-pyproject.toml was added on branch pkgsrc-2026Q2 on 2026-07-21 18:35:28 +0000 @ text @d1 15 @ 1.3.2.2 log @Pullup ticket #7189 - requested by he sysutils/py-borgbackup: Build fix Revisions pulled up: - sysutils/py-borgbackup/Makefile 1.64 - sysutils/py-borgbackup/distinfo 1.43 - sysutils/py-borgbackup/patches/patch-pyproject.toml 1.3 - sysutils/py-borgbackup/patches/patch-src_borg_helpers_msgpack.py 1.7 --- Module Name: pkgsrc Committed By: he Date: Tue Jul 21 14:10:28 UTC 2026 Modified Files: pkgsrc/sysutils/py-borgbackup: Makefile distinfo Added Files: pkgsrc/sysutils/py-borgbackup/patches: patch-pyproject.toml patch-src_borg_helpers_msgpack.py Log Message: sysutils/py-borgbackup: make this accept a newer py-msgpack. This is in contravention to the upstream policy which insists that because the maintainers of py-msgpack in the distant past made a non-compatible change (apparently in a version before 0.5.6 of py-msgpack, many, many years ago), they now insist that you *cannot* use a newer version of py-msgpack than what the code insists on, ref. https://github.com/borgbackup/borg/issues/3753 This collides (hard) with the pkgsrc default stance which is to "upgrade everything to the newest available version", and makes this package break each time a new version of py-msgpack is integrated in pkgsrc. For now just patch this to accept py-msgpack versions between 0.5.6 and 1.2.1 and not just between 0.5.6 and 1.1.2. At least testing by doing a backup run makes that backup run complete successfully with py-mgspack 1.2.1 installed, instead of a sour error message that a non-supported version of msgpack is installed. This time I'll leave a comment over on the py-msgpack package, in an attempt at preventing this problem from once again creep into a pkgsrc maintenance branch. Bump PKGREVISION. @ text @a0 15 $NetBSD: patch-pyproject.toml,v 1.3 2026/07/21 14:10:28 he Exp $ Reinstate a patch to accept newer py-msgpack versions. --- pyproject.toml.orig 2026-07-21 13:28:54.888622385 +0000 +++ 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.2", + "msgpack >=1.0.3, <=1.2.1", "packaging", ] @ 1.2 log @py-borgbackup: update to 1.4.2. Now officially supports msgpack 1.1.2, so these patches are no longer needed. New features: - BORG_MSGPACK_VERSION_CHECK=no to optionally disable the msgpack version check; default is “yes”; use at your own risk. - diff --sort-by: enhanced sorting - create: add --files-changed=MODE option (controls how borg detects whether a file has changed while it is being backed up) - improve tty-less progress reporting (--progress) Fixes: - extract: fs flags: use get/set to influence only specific flags, Linux/macOS/FreeBSD only. - extract: fs flags: remove support for the compression flag; this wasn’t working correctly anyway. - create/info: fix discrepancies in archive stats - import-tar: fix the dot-slash issue; add a test - import-tar: when printing the path, use the already-normalized item.path - preprocess_args: fix option name matching - fix ChunkerParams validation - mount --show-rc: display main process rc - json: include archive keys in JSON lines when requested via --format Other changes: - support Python 3.14 - msgpack: allow 1.1.2 - Brewfile: use openssl@@3 rather than openssl@@3.0, to have a more recent OpenSSL. - msgpack version check: ignore “rc” and other version elements @ text @d1 1 a1 1 $NetBSD: patch-pyproject.toml,v 1.1 2025/10/16 21:30:21 he Exp $ d3 1 a3 1 Bump allowable msgpack version. d5 1 a5 1 --- pyproject.toml.orig 2025-10-13 08:29:03.525998785 +0000 d9 1 a9 1 # using any other msgpack version is not supported by borg development and d11 2 a12 2 - "msgpack >=1.0.3, <=1.1.0", + "msgpack >=1.0.3, <=1.1.2", @ 1.1 log @sysutils/py-borgbackup: add patches to accept py-msgpack up to 1.1.2. This evidently got lost in the previous update... This replicates what upstream has already done in 1.4.2rc*. @ text @d1 1 a1 1 $NetBSD$ @ 1.1.2.1 log @file patch-pyproject.toml was added on branch pkgsrc-2025Q3 on 2025-10-21 01:43:30 +0000 @ text @d1 15 @ 1.1.2.2 log @Pullup ticket #7013 - requested by bsiegert sysutils/py-borgbackup: Functionality fix Revisions pulled up: - sysutils/py-borgbackup/Makefile 1.59 - sysutils/py-borgbackup/distinfo 1.39 - sysutils/py-borgbackup/patches/patch-pyproject.toml 1.1 - sysutils/py-borgbackup/patches/patch-src_borg_helpers_msgpack.py 1.5 --- Module Name: pkgsrc Committed By: he Date: Thu Oct 16 21:30:21 UTC 2025 Modified Files: pkgsrc/sysutils/py-borgbackup: Makefile distinfo Added Files: pkgsrc/sysutils/py-borgbackup/patches: patch-pyproject.toml patch-src_borg_helpers_msgpack.py Log Message: sysutils/py-borgbackup: add patches to accept py-msgpack up to 1.1.2. This evidently got lost in the previous update... This replicates what upstream has already done in 1.4.2rc*. @ text @a0 15 $NetBSD: patch-pyproject.toml,v 1.1 2025/10/16 21:30:21 he Exp $ Bump allowable msgpack version. --- pyproject.toml.orig 2025-10-13 08:29:03.525998785 +0000 +++ 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", ] @