{ "info": { "author": "Fusionbox, Inc.", "author_email": "programmers@fusionbox.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Environment :: Web Environment", "Framework :: Django", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6" ], "description": "django-authtools\n================\n\n.. image:: https://travis-ci.org/fusionbox/django-authtools.png\n :target: http://travis-ci.org/fusionbox/django-authtools\n :alt: Build Status\n\n\nA custom user model app for Django 1.11+ that features email as username and\nother things. It tries to stay true to the built-in user model for the most\npart.\n\nThe main differences between authtools's User and django.contrib.auth's are\nemail as username and class-based auth views.\n\nRead the `django-authtools documentation\n`_.\n\nQuickstart\n==========\n\nBefore you use this, you should probably read the documentation about `custom\nUser models\n`_.\n\n1. Install the package:\n\n .. code-block:: bash\n\n $ pip install django-authtools\n\n2. Add ``authtools`` to your ``INSTALLED_APPS``.\n\n3. Add the following to your settings.py:\n\n .. code-block:: python\n\n AUTH_USER_MODEL = 'authtools.User'\n\n4. Add ``authtools.urls`` to your URL patterns:\n\n .. code-block:: python\n\n urlpatterns = patterns('',\n # ...\n url(r'^accounts/', include('authtools.urls')),\n # ...\n )\n\n5. Enjoy.\n\n\nCHANGES\n=======\n\n1.7.0 (2019-06-26)\n------------------\n\n- Fix bug when using Django 1.11 where resetting a password when already logged in\n as another user caused an error\n- Remove support for Django versions below 1.11 and Python below 2.7 and 3.6\n\n\n1.6.0 (2017-06-14)\n------------------\n\n- Add support for Django 1.9, 1.10, 1.11 (Jared Proffitt #82)\n- Remove old conditional imports dating as far back as Django 1.5\n- Update readme\n\n\n1.5.0 (2016-03-26)\n------------------\n\n- Update various help_text fields to match Django 1.9 (Wenze van Klink #51, Gavin Wahl #64, Jared Proffitt #67, Ivan VenOsdel #69)\n- Documentation fixes (Yuki Izumi #52, Pi Delport #60, Germ\u00e1n Larra\u00edn #65)\n- Made case-insensitive tooling work with more than just USERNAME_FIELD='username' (Jared Proffitt, Rocky Meza #72, #73)\n\n\n1.4.0 (2015-11-02)\n------------------\n\n- Dropped Django 1.7 compatibility (Antoine Catton)\n- Add Django 1.8 compatibility (Antoine Catton, Gavin Wahl, #56)\n- **Backwards Incompatible:** Remove 1.6 URLs (Antoine Catton)\n- **Backwards Incompatible:** Remove view functions\n\n1.3.0 (unreleased)\n------------------\n\n- Added Django 1.7 compatibility (Antoine Catton, Rocky Meza, #35)\n- ``LoginView.disallow_authenticated`` was changed to ``LoginView.allow_authenticated``\n- ``LoginView.disallow_authenticated`` was deprecated.\n- **Backwards Incompatible:** ``LoginView.allow_authenticated`` is now ``True``\n by default (which is the default behavior in Django)\n- Create migrations for authtools.\n\n If updating from an older authtools, these migrations must be run on your apps::\n\n $ python manage.py migrate --fake authtools 0001_initial\n\n $ python manage.py migrate\n\n\n1.2.0 (2015-04-02)\n------------------\n\n- Add CaseInsensitiveEmailUserCreationForm for creating users with lowercased email address\n usernames (Bradley Gordon, #31, #11)\n- Add CaseInsensitiveEmailBackendMixin, CaseInsensitiveEmailModelBackend for authenticating\n case-insensitive email address usernames (Bradley Gordon, #31, #11)\n- Add tox support for test running (Piper Merriam, #25)\n\n\n1.1.0 (2015-02-24)\n------------------\n\n- PasswordChangeView now handles a ``next`` URL parameter (#24)\n\n1.0.0 (released August 16, 2014)\n--------------------------------\n\n- Add friendly_password_reset view and FriendlyPasswordResetForm (Antoine Catton, #18)\n- **Bugfix** Allow LOGIN_REDIRECT_URL to be unicode (Alan Johnson, Gavin Wahl, Rocky Meza, #13)\n- **Backwards Incompatible** Dropped support for Python 3.2\n\n0.2.2 (released July 21, 2014)\n------------------------------\n\n- Update safe urls in tests\n- Give the ability to restrain which users can reset their password\n- Add send_mail to AbstractEmailUser. (Jorge C. Leit\u00e3o)\n\n\n0.2.1\n-----\n\n- Bugfix: UserAdmin was expecting a User with a `name` field.\n\n0.2.0\n-----\n\n- Django 1.6 support.\n\n Django 1.6 `broke backwards compatibility\n `_\n of the ``password_reset_confirm`` view. Be sure to update any references to\n this URL. Rather than using a separate view for each encoding, authtools uses\n `a single view\n `_\n that works with both.\n\n- Bugfix: if LOGIN_URL was a URL name, it wasn't being reversed in the\n PasswordResetConfirmView.\n\n0.1.2 (released July 01, 2013)\n------------------------------\n\n- Use ``prefetch_related`` in the\n `UserChangeForm `_\n to avoid doing hundreds of ``ContentType`` queries. The form from\n Django has the same feature, it wasn't copied over correctly in our\n original form.\n\n0.1.1 (released May 30, 2013)\n-----------------------------\n\n* some bugfixes:\n\n- Call ``UserManager.normalize_email`` on an instance, not a class.\n- ``authtools.models.User`` should inherit its parent's ``Meta``.\n\n0.1.0 (released May 28, 2013)\n-----------------------------\n\n- django-authtools", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://django-authtools.readthedocs.org/", "keywords": "", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "django-authtools", "package_url": "https://pypi.org/project/django-authtools/", "platform": "", "project_url": "https://pypi.org/project/django-authtools/", "project_urls": { "Homepage": "https://django-authtools.readthedocs.org/" }, "release_url": "https://pypi.org/project/django-authtools/1.7.0/", "requires_dist": null, "requires_python": "", "summary": "Custom user model app for Django featuring email as username and class-based views for authentication.", "version": "1.7.0" }, "last_serial": 5452890, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "850f973cc26fb70e7651e15f4c80de3f", "sha256": "4263ffb461a382afd32e557fc2d20d5f49015d88cb53789ee02ab4197c8491f8" }, "downloads": -1, "filename": "django-authtools-0.1.0.tar.gz", "has_sig": false, "md5_digest": "850f973cc26fb70e7651e15f4c80de3f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25639, "upload_time": "2013-05-28T21:12:02", "url": "https://files.pythonhosted.org/packages/d6/33/247314a8da4dc4f48cf441af826e648cb53057e65cf82f52f221735ff4bf/django-authtools-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "d9a34317c844466a0c8ed003e51bbdfb", "sha256": "195f3b1b40da7033587a4ff9d2d7d1ce3519f429e94b7076cde85a6f6677c196" }, "downloads": -1, "filename": "django-authtools-0.1.1.tar.gz", "has_sig": false, "md5_digest": "d9a34317c844466a0c8ed003e51bbdfb", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25815, "upload_time": "2013-05-30T20:26:44", "url": "https://files.pythonhosted.org/packages/21/4b/587865beae71cae4511c0638b79600d04f204a632d1676541dea0f7dc10b/django-authtools-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "29be3e65b0ccba818fb7e5a71644c8c3", "sha256": "a8f5bd58fbc324b0b0515399a9190443cd10de17f850ddc7fce6c9361e1e89c4" }, "downloads": -1, "filename": "django-authtools-0.1.2.tar.gz", "has_sig": false, "md5_digest": "29be3e65b0ccba818fb7e5a71644c8c3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 25058, "upload_time": "2013-07-01T17:16:36", "url": "https://files.pythonhosted.org/packages/4f/5b/1eb0cbc75e03bf851a3e064883747ea1a63f950a943bcc5d79171d3a8eca/django-authtools-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "8498da18808981fa70b0d02e1946d600", "sha256": "88b870d2341390df9c88a7eee9820ae016487360481ddc65fa0ca18969eb7631" }, "downloads": -1, "filename": "django-authtools-0.2.0.tar.gz", "has_sig": false, "md5_digest": "8498da18808981fa70b0d02e1946d600", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29411, "upload_time": "2013-07-24T15:11:47", "url": "https://files.pythonhosted.org/packages/84/30/945b0536c44482b7fd5921b661c7bea4846e6b6b3730d70496ea08ea7f9f/django-authtools-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "e8cfae938f237d3c581d9f243b0b2cfa", "sha256": "eb29926e2074f68e3fc41d97b7d37567b9c09249423cef597f355e819620344b" }, "downloads": -1, "filename": "django-authtools-0.2.1.tar.gz", "has_sig": false, "md5_digest": "e8cfae938f237d3c581d9f243b0b2cfa", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31109, "upload_time": "2013-08-14T19:55:07", "url": "https://files.pythonhosted.org/packages/e8/8e/8f5e40d25703a458a634e08a6dfb16f508f77551587b2c3c0c6c16a173cb/django-authtools-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "5d6e4c255455f3c1493bceb52e10d044", "sha256": "4bc2ede57b4afcd782e99b530db2eadaa47fb63ffe51fcfc72e1c50e4a4bb541" }, "downloads": -1, "filename": "django-authtools-0.2.2.tar.gz", "has_sig": false, "md5_digest": "5d6e4c255455f3c1493bceb52e10d044", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30784, "upload_time": "2014-07-21T17:18:19", "url": "https://files.pythonhosted.org/packages/4e/0f/e108ffab50a6cc13af5827513fef8d9ed4b3c73ef6d3996aa7d42967d6c5/django-authtools-0.2.2.tar.gz" } ], "1.0.0": [ { "comment_text": "", "digests": { "md5": "964a5afe2e22892459663d57c804ddd9", "sha256": "cb9fd880d4de5b94323a50befbe6ff520a16cab8a30c765f4934daef8667ea9b" }, "downloads": -1, "filename": "django-authtools-1.0.0.tar.gz", "has_sig": false, "md5_digest": "964a5afe2e22892459663d57c804ddd9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 34755, "upload_time": "2014-08-16T20:11:11", "url": "https://files.pythonhosted.org/packages/e7/31/e10a1bb0a4551ce6315ad78a82fe5fd7144657a692047fe9161a5fb100d2/django-authtools-1.0.0.tar.gz" } ], "1.1.0": [ { "comment_text": "", "digests": { "md5": "487c7ffd83e6aebd3f63a08d9c85751a", "sha256": "816b77800fa2a4e399ff7aa5eaac919f5cd32900a33f4e46792046c68f7c05b1" }, "downloads": -1, "filename": "django-authtools-1.1.0.zip", "has_sig": false, "md5_digest": "487c7ffd83e6aebd3f63a08d9c85751a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 47742, "upload_time": "2015-02-24T20:31:15", "url": "https://files.pythonhosted.org/packages/1e/94/96d234aa9eead1f78b56b0a86a81d036ba3023ed85db5ba4e3ab7e806ed8/django-authtools-1.1.0.zip" } ], "1.2.0": [ { "comment_text": "", "digests": { "md5": "600540da6129a4a48f66e32c83d801bf", "sha256": "02a37e63a9c6ec42a36405a3860e8e19c5c2ea1faf5122a00adde9dd224944a5" }, "downloads": -1, "filename": "django-authtools-1.2.0.tar.gz", "has_sig": false, "md5_digest": "600540da6129a4a48f66e32c83d801bf", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 35134, "upload_time": "2015-04-02T16:55:47", "url": "https://files.pythonhosted.org/packages/22/fa/045d1d7a44eb7fecf583c23e2a4004b57b269ed18881302f700b1e8b4dd3/django-authtools-1.2.0.tar.gz" } ], "1.4.0": [ { "comment_text": "", "digests": { "md5": "57cd67ec45103ca94ab8f0ff8a3a85ff", "sha256": "49c072d75c08f3d2d28f164a037f5541db9da6f6884faf722a0de647038723e5" }, "downloads": -1, "filename": "django-authtools-1.4.0.tar.gz", "has_sig": false, "md5_digest": "57cd67ec45103ca94ab8f0ff8a3a85ff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 72492, "upload_time": "2015-11-02T18:27:01", "url": "https://files.pythonhosted.org/packages/d3/cd/3ef7aa1b214e4fadb31fb8164b08c94b19119ba60823371928ee5ff0fda1/django-authtools-1.4.0.tar.gz" } ], "1.5.0": [ { "comment_text": "", "digests": { "md5": "d51464316430301c5374b9eb2bfeeeff", "sha256": "47235dde49a697130c137e478d0c0c0ba7ff1bd3138d1cf53b6ab7d6a75b40fd" }, "downloads": -1, "filename": "django-authtools-1.5.0.tar.gz", "has_sig": false, "md5_digest": "d51464316430301c5374b9eb2bfeeeff", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 39688, "upload_time": "2016-03-26T15:42:23", "url": "https://files.pythonhosted.org/packages/0d/76/ec13c3e5c33265fc73e8d46fb31ef2c04144f444778655a69b540dc18d0c/django-authtools-1.5.0.tar.gz" } ], "1.6.0": [ { "comment_text": "", "digests": { "md5": "b9892e070c5ea0649dba1d88a279c2a2", "sha256": "9ced04f5b124625e6dfc2bb8e802b478d7707aa854f00a720c50fb2512bd33d5" }, "downloads": -1, "filename": "django-authtools-1.6.0.tar.gz", "has_sig": false, "md5_digest": "b9892e070c5ea0649dba1d88a279c2a2", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 43103, "upload_time": "2017-06-14T20:39:56", "url": "https://files.pythonhosted.org/packages/0f/ae/2a13ac543340777908da3823e1df751b1c07f89553ae28a16988935fb93b/django-authtools-1.6.0.tar.gz" } ], "1.7.0": [ { "comment_text": "", "digests": { "md5": "363402b4b9ae582194d86136987e741b", "sha256": "55180b23d7f7c40776a06f0ca8d612dd568d608ef0af256b0c5818eda1b5a261" }, "downloads": -1, "filename": "django-authtools-1.7.0.tar.gz", "has_sig": false, "md5_digest": "363402b4b9ae582194d86136987e741b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40676, "upload_time": "2019-06-26T17:36:52", "url": "https://files.pythonhosted.org/packages/2d/c4/485498d8767f58d1cc6ccaf25c8de2ac64d65aed6221a4cdcdf24c92382f/django-authtools-1.7.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "363402b4b9ae582194d86136987e741b", "sha256": "55180b23d7f7c40776a06f0ca8d612dd568d608ef0af256b0c5818eda1b5a261" }, "downloads": -1, "filename": "django-authtools-1.7.0.tar.gz", "has_sig": false, "md5_digest": "363402b4b9ae582194d86136987e741b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 40676, "upload_time": "2019-06-26T17:36:52", "url": "https://files.pythonhosted.org/packages/2d/c4/485498d8767f58d1cc6ccaf25c8de2ac64d65aed6221a4cdcdf24c92382f/django-authtools-1.7.0.tar.gz" } ] }