Michael Eischer
8e11f5747d
restic: introduce Counter interface to decouple from ui/progress ( #21861 )
...
decouple restic and ui/progress packages
2026-06-13 21:08:18 +02:00
Michael Eischer
b94ef4831d
repository: add PackBlob.UncompressedCiphertextLength()
2026-06-13 20:05:05 +02:00
Michael Eischer
e1e7fc8fb2
fs: unexport Local and expose via NewLocal
2026-06-13 19:50:49 +02:00
Michael Eischer
1acc19dac5
repository: unexport SearchKey
2026-06-13 19:49:03 +02:00
Michael Eischer
79e92b3bc6
repository: change Unlocker to interface
2026-06-13 19:48:47 +02:00
Michael Eischer
35af104749
restic: change LookupBlob to return []PackBlob
2026-06-13 17:54:58 +02:00
Michael Eischer
ccb5ae1592
restic: change ListBlobs to return PackBlob
...
PackBlob is a limited interface that only exposes a part of the
information provided by PackedBlob. Most of the changes are switches
from direct value lookups to the interface methods, with a few larger
changes to let the tests still work.
2026-06-13 17:54:38 +02:00
Michael Eischer
a9e0b46358
restic: list pack header via ListPackHandles
...
Replace ListPack with ListPackHandles so callers only receive blob
handles from pack headers, not layout fields.
2026-06-13 17:50:21 +02:00
Michael Eischer
f186e1e458
repository: require *Repository for CopyBlobs
...
Prepare `CopyBlobs` to allow access to unexported methods of the
Repository struct. This requires changing the test to inject the number
of backend connections via a wrapped backend instead of a wrapped
repository.
2026-06-13 17:50:21 +02:00
Michael Eischer
14f86a462a
stats: refactor ui progress printer into ui/stats
2026-06-13 17:00:11 +02:00
Michael Eischer
825d67ba4b
backup,restore: move CalculateProgressInterval call to their ui package
2026-06-13 16:53:57 +02:00
Michael Eischer
0bbfb072af
ui/progress: unexport NoopPrinter and add New* function
2026-06-13 16:53:57 +02:00
Michael Eischer
e8ed2434cd
ui: move NewProgressPrinter to ui/progress.NewTerminalPrinter
2026-06-13 16:53:54 +02:00
Michael Eischer
dee28f5b0e
ui/terminal: unexport New function
2026-06-13 16:53:30 +02:00
Michael Eischer
bae49d00ee
stats: hide progress bar for json output ( #21871 )
2026-06-13 15:13:26 +02:00
darkdragon-001
e5dba15367
Json prune ( #5239 )
...
Co-authored-by: Alexander Weiss <alex@weissfam.de >
Co-authored-by: Michael Eischer <michael.eischer@fau.de >
2026-06-13 10:38:57 +00:00
Michael Eischer
e94ec65efb
mount: unify mountpoint validation error messages
2026-06-12 22:30:53 +02:00
Michael Eischer
49f9e67520
mount: factor out mountpoint validation into helper
2026-06-12 22:29:45 +02:00
Michael Eischer
3a4b0e3b8c
Merge pull request #5348 from zmanda/fix-gh-5234-prevent-mount-command-over-repository
...
mount: prevent mounting over repository
2026-06-12 22:27:50 +02:00
Michael Eischer
8c6ee42d17
debug: move DumpPacks into repository package
...
Processing pack file internals belongs into the repository package.
2026-06-10 22:20:28 +02:00
Michael Eischer
ccddc1914d
repository: rename PackError to ErrPackMetadata
2026-06-10 22:20:28 +02:00
Michael Eischer
17ff3aa5f9
Merge pull request #21841 from MichaelEischer/isolate-repository
...
prevent imports of repository internals
2026-06-10 22:19:24 +02:00
Michael Eischer
0ddd98e03b
stats: stop progress bar before printing stats ( #21843 )
2026-06-02 22:37:46 +02:00
Michael Eischer
7d25ca9d67
repository: omit unused headerSize from ListPack()
2026-05-31 22:53:00 +02:00
Michael Eischer
cc546b71e3
debug: move code requring internal access to repository package
2026-05-31 22:48:38 +02:00
Michael Eischer
3cb49556f5
repair index: replace full index handling integration test with unit test
2026-05-31 22:39:16 +02:00
Michael Eischer
620f5986f8
list index: use helper in repository package
2026-05-31 22:14:01 +02:00
Michael Eischer
78b3411076
check: consider split pack index entries as repository damage
2026-05-31 15:58:33 +02:00
Michael Eischer
f86307d223
Merge pull request #21827 from MichaelEischer/fix-pack-repair
...
repair packs: correctly handle packs with missing/incomplete index entry
2026-05-31 15:57:50 +02:00
Yaroslav Halchenko
451cc6c048
Add codespell support with configuration and fixes ( #21807 )
...
Co-authored-by: Claude Code 2.1.142 / Claude Opus 4.7 <noreply@anthropic.com >
2026-05-30 20:15:13 +00:00
Michael Eischer
c669cc7a7d
introduce restic.Blobs type with sort method
2026-05-30 10:10:39 +02:00
Michael Eischer
f000da3b35
Return helpful error if subfolder syntax fails on Windows ( #21813 )
2026-05-20 22:55:01 +02:00
Michael Eischer
850ab61cdf
key: include full command name in subcommand descriptions
2026-05-20 22:46:11 +02:00
Michael Eischer
df03e8a0ec
self update: remove not possible exit codes
2026-05-20 22:46:11 +02:00
Michael Eischer
9299c45818
fix typos in cmd descriptions
2026-05-20 22:46:11 +02:00
Michael Eischer
2b72f3eb42
find: fix placement of exit status section
2026-05-20 22:46:11 +02:00
Michael Eischer
496ea804a6
check/dump/mount/repair/rewrite: update command description
2026-05-20 22:45:52 +02:00
Michael Eischer
a639b8d711
Merge pull request #21811 from MichaelEischer/misc-fixes
...
Address various code smells, outdated comments and nits
2026-05-20 22:38:36 +02:00
Winfried Plappert
990329013e
prune more aggresively ( #21803 )
...
Co-authored-by: Michael Eischer <michael.eischer@fau.de >
2026-05-16 15:49:08 +00:00
Michael Eischer
10645ccd2a
fix comment and variable name typos
2026-05-16 17:05:33 +02:00
Michael Eischer
febdb8b564
find: use proper sentinel error to terminate search
2026-05-16 15:35:48 +02:00
Michael Eischer
91c2aefbe1
Document openWithReadLock usage of read-only backend mode
2026-05-16 15:35:48 +02:00
Srigovind Nayak
a0d7745e8b
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-05-16 18:03:49 +05:30
Paulo Saraiva
6de6cc6c75
Show progress for restic stats ( #5705 )
...
Co-authored-by: Paulo Saraiva <paulo.saraiva@cern.ch >
2026-05-15 20:31:20 +02:00
Michael Eischer
8abbc3703d
doc: update embedded help output and misc typos ( #21804 )
2026-05-15 20:21:04 +02:00
Michael Eischer
f3854cf299
Merge pull request #21796 from restic/go-1.25
...
Bump minimum go version to 1.25 & update dependencies
2026-05-12 18:56:09 +02:00
Michael Eischer
7ee77133fc
Merge pull request #21781 from mattxtaz2/master
2026-05-10 22:20:24 +02:00
Michael Eischer
f8afd4ed04
key passwd: test that user and host flags are handled
2026-05-10 22:13:16 +02:00
Michael Eischer
4c94678d7d
fix linter and compilation issues
2026-05-10 17:53:29 +02:00
Michael Eischer
39084a912e
Merge pull request #5700 from MichaelEischer/err-invalid-env
2026-05-10 00:18:40 +02:00