Changes

0.1.1 (2026-03-28)

  • FIX: Read The Docs build

0.1.0 (2026-03-28)

CAUTION: The configuration layout changed, effectively BREAKING BACKWARDS COMPATIBILITY for most use-cases!

With this release, the Python implementation is sunset and may only receive bugfixes. For new deployments, please use the Rust-reimplementation as of version >= 0.2.

The keep_backlog configuration parameter, which could previously be both a boolean and an integer, is now only allowed to be an integer. If no snapshots shall be kept on the target side, it must now be set to 0. If all snapshots shall be kept on the target side (default behavior), it must now be set to -1. Arbitrary numbers greater than 0 remains unaffected by this change.

abgleich will use semantic versioning from now on. Breaking changes will be indicated by increasing the second version number, the minor version. Going for example from 0.0.x to 0.1.y or going from 0.1.x to 0.2.y therefore indicates a breaking change.

  • FEATURE: abgleich can be initialized i.e. told to generate an initial configuration via a simple CLI wizard by running abgleich init {filename}.yaml.

  • FEATURE: Introduced a debug mode, activated by setting the ABGLEICH_DEBUG environment variable to 1. Debug features were previously hard-coded activated, making abgleich now with debug features deactivated by default much faster.

  • FIX: Improved error handling by not passing snapshots failed to send completely to stdout.

  • DEV: Moved from setuptools for packaging to pyproject.toml via flit.

  • DEV: Added rudimentary test suite.

0.0.8 (2022-01-21)

  • FEATURE: zfs-auto-snapshot can be told to ignore backup datasets on the target side, see #3.

  • FEATURE: samba can optionally be told to NOT share/expose backup datasets on the target side, see #4.

  • FEATURE: ssh-port on source and target becomes configurable, see #22.

  • FEATURE: New configuration fields for source and target each: processing. They can carry shell commands for pre- and post-processing of data before and after it is transferred via ssh. This enables the use of e.g. lzma or bzip2 as a custom transfer compression beyond the compression capabilities of ssh itself. See #23.

  • FEATURE: abgleich clean can also remove snapshots on target but only if they are not part of the current overlap with source. The behavior can be controlled via the new keep_backlog configuration option, see #24 and #25.

  • FEATURE: Configuration module contains default values for parameters, making it much easier to write lightweight configuration files, see #28. The configuration parser now also provides much more useful output.

  • FEATURE: abgleich tree and abgleich compare highlight ignored datasets.

  • FEATURE: Significantly more flexible shell command wrapper and, as a result, cleaned up transaction handling.

  • FEATURE: Python 3.9 and 3.10 compatibility.

  • FIX: Many cleanups in code base, enabling future developments.

0.0.7 (2020-08-05)

  • FIX: tree now properly checks if source or target is up, depending on what a user wants to see, see #20.

  • FIX: All abgleich commands can properly initialize (instead of crashing) if the target tree is empty, see #19.

  • FIX: tree shows message if there is no tree instead of crashing, see #18.

0.0.6 (2020-07-24)

  • FIX: Development installs with make install do no longer fail, see #17.

  • FIX: Python up to 3.7.1 does not handle type checks for OrderedDict properly and either causes exceptions or crashes. Fixed with workaround, see #16.

0.0.5 (2020-07-24)

  • FEATURE: Version shown in GUI

  • FEATURE: Version exposed through --version option on command line

  • FEATURE: While {zpool}{/{prefix}} is included in all operations by default, this can be deactivated by setting the new include_root configuration option to no, see #14.

  • FIX: If a remote host is not up, provide a proper error and fail gracefully, see #15.

0.0.4 (2020-07-22)

  • FEATURE: Improved labels in wizard GUI

  • FEATURE: Significantly improved German translation

  • FIX: Importing CLoader and CDumper from pyyaml caused crashes if they were not present in pyyaml packages, see #2.

  • FIX: The mountpoint property of ZFS datasets is no longer assumed to be present at all (set or unset). This allows to handle ZVOLs without crashing, see issue #6.

  • FIX: Versions 0.0.2 and 0.0.3 were completely ignoring ZVOLs when looking for snapshot tasks, see issue #10.

0.0.3 (2020-07-19)

  • FEATURE: Added wizard GUI for backup tasks (snap, backup, cleanup)

  • FEATURE: Added new configuration options (always_changed, written_threshold, check_diff) for detecting snapshot tasks

  • FEATURE: CLI and GUI translations (i18n)

  • FIX: Added missing type checks

0.0.2 (2020-07-14)

  • FEATURE: New, fully object oriented base library

  • FEATURE: Python 3.8 support added

  • FIX: cleanup does not delete snapshots on source if they are not present on target.

  • FIX: Wait for ZFS’s garbage collection after cleanup for getting a meaningful value for freed space.

  • Dropped Python 3.5 support

0.0.1 (2019-08-05)

  • Initial release.