You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
This commit was created on GitHub.com and signed with GitHub’s verified signature.
Added
Implement new SqliteBackupConnector to backup SQLite3 databases using the .backup command (safe to execute on databases with active connections).
Verified full Windows compatibility via new CI workflows.
Add Django Signals support for backup and restore operations. New signals include pre_backup, post_backup, pre_restore, post_restore, pre_media_backup, post_media_backup, pre_media_restore, and post_media_restore.
New DjangoConnector that provides database-agnostic backup and restore functionality using Django's built-in dumpdata and loaddata management commands.
Changed
This repository has been transferred out of Jazzband due to logistical concerns.
Improve error message for missing database tools (pg_dump, mysqldump, etc.) to provide guidance instead of generic "No such file or directory" errors.
Changed default SQLite connector from SqliteConnector to SqliteBackupConnector to adhere to best practices.
Set default IF_EXISTS to True for PostgreSQL connectors (PgDumpConnector and PgDumpBinaryConnector) to reduce restore errors when objects are absent.
If PASSWORD is set to None for PostgreSQL connectors, the --no-password flag is now automatically used.
Removed
Drop support for end-of-life Python 3.7 and 3.8.
Drop support for end-of-life Django 3.2.
Drop pytz dependency in favor of Python's standard library zoneinfo (following Django 4.0+ timezone implementation).
Drop support for DBBACKUP_STORAGE AND DBBACKUP_STORAGE_OPTIONS settings, use Django's STORAGES['dbbackup'] setting instead.
Remove deprecated DBBACKUP_FAILURE_RECIPIENTS setting, use DBBACKUP_ADMINS instead.
Remove deprecated code for legacy Django version compatibility.
Fixed
Fixed -O flag to properly handle S3 URIs. Now python manage.py dbbackup -O s3://bucket/path/ and python manage.py mediabackup -O s3://bucket/path/ correctly route S3 URIs to the storage backend instead of attempting to write to local filesystem.
Fix issues with parsing excess whitespace within dbbackup -d "<COMMA_SEPARATED_ARGS>"
Fix encryption support when using gnupg==5.x.
Resolve SQLite backup temporary file locking issues on Windows.
Fix MediaRestore path corruption for files containing "media" in their paths.
Fix FTP storage restore issue where file objects without fileno() support caused io.UnsupportedOperation error during database restore operations.
Fix SQLite restore failing when multi-line TextField content contains semicolons.