github borgmatic-collective/borgmatic 2.1.0
borgmatic 2.1.0

7 hours ago
  • TL;DR: Many logging, memory, and performance improvements. Mind those breaking changes!
  • #485: When running commands (database clients, command hooks, etc.), elevate stderr output to
    show up as borgmatic error logs.
  • #858: With the "--log-json" flag, log borgmatic's own logs as JSON, not just Borg's.
  • #1092: BREAKING: Treat most Borg warnings as errors by default, so for instance backups now fail
    when source directories are missing. You can still override this behavior with the
    "borg_exit_codes" option. See the documentation for more information:
    https://torsion.org/borgmatic/how-to/customize-warnings-and-errors/
  • #1092: Deprecate the "source_directories_must_exist" option, as borgmatic now treats "backup file
    not found" warnings from Borg as errors, which accomplishes the same thing.
  • #1132: BREAKING/SECURITY: For the Healthchecks, Apprise, Pagerduty, and Loki monitoring hooks,
    disable log sending when not explicitly enabled. This avoids revealing private log information to
    third-party services. To send logs anyway, set the monitoring hook's "send_logs" option to
    "true".
  • #1204: When verbosity levels differ between console/monitoring/syslog/file, log Borg's output to
    each one at a different level. Previously, it was logged at the maximum level of all the
    verbosities.
  • #1208: Fix for the "restore" action incorrectly extracting more database dumps than the
    "--database" flag specifies.
  • #1210: Fix an error when running the "spot" check or "extract" action with the "progress" option
    or "--progress" flag.
  • #1211: Fix an error about the runtime directory getting excluded by tweaking its logic and
    lowering the error to a warning.
  • #1212: Fix an error when restoring multiple directory-format database dumps at once.
  • #1213: BREAKING: Support disabling both constant and variable interpolation by escaping with
    backslashes. For instance, interpret "\{name\}" as literally "{name}" instead of trying to
    resolve it as a constant/variable.
  • #1220: Cleanup snapshots immediately after ZFS, LVM, or Btrfs hooks error—rather than waiting
    until the next time borgmatic runs.
  • #1221: Add an "unsafe_skip_path_validation_before_create" option to skip pre-backup safety
    validation so as to reduce backup times on large filesystems.
  • #1224: When running an "extract" check with the "--progress" flag, show file extraction progress.
  • #1225: Improve performance and greatly reduce memory usage during pre-backup safety validation on
    large filesystems.
  • #1230: Fix another warning from LVM about leaked file descriptors, this time when calling
    "lvcreate" from a command hook.
  • #1234: Fix for the ntfy monitoring hook erroring on emojis in the "title" option.
  • When syslog verbosity is enabled, log to systemd's journal (if present) with
    structured data. See the documentation for more information:
    https://torsion.org/borgmatic/reference/command-line/logging/#systemd-journal
  • SECURITY: Prevent shell injection attacks via constant interpolation in command hooks. (This was
    already implemented for deprecated "before_*"/"after_*" command hooks.)
  • Fix for an error in the "key import" action when importing a key from stdin.
  • Fix the "recreate" action to include borgmatic-specific paths (database dumps, etc.) in recreated
    archives.
  • Update the "list" action to support the "--json" flag when the "--archive" flag is also used.
  • Promote the ZFS, LVM, and Btrfs hooks from beta features to stable.

Don't miss a new borgmatic release

NewReleases is sending notifications on new releases.