Commit graph

9532 commits

Author SHA1 Message Date
Thomas Waldmann
176dec80f3
integrate mount2_cmds_test into mount_cmds_test
Updated mount_cmds_test.py to work with both llfuse/pyfuse3 and mfusepy
by checking for either implementation in skip conditions.

mfusepy: 2 test fails due to hardlink implementation differences
2025-12-20 19:31:50 +01:00
Thomas Waldmann
ead93b6d12
integrate mount2/umount2 into mount/umount, use BORG_FUSE_IMPL 2025-12-20 19:31:49 +01:00
Thomas Waldmann
71416d76f4
fuse2: getattr: prefer fh lookup if possible 2025-12-20 19:31:47 +01:00
Thomas Waldmann
0aa7c16749
fuse2: improve comments 2025-12-20 19:31:46 +01:00
Thomas Waldmann
3393c0f2b7
fuse2: implement lazy children dict allocation for DirEntry 2025-12-20 19:31:45 +01:00
Thomas Waldmann
8eb676b047
fuse2: remove path from packed inodes to save memory 2025-12-20 19:31:43 +01:00
Thomas Waldmann
a842234843
fuse2: add __slots__ to DirEntry for memory optimization 2025-12-20 19:31:42 +01:00
Thomas Waldmann
72befa1bcf
fuse2: rename Node -> DirEntry, inode_count -> current_ino 2025-12-20 19:31:41 +01:00
Thomas Waldmann
9651b083df
Optimize fuse2 memory usage with centralized packed item storage 2025-12-20 19:31:39 +01:00
Thomas Waldmann
6632b1187a
fuse2: remove unused fuse_main 2025-12-20 19:31:38 +01:00
Thomas Waldmann
f545ebbf0d
fuse2: optimize/generalize debug and test logging 2025-12-20 19:31:37 +01:00
Thomas Waldmann
2d1772f919
fuse2: versions view + test 2025-12-20 19:31:35 +01:00
Thomas Waldmann
c21c42b1a9
mount2/umount2: mfusepy-based alternative FUSE fs implementation 2025-12-20 19:31:33 +01:00
TW
a0e250df0a
Merge pull request #9231 from ThomasWaldmann/enoattr
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 / 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 (OpenBSD, false, openbsd, 7.7) (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
move ENOATTR to borg.platform
2025-12-20 19:30:07 +01:00
Thomas Waldmann
9ae6da88aa
import ENOATTR from borg.platform 2025-12-20 19:00:38 +01:00
Thomas Waldmann
663732c8bd
move ENOATTR definition to borg.platform.base
That also gets imported into borg.platform, so
it is easily available from there.
2025-12-20 18:55:28 +01:00
TW
42e645e6a2
Merge pull request #9229 from ThomasWaldmann/haiku-fixes
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 / 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 (OpenBSD, false, openbsd, 7.7) (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
Haiku fixes
2025-12-17 22:16:57 +01:00
Thomas Waldmann
dcdc91c1cc
improve fs_test 2025-12-17 18:59:36 +01:00
Thomas Waldmann
6be6b1d942
test_with_lock: skip on Haiku OS 2025-12-17 18:55:43 +01:00
Thomas Waldmann
4df1a534de
tests: refactor expected item_count 2025-12-17 18:44:42 +01:00
Thomas Waldmann
4a701b65ea
add debug prints for sys.path and PATH 2025-12-17 17:59:05 +01:00
Thomas Waldmann
87ff42ee27
add debug print to display archive contents 2025-12-17 17:32:01 +01:00
Thomas Waldmann
1721d1b080
fs_test: exclude Haiku OS from "~root" expansion check 2025-12-17 17:26:14 +01:00
TW
841ed3afad
Merge pull request #9227 from ThomasWaldmann/fix-macos-ci-platforms
Some checks are pending
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 (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
CI: use macos-15-intel to build the x86_64 binary
2025-12-16 21:17:24 +01:00
TW
7a1c1b41c0
Merge pull request #9226 from ThomasWaldmann/update-changes-master
Some checks are pending
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 (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
update CHANGES
2025-12-16 20:28:02 +01:00
Thomas Waldmann
d27cb58faf
CI: use macos-15-intel to build the x86_64 binary 2025-12-16 20:15:52 +01:00
Thomas Waldmann
28de075535
update CHANGES 2025-12-16 13:51:27 +01:00
TW
2c15eda7ac
Merge pull request #9225 from ThomasWaldmann/archive-cwd-master
Some checks are pending
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 (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
info: show cwd at the time of backup creation, fixes #6191
2025-12-16 03:24:57 +01:00
Thomas Waldmann
3c2afeb943
info: show cwd at the time of backup creation, fixes #6191
Useful if one archives relative paths. Together with the cwd
one can know the full path of the files.
2025-12-15 21:28:34 +01:00
TW
d819cd3ba8
Merge pull request #9224 from ThomasWaldmann/fix-binary-build-gh-master
Some checks are pending
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 (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
CI: FUSE related fixes/improvements (master)
2025-12-15 19:07:08 +01:00
Thomas Waldmann
ac73be4b09
CI: use macOS 15 for binary builds
Github EOLed all other macOS Intel action runners.

As Apple Silicon users tend to have more
recent OSes, we bump that to macOS 15 also.
2025-12-15 17:40:51 +01:00
Thomas Waldmann
4db56e3f71
update binary readme 2025-12-15 17:37:14 +01:00
Thomas Waldmann
ddcf61b5db
CI: increase timeout 2025-12-15 17:35:12 +01:00
Thomas Waldmann
fefb4dfd8e
freebsd: fix upload name for artifact zip 2025-12-15 17:33:19 +01:00
Thomas Waldmann
c8f5d6219d
CI: FUSE related fixes/improvements (master)
fixes #9182

- install OS fuse support packages as indicated by the tox env.
  on the macOS runners, we do not have any fuse support.
  on the linux runners, we may have fuse2 or fuse3.
  on FreeBSD, we have fuse2.
- install fuse python library for binary build
- first build/upload binaries, then run tests (including binary tests).
  early uploading makes inspection of a malfunctioning binary possible.
- for now, use llfuse, as there is an issue with pyinstaller and pyfuse3.

Also:
- remove || true - this just hides errors, not what we want.
2025-12-15 17:29:11 +01:00
TW
9aa66a0f75
Merge pull request #9223 from ThomasWaldmann/cockpit
borg --cockpit: show TUI based on Textual
2025-12-15 17:24:26 +01:00
Thomas Waldmann
2af8de5800
borg --cockpit: show TUI based on Textual 2025-12-15 16:10:21 +01:00
TW
2152e1e3a9
Merge pull request #9209 from ThomasWaldmann/fix-9208
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 / 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 (OpenBSD, false, openbsd, 7.7) (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
Fix misc. borg transfer issues
2025-12-08 01:33:38 +01:00
Thomas Waldmann
b43c3adabb
transfer: create a chunks list entry for missing chunks, see #9208 2025-12-06 17:21:41 +01:00
Thomas Waldmann
3bda2f10d9
HardLinkManager: allow NoneType for contentless hardlinks, see #9208
Some hardlinks have content and thus a chunks list,
but e.g. block or char device hardlinks do not have a chunks list.
2025-12-06 17:21:38 +01:00
Thomas Waldmann
352f982393
old archives might not have a comment in metadata, see #9208
guess the default is only needed when transferring
very old archives from borg1 repos.
2025-12-06 16:04:46 +01:00
TW
425fa1c77a
fix pynacl/libsodium build on freebsd (#9214)
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 / 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 (OpenBSD, false, openbsd, 7.7) (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
2025-12-06 15:30:26 +01:00
TW
70f6c0122a
Merge pull request #9212 from ThomasWaldmann/filter-xattrs-master
Some checks are pending
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 (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
no_selinux -> filter_xattrs
2025-12-05 19:18:47 +01:00
Thomas Waldmann
fefb27e732
no_selinux -> filter_xattrs
Originally, we only wanted to get rid of selinux xattrs,
but macOS also uses some xattr keys that disturb our test results,
so we filter them also.
2025-12-05 18:37:11 +01:00
TW
231bf26552
Merge pull request #9200 from ThomasWaldmann/fix-9199-legacyremote-raise-missing
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 / 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 (OpenBSD, false, openbsd, 7.7) (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
transfer and legacyremote fixes
2025-12-04 01:59:31 +01:00
Thomas Waldmann
7d4c05d2a3
transfer: fix AttributeError with --dry-run, see #9199 2025-12-02 03:00:32 +01:00
Thomas Waldmann
017dfec4ff
transfer: add --dry-run test 2025-12-02 03:00:30 +01:00
Thomas Waldmann
11ad58d3ca
legacyremote: accept raise_missing in get/get_many to avoid TypeError with callers that pass it; no behavior change on legacy protocol (fixes #9199) 2025-12-02 02:33:01 +01:00
TW
a38d87b21f
Merge pull request #9205 from ThomasWaldmann/fix-compact-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 / 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 (OpenBSD, false, openbsd, 7.7) (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
compact: fix dealing with mismatching hints (master)
2025-12-02 02:31:14 +01:00
Thomas Waldmann
d676ef7b3f
compact: also fix segments hints data for lost segment files
The code used to remove the missing segment only from "compact" hints,
but we need to also remove it from "segments" hints.
2025-12-02 01:37:35 +01:00