restic v0.9.6 Release Notes

Release Date: 2019-11-22 // over 4 years ago
  • โšก๏ธ We're very pleased to present you restic 0.9.6! restic is distributed as a standalone binary: download the correct file for your operating system and architecture, extract the file and just run it. If you run into any issues, please report them at the GitHub issue tracker or visit the forum. If you already have restic >= 0.9.3, you can use restic self-update to get the latest version in a secure way.

    ๐Ÿ“š The binaries released with each restic version are reproducible, which means that you can easily reproduce a byte identical version from the source code for that release. Instructions on how to do that in the Developer Documentation.

    ๐Ÿ”„ Changelog for restic 0.9.6 (2019-11-22)

    The following sections list the changes in restic 0.9.6 relevant to restic users. The changes are ordered by importance.

    Summary

    • ๐Ÿ›  Fix #2063: Allow absolute path for filename when backing up from stdin
    • ๐Ÿ›  Fix #2174: Save files with invalid timestamps
    • ๐Ÿ›  Fix #2249: Read fresh metadata for unmodified files
    • ๐Ÿ›  Fix #2301: Add upper bound for t in --read-data-subset=n/t
    • ๐Ÿ›  Fix #2321: Check errors when loading index files
    • Enh #2179: Use ctime when checking for file changes
    • Enh #2306: Allow multiple retries for interactive password input
    • Enh #2330: Make --group-by accept both singular and plural
    • ๐Ÿ”ง Enh #2350: Add option to configure S3 region

    Details

    ๐Ÿ›  Bugfix #2063: Allow absolute path for filename when backing up from stdin

    When backing up from stdin, handle directory path for --stdin-filename. This can be used to specify the full path for the backed-up file.

    #2063

    ๐Ÿ›  Bugfix #2174: Save files with invalid timestamps

    When restic reads invalid timestamps (year is before 0000 or after 9999) it refused to read and archive the file. We've changed the behavior and will now save modified timestamps with the year set to either 0000 or 9999, the rest of the timestamp stays the same, so the file will be saved (albeit with a bogus timestamp).

    #2174 #1173

    ๐Ÿ›  Bugfix #2249: Read fresh metadata for unmodified files

    ๐Ÿ“‡ Restic took all metadata for files which were detected as unmodified, not taking into account changed metadata (ownership, mode). This is now corrected.

    #2249 #2252

    ๐Ÿ›  Bugfix #2301: Add upper bound for t in --read-data-subset=n/t

    256 is the effective maximum for t, but restic would allow larger values, leading to strange behavior.

    #2301 #2304

    ๐Ÿ›  Bugfix #2321: Check errors when loading index files

    ๐Ÿ–จ Restic now checks and handles errors which occur when loading index files, the missing check leads to odd errors (and a stack trace printed to users) later. This was reported in the forum.

    #2321 https://forum.restic.net/t/check-rebuild-index-prune/1848/13

    โœจ Enhancement #2179: Use ctime when checking for file changes

    ๐Ÿ“‡ Previously, restic only checked a file's mtime (along with other non-timestamp metadata) to decide if a file has changed. This could cause restic to not notice that a file has changed (and therefore continue to store the old version, as opposed to the modified version) if something edits the file and then resets the timestamp. Restic now also checks the ctime of files, so any modifications to a file should be noticed, and the modified file will be backed up. The ctime check will be disabled if the --ignore-inode flag was given.

    If this change causes problems for you, please open an issue, and we can look in to adding a seperate flag to disable just the ctime check.

    #2179 #2212

    โœจ Enhancement #2306: Allow multiple retries for interactive password input

    Restic used to quit if the repository password was typed incorrectly once. Restic will now ask the user again for the repository password if typed incorrectly. The user will now get three tries to input the correct password before restic quits.

    #2306

    โœจ Enhancement #2330: Make --group-by accept both singular and plural

    One can now use the values host/hosts, path/paths and tag / tags interchangeably in the --group-by argument.

    #2330

    โœจ Enhancement #2350: Add option to configure S3 region

    0๏ธโƒฃ We've added a new option for setting the region when accessing an S3-compatible service. For some providers, it is required to set this to a valid value. You can do that either by setting the environment variable AWS_DEFAULT_REGION or using the option s3.region, e.g. like this: -o s3.region="us-east-1".

    #2350