Releases: octue/django-gcp
Add default app config so task manager initialised correctly
Summary
This fixes use with django < 4 where the default app config needs to be explicitly given by an app
Contents (#18)
Fixes
- Add default app config so task manager initialised correctly
Add content object metadata and custom time by default
Summary
This release ensures that any metadata
or custom_time
attribute on the content object gets added to the blob on creation (or update) in google cloud, to avoid a second roundtrip to add metadata.
The method that adds this data can be overridden in a custom storage class to avoid adding it altogether or to add different data.
Contents (#17)
New features
- Add content object metadata and custom time by default
Cloud tasks
Summary
Contents (#16)
New features
- Add Cloud Tasks manager, views, urls, Task ABCs and examples
Enhancements
- Export all members
- Include error handling on requests
- Improve urls definition in example server
Fixes
- Make message parsers consume full pub/sub messages
Operations
- Use WP long goldfish stack for development
- Name the postgres volume for clarity, prepare move to test server
- Allow customisation of devcontainer per-developer, add gcloud SDK
- Update devcontainer to latest stack
- Add a terraform config (WIP) for the example server
- Bump version for new feature release
- Remove broken extensions for restructuredText
- Add localtunnel install to the dockerfile
- Update grpcio to non-yaked version
- Make grpcio maintainers suffer for yanking a key release
- Use psycopg2-binary to ensure pg_config available on GHA
Dependencies
- Resolve bad merge
- Widen django dependencies to include 4.x
Refactoring
- Separate the example app from teh tests directory
- Make error name clearer
- Remove unused routing file
- Remove unused asgi file
- Add an OnDemandTask class to avoid future breaking change
Testing
- Fix broken test caused by adding redirect
- Make storage tests work with example assets
- Add test suite up to 90% coverage
- Patch the gcp authorisation
Other
- Add instructions for using the test app
- Add a redirect to the root in the example app
- Use terraform-built assets in example server
- Merge main
- Update docs and include Tasks
- Expand temporary note about where to find how-to example
- Added watcher to replace broken extensions
- Added a little extra to teh tasks usage docs
Add pubsub message utilities
Contents (#11)
IMPORTANT: There is 1 breaking change.
New features
- Add make_pubsub_message utility
- Add pubsub message decoder and allow timezone-aware publish_time
Enhancements
- Raise errors in debug mode to allow quicker local debugging
Dependencies
- 💥 BREAKING CHANGE: Remove py3.8 support to avoid timezone difficulties with <=3.8
Other
- Add missing parameter to example event handler
- Add explanation on how to make pubsub message
- Demonstrate pubsub decoder in example receiver
Upgrade instructions
💥 Remove py3.8 support to avoid timezone difficulties with <=3.8
We removed support for python 3.8, because we take advantage of the ZoneInfo management for python datetimes
that python 3.9 introduces. That allows us to fix a bug where non-naive datetimes would break the publish_time serialisation.
Yes, we could have backported everything. If you need that, we'll happily do so for a small donation to octue
Add event URL generation utility
Contents (#9)
New features
- Add event url generation helper
Operations
- Update esbonio and restructuredText settings
Chores
- Update restructuredText config
- Remove rst formatting error
- Remove unused doc file
Other
- Fix typo
Absorb events and connect to django signals
Summary
Contents (#6)
New features
- Add event handling endpoint
Enhancements
- Add basic exception handling
Operations
- Update basic library settings
- Update version for new feature
Dependencies
- Update black and docs systems
- Update doc build environment
Refactoring
- Remove unused example test
Chores
- Satisfy license requirements for tasks module
- Fix typo and links in attribution
- Add rabid armadillo attribution
Other
- Add documentation for events
- Remove inaccurate favicon
Allow many stores and clarify storage API
Summary
This PR enables use of an unlimited number of stores, allowing users to map data to different buckets as required.
Thin helper classes for the two most common storesGoogleCloudMediaStorage
and GoogleCloudStaticStorage
have been established. Documentation has been substantially redrafted and updated (based on the docs from django-storages). The way settings are handled has been overhauled: to abstract settings logic out of the main class, to cache calculated settings values, and to
💥 The Settings API has changed to facilitate the use of many stores, since they may each require different settings.
Contents (#4)
IMPORTANT: There are 2 breaking changes.
New features
- BREAKING CHANGE: Allow multiple buckets with different settings
Fixes
- Remove invalid override of method to property
Operations
- Ignore flake8 failure incompatible with black
- Prevent random editor scrolling in rst previews
- Update version for previous feature
Refactoring
- Remove unnecessary catch of ImportError
- Settings unified and validated
- BREAKING CHANGE: Apply consistent settings naming
Other
- Fix codecov badge, missing links and typos
Add storage testing
Summary
Contents (#2)
Operations
- Allow issue hashes in branch names
- Allow branches for test development, remove review branches
- Update version
Testing
- Add tests for storages
Initial release
Contents
Features
- Django library based on the rabid-armadillo template
- Outline documentation using sphinx
- Brought in and refactored
django-storages[google]
- Apply Code Quality standards / practices
- Implement CICD workflows