Commit Graph

2848 Commits

Author SHA1 Message Date
Michael Eischer d8ef26afa4 Merge branch 'patch-release' 2026-07-05 16:27:43 +02:00
Alexander Neumann 6335213501 Set development version for 0.19.1 2026-07-05 09:52:54 +02:00
Alexander Neumann 6aa3a516ce Add version for 0.19.1 2026-07-05 09:52:50 +02:00
Winfried Plappert 75de8b54e6 restic check and restic repair packs: treat missing packfiles the same as damaged and truncated packfiles (#21845)
Co-authored-by: Michael Eischer <michael.eischer@fau.de>
2026-06-28 12:09:42 +02:00
Michael Eischer 8cc69782b5 repository: expose ZeroChunk via chunker factory 2026-06-27 22:23:59 +02:00
Michael Eischer ccb828e87b repository: add ChunkerFactory and decouple archiver from chunker
Introduce restic.Chunker and ChunkerFactory interfaces with a
repository-backed implementation. The archiver obtains chunkers via
ChunkerFactory() from the repository.
2026-06-27 22:13:41 +02:00
Michael Eischer 70a45791b2 archiver: switch file saver from Chunker to BaseChunker
Update the chunker dependency. Move the chunk memory handling into the
fileSaver. This minimizes the logic required in a chunker
implementation.

readNextChunk is a direct derivative of Chunker.Next.
2026-06-27 22:13:41 +02:00
Winfried Plappert 9e1a526611 Fix broken snapshots via restic repair snapshots --forget (#21907)
Co-authored-by: Michael Eischer <michael.eischer@fau.de>
2026-06-27 22:09:10 +02:00
Gilbert Gilb's db03aed816 feat(backends/s3): add warmup support for check command (#5248) 2026-06-25 20:46:55 +02:00
Michael Eischer 4e8eea7ab4 Merge pull request #21902 from restic/speedup-test
Cut local test suite execution time in half
2026-06-24 21:34:55 +02:00
Michael Eischer c9185dd19c repository/index: ensure progress bar cancelation on early index load failure (#21881) 2026-06-23 19:40:50 +02:00
Ricardo Sawir 32be2e559b 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-23 19:26:29 +02:00
Michael Eischer c7c3414641 archiver: ignore duplicate but excluded directory entry (#21900) 2026-06-23 19:26:10 +02:00
Michael Eischer debf95f58d backend/sftp: fix removing files on windows sftp 2026-06-23 19:14:54 +02:00
Michael Eischer 27c44c11aa backend/sftp: fix error reporting of Save method 2026-06-23 19:14:54 +02:00
Michael Eischer 93f695a803 backend/rest: fix flaky test cleanup (#21901) 2026-06-23 19:14:54 +02:00
Michael Eischer 3e21d1fea6 fs: print missing error if xattr cannot be read (#21896) 2026-06-23 19:13:39 +02:00
Michael Eischer 8ee674da55 repository: show correct error if zstd decoder cannot be initialized 2026-06-23 19:13:39 +02:00
Michael Eischer c21f0fabc6 selfupdate: improve error handling 2026-06-23 19:13:39 +02:00
Michael Eischer 6aaa2eace4 prune/repair pack: document ignored errors 2026-06-23 19:13:39 +02:00
Michael Eischer f2d614db56 backend/util: fix errorhandling in DefaultDelete test helper 2026-06-23 19:13:39 +02:00
Michael Eischer ed655b476a backend/sftp: fix file handle leak if chmod for a file fails 2026-06-23 19:13:39 +02:00
Michael Eischer 80f694b32e backend/rest: correctly close body on out of bounds read 2026-06-23 19:13:39 +02:00
Michael Eischer eaa835becd backend/b2: correctly close file if too short 2026-06-23 19:13:39 +02:00
Michael Eischer a3fa3eb182 ensure reliable cleanup of test repository (#21880) 2026-06-23 19:12:08 +02:00
Michael Eischer 1733dd56b9 repository: fix zero-sized blobs in v2 repos 2026-06-23 19:07:56 +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
Michael Eischer d9dd1b7534 archiver: ignore duplicate but excluded directory entry (#21900) 2026-06-21 15:49:08 +02:00
Michael Eischer 8f00b335b4 rclone/fs: parallelize tests 2026-06-20 22:43:03 +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 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 52cde35aea try deleting a directory before resetting the readonly status in 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