Change Log¶
v0.3.13 - April 11, 2017 - Pickle compatibility¶
- Allow verified users to be pickled.
v0.3.12 - April 2, 2017 - Forward compatibility¶
- Minor fixes for Django 1.11 and 2.0.
v0.3.11 - March 8, 2017 - Built-in QR Code support¶
v0.3.8 - November 27, 2016 - Forward compatbility for Django 2.0¶
- Treat
is_authenticated
andis_anonymous
as properties in Django 1.10 and later. - Add explict on_delete behavior for all foreign keys.
v0.3.7 - September 24, 2016 - Convenience API¶
- Added a convenience API for verifying TOTP tokens:
django_otp.oath.TOTP.verify()
.
v0.3.6 - September 4, 2016 - Django 1.10¶
v0.3.5 - April 13, 2016 - Fix default TOTP key¶
- The default (random) key for a new TOTP device is now forced to a unicode string.
v0.3.4 - January 10, 2016 - Python 3 cleanup¶
- All modules include all four Python 3 __future__ imports for consistency.
- Migrations no longer have byte strings in them.
v0.3.3 - October 15, 2015 - Django 1.9¶
- Fix the addstatictoken management command under Django 1.9.
v0.3.2 - October 11, 2015 - Django 1.8¶
- Stop importing models into the root of the package.
- Use ModelAdmin.raw_id_fields for foreign keys to users.
- General cleanup and compatibility with Django 1.9a1.
v0.3.1 - April 3, 2015 - Django 1.8¶
- Add support for the new app registry, when available.
- Add Django 1.8 to the test matrix and fix a few test bugs.
v0.3.0 - February 7, 2015 - Support Django migrations¶
- All plugins now have both Django and South migrations. Please see the upgrade notes for details on upgrading from previous versions.
v0.2.7 - April 26, 2014 - Fix for Custom user models with South¶
- Updated the otp_totp South migrations to support custom user models. Thanks to https://bitbucket.org/robirichter.
v0.2.6 - April 18, 2014 - Fix for Python 3.2 with South¶
- Removed South-generated unicode string literals.
v0.2.4 - April 15, 2014 - TOTP plugin fix (migration warning)¶
- Per the RFC,
TOTPDevice
will no longer verify the same token twice. - Cosmetic fixes to the admin login form on Django 1.6.
Warning
This includes a model change in TOTPDevice. If you are upgrading and your
project uses South, you should first convert it to South with manage
migrate otp_totp 0001 --fake
. If you’re not using South, you will need to
generate and run the appropriate SQL manually.
v0.2.3 - March 3, 2014 - Fix pickling¶
- OTPMiddleware no longer interferes with pickling request.user.
v0.2.2 - December 31, 2013 - Require Django 1.4.2¶
- Update Django requirement to 1.4.2, the first version with django.utils.six.
v0.2.1 - November 19, 2013 - Bug fix¶
- Fix unicode representation of devices in some exotic scenarios.
v0.2.0 - November 10, 2013 - Django 1.6¶
- Now supports Django 1.4 to 1.6 on Python 2.6, 2.7, 3.2, and 3.3. This is the first release for Python 3.
v0.1.8 - August 20, 2013 - user_has_device API¶
- Add
django_otp.user_has_device()
to detect whether a user has any devices configured. This change supports a fix in django-otp-agents 0.1.4.
v0.1.7 - July 3, 2013 - Decorator improvement¶
- Add if_configured argument to
otp_required()
.
v0.1.6 - May 9, 2013 - Unit test improvements¶
- Major unit test cleanup. Tests should pass or be skipped under all supported versions of Django, with or without custom users and timzeone support.
v0.1.5 - May 8, 2013 - OTPAdminSite improvement¶
- OTPAdminSite now selects an apporpriate login template automatically, based on the current Django version. Django versions 1.3 to 1.5 are currently supported.
- Unit test cleanup.
v0.1.3 - March 10, 2013 - Django 1.5 compatibility¶
- Add support for custom user models in Django 1.5.
- Stop using
Device.objects
: Django doesn’t allow access to an abstract model’s manager any more.
v0.1.2 - October 8, 2012 - Bug fix¶
- Fix an exception when an empty login form is submitted.
v0.1.0 - August 20, 2012 - Initial Release¶
Initial release.