{ "info": { "author": "Nine More Minutes, Inc.", "author_email": "support@ninemoreminutes.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.11", "Framework :: Django :: 2.0", "Framework :: Django :: 2.1", "Framework :: Django :: 2.2", "Framework :: Django :: 3.0", "Framework :: Django :: 3.1", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: 3.8", "Programming Language :: Python :: 3.9", "Topic :: Internet :: WWW/HTTP", "Topic :: Software Development :: Libraries", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "|Build Status| |PyPI Version| |PyPI License| |Python Versions| |Django Versions| |Read the Docs|\n\nDjango-CRUM\n===========\n\nDjango-CRUM (Current Request User Middleware) captures the current request and\nuser in thread local storage.\n\nIt enables apps to check permissions, capture audit trails or otherwise access\nthe current request and user without requiring the request object to be passed\ndirectly. It also offers a context manager to allow for temporarily\nimpersonating another user.\n\nIt provides a signal to extend the built-in function for getting the current\nuser, which could be helpful when using custom authentication methods or user\nmodels.\n\nDocumentation can be found at `RTFD `_.\n\nIt is tested against:\n * Django 1.11 (Python 3.5 and 3.6)\n * Django 2.0 (Python 3.5, 3.6 and 3.7)\n * Django 2.1 (Python 3.5, 3.6 and 3.7)\n * Django 2.2 (Python 3.5, 3.6, 3.7, 3.8 and 3.9)\n * Django 3.0 (Python 3.6, 3.7, 3.8 and 3.9)\n * Django 3.1 (Python 3.6, 3.7, 3.8 and 3.9)\n * Django master/3.2 (Python 3.6, 3.7, 3.8 and 3.9)\n\n.. |Build Status| image:: https://img.shields.io/github/workflow/status/ninemoreminutes/django-crum/test\n :target: https://github.com/ninemoreminutes/django-crum/actions?query=workflow%3Atest\n.. |PyPI Version| image:: https://img.shields.io/pypi/v/django-crum.svg\n :target: https://pypi.python.org/pypi/django-crum/\n.. |PyPI License| image:: https://img.shields.io/pypi/l/django-crum.svg\n :target: https://pypi.python.org/pypi/django-crum/\n.. |Python Versions| image:: https://img.shields.io/pypi/pyversions/django-crum.svg\n :target: https://pypi.python.org/pypi/django-crum/\n.. |Django Versions| image:: https://img.shields.io/pypi/djversions/django-crum.svg\n :target: https://pypi.org/project/django-crum/\n.. |Read the Docs| image:: https://img.shields.io/readthedocs/django-crum.svg\n :target: http://django-crum.readthedocs.io/\n\n\n", "description_content_type": "text/x-rst", "docs_url": "https://pythonhosted.org/django-crum/", "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ninemoreminutes/django-crum/", "keywords": "django,request,user,middleware,thread,local", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "django-crum", "package_url": "https://pypi.org/project/django-crum/", "platform": "", "project_url": "https://pypi.org/project/django-crum/", "project_urls": { "Documentation": "https://django-crum.rtfd.org/", "Homepage": "https://github.com/ninemoreminutes/django-crum/", "Source": "https://github.com/ninemoreminutes/django-crum/", "Tracker": "https://github.com/ninemoreminutes/django-crum/issues" }, "release_url": "https://pypi.org/project/django-crum/0.7.9/", "requires_dist": [ "django (>=1.8)" ], "requires_python": "", "summary": "Django middleware to capture current request and user.", "version": "0.7.9", "yanked": false, "yanked_reason": null }, "last_serial": 8625578, "releases": { "0.5": [ { "comment_text": "", "digests": { "md5": "8143ed752b0031a8ba21369853f9a8f8", "sha256": "3d33635452ac3316cfe07eec870434600defff1ab45c8a87b0fbb228f23e4475" }, "downloads": -1, "filename": "django-crum-0.5.tar.gz", "has_sig": false, "md5_digest": "8143ed752b0031a8ba21369853f9a8f8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3285, "upload_time": "2013-07-06T06:19:21", "upload_time_iso_8601": "2013-07-06T06:19:21.559467Z", "url": "https://files.pythonhosted.org/packages/7c/50/f2f3924387e6a6a1324bafa7e5fb9ee5885584a6aa0d9eb3fefb3df65eb3/django-crum-0.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.5.1": [ { "comment_text": "", "digests": { "md5": "8b744e25d9d47640da8dd1f9ad239c7d", "sha256": "2353a8efde0539c543b41365f50415cd8859b604ac806b67fd36481353f30ee4" }, "downloads": -1, "filename": "django-crum-0.5.1.tar.gz", "has_sig": false, "md5_digest": "8b744e25d9d47640da8dd1f9ad239c7d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 3429, "upload_time": "2013-10-30T20:58:24", "upload_time_iso_8601": "2013-10-30T20:58:24.598461Z", "url": "https://files.pythonhosted.org/packages/ed/d0/49e240806f6fb70003506318cffd02fa82daf629fa4838d57e339d952d3e/django-crum-0.5.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.0": [ { "comment_text": "", "digests": { "md5": "5879312f7f4aedaf39fb50ef77f9071f", "sha256": "a227bc34c2a471df5fe6eb258daa0b7fe097b721ffc689f4f3cedda1e24bfc8d" }, "downloads": -1, "filename": "django-crum-0.6.0.tar.gz", "has_sig": false, "md5_digest": "5879312f7f4aedaf39fb50ef77f9071f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4191, "upload_time": "2013-11-22T23:54:17", "upload_time_iso_8601": "2013-11-22T23:54:17.389908Z", "url": "https://files.pythonhosted.org/packages/db/60/b2c6ea85a304188ab5a7cc739e6c92fd73b7c7a4e743cba5a6d3c53e071d/django-crum-0.6.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.6.1": [ { "comment_text": "", "digests": { "md5": "85a7abd0f35638dbace03afae5a2081c", "sha256": "3b811d6e8e3528c0ca1aacbc92075cb4ae7362bd89bf0976261be486710b3056" }, "downloads": -1, "filename": "django-crum-0.6.1.tar.gz", "has_sig": false, "md5_digest": "85a7abd0f35638dbace03afae5a2081c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4187, "upload_time": "2014-01-20T05:43:40", "upload_time_iso_8601": "2014-01-20T05:43:40.804362Z", "url": "https://files.pythonhosted.org/packages/24/e4/d5c19f166a19375fae5417378f05c29cf825a8408515b01bf7b70078d05c/django-crum-0.6.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.0": [ { "comment_text": "", "digests": { "md5": "f8a14586bad5d4647e1c9e5e10aecf7a", "sha256": "b30be5ca45eb613848655dc0df25f13ea567d57be29156dca08849da83f76a7a" }, "downloads": -1, "filename": "django-crum-0.7.0.tar.gz", "has_sig": false, "md5_digest": "f8a14586bad5d4647e1c9e5e10aecf7a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5989, "upload_time": "2016-06-11T17:50:38", "upload_time_iso_8601": "2016-06-11T17:50:38.931452Z", "url": "https://files.pythonhosted.org/packages/9c/7b/dc6104a0153fb5f70fec277f604325120b4a9586d6d946f8fa8ca3927625/django-crum-0.7.0.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.1": [ { "comment_text": "", "digests": { "md5": "cf261aac9ed6cc829dc6c29bd711fc07", "sha256": "ab5541e9b926492829575c607174f470cc2e1b05fd402dcee6ef4fff9e01295a" }, "downloads": -1, "filename": "django-crum-0.7.1.tar.gz", "has_sig": false, "md5_digest": "cf261aac9ed6cc829dc6c29bd711fc07", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4447, "upload_time": "2016-06-11T18:20:53", "upload_time_iso_8601": "2016-06-11T18:20:53.915202Z", "url": "https://files.pythonhosted.org/packages/d9/dc/8bbb74a5af2461a178b83c0cc09532cb27436b0fbcb68ec727a7cf7e21dc/django-crum-0.7.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.2": [ { "comment_text": "", "digests": { "md5": "92cb15d098f45ad93a4d8c9782d5077c", "sha256": "d311b9fa2235fc8b1b1de2cf217b3d1a73b815617ae2833da8fd9cb8b5f6c792" }, "downloads": -1, "filename": "django-crum-0.7.2.tar.gz", "has_sig": false, "md5_digest": "92cb15d098f45ad93a4d8c9782d5077c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4656, "upload_time": "2017-05-19T21:28:26", "upload_time_iso_8601": "2017-05-19T21:28:26.956215Z", "url": "https://files.pythonhosted.org/packages/bb/f2/c624a09467ea1ab247c16092182fadfce05a1e103e902df5b366d6c02137/django-crum-0.7.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.3": [ { "comment_text": "", "digests": { "md5": "572b0debbf9eecb2b8072ee94263e25e", "sha256": "faa6b66333ae192aae0ac38006d2b9232ecac4c18d2ebe8c2b4da53ca95cdc51" }, "downloads": -1, "filename": "django_crum-0.7.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "572b0debbf9eecb2b8072ee94263e25e", "packagetype": "bdist_wheel", "python_version": "3.6", "requires_python": null, "size": 3693, "upload_time": "2018-08-11T19:22:58", "upload_time_iso_8601": "2018-08-11T19:22:58.476625Z", "url": "https://files.pythonhosted.org/packages/95/b9/192305144fc3471cc65999983444d5fdd331617bfcb0068f4d3c1f357ab8/django_crum-0.7.3-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "c4f662043e17ee609a8e55c58eca8e6b", "sha256": "f3a7149a7a4f53d889c9d264c8ebe5d4d647254ad82a99981d1f7d5696c6e0d8" }, "downloads": -1, "filename": "django-crum-0.7.3.tar.gz", "has_sig": false, "md5_digest": "c4f662043e17ee609a8e55c58eca8e6b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4860, "upload_time": "2018-08-11T19:22:56", "upload_time_iso_8601": "2018-08-11T19:22:56.546093Z", "url": "https://files.pythonhosted.org/packages/fd/9b/43f3361db54a19d0c9e3954ee262237bb391c903da32096af7bf38347dce/django-crum-0.7.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.4": [ { "comment_text": "", "digests": { "md5": "aef2767ef93f57e5ec95e9950603c876", "sha256": "ed58b8bfb9bbe9ae45790d526757fc2484b70db085b7dc21d795457de8affa54" }, "downloads": -1, "filename": "django_crum-0.7.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "aef2767ef93f57e5ec95e9950603c876", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3710, "upload_time": "2019-10-22T00:07:59", "upload_time_iso_8601": "2019-10-22T00:07:59.470693Z", "url": "https://files.pythonhosted.org/packages/c1/ad/6122ff0e581f8809685683f1475e15829c17abb000ceeca1dc6fa57c3816/django_crum-0.7.4-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "22e2c60815586a60cccf8d5aae8b3e91", "sha256": "e81c4ce86dcab3a902ba568dc20bccc18a01c2e1bd71598407622a9289f5c82d" }, "downloads": -1, "filename": "django-crum-0.7.4.tar.gz", "has_sig": false, "md5_digest": "22e2c60815586a60cccf8d5aae8b3e91", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 4896, "upload_time": "2019-10-22T00:08:01", "upload_time_iso_8601": "2019-10-22T00:08:01.839300Z", "url": "https://files.pythonhosted.org/packages/40/2c/0c0d45764c022d0f34bf44b5e8a6586c800f12cb98642f191df2e4ced295/django-crum-0.7.4.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.5": [ { "comment_text": "", "digests": { "md5": "809134f271e6089b75e07a72c2354ebe", "sha256": "49d835537b712f8dbb18fc5d7e448556e5bb0f3a154f53ac515632485045be5a" }, "downloads": -1, "filename": "django_crum-0.7.5-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "809134f271e6089b75e07a72c2354ebe", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 3747, "upload_time": "2019-12-06T18:00:58", "upload_time_iso_8601": "2019-12-06T18:00:58.231702Z", "url": "https://files.pythonhosted.org/packages/62/17/e435f3fbfbe358bcb5026b4ab72a10699097051f4da01c962605d1556530/django_crum-0.7.5-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "27801b23cbbb9d0a7bcf41b0b0764209", "sha256": "a60e55d95ec5d743971567d84879428ceefbe45ba7721d15989e78f09b2a27f4" }, "downloads": -1, "filename": "django-crum-0.7.5.tar.gz", "has_sig": false, "md5_digest": "27801b23cbbb9d0a7bcf41b0b0764209", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5189, "upload_time": "2019-12-06T18:00:59", "upload_time_iso_8601": "2019-12-06T18:00:59.654551Z", "url": "https://files.pythonhosted.org/packages/17/ff/694a0283294ec74b1d4dbf725b6d11417c7bc1b5ea73e86a82a26d342099/django-crum-0.7.5.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.6": [ { "comment_text": "", "digests": { "md5": "13213e8ecd82c5e19f0fb607c5d59e76", "sha256": "b269084f979f02155eb769725a3b45d213d0dbb93401ca2f31993a012e7a6717" }, "downloads": -1, "filename": "django_crum-0.7.6-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "13213e8ecd82c5e19f0fb607c5d59e76", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4724, "upload_time": "2020-04-27T19:30:39", "upload_time_iso_8601": "2020-04-27T19:30:39.792389Z", "url": "https://files.pythonhosted.org/packages/56/76/98544d7d1b8a07080204392e4466deb35ba14acaca48607b381e16839e71/django_crum-0.7.6-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "45315f75f36f47a5f3dfde0c3c0192e6", "sha256": "d4ed6879901429b2ee9c27a2b584aded038aa69f1fb2a6f0fd0020e2570c40eb" }, "downloads": -1, "filename": "django-crum-0.7.6.tar.gz", "has_sig": false, "md5_digest": "45315f75f36f47a5f3dfde0c3c0192e6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5191, "upload_time": "2020-04-27T19:30:40", "upload_time_iso_8601": "2020-04-27T19:30:40.957096Z", "url": "https://files.pythonhosted.org/packages/fc/b7/1aeb11988b0937ac5a16511463e52c8af9d7a8e1a1855d33df7fd0981c28/django-crum-0.7.6.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.7": [ { "comment_text": "", "digests": { "md5": "8b46bd7b82cbe52ce852aba5478db45d", "sha256": "fa009f67f9e2ae9bcea0a2c43b0ce951965a2e3ddf7c0a32bcf9e60d05c3a19c" }, "downloads": -1, "filename": "django_crum-0.7.7-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "8b46bd7b82cbe52ce852aba5478db45d", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4687, "upload_time": "2020-08-05T14:08:39", "upload_time_iso_8601": "2020-08-05T14:08:39.534157Z", "url": "https://files.pythonhosted.org/packages/af/38/5a9105569cb39409931fa39bad0cc4a7afdba794d2ac065bfa2b657e85e5/django_crum-0.7.7-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "3de660116ba26e506fbd9bd2630b6686", "sha256": "6545e3e73c9d5aa844cdfd7b50c44788953a1e02bacda283a379c1db5e863679" }, "downloads": -1, "filename": "django-crum-0.7.7.tar.gz", "has_sig": false, "md5_digest": "3de660116ba26e506fbd9bd2630b6686", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5397, "upload_time": "2020-08-05T14:08:40", "upload_time_iso_8601": "2020-08-05T14:08:40.746019Z", "url": "https://files.pythonhosted.org/packages/3d/99/74f26e622e35ef7549c3072ff9012305c61300818d6e21061c7455dfa481/django-crum-0.7.7.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.8": [ { "comment_text": "", "digests": { "md5": "b49824636788e670a5561a910259d74b", "sha256": "4dc7d75eba140343fb677fc5749dacbfc78c220c57c96a2193971c1b92d593a2" }, "downloads": -1, "filename": "django_crum-0.7.8-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b49824636788e670a5561a910259d74b", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4695, "upload_time": "2020-11-03T20:05:45", "upload_time_iso_8601": "2020-11-03T20:05:45.879021Z", "url": "https://files.pythonhosted.org/packages/9e/87/64e83821ab1f8cf5add459ce09f156d171aeaa7a08005a5f80709cafc62f/django_crum-0.7.8-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "aad546af5c660beef9e0c6998d606733", "sha256": "490bdee58a51883e3f20c166c432c4014f21525980528c593720f4a5f21725c4" }, "downloads": -1, "filename": "django-crum-0.7.8.tar.gz", "has_sig": false, "md5_digest": "aad546af5c660beef9e0c6998d606733", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5139, "upload_time": "2020-11-03T20:05:47", "upload_time_iso_8601": "2020-11-03T20:05:47.137347Z", "url": "https://files.pythonhosted.org/packages/9d/2a/acdf09f2110d48cde6892b2490fa42ea7ac893488e52004956177a7db70b/django-crum-0.7.8.tar.gz", "yanked": false, "yanked_reason": null } ], "0.7.9": [ { "comment_text": "", "digests": { "md5": "365784792117f1150dcfd4644587945e", "sha256": "037cc8b822975bb1d41cd24269b59a512cc77448fadc3f34ab9a17b229b4b471" }, "downloads": -1, "filename": "django_crum-0.7.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "365784792117f1150dcfd4644587945e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4714, "upload_time": "2020-11-10T17:15:33", "upload_time_iso_8601": "2020-11-10T17:15:33.781530Z", "url": "https://files.pythonhosted.org/packages/cd/f9/8fad70a3bd011a6be7c5c6067278f006a25341eb39d901fbda307e26804c/django_crum-0.7.9-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "1a4e40aa27039fa2721ff88b8d53ab29", "sha256": "65e9bc0f070a663fafc4d9e357f45fd4e6f01838b20a9e2fb7670f5706754288" }, "downloads": -1, "filename": "django-crum-0.7.9.tar.gz", "has_sig": false, "md5_digest": "1a4e40aa27039fa2721ff88b8d53ab29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5168, "upload_time": "2020-11-10T17:15:35", "upload_time_iso_8601": "2020-11-10T17:15:35.124283Z", "url": "https://files.pythonhosted.org/packages/34/1d/c56588f67130aeef8828e47535e8551337d2ae02f91f1414da61bc5e49fb/django-crum-0.7.9.tar.gz", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "365784792117f1150dcfd4644587945e", "sha256": "037cc8b822975bb1d41cd24269b59a512cc77448fadc3f34ab9a17b229b4b471" }, "downloads": -1, "filename": "django_crum-0.7.9-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "365784792117f1150dcfd4644587945e", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 4714, "upload_time": "2020-11-10T17:15:33", "upload_time_iso_8601": "2020-11-10T17:15:33.781530Z", "url": "https://files.pythonhosted.org/packages/cd/f9/8fad70a3bd011a6be7c5c6067278f006a25341eb39d901fbda307e26804c/django_crum-0.7.9-py2.py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "1a4e40aa27039fa2721ff88b8d53ab29", "sha256": "65e9bc0f070a663fafc4d9e357f45fd4e6f01838b20a9e2fb7670f5706754288" }, "downloads": -1, "filename": "django-crum-0.7.9.tar.gz", "has_sig": false, "md5_digest": "1a4e40aa27039fa2721ff88b8d53ab29", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5168, "upload_time": "2020-11-10T17:15:35", "upload_time_iso_8601": "2020-11-10T17:15:35.124283Z", "url": "https://files.pythonhosted.org/packages/34/1d/c56588f67130aeef8828e47535e8551337d2ae02f91f1414da61bc5e49fb/django-crum-0.7.9.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }