• 1.8.0 0ad7b4f408

    witten released this 2023-07-19 05:50:09 +00:00 | 222 commits to main since this release

    • #575: BREAKING: For the "borgmatic borg" action, instead of implicitly injecting
      repository/archive into the resulting Borg command-line, pass repository to Borg via an
      environment variable and make archive available for explicit use in your commands. See the
      documentation for more information:
      https://torsion.org/borgmatic/docs/how-to/run-arbitrary-borg-commands/
    • #719: Fix an error when running "borg key export" through borgmatic.
    • #720: Fix an error when dumping a database and the "exclude_nodump" option is set.
    • #724: Add "check_i_know_what_i_am_doing" option to bypass Borg confirmation prompt when running
      "check --repair".
    • When merging two configuration files, error gracefully if the two files do not adhere to the same
      format.
    • #721: Remove configuration sections ("location:", "storage:", "hooks:" etc.), while still keeping
      deprecated support for them. Now, all options are at the same level, and you don't need to worry
      about commenting/uncommenting section headers when you change an option (if you remove your
      sections first).
    • #721: BREAKING: The retention prefix and the consistency prefix can no longer have different
      values (unless one is not set).
    • #721: BREAKING: The storage umask and the hooks umask can no longer have different values (unless
      one is not set).
    • BREAKING: Flags like "--config" that previously took multiple values now need to be given once
      per value, e.g. "--config first.yaml --config second.yaml" instead of "--config first.yaml
      second.yaml". This prevents argument parsing errors on ambiguous commands.
    • BREAKING: Remove the deprecated (and silently ignored) "--successful" flag on the "list" action,
      as newer versions of Borg list successful (non-checkpoint) archives by default.
    • All deprecated configuration option values now generate warning logs.
    • Remove the deprecated (and non-functional) "--excludes" flag in favor of excludes within
      configuration.
    • Fix an error when logging too-long command output during error handling. Now, long command output
      is truncated before logging.
    Downloads
  • 1.7.15 37a0a0c421

    witten released this 2023-06-25 05:23:01 +00:00 | 262 commits to main since this release

    • #326: Add configuration options and command-line flags for backing up a database from one
      location while restoring it somewhere else.
    • #399: Add a documentation troubleshooting note for MySQL/MariaDB authentication errors.
    • #529: Remove upgrade-borgmatic-config command for upgrading borgmatic 1.1.0 INI-style
      configuration.
    • #529: Deprecate generate-borgmatic-config in favor of new "config generate" action.
    • #529: Deprecate validate-borgmatic-config in favor of new "config validate" action.
    • #697, #712, #716: Extract borgmatic configuration from backup via new "config bootstrap"
      action—even when borgmatic has no configuration yet!
    • #669: Add sample systemd user service for running borgmatic as a non-root user.
    • #711, #713: Fix an error when "data" check time files are accessed without getting upgraded
      first.
    Downloads
  • 1.7.14 e80f27f922

    witten released this 2023-06-04 05:14:21 +00:00 | 347 commits to main since this release

    • #484: Add a new verbosity level (-2) to disable output entirely (for console, syslog, log file,
      or monitoring), so not even errors are shown.
    • #688: Tweak archive check probing logic to use the newest timestamp found when multiple exist.
    • #659: Add Borg 2 date-based matching flags to various actions for archive selection.
    • #703: Fix an error when loading the configuration schema on Fedora Linux.
    • #704: Fix "check" action error when repository and archive checks are configured but the archive
      check gets skipped due to the configured frequency.
    • #706: Fix "--archive latest" on "list" and "info" actions that only worked on the first of
      multiple configured repositories.
    Downloads
  • 1.7.13 79b094d035

    witten released this 2023-05-16 16:59:09 +00:00 | 392 commits to main since this release

    • #375: Restore particular PostgreSQL schemas from a database dump via "borgmatic restore --schema"
      flag. See the documentation for more information:
      https://torsion.org/borgmatic/docs/how-to/backup-your-databases/#restore-particular-schemas
    • #678: Fix error from PostgreSQL when dumping a database with a "format" of "plain".
    • #678: Fix PostgreSQL hook to support "psql_command" and "pg_restore_command" options containing
      commands with arguments.
    • #678: Fix calls to psql in PostgreSQL hook to ignore "~/.psqlrc", whose settings can break
      database dumping.
    • #680: Add support for logging each log line as a JSON object via global "--log-json" flag.
    • #682: Fix "source_directories_must_exist" option to expand globs and tildes in source directories.
    • #684: Rename "master" development branch to "main" to use more inclusive language. You'll need to
      update your development checkouts accordingly.
    • #686: Add fish shell completion script so you can tab-complete on the borgmatic command-line. See
      the documentation for more information:
      https://torsion.org/borgmatic/docs/how-to/set-up-backups/#shell-completion
    • #687: Fix borgmatic error when not finding the configuration schema for certain "pip install
      --editable" development installs.
    • #688: Fix archive checks being skipped even when particular archives haven't been checked
      recently. This occurred when using multiple borgmatic configuration files with different
      "archive_name_format"s, for instance.
    • #691: Fix error in "borgmatic restore" action when the configured repository path is relative
      instead of absolute.
    • #694: Run "borgmatic borg" action without capturing output so interactive prompts and flags like
      "--progress" still work.
    Downloads
  • 1.7.12 613f6c602c

    witten released this 2023-04-13 22:12:19 +00:00 | 522 commits to main since this release

    Downloads
  • 1.7.11 00d1dea94e

    witten released this 2023-04-03 23:11:25 +00:00 | 540 commits to main since this release

    • #479, #588: BREAKING: Automatically use the "archive_name_format" option to filter which archives
      get used for borgmatic actions that operate on multiple archives. Override this behavior with the
      new "match_archives" option in the storage section. This change is "breaking" in that it silently
      changes which archives get considered for "rlist", "prune", "check", etc. See the documentation
      for more information:
      https://torsion.org/borgmatic/docs/how-to/make-per-application-backups/#archive-naming
    • #479, #588: The "prefix" options have been deprecated in favor of the new "archive_name_format"
      auto-matching behavior and the "match_archives" option.
    • #658: Add "--log-file-format" flag for customizing the log message format. See the documentation
      for more information:
      https://torsion.org/borgmatic/docs/how-to/inspect-your-backups/#logging-to-file
    • #662: Fix regression in which the "check_repositories" option failed to match repositories.
    • #663: Fix regression in which the "transfer" action produced a traceback.
    • Add spellchecking of source code during test runs.
    Downloads
  • 1.7.10 c5ffb76dfa

    witten released this 2023-03-27 22:56:49 +00:00 | 576 commits to main since this release

    • #396: When a database command errors, display and log the error message instead of swallowing it.
    • #501: Optionally error if a source directory does not exist via "source_directories_must_exist"
      option in borgmatic's location configuration.
    • #576: Add support for "file://" paths within "repositories" option.
    • #612: Define and use custom constants in borgmatic configuration files. See the documentation for
      more information:
      https://torsion.org/borgmatic/docs/how-to/make-per-application-backups/#constant-interpolation
    • #618: Add support for BORG_FILES_CACHE_TTL environment variable via "borg_files_cache_ttl" option
      in borgmatic's storage configuration.
    • #623: Fix confusing message when an error occurs running actions for a configuration file.
    • #635: Add optional repository labels so you can select a repository via "--repository yourlabel"
      at the command-line. See the configuration reference for more information:
      https://torsion.org/borgmatic/docs/reference/configuration/
    • #649: Add documentation on backing up a database running in a container:
      https://torsion.org/borgmatic/docs/how-to/backup-your-databases/#containers
    • #655: Fix error when databases are configured and a source directory doesn't exist.
    • Add code style plugins to enforce use of Python f-strings and prevent single-letter variables.
      To join in the pedantry, refresh your test environment with "tox --recreate".
    • Rename scripts/run-full-dev-tests to scripts/run-end-to-end-dev-tests and make it run end-to-end
      tests only. Continue using tox to run unit and integration tests.
    Downloads
  • 1.7.9 bdfe4b61eb

    witten released this 2023-03-16 20:42:15 +00:00 | 640 commits to main since this release

    • #295: Add a SQLite database dump/restore hook.
    • #304: Change the default action order when no actions are specified on the command-line to:
      "create", "prune", "compact", "check". If you'd like to retain the old ordering ("prune" and
      "compact" first), then specify actions explicitly on the command-line.
    • #304: Run any command-line actions in the order specified instead of using a fixed ordering.
    • #564: Add "--repository" flag to all actions where it makes sense, so you can run borgmatic on
      a single configured repository instead of all of them.
    • #628: Add a Healthchecks "log" state to send borgmatic logs to Healthchecks without signalling
      success or failure.
    • #647: Add "--strip-components all" feature on the "extract" action to remove leading path
      components of files you extract. Must be used with the "--path" flag.
    • Add support for Python 3.11.
    Downloads
  • 1.7.8 b6cf7d2adc

    witten released this 2023-03-02 23:34:22 +00:00 | 688 commits to main since this release

    • #620: With the "create" action and the "--list" ("--files") flag, only show excluded files at
      verbosity 2.
    • #621: Add optional authentication to the ntfy monitoring hook.
    • With the "create" action, only one of "--list" ("--files") and "--progress" flags can be used.
      This lines up with the new behavior in Borg 2.0.0b5.
    • Internally support new Borg 2.0.0b5 "--filter" status characters / item flags for the "create"
      action.
    • Fix the "create" action with the "--dry-run" flag querying for databases when a PostgreSQL/MySQL
      "all" database is configured. Now, these queries are skipped due to the dry run.
    • Add "--repository" flag to the "rcreate" action to optionally select one configured repository to
      create.
    • Add "--progress" flag to the "transfer" action, new in Borg 2.0.0b5.
    • Add "checkpoint_volume" configuration option to creates checkpoints every specified number of
      bytes during a long-running backup, new in Borg 2.0.0b5.
    Downloads
  • 1.7.7 418ebc8843

    witten released this 2023-02-20 23:32:47 +00:00 | 703 commits to main since this release

    • #642: Add MySQL database hook "add_drop_database" configuration option to control whether dumped
      MySQL databases get dropped right before restore.
    • #643: Fix for potential data loss (data not getting backed up) when dumping large "directory"
      format PostgreSQL/MongoDB databases. Prior to the fix, these dumps would not finish writing to
      disk before Borg consumed them. Now, the dumping process completes before Borg starts. This only
      applies to "directory" format databases; other formats still stream to Borg without using
      temporary disk space.
    • Fix MongoDB "directory" format to work with mongodump/mongorestore without error. Prior to this
      fix, only the "archive" format worked.
    Downloads