Ebuzer Celil Durmaz
6bc41465a4
Add --json flag to borg prune for structured output ( #9512 )
...
Lint / lint (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / security (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
CI / asan_ubsan (push) Has been cancelled
CI / native_tests (push) Has been cancelled
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Has been cancelled
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Has been cancelled
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Has been cancelled
CI / vm_tests (OpenBSD, false, openbsd, 7.8) (push) Has been cancelled
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Has been cancelled
CI / windows_tests (push) Has been cancelled
prune: add --json option, fixes #9222
Enable programmatic extraction of prune/keep decisions via
structured JSON output, instead of parsing log message text.
Follows the repo-list --json pattern: outputs a single JSON object
with repository, encryption, and archives array. Each archive
includes pruned (bool), rule, and rule_number fields.
2026-03-20 21:03:01 +01:00
TW
8eff8270c0
Merge pull request #9525 from ThomasWaldmann/remove-backslash-assertion
...
Lint / lint (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / security (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
CI / asan_ubsan (push) Has been cancelled
CI / native_tests (push) Has been cancelled
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Has been cancelled
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Has been cancelled
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Has been cancelled
CI / vm_tests (OpenBSD, false, openbsd, 7.8) (push) Has been cancelled
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Has been cancelled
CI / windows_tests (push) Has been cancelled
patterns: allow backslashes in paths, fixes #9518
2026-03-19 18:56:31 +01:00
Thomas Waldmann
2ac51d71cf
patterns: allow backslashes in paths, fixes #9518
...
On all POSIX systems, a backslash is a normal character in filenames and not a path separator.
2026-03-19 17:41:51 +01:00
TW
742978911c
Merge pull request #9501 from ebuzerdrmz44/fix/transfer-cwd-metadata
...
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.8) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
CodeQL / Analyze (push) Waiting to run
Fixes #9495 preserve cwd archive metadata
2026-03-19 10:42:45 +01:00
ebuzerdrmz44
6b51f36569
passing black lint
2026-03-18 16:15:30 +03:00
ebuzerdrmz44
440b7039af
addressing review
2026-03-18 16:02:34 +03:00
ebuzerdrmz44
6a3158729f
about issue
2026-03-18 02:00:21 +03:00
TW
be640e982f
Merge pull request #9348 from trxvorr/fix-9339-msys2-paths
...
Lint / lint (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / security (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
CI / asan_ubsan (push) Has been cancelled
CI / native_tests (push) Has been cancelled
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Has been cancelled
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Has been cancelled
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Has been cancelled
CI / vm_tests (OpenBSD, false, openbsd, 7.8) (push) Has been cancelled
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Has been cancelled
CI / windows_tests (push) Has been cancelled
archiver: warn about MSYS2 path translation, fixes #9339
2026-03-17 15:37:13 +01:00
TW
ee2bb95020
Merge pull request #9493 from borgbackup/dependabot/github_actions/actions-0bdddc0270
...
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.8) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
build(deps): bump psf/black from 26.3.0 to 26.3.1 in the actions group
2026-03-17 12:53:10 +01:00
TW
ced8d93d8f
Merge pull request #9492 from borgbackup/dependabot/pip/requirements.d/pip-dependencies-5816b45d2e
...
build(deps): bump the pip-dependencies group in /requirements.d with 2 updates
2026-03-17 12:52:31 +01:00
dependabot[bot]
af967dabf0
build(deps): bump psf/black from 26.3.0 to 26.3.1 in the actions group
...
Bumps the actions group with 1 update: [psf/black](https://github.com/psf/black ).
Updates `psf/black` from 26.3.0 to 26.3.1
- [Release notes](https://github.com/psf/black/releases )
- [Changelog](https://github.com/psf/black/blob/main/CHANGES.md )
- [Commits](35ea67920b...c6755bb741 )
---
updated-dependencies:
- dependency-name: psf/black
dependency-version: 26.3.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: actions
...
Signed-off-by: dependabot[bot] <support@github.com>
2026-03-17 05:44:57 +00:00
dependabot[bot]
b2cd0b8fdd
build(deps): bump the pip-dependencies group
...
Bumps the pip-dependencies group in /requirements.d with 2 updates: [pyinstaller](https://github.com/pyinstaller/pyinstaller ) and [tox](https://github.com/tox-dev/tox ).
Updates `pyinstaller` from 6.18.0 to 6.19.0
- [Release notes](https://github.com/pyinstaller/pyinstaller/releases )
- [Changelog](https://github.com/pyinstaller/pyinstaller/blob/develop/doc/CHANGES.rst )
- [Commits](https://github.com/pyinstaller/pyinstaller/compare/v6.18.0...v6.19.0 )
Updates `tox` from 4.34.1 to 4.35.0
- [Release notes](https://github.com/tox-dev/tox/releases )
- [Changelog](https://github.com/tox-dev/tox/blob/main/docs/changelog.rst )
- [Commits](https://github.com/tox-dev/tox/compare/4.34.1...4.35.0 )
---
updated-dependencies:
- dependency-name: pyinstaller
dependency-version: 6.19.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: pip-dependencies
- dependency-name: tox
dependency-version: 4.35.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: pip-dependencies
...
Signed-off-by: dependabot[bot] <support@github.com>
2026-03-17 05:43:09 +00:00
TW
97b392a6ac
Merge pull request #9486 from ThomasWaldmann/windows-canary-fixes
...
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.8) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
canary CI job: windows: do it like in ci.yml
2026-03-16 15:31:45 +01:00
Thomas Waldmann
1356aeb8ae
canary CI job: windows: do it like in ci.yml
2026-03-16 15:30:30 +01:00
TW
f12f464099
Merge pull request #9481 from ThomasWaldmann/rel200b21
...
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.8) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
Lint / lint (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Release 2.0.0b21
2026-03-15 19:50:30 +01:00
Thomas Waldmann
2d6d900231
update CHANGES
2026-03-15 17:03:12 +01:00
Thomas Waldmann
5eb2dd5328
canary CI job: use bash shell
...
Even on Windows.
Also:
- run daily (until all issues have been found / fixed)
- fix trailing blanks.
2026-03-15 17:03:10 +01:00
trxvorr
d7bbcfb98b
archiver: warn about MSYS2 path translation, fixes #9339
...
This adds a runtime warning when running under MSYS2/Git Bash without the necessary environment variables to disable automatic path translation. The documentation is also updated to explain this behavior and how to mitigate it.
2026-03-15 20:54:59 +05:30
Thomas Waldmann
2322d24e91
add .DS_Store to .gitignore
2026-03-15 14:37:51 +01:00
Thomas Waldmann
f12f67a76d
build_usage build_man
2026-03-15 14:37:50 +01:00
TW
1706e0d36b
Merge pull request #9480 from ThomasWaldmann/add-rest-store-support
...
add REST store support
2026-03-15 14:29:49 +01:00
Thomas Waldmann
a2ea1e9883
add rest store support
2026-03-15 13:19:39 +01:00
TW
93dfcf4565
Merge pull request #9475 from ThomasWaldmann/update-changes-master
...
Lint / lint (push) Has been cancelled
CI / lint (push) Has been cancelled
CI / security (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
CI / asan_ubsan (push) Has been cancelled
CI / native_tests (push) Has been cancelled
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Has been cancelled
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Has been cancelled
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Has been cancelled
CI / vm_tests (OpenBSD, false, openbsd, 7.8) (push) Has been cancelled
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Has been cancelled
CI / windows_tests (push) Has been cancelled
update CHANGES
2026-03-13 15:30:48 +01:00
TW
0d784d00d2
Merge pull request #9474 from ThomasWaldmann/use-jsonargparse-release
...
jsonargparse: pull from pypi, fixes #9460
2026-03-13 15:29:54 +01:00
Thomas Waldmann
d0c5a04a2a
update CHANGES
2026-03-13 15:29:33 +01:00
Thomas Waldmann
2f99890487
jsonargparse: pull from pypi, fixes #9460
2026-03-13 13:12:14 +01:00
TW
a32d9724f0
Merge pull request #9472 from ThomasWaldmann/ci-openbsd78
...
adapt for OpenBSD 7.8 (CI and setup.py, master)
2026-03-13 11:36:45 +01:00
TW
ff9af9d4d5
Merge pull request #9471 from ThomasWaldmann/ci-timeouts-master
...
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.7) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
CI timeouts (master)
2026-03-13 00:47:50 +01:00
Thomas Waldmann
b35a76dd3c
adapt for OpenBSD 7.8 (CI and setup.py)
2026-03-13 00:39:13 +01:00
Thomas Waldmann
8ca88165ac
CI: increase timeout, see #9470
...
Especially OpenBSD with Coverage is rather slow.
2026-03-12 23:59:27 +01:00
TW
20078f5ab8
Merge pull request #9469 from ThomasWaldmann/ci-locked-and-canary
...
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.7) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
CI: use locked requirements, add canary job, fixes #9361
2026-03-12 16:56:36 +01:00
Thomas Waldmann
0f1e3f90fe
CI: use locked requirements, add canary job, fixes #9361
2026-03-12 15:01:00 +01:00
TW
463aafde65
Merge pull request #9468 from ThomasWaldmann/tag-validator
...
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.7) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
CodeQL / Analyze (push) Has been cancelled
enhance tag_validator, fixes #9466
2026-03-12 01:17:07 +01:00
Thomas Waldmann
65de69943e
enhance tag_validator, fixes #9466
2026-03-11 23:11:38 +01:00
TW
7f7e6061fb
Merge pull request #9464 from ThomasWaldmann/create-set-metadata
...
borg create: add --hostname/--username/--tags
2026-03-11 21:04:45 +01:00
Thomas Waldmann
5f4e921b9a
create: add --tags, fixes #9401
...
- add `--tags TAG [TAG ...]` option to `borg create` to tag newly created archives.
- validate the tags exactly like `borg tag` does, including checking that any special tags starting with `@` are known `SPECIAL_TAGS`.
- add `test_create_tags` and `test_create_invalid_tags` to ensure proper behavior.
2026-03-11 19:28:56 +01:00
Thomas Waldmann
90f84e7219
create: add --hostname/--username, fixes #9402
...
- Added `--hostname` and `--username` command-line options to `borg create`
- Updated Archive to capture and store these explicit values, falling back to system defaults
- Added `test_explicit_hostname_and_username` to verify the functionality
2026-03-11 18:21:38 +01:00
TW
a03d1780a5
Merge pull request #9462 from ThomasWaldmann/trailing-sparse-windows-master
...
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.7) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
CodeQL / Analyze (push) Waiting to run
fix spurious sparse test fail on win32, fixes #7616
2026-03-11 13:57:56 +01:00
TW
1c75f505d6
Merge pull request #9461 from ThomasWaldmann/fix-with-lock-test-master
...
fix race condition in test_with_lock, fixes #8810
2026-03-11 13:23:36 +01:00
Thomas Waldmann
871c89bea0
Fix intermittent test_with_lock failure (race condition), fixes #8810 .
...
test_with_lock previously relied on a hardcoded timeout
(`time.sleep(4)`) to ensure the first background command acquired
the repository lock before the second command tried to get it. On
extremely slow CI runners, this was sometimes too short, allowing
the second command to falsely acquire the lock.
This commit replaces the arbitrary sleep with true synchronization:
- The first command now blocks indefinitely using `sys.stdin.read()`.
- The test deterministically waits for lock acquisition by reading
`p1.stdout.readline()` which guarantees the lock is held.
- After the second command correctly fails, the first command is
smoothly unblocked and terminated by passing `input=""` to
`p1.communicate()`.
2026-03-11 11:40:42 +01:00
Thomas Waldmann
6d85812e12
fix spurious sparse test fail on win32, fixes #7616
...
Python's `os.truncate()` on Windows relies on `SetEndOfFile()`, which does
not initialize the extended disk space with zeroes. This means that
trailing sparse holes simply leave uninitialized garbage data at the end
of the file.
During sparse file extraction, when the very last chunk is a sparse hole,
the VDL (Valid Data Length) is not properly advanced by `os.truncate()`.
As a result, reading from the end of the file fetches random disk garbage
instead of zeroes, causing spurious test failures at boundaries (like
2MB or 8MB) depending on what was in the uninitialized disk sectors.
Fix this by tracking trailing holes and manually writing a single `b"\0"`
byte at the end of the file before truncating on Windows. Writing explicit
data forces NTFS to officially advance the VDL and securely zero-fill the
preceding hole space.
Re-enable `test_sparse_file` on Windows.
2026-03-11 10:58:54 +01:00
Thomas Waldmann
c98e93bc0b
fix race condition in test_with_lock, fixes #8810
2026-03-11 00:13:53 +01:00
TW
3d437d8589
Merge pull request #9413 from ThomasWaldmann/jsonargparse2
...
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / asan_ubsan (push) Blocked by required conditions
CI / native_tests (push) Blocked by required conditions
CI / vm_tests (Haiku, false, haiku, r1beta5) (push) Blocked by required conditions
CI / vm_tests (NetBSD, false, netbsd, 10.1) (push) Blocked by required conditions
CI / vm_tests (OmniOS, false, omnios, r151056) (push) Blocked by required conditions
CI / vm_tests (OpenBSD, false, openbsd, 7.7) (push) Blocked by required conditions
CI / vm_tests (borg-freebsd-14-x86_64-gh, FreeBSD, true, freebsd, 14.3) (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
CodeQL / Analyze (push) Waiting to run
use jsonargparse
2026-03-10 23:44:48 +01:00
Thomas Waldmann
4f2f2255c3
create --paths-from-shell-command, fixes #5968
...
This adds the `--paths-from-shell-command` option to the `create` command, enabling the use of shell-specific features like pipes and redirection when specifying input paths. Includes related test coverage.
2026-03-10 20:16:26 +01:00
Thomas Waldmann
bcce0c13f7
pyproject.toml: pull jsonargparse from main branch zip
2026-03-10 20:16:03 +01:00
Thomas Waldmann
e15547a685
import ActionSubCommands from jsonargparse
2026-03-10 20:15:59 +01:00
Thomas Waldmann
4a6b4130ef
completion: use new get_completion_script method
2026-03-10 18:36:35 +01:00
Thomas Waldmann
f2bdb689c5
improve configuration precedence docs
2026-03-10 18:36:34 +01:00
Thomas Waldmann
cf6fd0769d
use jsonargparse's PositiveInt
2026-03-10 18:36:32 +01:00
Thomas Waldmann
678df16bad
add support for auto-generated environment variables (jsonargparse)
2026-03-10 18:36:31 +01:00