Commit graph

9369 commits

Author SHA1 Message Date
Thomas Waldmann
aea883b700
set_flags: remove compression flag
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.

(cherry picked from commit 56dda84162)
2025-10-21 03:02:35 +02:00
Thomas Waldmann
a6b6d35b30
set_flags: use get/set to only influence specific flags, fixes #9039
Linux platform only.

(cherry picked from commit 9214197a2c)

set_flags: if getting the flags fails, better give up than
corrupting them.

Thanks to Earnestly for the feedback on IRC.

(cherry picked from commit 9c600a9571)
2025-10-21 03:01:10 +02:00
TW
d0dabe69a8
Merge pull request #9087 from ThomasWaldmann/update-changes-master
Some checks failed
Lint / lint (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
update CHANGES
2025-10-16 17:46:29 +02:00
Thomas Waldmann
73e2543b53
update CHANGES 2025-10-16 13:34:27 +02:00
TW
0277d8b635
Merge pull request #9086 from ThomasWaldmann/patterns-style-master
Some checks failed
Lint / lint (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
CI / lint (push) Has been cancelled
CI / security (push) Has been cancelled
CI / posix_tests (push) Has been cancelled
CI / windows_tests (push) Has been cancelled
patterns: clarify scope of default pattern style, fixes #9004
2025-10-16 11:17:50 +02:00
TW
5df6021bc2
Merge pull request #9084 from ThomasWaldmann/non-tty-progress-master
Some checks are pending
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / posix_tests (push) Blocked by required conditions
CI / windows_tests (push) Blocked by required conditions
CodeQL / Analyze (push) Waiting to run
improved tty-less progress reporting (master)
2025-10-16 03:21:17 +02:00
TW
140ff56135
Merge pull request #9085 from ThomasWaldmann/mount-show-rc-master
mount --show-rc: display main process rc, fixes #8308
2025-10-16 03:20:37 +02:00
Thomas Waldmann
a32989071b
do_show_rc: suppress bandit warning
see the comment in line 201.
2025-10-16 02:46:08 +02:00
Thomas Waldmann
3a9088f501
patterns: clarify scope of default pattern style, fixes #9004 2025-10-16 02:39:42 +02:00
Thomas Waldmann
a775517f08
mount --show-rc: display main process rc, fixes #8308
when borg mount is used without -f/--foreground (so that the FUSE
borg process was started daemonized in the background), it did not
display the rc of the main process, even when --show-rc was used.

now it does display the rc of the main process.

note that this is rather a consistency fix than being super useful,
because the main "action" happens in the background daemon process,
not in the main process.
2025-10-16 02:26:06 +02:00
Thomas Waldmann
8cbe4b8d48
improved tty-less progress reporting
Previously when running borg in a systemd service (and similar when piping to
a file and co.), these problems occurred:

- The carriage return both made it so that journald interpreted the output as
  binary, therefore not printing the text, while also not buffering
  correctly, so that log output was only available every once in a while
  in the form [40k blob data]. This can partially be worked around by
  using `journalctl -a` to view the logs, which at least prints the text,
  though only sporadically.

- The path was getting truncated to a short length, since the default
  get_terminal_size returns a column width of 80, which isn't relevant
  when printing to e.g. journald.

This commit fixes this by introducing a new code path for when stream is
not a tty, which always prints the full paths and ends lines with a linefeed.

This is based on unfinished PR #8939 by @infinisil, thanks for your suggestion!

Forward port of PR #9055 to master.
2025-10-16 01:59:43 +02:00
TW
4b28cfdae8
Merge pull request #9083 from ThomasWaldmann/fix-7144-master
docs: improve borg help patterns (port of #9054 to master)
2025-10-16 01:12:08 +02:00
TW
9c98ab5943
Merge pull request #9082 from ThomasWaldmann/build-binaries-on-gh-master
build binaries on github
2025-10-16 00:53:48 +02:00
Thomas Waldmann
2dd80e1ee9
docs: improve borg help patterns (port of #9054 to master); fixes #7144 2025-10-16 00:47:15 +02:00
Thomas Waldmann
c4a9582fdf
build binaries on github
also:

- speed up CI for PRs
- update README for binaries
2025-10-16 00:37:46 +02:00
TW
160a966044
Merge pull request #9081 from ThomasWaldmann/chunker-fuzzing-master
add fuzzing tests for chunkers
2025-10-16 00:26:23 +02:00
TW
20d6b1060b
Merge pull request #9080 from ThomasWaldmann/drop-macos-vm-master
vagrant: drop macOS 10.12 VM
2025-10-15 23:55:00 +02:00
TW
8bc39e7aac
Merge pull request #9079 from ThomasWaldmann/brewfile-master
Brewfile: use openssl@3
2025-10-15 23:54:42 +02:00
Thomas Waldmann
084750ad48
add fuzzing tests for chunkers 2025-10-15 23:48:13 +02:00
Thomas Waldmann
48640e78d0
vagrant: drop macOS 10.12 VM
The VM was used for local macOS testing and
also for building a macOS intel fat binary.

We also do macOS CI testing on GitHub and I
recently added binary building on GitHub for
Apple Silicon and Intel.

The macOS 10 VM was very outdated, super slow
and a pain to use. I didn't succeed in building
a recent macOS vagrant VM, so we'll just use
GitHub from now on...
2025-10-15 22:47:25 +02:00
Thomas Waldmann
0c37c387dc
Brewfile: use openssl@3
@3.0 is old, @3 installs something recent (or
even that is installed already).
2025-10-15 22:44:41 +02:00
Thomas Waldmann
f401ca00f9
backport action: remove debugging step
Some checks failed
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 / linux (ubuntu-22.04, 3.10, mypy) (push) Has been cancelled
CI / linux (ubuntu-22.04, 3.10, py310-fuse2) (push) Has been cancelled
CI / linux (ubuntu-22.04, 3.11, docs) (push) Has been cancelled
CI / linux (ubuntu-22.04, 3.11, py311-fuse3) (push) Has been cancelled
CI / linux (ubuntu-24.04, 3.12, py312-fuse3) (push) Has been cancelled
CI / linux (ubuntu-24.04, 3.13, py313-fuse3) (push) Has been cancelled
CI / linux (ubuntu-24.04, 3.14, py314-fuse3) (push) Has been cancelled
CI / macOS (macos-14, 3.11, py311-none) (push) Has been cancelled
CI / windows (push) Has been cancelled
2025-10-12 16:24:36 +02:00
TW
e4e62c964d
Merge pull request #9060 from ThomasWaldmann/fix-backport-action
backport action: fix label_pattern
2025-10-12 16:19:56 +02:00
Thomas Waldmann
ee4083eaa7
backport action: fix label_pattern 2025-10-12 16:19:19 +02:00
TW
cb8f6ad775
Merge pull request #9059 from ThomasWaldmann/backport-action-debugging
debug backport action
2025-10-12 16:07:09 +02:00
Thomas Waldmann
126dc4974a
debug backport action 2025-10-12 16:06:25 +02:00
TW
b988f9c3a2
Merge pull request #9050 from ThomasWaldmann/keyfile-same-repo-path-master
Some checks failed
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 / linux (ubuntu-22.04, 3.10, mypy) (push) Has been cancelled
CI / linux (ubuntu-22.04, 3.10, py310-fuse2) (push) Has been cancelled
CI / linux (ubuntu-22.04, 3.11, docs) (push) Has been cancelled
CI / linux (ubuntu-22.04, 3.11, py311-fuse3) (push) Has been cancelled
CI / linux (ubuntu-24.04, 3.12, py312-fuse3) (push) Has been cancelled
CI / linux (ubuntu-24.04, 3.13, py313-fuse3) (push) Has been cancelled
CI / linux (ubuntu-24.04, 3.14, py314-fuse3) (push) Has been cancelled
CI / macOS (macos-14, 3.11, py311-none) (push) Has been cancelled
CI / windows (push) Has been cancelled
docs: What happens when a new keyfile repo is created at the same path?
2025-10-10 20:24:54 +02:00
TW
dbf321a2b2
Merge pull request #9051 from ThomasWaldmann/borg-mount-debugging
docs: how to debug borg mount, fixes #5461
2025-10-10 20:19:29 +02:00
Thomas Waldmann
0031b73b2b
docs: how to debug borg mount, fixes #5461 2025-10-10 14:52:10 +02:00
Thomas Waldmann
d0dab94c07
docs: What happens when a new keyfile repo is created at the same path?, fixes #6230
Also add a test.
2025-10-10 14:24:05 +02:00
TW
0e45c9dc06
Merge pull request #8590 from Atemu/document-extract-wildcard
Some checks are pending
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / linux (ubuntu-22.04, 3.10, mypy) (push) Blocked by required conditions
CI / linux (ubuntu-22.04, 3.10, py310-fuse2) (push) Blocked by required conditions
CI / linux (ubuntu-22.04, 3.11, docs) (push) Blocked by required conditions
CI / linux (ubuntu-22.04, 3.11, py311-fuse3) (push) Blocked by required conditions
CI / linux (ubuntu-24.04, 3.12, py312-fuse3) (push) Blocked by required conditions
CI / linux (ubuntu-24.04, 3.13, py313-fuse3) (push) Blocked by required conditions
CI / linux (ubuntu-24.04, 3.14, py314-fuse3) (push) Blocked by required conditions
CI / macOS (macos-14, 3.11, py311-none) (push) Blocked by required conditions
CI / windows (push) Blocked by required conditions
CodeQL / Analyze (push) Waiting to run
extract: document how to use wildcards in PATHs, fixes #8589
2025-10-10 13:28:17 +02:00
Atemu
fdabbd7633
extract: document how to use wildcards in PATHs
Fixes https://github.com/borgbackup/borg/issues/8589
2025-10-10 11:20:08 +02:00
TW
3ebae359ae
Merge pull request #9045 from ThomasWaldmann/fix-9042-setuptools-min
Some checks are pending
Lint / lint (push) Waiting to run
CI / lint (push) Waiting to run
CI / security (push) Waiting to run
CI / linux (ubuntu-22.04, 3.10, mypy) (push) Blocked by required conditions
CI / linux (ubuntu-22.04, 3.10, py310-fuse2) (push) Blocked by required conditions
CI / linux (ubuntu-22.04, 3.11, docs) (push) Blocked by required conditions
CI / linux (ubuntu-22.04, 3.11, py311-fuse3) (push) Blocked by required conditions
CI / linux (ubuntu-24.04, 3.12, py312-fuse3) (push) Blocked by required conditions
CI / linux (ubuntu-24.04, 3.13, py313-fuse3) (push) Blocked by required conditions
CI / linux (ubuntu-24.04, 3.14, py314-fuse3) (push) Blocked by required conditions
CI / macOS (macos-14, 3.11, py311-none) (push) Blocked by required conditions
CI / windows (push) Blocked by required conditions
CodeQL / Analyze (push) Waiting to run
build: require setuptools>=78.1.1 (fixes #9042)
2025-10-09 18:47:02 +02:00
Thomas Waldmann
16e7039dbe
build: require setuptools>=78.1.1 to address GHSA-5rjg-fvgr-3xxf (closes #9042) 2025-10-09 17:47:03 +02:00
TW
46d139da81
Merge pull request #9043 from ThomasWaldmann/py314
Python 3.14 release support, use latest msgpack and cython
2025-10-09 14:30:51 +02:00
Thomas Waldmann
7a7f0a8279
vagrant: use py 3.13.8 to build the binary 2025-10-09 13:19:28 +02:00
Thomas Waldmann
4b33f5412e
Cython 3.1.4 2025-10-09 13:19:26 +02:00
Thomas Waldmann
da58d92aa6
allow msgpack 1.1.2
1.1.2 provides wheels for py 3.14.
2025-10-09 13:16:54 +02:00
Thomas Waldmann
947007c567
test on Python 3.14 (w/o -dev) 2025-10-09 12:43:16 +02:00
TW
1c6ef7a200
Merge pull request #9031 from cr1901/relax-hl-main
Add tests for diff output of archives with hard links.
2025-10-02 18:10:21 +02:00
TW
6176019550
Merge pull request #9033 from ThomasWaldmann/fix-9032
create: add exception handler for NODUMP excluded dirs, fixes #9032
2025-10-02 13:49:33 +02:00
TW
a8e10c4a5c
Merge pull request #9034 from ThomasWaldmann/format-inode
list --format: add "inode" support to formatter, add tests
2025-10-02 12:33:06 +02:00
William D. Jones
4951e1001a Modify hard-link tests based on upstream feedback. 2025-09-30 20:50:31 -04:00
Thomas Waldmann
b2798ecd3a
create: add exception handler for NODUMP excluded dirs, fixes #9032 2025-10-01 00:59:43 +02:00
Thomas Waldmann
0f861d5a91
list --format: add "inode" support to formatter, add tests 2025-10-01 00:43:31 +02:00
Thomas Waldmann
b27dba670c
add test for #9032 2025-09-30 19:32:22 +02:00
William D. Jones
a396e7db2b Add tests for diff output of archives with hard links. 2025-09-30 12:56:15 -04:00
TW
0ee5d6f018
Merge pull request #9028 from borgbackup/dependabot/pip/requirements.d/pip-25.2
build(deps-dev): bump pip from 25.1.1 to 25.2 in /requirements.d
2025-09-25 04:45:54 +02:00
dependabot[bot]
9736c72941
build(deps-dev): bump pip from 25.1.1 to 25.2 in /requirements.d
Bumps [pip](https://github.com/pypa/pip) from 25.1.1 to 25.2.
- [Changelog](https://github.com/pypa/pip/blob/main/NEWS.rst)
- [Commits](https://github.com/pypa/pip/compare/25.1.1...25.2)

---
updated-dependencies:
- dependency-name: pip
  dependency-version: '25.2'
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-09-24 22:43:44 +00:00
TW
9f18b7dad5
Merge pull request #9026 from ThomasWaldmann/backport-action
github actions: use korthout/backport-action
2025-09-23 19:39:54 +02:00