Skip to content

Releases: netinvent/npbackup

Stairway to backup - Stairway's end

21 Oct 08:34
f92d6e7

Choose a tag to compare

This is a maintenance release for NPBackup v3.
So far, v3.0.3 has been a pretty solid release, so this is a fairly small release.
We're also heading for a GUI rewrite currently, but that shall become v3.1.

3.0.4

Disruptive changes

  • compression option is decided at repo level, so it was moved to repo_opts section
    • The configuration files will be automatically migrated on first run
  • This is the last version to support deprecated parameters ---check, --repair- and --prune-max
    • They have been replaced by --check, --repair and --prune with additional parameters to fine tune the operations

Features

  • pack_size option has been added to backup_opts section, allowing to set restic pack size for finer grained deduplication

Fixes

  • Compression value was not honored on init command
  • CLI: --force switch now bypasses random delay before backup
  • CLI: Fix --dump command that tried to interpret output as strings, also make it faster by changing polling method
  • CLI: Fix stdin encoding issues
  • GUI: Fix appply_on_tags not shown properly
  • Fix grafana dashboard when no tenants are available
  • KVM: Fix backup script typo for fsthaw command
  • KVM: Use new snapshot-delete command, with fallback for earlier implementation
  • KVM: Keep VM xml files in the path of the first VM disk

Misc

  • Tests: Added MacOS to test suite
  • Tests: Improve --dump test to check against sha256 sums
  • Tests: Improve --raw test
  • Tests: Allow restic binary fallback when no new version can be downloaded
  • Only load windows_signtool on Windows platforms
  • Updated internal restic binary to 0.18.1 compiled with go1.24.3
  • Updated Nuitka compiler to 2.7.16
  • README typos and fixes, see #168
  • CLI: Do not log verbose mode

Stairway to backup - Somethings good

30 Sep 07:22

Choose a tag to compare

Pre-release

This is a maintenance release for NPBackup v3.
So far, v3.0.3 has been a pretty solid release, so this is a fairly small release.
We're also heading for a GUI rewrite currently, but that shall become v3.1.

Fixes

  • CLI: --force switch now bypasses random delay before backup
  • CLI: Fix --dump command that tried to interpret output as strings, also make it faster by changing polling method
  • Fix grafana dashboard when no tenants are available
  • KVM: Fix backup script typo for fsthaw command
  • KVM: Use new snapshot-delete command, with fallback for earlier implementation
  • KVM: Keep VM xml files in the path of the first VM disk

Misc

  • Tests: Added MacOS to test suite
  • Tests: Improve --dump test to check against sha256 sums
  • Tests: Improve --raw test
  • Tests: Allow restic binary fallback when no new version can be downloaded
  • Only load windows_signtool on Windows platforms
  • Updated internal restic binary to 0.18.1 compiled with go1.24.3
  • Updated Nuitka compiler to 2.7.16
  • README typos and fixes, see #168
  • CLI: Do not log verbose mode

Stairway to backup - another stairway maintenance

05 Jul 21:39

Choose a tag to compare

Maintenance release

Third maintenance release for v3.0.0 series.
It mainly adds emailing support, better prometheus metrics, and a smoother GUI experience.

Disruptive changes

  • An automatic config file migration tool has been added which will migrate config files from 3.0.0 to 3.0.3
  • The configuration file format has changed for retention policies
    • 'tags' has become 'keep_tags' which is more meaningful
    • 'apply_tags' has been added to filter retention policies only on specific snapshots containing defined tags
  • Existing files will be in-place upgraded

Features

  • New finer grained concurrency control
  • New optional random delay before backup operations
  • All prometheus metrics now have repo_name label, thanks to @GuitarBilly
  • All prometheus metrics now include os, arch and audience labels
  • Metrics are now send for non executed backups because of concurrency checks, #161, thanks to @GuitarBilly
  • Implement operations notifications per email, #139
  • CLI: Add --list-selected-repos command
  • Retention policies can now be filtered by tags
  • GUI: Restore operation now has throughput statistics and a better overall presentation

Fixes

  • GUI: Fix possible result mismatch with concurrency checks
  • GUI: Hide background window while restoration is running
  • Fix npbackup_exec_state inherited previous run states in the same session (ie GUI or group operations)

