Sequence based identifiers are used for versioning (schema follows below):
major.minor[.revision]
- It's always safe to upgrade within the same minor version (for example, from 0.3 to 0.3.4).
- Minor version changes might be backwards incompatible. Read the release notes carefully before upgrading (for example, when upgrading from 0.3.4 to 0.4).
- All backwards incompatible changes are mentioned in this document.
2023-08-27
- Tested against Python 3.11.
- Mark django-nine as optional dependency.
- Drop support for Python < 3.7.
- Drop support for Django < 3.2 and 4.0.
- Tested against Django 4.1 and 4.2.
- Upgrade relevant contrib code to support both
django-constance
>= 2.8.x and 3.x.
2021-11-18
- Tested against Python 3.10.
2021-08-18
- Add value_dumper to most of the functions/methods related to signature generation/validation. It's aimed to make signatures generated in languages better compatible with ska.
- Add quoter to most of the functions/methods related to signature generation/validation. It's aimed to make signatures generated in languages better compatible with ska.
2021-06-18
- Add typing to most of the code parts.
2021-06-10
- Wipe out old flavour from code.
- Blackify.
2021-06-10
Additions to the Django contrib app
- Drop Python 2.7 and 3.5 support.
- Tested against Django 2.2, 3.0, 3.1 and 3.2.
- Tested against Python 3.8 and 3.9.
django-constance
specific template tags have been moved toska.contrib.django.ska.integration.constance_integration
. Update your Django settings accordingly.django-constance
specific authentication backend has been moved to'ska.contrib.django.ska.backends.constance_backend.SkaAuthenticationConstanceBackend
. Update your Django settings accordingly.django-constance
specific DRF permission classes (ConstanceSignedRequestRequired
andConstanceProviderSignedRequestRequired
) have been moved toska.contrib.django.ska.integration.drf.permissions.constance_permissions
. Update your Django settings accordingly.
2019-05-15
- Fixes in ska-sign-url on Python 3.5.
2019-05-12
Minor additions to the Django contrib app
- Introduce
SKA_CONSTANCE_SETTINGS_PARSE_FROM_JSON
directive for parsing the data stored indjango-constance
(instead of treating it asdict
). Default value isFalse
.
2019-03-13
Fixes in the Django contrib app
- Handle cases when request is not passed to the authentication backend.
2019-02-23
Additions to the Django contrib app
- Added provider_sign_url template tag to the existing ska_tags template tags module.
- Added a new ska_constance_tags template tags module (to be used in combination with django-constance).
2019-01-22
Additions to the Django contrib app
- Added Django REST framework JWT token obtain view (for authentication).
- Fixes in the authentication backend SkaAuthenticationConstanceBackend.
2018-12-28
Additions to the Django contrib app
- Added Django REST framework integration (for signing ViewSets).
2018-12-25
Additions to the Django contrib app
- Added additional callback
USER_VALIDATE_CALLBACK
to the authentication backends which is fired right after the signature validation to allow custom validation logic for the incoming authentication requests.
2018-12-20
Additions to the Django contrib app
- Authentication backend has been made customisable. Most of the code is
moved to the
BaseSkaAuthenticationBackend
. Introduced new authentication backendSkaAuthenticationConstanceBackend
to be used in combination withdjango-constance
.
2018-12-16
Additions to the Django contrib app
- Fixes in the callbacks import of the Django contrib app.
- Testing shell commands; minor fixes in tests.
2018-12-07
- Tested against Python 3.7.
- Add initial migrations for Django contrib package.
2018-12-03
Note
Release dedicated to Charles Aznavour. Rest in peace, maestro.
- Django 2.0 and 2.1 compatibility.
- Upgrade test suite.
- Fixes in docs.
- Python 3.4 is removed from support matrix (however, it might still work).
2017-02-09
- Tested against Python 3.6 and Django 1.11 (alpha).
2016-12-21
- Minor fixes.
2016-12-06
- Fixed in docs.
2016-12-06
- Added template tags library for Django integration.
2016-12-04
- Fixes in django ska decorators.
2016-12-03
- Fixed broken example installer.
2016-12-03
- Fixes in tests of django-ska package.
- Add shell.py command for easy debugging.
- Minor fixes.
- Clean up docs.
2016-12-02
- Django 1.8, 1.9 and 1.10 compatibility.
- pep8 fixes.
- The
six
package requirement increased to six >= 1.9. - Drop support of Django < 1.8 (it still may work, but no longer guaranteed).
- Drop support of Python 2.6.x.
- Fix broken Django authentication backend, due to deprecation of
request.REQUEST
.
2014-06-04
- Introducing abstract signature class in order to make it possible to define more hash algorithms.
- Added HMAC MD5, HMAC SHA-224, HMAC SHA-256, HMAC SHA-384 and HMAC SHA-512 hash algorythms. HMAC SHA-1 remains a default.
2014-05-06
- Add
ska-sign-url
terminal command (Linux only).
2014-02-28
- The
ValidationResult
class is slightly changed. Thereason
property is replaced witherrors
(whilereason
is left mainly for backwards compatibility). For getting human readable message you're encouraged to use themessage
property (string) instead of joining strings manually. Additionally, each error got a separate object (seeerror_codes
module):INVALID_SIGNATURE
andSIGNATURE_TIMESTAMP_EXPIRED
. - Minor documentation improvements.
2013-12-25
- Minor fixes.
- Added authentication backend tests.
- Added tumpering tests.
- Minor documentation improvements.
2013-12-23
- Armenian, Dutch and Russian translations added for Django app.
- Documentation improved.
2013-12-21
- Providers concept implemented. It's now possible to handle multiple secret keys and define custom callbacks and redirect URLs per provider. See the docs for more.
- Better example project.
- Better documentation.
2013-12-21
- Make it possible to add additional data to the signed request by providing
an additional
extra
argument. - Reflect the new functionality in Django app.
- Better documentation.
2013-12-17
- Optionally storing the authentication tokens into the database, when used with Django auth backend.
- Optionally checking, if signature token has already been used to log into Django. If so, ignoring the login attempt. A management command is added to purge old signature data.
- Demo (quick installer) added.
2013-12-14
- Class based views validation decorator added.
- Authentication backend for Django based on authentication tokens generated
with
ska
.
2013-12-13
- Lowered
six
version requirement to 1.1.0.
2013-10-16
- Lowered
six
version requirement to 1.4.0.
2013-10-12
- Contrib package
ska.contrib.django.ska
added for better Django integration.
2013-09-12
- Pinned version requirement of
six
package to 1.4.1.
2013-09-06
- Python 2.6.8 and 3.3 support addeded.
2013-09-05
- Stable release.
2013-09-04
- Adding shortcuts for handling dictionaries.
- Improved documentation.
2013-09-04
- Adding commands to generate the URLs.
2013-09-02
- Fixed docs.
2013-09-01
- Initial beta release.