npbackup/CHANGELOG

171 lines
8.5 KiB
Text
Raw Normal View History

2023-05-04 04:15:21 +08:00
## 2.2.0 - rc12 - 03/05/2023
- Add grafana dashboard to examples directory
- Implement password command functionality
- Compiled with newer Nuitka commercial 1.5.7
- Added windows executable signature script
2023-04-23 05:21:52 +08:00
## v2.2.0 - rc11 - 24/04/2023
2023-04-05 21:18:53 +08:00
- Add default 1 minute timeout for init operations
- Fix auto_upgrade_group wasn't transmitted to server
- Make sure new binary is set as executable in linux upgrade
- *SECURITY* Show unencrypted is only allowed on compiled builds where default AES KEY is not used
- This prevents a password injection from another conf file
- *SECURITY* Prevent raw password update in config file
2023-04-22 20:26:04 +08:00
- Fix empty password makes GUI fail
- Fix empty password makes CLI fail
- Fix empty data is shown as encrypted
- Enforce repository and passwords to be strings, also remove trailing and ending spaces
- Add warning when source and destination are the same path
2023-04-23 05:21:52 +08:00
- Compiled with newer Nuitka 1.5.6+ that leverages lesser virus detection issues
2023-04-05 21:18:53 +08:00
2023-03-30 07:19:39 +08:00
## v2.2.0 - rc10 - 30/03/2023
2023-03-30 05:43:18 +08:00
- Add arm/arm64 compilation support
- Add an option to disable GUI compilation
2023-03-28 20:49:12 +08:00
## v2.2.0 - rc9 - 28/03/2023
2023-03-27 21:47:42 +08:00
- Allow AES key rotation by keeping old key and updating encryption on config loading
- Make sure restic binary is executable for Nuitka builds
- Improve compiler script
- Add messages when no tcl/tk exists in GUI mode
2023-03-28 20:49:12 +08:00
- Switch to i18nice fork of python-i18n
2023-03-27 21:47:42 +08:00
2023-03-22 07:31:10 +08:00
## v2.2.0 - rc8 - 22/03/2023
2023-03-20 22:54:49 +08:00
- Highly optimize tree window creation times (x3.5) by replacing dateutil.parser.parse()
2023-03-22 05:57:50 +08:00
- Fix missing locale might fail on certain linux builds
- Don't build NPBackupInstaller on non Windows platforms
- Add --gui-status parameter and more GUI related info
- Make translation manager more resilient
2023-03-22 07:31:10 +08:00
- Add an inline copy of maintained python-i18n to deal with portability issues (see requirements.txt for more)
2023-03-20 22:54:49 +08:00
2023-03-20 21:22:10 +08:00
## v2.2.0 - rc7 - 20/03/2023
2023-03-22 05:57:50 +08:00
- New look and feel
- Cosmetic fixes (button sizes)
2023-03-20 21:22:10 +08:00
2023-03-14 02:31:36 +08:00
## v2.2.0 - rc6 - 13/03/2023
2023-03-08 15:25:34 +08:00
- Fixup bogus restic command line when empty tag lines were given
- Added missing default value for ignoring cloud files in the example configuration
2023-03-14 02:31:36 +08:00
- Made sure npbackup can run when no tkinter is installed (headless)
2023-03-08 15:25:34 +08:00
2023-03-03 22:22:19 +08:00
## v2.2.0 - rc5 - 03/03/2023
2023-03-02 02:37:32 +08:00
- Fixed bogus restic command line when empty tag lines were given
- Make sure the no config dialog stays on top
2023-03-02 20:53:45 +08:00
- Make sure upgrade client checks current python arch instead of os arch
- Make upgrade client catch referrer for /current_version calls
- Upgrade python-i18n to a maintained version
2023-03-03 22:22:19 +08:00
- Make sure we get the real IP when client downloads an upgrade and server is behind proxy server
2023-03-02 02:37:32 +08:00
## v2.2.0 - rc4 - 08/02/2023
2023-02-08 16:30:19 +08:00
- Add gui popup when config cannot be saved
- Make repo connection messages more clear
2023-02-08 17:10:29 +08:00
- Remove default backup admin password from config
2023-02-08 16:30:19 +08:00
- Fix empty restic results will make prometheus metrics fail
2023-03-02 02:37:32 +08:00
## v2.2.0 - rc3 - 07/02/2023
2023-02-06 01:24:00 +08:00
- Auto minimize console window when run in GUI mode to not distract end user
- Trigger GUI refresh after configuration changes
- Main program now loads directly after first time GUI setup
- A popup is now shown on non-readable repos
- Various smaller fixes
2023-02-07 16:26:24 +08:00
- Support for --config-file parameter in upgrade_server
- Upgrade server now fetches the real client IP if behind a proxy
- Upgrade server systemd service file example
2023-02-06 01:24:00 +08:00
2023-03-02 02:37:32 +08:00
## v2.2.0 - rc2 - 03/02/2023
2023-02-03 05:05:27 +08:00
- Upgrade client now sends its hostname, group and version information to server
2023-02-03 15:06:57 +08:00
- Add variable substitution in configuration
2023-02-03 05:05:27 +08:00
- Add machine identification in configuration
- Add variable ${RANDOM}[n] to config file in order to distinguish non unique hostnames
- Refactor config variable handling
2023-02-03 06:31:00 +08:00
- Make backup state and upgrade state messages more coherent
2023-02-02 21:13:06 +08:00
- Fix config fails when restic password is an int
- Fix empty config files did not show a proper error message
2023-02-03 05:05:27 +08:00
- Fix various config file malformation will break execution
- Fix backup hangs when no restic password is given (restic asks for password in backgroud job)
- Fix error message in logs when repo is not initialized
2023-02-02 21:13:06 +08:00
## v2.2.0 - rc1 - 02/02/2023
2023-02-01 06:46:15 +08:00
- Added a full auto-upgrade solution:
- Aupgrade client integrated into NPBackup, that can be called manually via --auto-upgrade or automatically run every n backups
- Upgrade server which servers files and their metadata
- Added a gui to create a scheduled task under Windows
- Added a gui to configure backup admin password (was compile time setting before)
2023-02-01 06:46:15 +08:00
- Improved setup.py to provide launch scripts for both Linux and Windows platforms
2023-02-02 00:29:18 +08:00
- Made windows cloud file filter optional (enabled by default)
- Added default configuration settings
2023-02-02 02:43:51 +08:00
- Rewrite configuration gui into a tabbed gui
2023-02-03 06:32:45 +08:00
- Updated restic binary to restic 0.15.1 compiled with go1.19.5
2023-02-02 18:39:18 +08:00
- Changed backup interval unit from seconds to minutes
2023-02-01 06:46:15 +08:00
2023-01-29 23:47:28 +08:00
## v2.1.0 - 29/01/2023
- Added execution time information
- Code cleanup
- Refactor runner into a class
2023-01-29 01:40:42 +08:00
- Refactor npbackup into package
- Adding missing typing
- Code is now formatted with black
2023-01-29 01:40:42 +08:00
- Code must now pass pylint and flake8
- Workaround for painfully slow sg.TreeData window.close()
- Simplify npbackup shortcut
- Shift default interval from 23H30 to 24H
- Fixed missing translations for admin password popups
## v2.0.0 - 24/02/2023
2023-01-26 08:13:07 +08:00
- First open public release
- Refactor GUI so actions become non-blocking
2023-01-26 08:13:07 +08:00
- Added loader animation for gui events
- Added backup window with current state
- Added internationalization support (currently en and fr)
- Refactor restic.ls function to return a generator since restic ls command gives chunks of json, which is bad memory wise when parsing each chunk into a big list
- On Windows, "The cloud operation is not supported on a read-only volume." and "The media is write protected." errors will not make backup fail, see #4155
- This fix can be removed once #4155 is resolved, see # TEMP-FIX-4155 comment in restic_wrapper package
- Added Additional backup parameter option
- Added optional backup tags
- Added optional prometheus group label and additional labels entries
- Make sure backend connections number parameter works with all backends
- Added priority configuration for restic operations, defaults to low priority to not disturb operations
- Added WindowsApps folder (reparse points) to exclusion list (fix "The file cannot be accessed by the system." error)
- Fixed backup did use verbose option twice
- Updated restic binary to restic 0.15.0 compiled with go1.19.5 on windows/amd64
- Made theme configurable
- Make sure we exit all subprocesses when exiting npbackup
- Improve config GUI for supporting elder config files properly
- Fix restic metrics when 0 bytes of data have been added to the repo
- Fix restoration must ignore case on Windows
- Fix backup_job variable substitution in config file
- Fix for ruamel.yaml global objects being modified out of current scope encrypting current config while saving
- Fix npbackup could not start when no config file was present
- Drastically improve ls operation speed by changing command_runner method from poller to monitor (no live output) except for backup operation
- Compiler:
- Compile python 3.7 and 3.10 targets so we also get to use Windows 7 which can't run python > 3.7
- Installer:
- Moved task creation process to npbackup so we can recreate tasks on systems where npbackup is already installed
## v1.8.0
- Implement VSS support for Windows
- Do not require UAC elevation for npbackup.exe (Still highly recommended, but at least we allow non admin users to backup their data (without VSS))
- Search restic executable path when not found locally for both Windows and Linux platforms
- Make exclusion lists always ignore case on Windows systems
- Highly improve exclusion lists
- Keep structure and comments in yaml configuration files
- Simplify configuration file data encryption
- Fix limit-download parameter not working
- Fix error when rest_connections was set to 0
- Add some config gui logging
- Cosmetic gui fixes
- Fix never enforce execution timeout on backup operation
- Fix bogus filename encodings while showing backup contents / usernames
- Added more restic metrics
- Fixed bogus restric metrics
- Allow setting additional prometheus labels
- Fix gui snapshot contents don't show duplicate parents on Windows when backing up 'c:\foo' and 'C:\bar'
- Internal code cleanup
- Installer:
- Make sure we don't overwrite destination configuration file if existing
## v1.5.3
- First closed public release
## v0.1.0 - 1.5.2
- Internal development and tests