Misc

  • GUI: Finally a worthy fix for hiding the console window in Windows 11 (they changed conhost.exe to Windows Terminal)
  • GUI: Workaround to make the config window close faster by threading it into background
  • Update restic metrics tests
  • Updated Nuitka compiler to 2.7.8
  • KVM Qemu script now has VM exclusion lists
  • KVM Qemu script does not try to create snapshots for VMs that aren't running
  • KVM Qemu can now add specific tags to VMs defined in a list
  • KVM Qemu now issues thaw command after a quiescing snapshot in order to workaround some FreeBSD corner cases

Stairway to backup - stairway maintenance 2

10 Jun 12:02

Choose a tag to compare

Maintenance release

Second maintenance release for v3.0.0 series.

Enhancements

  • Make NTP offset configurable at compile time
  • Implement new restic --exclude-cloud-files, replacing previous implementation

Fixes

  • Fix rclone debug output preventing proper execution, #132, thanks @GuitarBilly
  • Don't throw error on missing metrics size
  • GUI: Fix empty strings in numeric conversions, #156, thanks @GuitarBilly
  • GUI: Fix missing inheritance on prune settings
  • GUI: Fix showing irregular / missing files in GUI did not show the right icons, #157, thanks @GuitarBilly
  • GUI: Don't lock viewer, #155, thanks @jmigual for reporting
  • Fix potential AES key read problem
  • Don't require lock for snapshot viewing, #160, thanks @GuitarBilly

Misc

  • Bump restic version to 0.18.0
  • Make alternative legacy builds for linux and windows
  • Reduce debug output
  • Don't run snapshot command on every run, fixes #159, thanks @GuitarBilly
  • Various log message improvements
  • Set default backup interval to 23h55, #162, thanks @GuitarBilly

Stairway to backup - stairway maintenance

21 Mar 15:32

Choose a tag to compare

Maintenance release

So this is shall become the first maintenance release for v3.0.0 series.
At this point we shouldn't add any major features, but still add minor enhancements.
The major enhancement here comes from random housekeeping / auto-upgrade run chances, which will allow many workstation instances to spread these actions over a larger time range, in order to avoid network congestion.

Enhancements

  • Enable prune tuning parameters
  • Add housekeeping after backup run chance parameter
  • Add auto upgrade run chance parameter
  • Configuration file checks are now subversion aware
  • Allow partial configuration files (missing default repo / group)

Fixes

  • Missing specified backup paths won't trigger errors (backend behavior), see #151
  • Updated Grafana Dashboard: fixed variable gathering from wrong metric name)
  • CLI: Fix --prune-max (deprecated)
  • CLI: Add --prune max (replaces --prune-max)
  • CLI: Fix --policy not allowed in group operations
  • GUI: Fix CTRL+C triggers and error, #125
  • GUI: Fix showing inheritance icon on entries wiith units, #148
  • GUI: Permission set button should be red if no permission set
  • GUI: Default units should be IEC bytes, like restic backend, fixes #143
  • Fix for textcollector & push gateway data being overwritten in group operations mode, #150
  • Dissociate minimum backup size error from absent backup error, #141

Misc

  • GUI general UX and cosmetic changes

Thanks to @GuitarBilly for his help reporting bugs ;)

Stairway to backup - stairway maintenance

07 Mar 12:58

Choose a tag to compare

Maintenance release

So this is shall become the first maintenance release for v3.0.0 series.
At this point we shouldn't add any major features, but still add minor enhancements.
The major enhancement here comes from random housekeeping / auto-upgrade run chances, which will allow many workstation instances to spread these actions over a larger time range, in order to avoid network congestion.

Enhancements

  • Enable prune tuning parameters
  • Add housekeeping after backup run chance parameter
  • Add auto upgrade run chance parameter (deprecates interval runs)

Fixes

  • Missing specified backup paths won't trigger errors (backend behavior), see #151
  • Updated Grafana Dashboard: fixed variable gathering from wrong metric name)
  • CLI: Fix --prune-max
  • CLI: Fix --policy not allowed in group operations
  • GUI: Fix CTRL+C triggers and error, #125
  • GUI: Fix showing inheritance icon on entries wiith units, #148
  • Fix for textcollector & push gateway data being overwritten in group operations mode, #150
  • Dissociate minimum backup size error from absent backup error, #141

Misc

  • GUI general UX and cosmetic changes

Stairway to Backup

24 Feb 21:14

Choose a tag to compare

Official v3.0.0 release

