Srigovind Nayak
e6b9118f51
doc: note that mountpoint must not overlap the repository
...
Document the new restriction added so users encountering the error
message have a reference, and so the constraint is visible before they
hit it.
2026-06-23 19:08:12 +02:00
Srigovind Nayak
82a665384b
chore: update changelog for issue 5234
2026-06-23 19:08:12 +02:00
Srigovind Nayak
1e249b0da1
mount: refuse mountpoints that overlap the local repository
...
Mounting a local repository onto its own directory caused the FUSE
server to read its own backend files through the mount it had just
created, deadlocking the kernel. `umount` then reported "Device or
resource busy" and recovery required a reboot that took several
minutes. The same shape occurs when the mountpoint is nested inside
the repository directory, or when the repository directory is nested
inside the mountpoint.
The mount command now resolves both paths via filepath.Abs and
filepath.EvalSymlinks and refuses with a fatal error if either path
equals or contains the other. The check runs before the repository
lock is acquired so an overlap fails fast. Only the local backend is
checked; remote backends cannot shadow the mountpoint directory.
2026-06-23 19:08:12 +02:00
Michael Eischer
5967f9a894
upgrade compress library
2026-06-23 19:07:56 +02:00
Michael Eischer
1733dd56b9
repository: fix zero-sized blobs in v2 repos
2026-06-23 19:07:56 +02:00
Michael Eischer
ed39b60e7d
fix version set by helper after release ( #21865 )
2026-06-23 19:06:55 +02:00
Michael Eischer
7134577c56
use constants from cobra for shell completion helper names ( #21905 )
2026-06-22 22:58:26 +02:00
Ricardo Sawir
55e335ec6c
fuse: reset treeCache on snapshot reload to fix stale latest symlink ( #21873 )
...
The treeCache in SnapshotsDir was never cleared when snapshots were
reloaded. This caused the "latest" symlink to keep pointing to the
previous snapshot even after new snapshots were added.
Add a generation counter to SnapshotsDirStructure that is incremented
whenever the directory structure is rebuilt (in makeDirs). The
treeCache checks this generation on each lookup and resets itself
when the generation changes, ensuring cached nodes (including symlinks)
are refreshed after a snapshot reload.
2026-06-22 18:31:51 +00:00
Winfried Plappert
d30d6b6281
backup - show excluded files and directories in verbose mode - text/JSON ( #21887 )
2026-06-21 16:11:42 +00:00
Eyüp Can Akman
8d7679c831
backup: skip source paths that cannot be accessed ( #21852 )
2026-06-21 17:16:16 +02:00
Michael Eischer
d9dd1b7534
archiver: ignore duplicate but excluded directory entry ( #21900 )
2026-06-21 15:49:08 +02:00
Michael Eischer
1151d70655
Merge pull request #21875 from MichaelEischer/fix-snapshots-latest-group-by
...
Fix default grouping of `snapshots --latest <n>`
2026-06-21 15:46:49 +02:00
Michael Eischer
369da8a770
snapshots: revert default --lastest behavior to pre-0.19.0
...
the changed behavior now only applies when using `--group-by`.
2026-06-21 15:28:22 +02:00
Michael Eischer
9f84c80056
snapshots: cleanup handling of deprecated --last option
2026-06-21 15:28:22 +02:00
Michael Eischer
6070462465
backup: move options finalization to BackupOptions.Finalize
2026-06-21 15:28:22 +02:00
Michael Eischer
1029fe6dd0
list packs snapshot: include actual error in error message ( #21903 )
2026-06-21 15:27:19 +02:00
Michael Eischer
8f00b335b4
rclone/fs: parallelize tests
2026-06-20 22:43:03 +02:00
Michael Eischer
c6a064b68b
mount: disable debug log for test
...
I don't recall any recent problems with that test.
2026-06-20 22:04:07 +02:00
Michael Eischer
8d191c19a5
archiver: decrease sleeps for TestFileChanged test
...
Modern filesystems provide microsecond granularity or better. The old
special case for macOS is removed as Go 1.25 (minimum for restic)
requires at least macOS 12, which uses APFS instead of the old HFS+.
2026-06-20 21:55:46 +02:00
Michael Eischer
d5267f03e0
use fastest compression in integration tests
2026-06-20 20:00:17 +02:00
Michael Eischer
5683224a3c
layout: skip creation of pack subdirectories in integration tests
...
Each time a local backend is created, the local backend also creates all
shard subdirectories. For the integration tests this has the downside
that this results in ~120 (number of test) * 256 (number of directories)
= 30k directories that are created unnecessarily. This significantly
slows down test execution and cleanup.
2026-06-20 20:00:17 +02:00
Michael Eischer
71064fac10
mount: decrease sleep to speed up test
2026-06-20 20:00:17 +02:00
Michael Eischer
52cde35aea
try deleting a directory before resetting the readonly status in tests
2026-06-20 20:00:17 +02:00
Michael Eischer
f394723aa2
inject crypto keys for integration tests
2026-06-20 20:00:17 +02:00
Michael Eischer
072305c5b3
repository: run version sub-tests of TestAllVersions in parallel
...
TestRepositoryIncrementalIndex no longer modified index.Full as this
modified global state and also had no effect on the test result.
2026-06-20 19:59:37 +02:00
Michael Eischer
a1420ea6c7
repository: use separate rand instance per test
...
Use separate instances to prevent data races when executing tests in
parallel.
2026-06-20 19:50:10 +02:00
Michael Eischer
a3be3bd9e1
backend/test: gradually increase timeout for TestListCancel to speed up fast backends
2026-06-20 19:46:22 +02:00
Michael Eischer
b24d05bcb4
skip key decryption in tests
2026-06-20 19:46:22 +02:00
Michael Eischer
c021b8cde0
decrease test data sizes
2026-06-20 19:46:22 +02:00
Michael Eischer
18e5c446e0
data/fs: faster comparison in tests
2026-06-20 19:46:22 +02:00
Michael Eischer
f91afb2fa8
repository: run TestPruneSmall in parallel to other tests
2026-06-20 19:46:22 +02:00
Michael Eischer
2148508050
repository/checker: speed up test repo creation
...
data.TestCreateSnapshot is much faster than archiver.TestSnapshot
2026-06-20 19:46:22 +02:00
Michael Eischer
37e8f50aeb
repository: decrease test data size for streamPack
2026-06-20 19:46:22 +02:00
Michael Eischer
7e5eaf1ead
crypto: decrease parameters for calibrate test
2026-06-20 19:46:22 +02:00
Michael Eischer
aae0985673
index: decrease depth of test repos
2026-06-20 19:46:22 +02:00
Michael Eischer
f9d953d4cd
index: test ForAllIndex with generated repo
2026-06-20 19:46:22 +02:00
Michael Eischer
69a3ba5b33
index: speed up oversized test data generation
2026-06-20 19:46:22 +02:00
Michael Eischer
c183fe2035
restore: speed up test data generation in newTestRepo
2026-06-20 19:46:22 +02:00
Michael Eischer
1174e97b30
restic: speed up repository config initialization in tests
...
Avoid redundant polynomial generation, which takes a millisecond or so.
2026-06-20 19:46:22 +02:00
Michael Eischer
440d925467
repository: default to fastest compression in tests
2026-06-20 19:46:22 +02:00
Michael Eischer
28521d27c1
Merge pull request #21897 from MichaelEischer/sftp-fix-chmod
...
backend/sftp: fix removing files on windows sftp
2026-06-20 19:29:49 +02:00
Michael Eischer
af64caf5d9
Merge pull request #21885 from MichaelEischer/separate-backend-restic-filetype
...
Separate backend.FileType from restic.FileType
2026-06-20 19:24:51 +02:00
Michael Eischer
9ab5fc59c2
restic: split FileType for backend.FileType
...
Equality of constants is enforced via internal/repository/filetype.go
using compile time checks.
2026-06-20 19:15:40 +02:00
Michael Eischer
6c509f7ac1
Correctly pair backend/restic.FileType with APIs
...
Use backend.FileType to interact with the backend. And restic.FileType
to interact with the repository.
2026-06-20 19:15:40 +02:00
Michael Eischer
ea699bb0ba
backend/rest: fix flaky test cleanup ( #21901 )
2026-06-20 19:14:54 +02:00
Michael Eischer
532f36a5a8
archiver: pass ItemAction to progress reporter instead of data.Node ( #21886 )
2026-06-20 19:06:45 +02:00
Michael Eischer
57ac5d107c
Merge pull request #21882 from MichaelEischer/untangle-imports
...
Untangle imports of repository, restorer, fs
2026-06-20 18:24:50 +02:00
Michael Eischer
2f31cde517
internal/restorer: invert dependency direction to ui/restorer
...
The restorer imported ui/restorer which leaks ui logic into the restorer
core. Swap the direction by letting the restorer use a ProgressReporter
interface + associated constants.
2026-06-20 17:49:20 +02:00
Michael Eischer
5cd39d01c1
internal/data: extract HardlinkIndex from restorer
...
The HardlinkIndex is also used by `cmd_stats`, thus place it in a shared
package.
2026-06-20 17:49:20 +02:00
Michael Eischer
61708772a2
mount: use existing HasPathPrefix helper
...
replaces the custom isInside helper to check path nesting
2026-06-20 17:49:20 +02:00