Major release for new feature to create and manage dump from Django admin, there is no incompatibility with previous version.
- Added support for Python 3.11;
- Added support for Django 5.1;
- Added minimal version for all requirements;
- Fixed usage of settings
DISKETTE_DUMP_PATH
andDISKETTE_LOAD_STORAGES_PATH
when there are empty value, Diskette code now fallbacks toPath.cwd()
; - Added a dummy homepage in sandbox instead of the previous 404 page;
- Added new setting
DISKETTE_DUMP_PERMISSIONS
to define filesystem permissions to apply on dump destination directory and archive file. It defaults to0o755
; - Added Django admin interface to manage dumps:
- Added models to manage dump files and API keys;
- API keys is currently unused until command
diskette_load
has been updated; - Added django-sendfile2 to requirements and use it to serve dump file;
- Dump file are limited to a single availability for the same option set (with data, with storages and with everything);
- Creating a new dump will deprecate other dumps with identical option set then and purge files of deprecated dumps;
- Dump process logs everything into Dump object attribute
logs
; - Dump process is not safe yet because it is still included in the same transaction than the object creation so if it fails, the object is never saved. However it won't create ghost files;
- Available dump can be downloaded directly from their admin detail view;
- Minor fixes in Makefile, documentation and Pytest adopted options;
- Implemented loaddata option
ignorenonexistent
; - Added support for Django 5.0;
- Added option
--exclude-data
todiskette_load
to exclude some dump filenames from loading; - Added setting
DISKETTE_LOAD_MINIMAL_FILESIZE
to filter out dumps with file size under the size limit;
- Added options
--app
and--exclude
todiskette_apps
; - Removed forgotten debug print from dump code;
- Added option
--check
todiskette_dump
to perform validation and checking without to query database or writing anything onto filesystem; - Added option
--format
todiskette_apps
with additionalpython
format which is now the default one instead ofjson
; - Changed
diskette_dump
anddiskette_load
so they output Diskette version as an early debug log message;
- Added support of archive URL to download in
diskette_load
; - Added options for archive checksum creation and comparison in
diskette_load
; - Added option for archive checksum creation in
diskette_dump
; - Improve handlers test coverage on options;
Fix release for missing commandline script from package.
- Added
diskette_load
command; - Added
diskette_apps
command; - Added
polymorphic_dumpdata
command, a work around for issues with application models that usedjango-polymorphic
; - Lots of refactoring to include an application store to properly resolve and manage data dump with application models;
- Many adjustments to make dump and loading work;
- Added contribution modules for
django-configuration
andproject-composer
; - Added
project-composer
as a documentation requirement;
Diskette enters in its Beta stage
Diskette bases are there and should be working well, however it currently still have some lacks:
- It is currently a commandline tool only, there is no admin interface yet although it has been planned;
- Possible errors from validations are not well managed yet, it means they may be outputed as raw exceptions instead of human friendly messages;
- Some commandlines lacks of some helpful arguments;
- Documentation is still in progress;
- Some bugs may be present with some options or specific configurations. This is the goal of the Beta stage to find them and fix them;
- Implemented storages dump chain;
- Added
diskette_dump
command; - Implemented all usefull options;
- Added test coverage for the dump chain;
- Started with
cookiecutter-sveetch-djangoapp==0.7.0
; - Added dump management with Django
dumpdata
command;