It's been a long wait for this release. Almost all parts of NPBackup have been rewritten or have been updated.
A very long release candidate period has been observed in order to iron out all possible bugs and nipticks.
So here we are, proud to build some stairways to h... euhh easier but reliable backups.

This release is way too big to enumerate all the new functions. But here's a list of the major features:

  • Multi-repository support
  • Easier repo setups which can inherit from group settings
  • New viewer application for viewing/restoring data from any restic repositories
  • CLI and GUI are now two separate applications (still GUI can act as CLI)
  • CLI can now fully operate in API mode via --json parameter
  • New operation center which allows to run operations on multiple repositories and / or groups
  • New housekeeping operation, which checks, implements retention policy and prunes backups
  • Prometheus monitoring now supports all operations
  • Upgrade server can now filter on client / group / platforms
  • Memory and speed optimization
  • Automatic tests

For the full changelog, please see CHANGELOG.md file.

Special thanks to @GuitarBilly for his help in finding bugs / asking questions / general help.

6-strings

18 Feb 08:48

Choose a tag to compare

6-strings Pre-release
Pre-release

Almost half of the bug fixes for this release could happen thanks to @GuitarBilly who made alot of nice feedback. Thank you.

Features

  • NPBackup now allows not having default repo and default_group group
  • Allow group operations to be cancelled

Fixes

  • GUI
    • Make sure we don't allow dots in repo and group names
    • Fix update of repo type on repo change
    • Fix double full permission introduced in rc14, thanks to @GuitarBilly
  • Preserve pre/post script execution order, thanks to @GuitarBilly
  • Fix writing metrics twice in group operation mode
  • Fix repo name not populated in prometheus metrics when metrics destination not set
  • Fix forget operation bug introduced in earlier rc
  • Fix --repo-name trying to show corresponding groups
  • Fix scheduled task creation bug introduced in rc13, thanks to @GuitarBilly

Misc

  • viewer now creates it's own log file, thanks to @GuitarBilly
  • GUI: cosmetic hack for linux

Made with love... and python

14 Feb 17:57

Choose a tag to compare

Pre-release

Today's valentine day special... A new NPBackup v3 release candidate.
This one has been long in the making.

I'd like to thank @GuitarBilly for his really good issues / bug tracking, which highly improves the quality of this RC release.

Features

  • Upgrade server/client now can filter and provide different binaries / upgrade scripts for specific machines / groups
  • Upgrade rollback has been improved on Windows
  • Upgrade client can identify if the initial scheduled program launch needs to run
  • Upgrade server now has a basic multi-user and permission system
  • Upgrade client now tests if new binaries can properly read current config file
  • GUI:
    • Minor UX improvements
    • GUI can now remove a manager password
    • Improve upgrade process messages
    • Add new config file santizer check
  • New restore_only permission

Fixes

  • Upgrade client now retains config file if it was in the same directory as the binaries
  • Rollback behavior is more resilient under Windows
  • GUI:
    • Don't polluate logs with snapshot content
    • GUI now accepts multiple --run-as-cli arguments when it's relaunched with prior arguments
    • Adding multiple files at once to backup paths now expand to list
    • Don't try to kill current process when exiting, only backup backend
    • Fix deletion of just created objects
    • Fix permissions & manager password reset when saving configuration twice
  • Fix files-from source not recognized
  • Windows x86 legacy builds now include the adequate older backend binary

Misc

  • Unlocking actions is now permitted for all permissions
  • Reword some metrics in Grafana dashboard
  • Added variable and user expansion for additional_parameters and additional_backup_only_parameters
  • Added a new environment variable with path to current backend binary for script usage
  • Newer windows builds now run with Python 3.13
  • Switched to Nuitka commercial v2.6.4 compiler

2 Minutes to Release

10 Jan 12:23

Choose a tag to compare

2 Minutes to Release Pre-release
Pre-release

Features

  • GUI: Better UX for cloud provider setup

Fixes

  • GUI: Fix show snapshot content for legacy builds using Python 3.9 or 3.10 (Using non existing StrEnum)

Misc

  • Include buildtype in version string and prometheus metrics
  • CLI: Improve --show-config help
  • By default, follow mountpoints in backup (prefer backup too much than not enough philosophy)
  • Remove /mnt from default linux exclusions (again, same philosophy)
  • Linux now has legacy (Python 3.9) and recent (Python 3.12) builds, which run depending on your glibc version