Versioning tools for use with Django Rest Framework
Project description
Django Rest Framework Versioning
Work In Progress!
Todo:
- Have Transform, VersionedViewSet add themselves to Version's .transforms/.views attributes. (The reverse is pretty cumbersome to maintain)
- Version class
- Admin page for Versions (no editing, but just to view what is included in each version)
- Overridable Version class
- Version class to have methods to describe Transforms, ViewSets / views, etc -VersionedSerializer
- Make VersionedSerializer work as inline serializer
- Needs to get context.request from parent probably
- Hard(er) link between VersioningSerializer and its transforms
- Make VersionDoesNotExist a subclass of rest framework APIerror so views can handle it.
- The holy grail: get drf's openapi schema generator to listen to all this stuff.
- Startup checks:
- VersioningSerializers have transform_base declared
- Cases for the transforms to handle (and examples in the docs):
- Field becomes required / nullable or reverse
- Add value to field choices (shouldn't appear in old schema)
- Add value to field schema and map to old value. E. G. Active / Failed -> Active /Failed / Retrying but for older versions Retrying should be displayed as Failed
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Close
Hashes for djangorestframework_versioning-0.1.1.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | e842a99a7212b3edf3de2d95b2609eb28113614b99c25331f94db3614b23db6c |
|
MD5 | 9243124a1269ba3ac81cd030e176b0a4 |
|
BLAKE2b-256 | 1577301b2896dc7c4cbd1a3368a2aedaf272fa442c79c375c5c4a896ddc4ecbd |
Close
Hashes for djangorestframework_versioning-0.1.1-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 1ee4a33c151c96a49e43c0498b41feb6a4cd84a067d27b24df5d792945ef4229 |
|
MD5 | 637c7c7828e97ffc2f8ca5bfe89c9804 |
|
BLAKE2b-256 | fa8d83b9d27dd9c2af4383e1fe961e460e70deb36b5bbfe16149a88b237b8cf1 |