Skip to content

Releases: garethgeorge/backrest

v1.5.1

24 Sep 01:14
7e65f1a
Compare
Choose a tag to compare

1.5.1 (2024-09-18)

The most significant change in this patch release is a restic version bump to restic 0.17.1 which is the latest restic patch release. See restic changelog for more info on what's changed in restic.

Bug Fixes

  • prunepolicy.max_unused_percent should allow decimal values (3056203)
  • stats panel can fail to load when an incomplete operation is in the log (d59c6fc)
  • update to newest restic bugfix release 0.17.1 (d2650fd)
  • windows installation for restic 0.17.1 (#474) (4da9d89)

v1.5.0

10 Sep 01:02
7dc3c99
Compare
Choose a tag to compare

1.5.0 (2024-09-10)

Excited to announce Backrest 1.5.0 which comes with a number of new scheduling options focused on laptop users and scriptability for plans that adapt to tricky network environments. These are

  • 'on error retry' policies which allows you to define a command hook that will be retried until it succeds, this can be used to check that your network is healthy before allowing backups to execute e.g. on a laptop.
  • last task relative scheduling uses the last time the task ran rather than Backrest's startup time to determine when to run a job. This allows laptop users to ensure backups are never skipped e.g. when a device is powered off.

Additionally, broad improvements to logging are included e.g. logs are now streamed live for running operations and hooks. Lastly, a number of more minor bug fixes and quality of life improvements are bundled.

Features

  • add prometheus metrics (#459) (daacf28)
  • compact the scheduling UI and use an enum for clock configuration (#452) (9205da1)
  • implement 'on error retry' policy (#428) (038bc87)
  • implement scheduling relative to last task execution (#439) (6ed1280)
  • support live logrefs for in-progress operations (#456) (bfaad8b)

Bug Fixes

  • apply oplog migrations correctly using new storage interface (491a6a6)
  • backrest can erroneously show 'forget snapshot' button for restore entries (bfde425)
  • broken refresh and sizing for mobile view in operation tree (0d01c5c)
  • bugs in displaying repo / plan / activity status (cceda4f)
  • double display of snapshot ID for 'Snapshots' in operation tree (80dbe91)
  • hide system operations in tree view (8c1cf79)
  • misc bugs in restore operation view and activity bar view (656ac9e)
  • misc bugs related to new logref support (97e3f03)
  • misc logging improvements (1879ddf)
  • new config validations make it harder to lock yourself out of backrest (c419861)
  • reformat tags row in operation list (0eb560d)
  • remove migrations for fields that have been since backrest 1.0.0 (#453) (546482f)
  • restic cli commands through 'run command' are cancelled when closing dialogue (bb00afa)
  • simplify auth handling (6894128)
  • test fixes for windows file restore (44585ed)
  • UI quality of life improvements (cc173aa)
  • use 'restic restore <snapshot id>:' for restore operations (af09e47)
  • write debug-level logs to data dir on all platforms (a9eb786)

v1.4.0

15 Aug 02:28
4e9973c
Compare
Choose a tag to compare

1.4.0 (2024-08-15)

This release brings support for restic 0.17.0 and with it new backrest capabilities! The new restic version tracks the summary of the last backup command directly in the snapshot objects it creates. Backrest now includes these details in the displayed summary of each snapshot! This is of particular interest for users using Backrest to browse externally created backups.

Beyond this, a number of bug fixes and quality of life improvements are included in this release. Repos will no longer implicitly initialize if added directly to the config, they must be added through the UI which is explicit and safer. Additionally, updates to repo configuration are now blocked if they break the ability to connect to the repo.

A number of minor bugs are fixed including a rare race condition, missing debug output for some commands, and formatting issues for hooks.

Features

  • accept up to 2 decimals of precision for check % and prune % policies (5374273)
  • add UI support for new summary details introduced in restic 0.17.0 (4859e52)
  • start tracking snapshot summary fields introduced in restic 0.17.0 (505765d)
  • update to restic 0.17.0 (#416) (500f2ee)

Bug Fixes

  • activitybar does not reset correctly when an in-progress operation is deleted (244fe7e)
  • add condition_snapshot_success to .EventName (#410) (c45f0f3)
  • backrest should only initialize repos explicitly added through WebUI (62a97a3)
  • forget snapshot by ID should not require a plan (49e46b0)
  • hide cron options for hours/minutes/days of week for infrequent schedules (7c091e0)
  • improve debug output when trying to configure a new repo (11b3e99)
  • possible race condition leading to rare panic in GetOperationEvents (f250adf)
  • run list snapshots after updating repo config or adding new repo (48626b9)
  • use addrepo RPC to apply validations when updating repo config (a67c29b)

v1.3.1

12 Jul 21:12
d93068a
Compare
Choose a tag to compare

1.3.1 (2024-07-12)

Bug Fixes

  • add docker-cli to alpine backrest image (b6f9129)
  • add major and major.minor semantic versioned docker releases (8db2578)
  • plan system not found bug when running health operations (c19665a)

v1.3.0

12 Jul 00:26
0d98e44
Compare
Choose a tag to compare

1.3.0 (2024-07-11)

Highlights of this release are improved hook execution, the hook model has been a painpoint for me for a while and has felt like an afterthought tossed on top of Backrest's operation and task model. In this release hooks are reimplemented as tasks & share similar execution strategies. Hooks are also logically reorganized in the UI as children of the operations that trigger them.

Features

Bug Fixes

  • cannot run path relative executable errors on Windows (c3ec9ee)
  • improve handling of restore operations (620caed)
  • operation tree key conflicts (2dc5595)

v1.2.1

02 Jul 05:36
64aa4f2
Compare
Choose a tag to compare

1.2.1 (2024-07-02)

Backrest 1.2.1 patches a couple of UI bugs and improves UI performance with optimized rendering of the operation tree view with component caching.

Notably for Windows users, the github actions pipeline for generating windows installers is fixed in this patch meaning I'm happy to announce that this is the first release including pre-compiled Windows installers! The windows install places backrest and the backrestmon binary (Windows tray application) in C:\Program Files\backrest by default and configures Backrest to launch on startup!.

Bug Fixes

  • AddPlanModal and AddRepoModal should only be closeable explicitly (15f92fc)
  • disable sorting for excludes and iexcludes (d7425b5)
  • github actions release flow for windows installers (90e0656)
  • make instance ID required field (7c8ded2)
  • operation tree UI bugs (76ce3c1)
  • restore always uses ~/Downloads path (955771e)

v1.2.0

25 Jun 19:23
Compare
Choose a tag to compare

Changelog

  • 614b410 chore(main): release 1.2.0 (#327)
  • 5427d75 feat: default non-docker packages to listen on localhost only
  • 232cd57 feat: improve log formatting
  • 9067027 feat: misc ui improvements
  • 2c7d85b fix: hook bug fixes
  • 7940642 fix: improve robustness of .Summary template
  • 91e0fda fix: make backup and restore operations more robust to non-JSON output events
  • e2ef66e fix: minor hook and naming bugs in check and backup tasks
  • 793666c fix: misc ui consistency and refresh errors
  • f42df20 fix: rare deadlock in GetOperationEvents (#319)
  • 879e39c fix: viewing backup details in very long tree view

v1.1.0

01 Jun 06:21
2d0c29e
Compare
Choose a tag to compare

1.1.0 (2024-06-01)

Features

Bug Fixes

  • collection of ui refresh timing bugs (b218bc9)
  • improve prune and check scheduling in new repos (c58055e)
  • release workflow (290d018)
  • snapshot browser on Windows (19ed611)
  • UI refresh timing bugs (ba005ae)

v1.0.0

20 May 02:14
73c8612
Compare
Choose a tag to compare

1.0.0 (2024-05-20)

Hey all, I'm excited to announce the 1.0.0 release of Backrest. This release makes large strides to normalize Backrest's config format and operation model for upcoming plans e.g. multihost management and support for restic check. Your config and operations will be migrated automatically. After upgrading you will be prompted to set a permanent "instance ID" next time you open the Web UI. This instance ID will be included on snapshots (created-by: tag) going forward and will identify the backrest install that created a snapshot when multiple installations share a single repo.

New features are added including:

  • New scheduling options for plans e.g. max frequency hours, and max frequency days
  • Ability to better schedule prune operations e.g. cron schedules are now supported
  • A limited shell for running restic commands in your repo is included in the WebUI, this provides a convenient way to run arbitrary snapshot management operations or commands not supported by backrest.
  • Stats view is migrated to a new (and improved) chart library.

And finally, this release continues with stability improvements addressing a number of UI and backend bugs.

⚠ BREAKING CHANGES

  • redefine hostname as a required property that maps to --host (#256)

Features

  • add CONDITION_SNAPSHOT_WARNING hook triggered by any warning status at the completion of a snapshot (f0ee20f)
  • add download link to create a zip archive of restored files (a75a5c2)
  • add force kill signal handler that dumps stacks (386f46a)
  • add seek support to join iterator for better performance (802146a)
  • ensure instance ID is set for all operations (65d4a1d)
  • implement 'run command' button to execute arbitrary restic commands in a repo (fbad981)
  • improve support for instance ID tag (be0cdd5)
  • keep a rolling backup of the last 10 config versions (1a053f2)
  • overhaul task interface and introduce 'flow ID' for simpler grouping of operations (#253) (7a10bdc)
  • redefine hostname as a required property that maps to --host (#256) (4847010)
  • support env variable substitution e.g. FOO=${MY_FOO_VAR} (8448f4c)
  • unified scheduling model (#282) (531cd28)
  • update snapshot management to track and filter on instance ID, migrate existing snapshots (5a996d7)
  • validate plan ID and repo ID (f314c7c)

Bug Fixes

  • add virtual root node to snapshot browser (6045c87)
  • additional tooltips for add plan modal (fcdf07d)
  • adjust task priorities (756e64a)
  • center-right align settings icons for plans/repos (982e2fb)
  • concurrency issues in run command handler (411a4fb)
  • date formatting (b341146)
  • downgrade omission of 'instance' field from an error to a warning (6ae82f7)
  • error formatting for repo init (1a3ace9)
  • hide successful hook executions in the backup view (65bb8ef)
  • improve cmd error formatting now that logs are available for all operations (6eb704f)
  • improve concurrency handling in RunCommand (07b0950)
  • improve download speeds for restored files (eb07931)
  • install.sh was calling systemctl on Darwin (#260) (f6d5837)
  • minor bugs and tweak log rotation history to 14 days (ad9a770)
  • miscellaneous bug fixes (df4be0f)
  • prompt for user action to set an instance ID on upgrade (294864f)
  • rebase stats panel onto a better chart library (b22028e)
  • reserve IDs starting and ending with '__' for internal use (711064f)
  • retention policy display may show default values for some fields (9d6c1ba)
  • run stats after every prune operation (7fce593)
  • schedule view bug (0764804)
  • secure download URLs when downloading tar archive of exported files (a30d5ef)
  • UI fixes for restore row and settings modal (e9d6cbe)
  • use int64 for large values in structs for compatibility with 32bit devices (#250) (84b4b68)
  • use locale to properly format time (89a49c1)

v0.17.2

18 Apr 03:52
5d8633c
Compare
Choose a tag to compare

0.17.2 (2024-04-18)

This release is highly recommended for any users running docker containers with a rclone remote, 6408518 fixes a bug where restic leaves rclone processes without reaping their exit status. Given enough time this can exhaust PID space.

Bug Fixes

  • add tini to docker images to reap rclone processes left behind by restic (6408518)
  • armv7 support for docker releases (ec39533)
  • bug in new task queue implementation (5d6074e)
  • improve restic pkg's output handling and buffering (aacdf9b)
  • Linux ./install.sh script fails when used for updating backrest (#226) (be09303)
  • use new orchestrator queue (4a81889)