{ "info": { "author": "Dan Fairs", "author_email": "dan@fezconsulting.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Framework :: Django", "Framework :: Django :: 1.7", "Framework :: Django :: 1.8", "License :: OSI Approved :: BSD License", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.3", "Programming Language :: Python :: 3.4", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": ".. image:: https://api.travis-ci.org/danfairs/django-lazysignup.png\n\nIntroduction\n============\n\n``django-lazysignup-redux`` is a fork of ``django-lazysignup`` that supports\nDjango 1.7 and 1.8 until\nhttps://github.com/danfairs/django-lazysignup/pull/44 is merged and released.\n\n\n``django-lazysignup`` is a package designed to allow users to interact with a\nsite as if they were authenticated users, but without signing up. At any time,\nthey can convert their temporary user account to a real user account.\n\n`Read the full documentation`_.\n\n.. _Read the full documentation: http://django-lazysignup.readthedocs.org/\n\nTests\n=====\n\nTo run the tests, do the following::\n\npython manage.py test\n\n\nChangelog\n=========\n\n1.0.0\n-----\n* Add support for Django 1.7 migrations\n* Drop support for Django 1.6 and earlier\n* Add tests for custom user model\n\n0.12.2\n------\n\nFix another packaging error. Thanks to David Eyk (eykd) for the pull request.\n\n0.12.1\n------\n\nFix a packaging error. Thanks to Tamas Mako (tomako) for reporting it.\n\n0.12.0\n------\n\nAdd compatibility with Django 1.5 and Python 3.3. Note that this does not yet\nexplicitly support Django 1.5's new pluggable User models in any particular\nway.\n\nThanks to Brad Pitcher for this work.\n\n0.11.1\n------\n\nFix packaging and docs errors.\n\n0.11.0\n------\n\nThis is a feature release, that requires a data migration. Use the\nprovided South migration, or add a `created` date/time field to your `LazyUser`\nmodel manually. This field will be populated when a `LazyUser` instance is\ncreated, and is set to the current date/time.\n\nA `test-requirements.txt` file has been added to ease installation of test-only\ndependencies.\n\nA new-style DATABASES structure replaces the old DATABASE_* fields.\n\nVersions of Django earlier than 1.4 are no longer supported. Nothing has been\ndone to explicitly prevent 1.3.x working, but it will no longer be maintained.\n(Patches to restore support, if it breaks, are welcome.)\n\n0.10.3\n------\n\nFix packaging error.\n\n0.10.2\n------\n\nThis is a docs-only release. Docs have converted to Sphinx, for easier\nnavigation.\n\n0.10.1\n------\n\nThis is a bugfix release, which included some docs omitted from the 0.10.0\nrelease.\n\n0.10.0\n------\n\nThis is a feature release. Two new decorators have been added:\n`@require_lazy_user` and `@require_nonlazy_user`.\n\nThanks to Brad Beattie (bradbeattie) for the implementation and tests, and to\nAdam Coddington (latestrevision) for the original suggestion.\n\n\n0.9.0\n-----\n\nThis is a feature release. A custom signal is now fired when a user is\nconverted. Thanks to Olly Smith (oesmith) for the patch.\n\nVersions of Django earlier than 1.3 are now no longer supported. (Nothing has\nbeen done to prevent 1.2.x working, but I will no longer take care to make sure\nthat this remains the case.)\n\n\n0.8.0\n-----\n\nThis is a feature release. This contains all the features in the 0.8.0 beta\nseries, plus the ability to specify custom templates for the convert view,\nboth via a regular GET and via Ajax. Thanks to percyperez for the idea and\ninitial implementation.\n\nNote that this release is the last feature release that will support Django\n1.2 or earlier. 0.9.0 and later will require Django 1.3 or later.\n\n\n0.8.0b2\n-------\n\nThis release introduces the following backwards-incompatible changes:\n\n* A test project was added to make running the tests a little easier. The old\n way of running the tests has been removed.\n* The `urls.py` no longer hardcodes `convert` as the URL prefix (thanks\n to mitar)\n\n0.8.0b1\n-------\n\nThis is a bugfix and feature release. The internal API has changed to no\nlonger depend on session keys for username generation. This should be\nbackwards-compatible as long as you are using the documented API.\n\nThe following bugs have been fixed:\n\n* PEP8 cleanups\n* Tweak setup.py to make sure templates are installed (thanks Kurt Grandis)\n\nThe following features have been added:\n\n* Removed the hard dependency on session keys to generate usernames, as it was\n unnecessary.\n* remove_expired_users should no longer depend on using the database session\n backend - it will instead use SESSION_COOKIE_AGE to find lazy users\n who have not logged in recently and whose sessions will therefore have\n expired.\n\nYou should still not use remove_expired_users without reviewing the code;\nin particular, you may wish to subclass the command and override\n`to_delete()`.\n\nThese changes are somewhat experimental, so this is a beta release - it is\n*not* recommended that you run this in production. Testing and feedback is\nwelcome.\n\n0.7.0\n-----\n\nThis is a feature release. Custom user classes are now supported via the\n``LAZYSIGNUP_USER_MODEL`` setting. This is a backwards-compatible change.\n\nThanks to Luke Zapart for the idea and initial implementation.\n\n0.6.2\n-----\n\nThis is a bugfix release. Issues fixed:\n\n* The LazySignupBackend no longer relies on a specific User class to\n authenticate a user. It now uses the fact that there is a relationship\n between the LazyUser and the main site User class. This fixes the bug\n where authenticate() was looking directly for UNUSABLE_PASSWORD, and also\n paves the way for custom user classes.\n\n0.6.1\n-----\n\nThis is a bugfix release. Issues fixed:\n\n* https://github.com/danfairs/django-lazysignup/issues#issue/2 - Invalid user\n IDs in the session could cause an AttributeError from the auth backend.\n\nThanks to Alex Ehlke for the report and patch.\n\n0.6.0\n-----\n\nThis is a feature release:\n\n* Users created lazily but not currently logged-in are now correctly detected\n as lazy users. To facilitate this, a ``LazyUser`` model is included. Note\n that existing code using ``is_lazy_user`` only on authenticated users will\n continue to work, as the old method of checking the ``backend`` attribute\n of the ``User`` object has been retained - it's faster to do that than a\n potentially unnecessary database query.\n\n For those who use it, a South migration is provided to create the initial\n table. Data migration will be handled by South migrations from now on.\n\n* The canonical import location of ``is_lazy_user`` has changed from within\n ``lazysignup.templatetags.lazysignup_tags`` to ``lazysignup.utils``.\n Existing code that imports from the old location will continue to work.\n\n0.5.1\n-----\n\nBugfix release:\n\n- Fix an issue where a lazy user would be misidentified as a non-lazy user\n\n0.5.0\n-----\n\nThis version simplifies the implementation significantly by removing the requirement for\na middleware. This is a backwards-incompatible change as the ``lazysignup.middleware``\nmodule no longer exists, and needs to be removed from your ``MIDDLEWARE_CLASSES`` list.\n\nThis change means that you can no longer disable the software by removing the middleware\nclass from your configuration. You might want to do this temporarily in development, for\nexample, when testing that your views still work when an anonymous user is presented to\nthem (perhaps through the user agent blacklisting functionality).\n\nTo this end, support for a new settings has been added: ``ENABLE_LAZYSIGNUP``. It's set\nto True by default. Setting it to False will both prevent automatic login and\nautomatic user creation.\n\nThe ``allow_lazy_user`` decorator no longer has to be first in the decorator list. Thanks\nto Jauco Noordzij for pointing this out initially.\n\nThere is now also an ``is_lazy_user`` template filter, which will return True if the\ncurrent user is an automatically created user. It will return False for users who are\nanonymous, or were authenticated by some other means. Thanks again to Jauco Noordzij\nfor the idea for this feature.\n\nNote that the ``is_lazy_user`` filter (which you can also just import and use\ndirectly in your view code) is the preferred way of checking for an automatically\ncreated user. ``has_usable_password`` will continue to return False for such users,\nbut is no longer the canonical way to identify them. Users authenticated with\nother authentication backends (for example, LDAP backends) may return False when\n``has_usable_password`` is called.\n\n\n0.4.0\n-----\n\nThis version fixes a number of issues, adds new features and has backwards-\nincompatible changes:\n\n - Fix a RST issue in README\n - Fix an issue where a POST to the convert view would break if the user was anonymous.\n The convert view now redirects to the LOGIN_URL by default, parameterised in the view.\n\nNew features:\n\n - It is now easier to customise the process of converting a lazy user into a real user.\n Previous versions allowed a custom form to be passed to the ``convert`` view, but the\n code always expected a ``username`` and ``password1`` field to get credentials from to\n log the user in. Now, a new ``get_credentials()`` method is called on the form to obtain\n these credentials.\n - The tests module now includes a ``no_lazysignup`` decorator that you can apply to a\n method on your test case, which removes the lazy signup middleware for the duration\n of that test only. This is useful for testing what happens when a view that is\n marked with with the ``allow_lazy_user`` decorator ends up with an anonymous user\n (most commonly, when a search engine visits).\n\nBackwards-incompatible changes:\n\n - Generated usernames are now based on the session key, rather than actually being the\n session key. This is to avoid a potential security issue where an app might simply\n display a username, giving away a significant part of the user's session key. The\n username is now generated from a SHA1 hash of the session key. This change means that\n existing generated users will become invalid.\n\n0.3.0\n-----\n\nThis version introduces a backwards-incompatible changes, renaming the ``@allow_lazy``\ndecorator to ``@allow_lazy_user``. This is to avoid confusion with the decorator of\nthe same name in ``django.utils.functional``.\n\n0.2.0\n-----\n\nThis version fixes a number of issues:\n\n - Correct a duplicated test\n - Fix a bug where a new user would not be created if they already had a\n session key.\n\nIt also introduces a new feature, user agent blacklisting. This aims to\nprevent explosive growth in the number of users created by search engines,\netc. This feature is still in test, so patches and feedback welcome. Note that\nthis introduces a backwards-incompatibly behaviour. Prior to this release,\nit was safe to assume that all views marked with the ``@allow_lazy`` decorator\nwould receive an authenticated user. This is now no longer the case.\n\nSee the README.rst file for more information.\n\n0.1.2\n-----\n\n* Compatibility fixes for Django <1.2\n* The convert view is now itself lazy\n\n0.1.1\n-----\n\n* Fix some packaging errors\n\n0.1\n---\n\n* Initial release", "description_content_type": null, "docs_url": null, "download_url": "UNKNOWN", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/danfairs/django-lazysignup", "keywords": "django lazy signup app user", "license": "BSD", "maintainer": null, "maintainer_email": null, "name": "django-lazysignup-redux", "package_url": "https://pypi.org/project/django-lazysignup-redux/", "platform": "UNKNOWN", "project_url": "https://pypi.org/project/django-lazysignup-redux/", "project_urls": { "Download": "UNKNOWN", "Homepage": "http://github.com/danfairs/django-lazysignup" }, "release_url": "https://pypi.org/project/django-lazysignup-redux/1.0.0/", "requires_dist": null, "requires_python": null, "summary": "Lazy signup for Django", "version": "1.0.0" }, "last_serial": 1523336, "releases": { "1.0.0": [ { "comment_text": "", "digests": { "md5": "be7bbf60fc13d74c0ac0b0631e98c552", "sha256": "4fc7bb8a238366e0350faff9d3ec83ca1697bfb1fa2ccc77b402c9b656108a68" }, "downloads": -1, "filename": "django_lazysignup_redux-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "be7bbf60fc13d74c0ac0b0631e98c552", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 32045, "upload_time": "2015-04-27T18:55:53", "url": "https://files.pythonhosted.org/packages/20/ef/af9129e8c4a46bc5e009df25afac722d5d829b010e99695720aaab7fd934/django_lazysignup_redux-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "03705b3375dacac64f789884b6e2ffa5", "sha256": "afda96c52f4896add734618976a8a96bf8fd4b04bdb55a4be82131caeb297194" }, "downloads": -1, "filename": "django-lazysignup-redux-1.0.0.tar.gz", "has_sig": false, "md5_digest": "03705b3375dacac64f789884b6e2ffa5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24058, "upload_time": "2015-04-27T18:55:50", "url": "https://files.pythonhosted.org/packages/85/23/6f8bf231c26aa062b27cd2cd4505c8addcaeb55e8adf288f7a3a09b61e34/django-lazysignup-redux-1.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "be7bbf60fc13d74c0ac0b0631e98c552", "sha256": "4fc7bb8a238366e0350faff9d3ec83ca1697bfb1fa2ccc77b402c9b656108a68" }, "downloads": -1, "filename": "django_lazysignup_redux-1.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "be7bbf60fc13d74c0ac0b0631e98c552", "packagetype": "bdist_wheel", "python_version": "3.4", "requires_python": null, "size": 32045, "upload_time": "2015-04-27T18:55:53", "url": "https://files.pythonhosted.org/packages/20/ef/af9129e8c4a46bc5e009df25afac722d5d829b010e99695720aaab7fd934/django_lazysignup_redux-1.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "03705b3375dacac64f789884b6e2ffa5", "sha256": "afda96c52f4896add734618976a8a96bf8fd4b04bdb55a4be82131caeb297194" }, "downloads": -1, "filename": "django-lazysignup-redux-1.0.0.tar.gz", "has_sig": false, "md5_digest": "03705b3375dacac64f789884b6e2ffa5", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 24058, "upload_time": "2015-04-27T18:55:50", "url": "https://files.pythonhosted.org/packages/85/23/6f8bf231c26aa062b27cd2cd4505c8addcaeb55e8adf288f7a3a09b61e34/django-lazysignup-redux-1.0.0.tar.gz" } ] }