restic 0.18.1
Changelog for restic 0.18.1 (2025-09-21)
The following sections list the changes in restic 0.18.1 relevant to restic users. The changes are ordered by importance.
Summary
- Fix #5324: Correctly handle
backup --stdin-filenamewith directory paths - Fix #5325: Accept
RESTIC_HOSTenvironment variable inforgetcommand - Fix #5342: Ignore "chmod not supported" errors when writing files
- Fix #5344: Ignore
EOPNOTSUPPerrors for extended attributes - Fix #5421: Fix rare crash if directory is removed during backup
- Fix #5429: Stop retrying uploads when rest-server runs out of space
- Fix #5467: Improve handling of download retries in
checkcommand
Details
-
Bugfix #5324: Correctly handle
backup --stdin-filenamewith directory pathsIn restic 0.18.0, the
backupcommand failed if a filename that includes at least a directory was passed to--stdin-filename. For example,--stdin-filename /foo/barresulted in the following error:Fatal: unable to save snapshot: open /foo: no such file or directoryThis has now been fixed.
-
Bugfix #5325: Accept
RESTIC_HOSTenvironment variable inforgetcommandThe
forgetcommand did not use the host name from theRESTIC_HOSTenvironment variable when filtering snapshots. This has now been fixed. -
Bugfix #5342: Ignore "chmod not supported" errors when writing files
Restic 0.18.0 introduced a bug that caused
chmod xxx: operation not supportederrors to appear when writing to a local file repository that did not support chmod (like CIFS or WebDAV mounted via FUSE). Restic now ignores those errors. -
Bugfix #5344: Ignore
EOPNOTSUPPerrors for extended attributesRestic 0.18.0 added extended attribute support for NetBSD 10+, but not all NetBSD filesystems support extended attributes. Other BSD systems can likewise return
EOPNOTSUPP, so restic now ignores these errors. -
Bugfix #5421: Fix rare crash if directory is removed during backup
In restic 0.18.0, the
backupcommand could crash if a directory was removed between reading its metadata and listing its directory content. This has now been fixed. -
Bugfix #5429: Stop retrying uploads when rest-server runs out of space
When rest-server returns a
507 Insufficient Storageerror, it indicates that no more storage capacity is available. Restic now correctly stops retrying uploads in this case. -
Bugfix #5467: Improve handling of download retries in
checkcommandIn very rare cases, the
checkcommand could unnecessarily report repository damage if the backend returned incomplete, corrupted data on the first download try which is afterwards resolved by a download retry.This could result in an error output like the following:
Load(<data/34567890ab>, 33918928, 0) returned error, retrying after 871.35598ms: readFull: unexpected EOF Load(<data/34567890ab>, 33918928, 0) operation successful after 1 retries check successful on second attempt, original error pack 34567890ab[...] contains 6 errors: [blob 12345678[...]: decrypting blob <data/12345678> from 34567890 failed: ciphertext verification failed ...] [...] Fatal: repository contains errorsThis fix only applies to a very specific case where the log shows
operation successful after 1 retriesfollowed by acheck successful on second attempt, original errorthat only reportsciphertext verification failederrors in the pack file. If any other errors are reported in the pack file, then the repository still has to be considered as damaged.Now, only the check result of the last download retry is reported as intended.