1.10.0 2016-10-24

  • [Bug] #209: Django documentation link updated.
  • [Bug] #211: ReadTheDocs links updated.
  • [Bug] #212: Small changes for Django 1.10 compatibility.

1.9.0 2016-5-31

  • [Feature] #203: Use Django’s supplied version of six to remove an external dependency.
  • [Bug] #161: Fixed redirect loop for users without proper groups for MultipleGroupRequiredMixin and GroupRequiredMixin.
  • [Bug] #181: Fixed redirect loops based on user permissions.
  • [Bug] #196: Refactor how users without permissions are handled.
  • [Bug] #208: Fixed errors from combining certain access mixins.
  • [Support]: Added note to docs about Python and Django versions used in tests.
  • [Support] #192: Added example for OrderableListView.
  • [Support] #201: Fixed typo in SuccessURLRedirectListMixin.
  • [Support] #202: Fixed typo in PermissionsRequiredMixin and MultiplePermissionsRequiredMixin.
  • [Support] #209: Fixed link to Django documentation for user_passes_test decorator.

1.8.1 2015-7-12

  • [Bug]: Fix small issue in docs for :ref:JsonResponseMixin. The accepted kwarg for the render_to_response method is status not status_code.
  • [Bug] #185: Removed u prefixes to allow Python 3.2 support.
  • [Bug]: Updated tests to include Python 3.2.
  • [Bug]: Changed JsonRequestResponseMixin docs to not use ugettext_lazy.
  • [Bug] #176: Only check time delta for authenticated users in RecentLoginRequiredMixin.

1.8.0 2015-04-16

  • [Feature] #138: New RecentLoginRequiredMixin to require user sessions to have a given freshness.
  • [Feature] #171: New SSLRequiredMixin. Redirect http -> https.
  • [Bug] #131: New attribute on LoginRequiredMixin so it’s possible to redirect unauthenticated users while using AccessMixin-derived mixins instead of throwing an exception.
  • [Bug] #130: New attribute on JSONResponseMixin to allow setting a custom JSON encoder class.
  • [Bug] #164: Use resolve_url to handle LOGIN_REDIRECT_URL`s in ` that are just URL names.
  • [Support] #145: Allow custom exceptions to be raised by all AccessMixins.

1.4.0 2014-03-04

1.3.1 2014-01-04

  • [Bug] #95: Removed accidentally-added breakpoint.
  • [Support] #96: Added build/ to .gitignore

1.3.0 2014-01-03

  • [Feature] #92: AccessMixin now has a runtime-overridable login_url attribute.
  • [Feature] #76: Added UserPassesTestMixin mixin to replicate the behavior of Django’s @user_passes_test decorator.
  • [Feature] #61: Added CanonicalSlugDetailMixin mixin which allows for the specification of a canonical slug on a DetailView to help with SEO by redirecting on non-canonical requests.
  • [Feature] #51: Added JsonRequestResponseMixin which attempts to parse requests as JSON.
  • [Bug]: Fixed problem with GroupRequiredMixin that made it not actually work.
  • [Bug]: Some fixes for CanonicalSlugDetailMixin.
  • [Support]: Uses six.string_types instead of explicitly relying on str and unicode types.
  • [Support]: All tests pass for Django versions 1.4 through 1.6 and Python versions 2.6, 2.7, and 3.3 (Django 1.4 and 1.5 not tested with Python 3.3).
  • [Support] #59: Removed CreateAndRedirectToEditView mixin which was marked for deprecation and removal since 1.0.0.

1.2.1 2013-07-28

  • [Bug]: Fix to allow reverse_lazy to work for all AccessMixin-derived mixins.

1.2.0 2013-07-27

  • [Feature]: GroupRequiredMixin which is a new access-level mixin which requires that a user be part of a specified group to access a view.
  • [Feature]: FormMessagesMixin which provides the functionality of both of the above mixins.
  • [Feature]: FormInvalidMessageMixin which provides a messages message when the processed form is invalid.
  • [Feature] #57: FormValidMessageMixin which provides a messages message when the processed form is valid.

1.1.0 2013-07-18

  • [Feature] #45: New OrderableListMixin allows ordering of list views by GET params.
  • [Bug] #43: JSONResponseMixin added json_dumps_kwargs attribute & get method to pass args to the JSON encoder.
  • [Bug] #52: JSONResponseMixin .render_json_response method updated to accept a status code.
  • [Support]: Small fixes and additions to documentation.
  • [Support]: Tests updated to test against latest stable Django release (1.5.1)

1.0.0 2013-02-28

  • [Feature] #33: New PrefetchRelatedMixin. Works the same as SelectRelatedMixin but uses Django’s prefetch_related method.
  • [Feature] #32: Rewritten LoginRequiredMixin which provides same customization as other access mixins with login_url, raise_exception & redirect_field_name.
  • [Feature]: New ‘abstract’ AccessMixin which provides overridable get_login_url and get_redirect_field_name methods for all access-based mixins.
  • [Bug]: PermissionRequiredMixin no longer requires dot syntax for permission names.
  • [Support]: Tests to cover new additions and changes.
  • [Support]: Fixes to documentation.
  • [Support]: Marked package as supporting 2.6 thru 3.3 (from rafales).
  • [Support]: CreateAndRedirectToEditView is marked for deprecation.

0.2.3 2013-02-22

  • [Feature] #26: New CsrfExemptMixin for marking views as being CSRF exempt (from jarcoal).
  • [Bug]: SuccessURLRedirectListMixin raises ImproperlyConfigured if no success_list_url attribute is supplied (from kennethlove).
  • [Support]: Some documentation updates and a spelling error correction (from shabda).
  • [Support] #30: Tests for all mixins (from rafales).

0.2.2 2013-01-21

  • [Bug] #25: Try importing the built-in json module first, drop back to Django if necessary.
  • [Support]: Django 1.5 compatibility.

0.2.1 2012-12-10

  • [Feature] #22: Updated JSONResponseMixin to work with non-ASCII characters and other datatypes (such as datetimes)
  • [Bug]: Fixed all mixins that have raise_exception as an argument to properly raise a PermissionDenied exception to allow for custom 403s.
  • [Bug] #21: Fixed signature of UserFormKwargsMixin .get_form_kwargs