{ "info": { "author": "Paolo Romolini", "author_email": "p.romolini@nephila.it", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Framework :: Django", "Framework :: Django :: 1.11", "Framework :: Django :: 2.1", "Framework :: Django :: 2.2", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Natural Language :: English", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "=============================\ndjangocms-redirect\n=============================\n\n.. image:: https://img.shields.io/pypi/v/djangocms-redirect.svg?style=flat-square\n :target: https://pypi.python.org/pypi/djangocms-redirect\n :alt: Latest PyPI version\n\n.. image:: https://img.shields.io/pypi/dm/djangocms-redirect.svg?style=flat-square\n :target: https://pypi.python.org/pypi/djangocms-redirect\n :alt: Monthly downloads\n\n.. image:: https://img.shields.io/pypi/pyversions/djangocms-redirect.svg?style=flat-square\n :target: https://pypi.python.org/pypi/djangocms-redirect\n :alt: Python versions\n\n.. image:: https://img.shields.io/travis/nephila/djangocms-redirect.svg?style=flat-square\n :target: https://travis-ci.org/nephila/djangocms-redirect\n :alt: Latest Travis CI build status\n\n.. image:: https://img.shields.io/coveralls/nephila/djangocms-redirect/master.svg?style=flat-square\n :target: https://coveralls.io/r/nephila/djangocms-redirect?branch=master\n :alt: Test coverage\n\n.. image:: https://img.shields.io/codecov/c/github/nephila/djangocms-redirect/develop.svg?style=flat-square\n :target: https://codecov.io/github/nephila/djangocms-redirect\n :alt: Test coverage\n\n.. image:: https://codeclimate.com/github/nephila/djangocms-redirect/badges/gpa.svg?style=flat-square\n :target: https://codeclimate.com/github/nephila/djangocms-redirect\n :alt: Code Climate\n\n\nA django CMS enabled application to handle redirects\n\nThis is heavily borrowed from ``django.contrib.redirects`` with three major changes:\n\n* Selection of django CMS pages\n* Selection of redirect status code\n* Middleware can processed in the request or response phase\n\nWhy using process_request?\n--------------------------\n\nDoing database queries in the middleware ``process_request`` is heavily discouraged as it's a\nperformance hit, especially when doing redirects which are just a tiny part of the\nprocessed requests.\nExcept that sometimes it's just what you need (for example to \"hide\" content without deleting\n/ unpublishing it)\nBy caching both existing and non existing redirects for a given URL the performance hit is\nminimized for the use cases that requires ``process_request``.\n\nDocumentation\n-------------\n\nThe full documentation is at https://djangocms-redirect.readthedocs.io.\n\nInstallation\n------------\n\nSee https://djangocms-redirect.readthedocs.io/en/latest/installation.html\n\nFeatures\n--------\n\n* Set old and new path, by selection existing django CMS pages or writing down the complete address\n* Select the redirect status code (301, 302)\n* Support for status code 410\n\nRunning Tests\n-------------\n\nDoes the code actually work?\n\n::\n\n source /bin/activate\n (myenv) $ pip install -r requirements-test.txt\n (myenv) $ python setup.py test\n\nCredits\n---------\n\nTools used in rendering this package:\n\n* Cookiecutter_\n* `cookiecutter-djangopackage-helper`_\n\n.. _Cookiecutter: https://github.com/audreyr/cookiecutter\n.. _`cookiecutter-djangopackage-helper`: https://github.com/nephila/cookiecutter-djangopackage-helper\n\n\n\n\nHistory\n-------\n\n0.4.0 (2019-08-22)\n++++++++++++++++++\n\n* Add compatibility with Django 2.2\n* Drop compatibility with Django < 1.11\n* Drop compatibility with django CMS < 3.6\n* Move to django-app-helper\n* Add subpath matching\n\n0.3.1 (2019-07-13)\n++++++++++++++++++\n\n* Ignore querystring when matching redirect objects\n\n0.3.0 (2019-03-11)\n++++++++++++++++++\n\n* Added compatibility to Django 2.0, 2.1\n\n0.2.2 (2019-06-02)\n++++++++++++++++++\n\n* Ignore querystring when matching redirect objects\n\n0.2.1 (2019-04-22)\n++++++++++++++++++\n\n* Fixed compatibility issue with Django 1.8\n\n0.2.0 (2018-11-03)\n++++++++++++++++++\n\n* Updated for Django 1.11\n* Added configurable cache timeout\n* Added configuration option to check redirect on 404 only\n\n0.1.1 (2017-11-19)\n++++++++++++++++++\n\n* Added missing migration.\n* Fixed compatibility issue with Django 1.8\n\n0.1.0 (2016-02-01)\n++++++++++++++++++\n\n* First release on PyPI.\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/nephila/djangocms-redirect", "keywords": "djangocms-redirect", "license": "BSD", "maintainer": "Nephila", "maintainer_email": "web@nephila.it", "name": "djangocms-redirect", "package_url": "https://pypi.org/project/djangocms-redirect/", "platform": "", "project_url": "https://pypi.org/project/djangocms-redirect/", "project_urls": { "Homepage": "https://github.com/nephila/djangocms-redirect" }, "release_url": "https://pypi.org/project/djangocms-redirect/0.4.0/", "requires_dist": [ "django-cms" ], "requires_python": "", "summary": "A django CMS enabled application to handle redirects", "version": "0.4.0" }, "last_serial": 5714821, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "66671bf1942b5fe5c9c1abf439669a0d", "sha256": "b2fbe5e36de0ebd8c1e5897fbf45df384e6b6e28c9ff22003d5fd07def10f180" }, "downloads": -1, "filename": "djangocms_redirect-0.1.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "66671bf1942b5fe5c9c1abf439669a0d", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9564, "upload_time": "2016-03-29T21:44:29", "url": "https://files.pythonhosted.org/packages/f2/63/83e9601b8d9730e522ceeb5ac853060bde32f5debfe9d97be5b2d7354b80/djangocms_redirect-0.1.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "e6f028ff5c7d5e6ce1c617d7a17a8a1d", "sha256": "ddf6dc58bac835dd1edbf9702f93041e63cdfcf61e68e0682ae27dd186463894" }, "downloads": -1, "filename": "djangocms-redirect-0.1.0.tar.gz", "has_sig": false, "md5_digest": "e6f028ff5c7d5e6ce1c617d7a17a8a1d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8026, "upload_time": "2016-03-29T21:44:20", "url": "https://files.pythonhosted.org/packages/35/9c/ccfd6ce6fa02d643a85ee9bcccc5e3d16b1c1171eee016809fbd16928ff7/djangocms-redirect-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "382e3391c4a4a26e64652c8e65e1db93", "sha256": "729b2d6069532f04fdc1c019f314c0bf96dbe10592185928054a93f874bd973b" }, "downloads": -1, "filename": "djangocms_redirect-0.1.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "382e3391c4a4a26e64652c8e65e1db93", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 10478, "upload_time": "2017-11-19T10:20:54", "url": "https://files.pythonhosted.org/packages/56/75/5ae5a2d9182c37c803492d0104be5dc8e9537ec12c0d2cf4c531bbe18c15/djangocms_redirect-0.1.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "8b891f804836e86045767e8a67a96961", "sha256": "f232fb2e31431601136f6a4c8be7eba274f2b032bccbe952556617c9b672f076" }, "downloads": -1, "filename": "djangocms-redirect-0.1.1.tar.gz", "has_sig": false, "md5_digest": "8b891f804836e86045767e8a67a96961", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8387, "upload_time": "2017-11-19T10:20:51", "url": "https://files.pythonhosted.org/packages/1f/11/9daa18d59105a684d526b417760557416121887ef86f8c788b56e87d0385/djangocms-redirect-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "c74340c13e79540ff6bb63fe2583f2d1", "sha256": "f868fcb06e51e29b153e7623c7ba3d2f84fd0e401958de94d0b8cbdeb35d053f" }, "downloads": -1, "filename": "djangocms_redirect-0.1.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c74340c13e79540ff6bb63fe2583f2d1", "packagetype": "bdist_wheel", "python_version": "3.7", "requires_python": null, "size": 8416, "upload_time": "2019-06-02T21:26:51", "url": "https://files.pythonhosted.org/packages/bc/eb/08622778a18493d728dc8eec1a0499140a1485d6e9249df1a8f5384c1554/djangocms_redirect-0.1.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "41a33014cb780943e5d545a795f0486d", "sha256": "86276d947234ca07a089f2b0fa94c5b12a6ff89e614908d0a71f0cf2d10023bd" }, "downloads": -1, "filename": "djangocms-redirect-0.1.2.tar.gz", "has_sig": false, "md5_digest": "41a33014cb780943e5d545a795f0486d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8515, "upload_time": "2019-06-02T21:26:49", "url": "https://files.pythonhosted.org/packages/35/2a/bb428a24f5296c87ff71f305f40d08534e49c7930dde86d43eab3ed58191/djangocms-redirect-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "785e8f7e4bc2fc2fe2312a413721245e", "sha256": "7db6fc1404fe9ca2abe156c2d34969e14fc1604ad62fa2f9959d5548a89ade4b" }, "downloads": -1, "filename": "djangocms_redirect-0.2.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "785e8f7e4bc2fc2fe2312a413721245e", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 10731, "upload_time": "2018-11-03T15:03:30", "url": "https://files.pythonhosted.org/packages/f0/40/2e067742b81229030ed0adb22e82cecaee7da3d4aa4464933a9af0e4fb09/djangocms_redirect-0.2.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6ea19f44d11222f36781d2d757bf8056", "sha256": "5adeca34aba9e2305cb8576018f3993387b5602752b9fe59f0912deec7b85a72" }, "downloads": -1, "filename": "djangocms-redirect-0.2.0.tar.gz", "has_sig": false, "md5_digest": "6ea19f44d11222f36781d2d757bf8056", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8564, "upload_time": "2018-11-03T15:03:28", "url": "https://files.pythonhosted.org/packages/5b/87/0df19da55fea6603e81b3006254bcfcb0ffe022c73b36c7ad8fe461488f1/djangocms-redirect-0.2.0.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "b21f1a57113ba97ba02009102a91956d", "sha256": "8c486c22ccb7180cd1360f5b66aa0db9bcc5d0e30f2078ffb3c780109b0f37f7" }, "downloads": -1, "filename": "djangocms_redirect-0.2.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "b21f1a57113ba97ba02009102a91956d", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 8547, "upload_time": "2019-04-22T11:49:28", "url": "https://files.pythonhosted.org/packages/ab/90/4a8863891a3940da2a330c33006da6ebcb1446f84db0a9b71684f061cf91/djangocms_redirect-0.2.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "fcc2bf8cb0be345fb7b40839ae38c639", "sha256": "a90659e0b021a0d6b12ffb35272522c941c9da06ce5f1d5a2f4766bb4e8379e6" }, "downloads": -1, "filename": "djangocms-redirect-0.2.1.tar.gz", "has_sig": false, "md5_digest": "fcc2bf8cb0be345fb7b40839ae38c639", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8598, "upload_time": "2019-04-22T11:49:26", "url": "https://files.pythonhosted.org/packages/27/12/239ba649d293545070fcd81e9d2b92e7f02c459fedd57db57a7ca9516248/djangocms-redirect-0.2.1.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "03ee68374b5be49ae75af22f9113d709", "sha256": "472bb3905453852b7f995bbc147f8a106eceb041ee98bbce080e7d66d3d240fd" }, "downloads": -1, "filename": "djangocms_redirect-0.2.2-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "03ee68374b5be49ae75af22f9113d709", "packagetype": "bdist_wheel", "python_version": "3.7", "requires_python": null, "size": 8635, "upload_time": "2019-06-02T21:27:05", "url": "https://files.pythonhosted.org/packages/74/07/1a287e8394465360078fe3d6900c9ef92c531aaac451daac10d47caea8a3/djangocms_redirect-0.2.2-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "5a8d972667c026d93790150056965af6", "sha256": "b2c3a0d84b71d84ac7c41cc62f32bac7bf44a9deb7e27fe55c511d9dab9a9bb0" }, "downloads": -1, "filename": "djangocms-redirect-0.2.2.tar.gz", "has_sig": false, "md5_digest": "5a8d972667c026d93790150056965af6", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8738, "upload_time": "2019-06-02T21:27:03", "url": "https://files.pythonhosted.org/packages/61/9d/08d3f529e0fbdf69782ce9bf14741b30b23d9352023ee120c8897ef53612/djangocms-redirect-0.2.2.tar.gz" } ], "0.3.0": [ { "comment_text": "", "digests": { "md5": "1d0f7c853c4135f698483c47bd002d1f", "sha256": "1f8618fc41cf6389b5aa83f0235c09ab37caee9d07a2272554d5ce85d7a2e127" }, "downloads": -1, "filename": "djangocms_redirect-0.3.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "1d0f7c853c4135f698483c47bd002d1f", "packagetype": "bdist_wheel", "python_version": "2.7", "requires_python": null, "size": 9024, "upload_time": "2019-03-11T19:35:02", "url": "https://files.pythonhosted.org/packages/bf/0d/983a0eaba06602a15066df54eccfcbb1e0c378741cefccb17af727172103/djangocms_redirect-0.3.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d146152abdf4bc3775aec3b622ff90ce", "sha256": "2b0c4ab994f65c1f04811d43665f1106702b68616f52921f40e4c2a7e45f2849" }, "downloads": -1, "filename": "djangocms-redirect-0.3.0.tar.gz", "has_sig": false, "md5_digest": "d146152abdf4bc3775aec3b622ff90ce", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 8946, "upload_time": "2019-03-11T19:35:00", "url": "https://files.pythonhosted.org/packages/3d/e8/a25ef07c6acf738c9d302830d982eebe05ab866cd31f5884c4fcd3dfe8f4/djangocms-redirect-0.3.0.tar.gz" } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "33eec795504c15ac8bf424a48e6c8587", "sha256": "0b1d98d1eec3bce86c5e20e9a2b5c3cdfdc837563eff99256a584627a9a16107" }, "downloads": -1, "filename": "djangocms_redirect-0.3.1-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "33eec795504c15ac8bf424a48e6c8587", "packagetype": "bdist_wheel", "python_version": "3.7", "requires_python": null, "size": 9100, "upload_time": "2019-07-13T11:07:23", "url": "https://files.pythonhosted.org/packages/f2/06/83251692e4f171b90638ad0296c2ab1daffbb436e31f5bfcdc090819f700/djangocms_redirect-0.3.1-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6e7d8f69240757df0b5e816591380e1e", "sha256": "4063b5bea75135573a1b48fae82464fe455523fc6b7e80ae161b85d68c2b6374" }, "downloads": -1, "filename": "djangocms-redirect-0.3.1.tar.gz", "has_sig": false, "md5_digest": "6e7d8f69240757df0b5e816591380e1e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9085, "upload_time": "2019-07-13T11:07:21", "url": "https://files.pythonhosted.org/packages/c3/e7/a28f1bd1a9884f9b179d60a9e777d2bc23903f624bfb95111f982d0e87be/djangocms-redirect-0.3.1.tar.gz" } ], "0.4.0": [ { "comment_text": "", "digests": { "md5": "f9642b38c0cab63fe5bcf014802c7b36", "sha256": "5719fe374258872a21639227ad5d6080a3ed69d1ebd51ac8f3e165535dc8d46c" }, "downloads": -1, "filename": "djangocms_redirect-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f9642b38c0cab63fe5bcf014802c7b36", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10191, "upload_time": "2019-08-22T12:06:20", "url": "https://files.pythonhosted.org/packages/c3/d4/ad2d485f0a0c7157ccbbdf5252a730455a2b9bfc839c94f8a219b57749e8/djangocms_redirect-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d2875f992c119c04bcb1369f2002bd8c", "sha256": "3c3517d89b10237c1e8ce45c860774fbf3cd5d400f7b55de402f67a931365a53" }, "downloads": -1, "filename": "djangocms-redirect-0.4.0.tar.gz", "has_sig": false, "md5_digest": "d2875f992c119c04bcb1369f2002bd8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9667, "upload_time": "2019-08-22T12:06:22", "url": "https://files.pythonhosted.org/packages/0d/98/f0806d9c56bd33c5aff9a643e6efb41994b0fc0e1ca8c5a321381c4a0867/djangocms-redirect-0.4.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "f9642b38c0cab63fe5bcf014802c7b36", "sha256": "5719fe374258872a21639227ad5d6080a3ed69d1ebd51ac8f3e165535dc8d46c" }, "downloads": -1, "filename": "djangocms_redirect-0.4.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "f9642b38c0cab63fe5bcf014802c7b36", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 10191, "upload_time": "2019-08-22T12:06:20", "url": "https://files.pythonhosted.org/packages/c3/d4/ad2d485f0a0c7157ccbbdf5252a730455a2b9bfc839c94f8a219b57749e8/djangocms_redirect-0.4.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "d2875f992c119c04bcb1369f2002bd8c", "sha256": "3c3517d89b10237c1e8ce45c860774fbf3cd5d400f7b55de402f67a931365a53" }, "downloads": -1, "filename": "djangocms-redirect-0.4.0.tar.gz", "has_sig": false, "md5_digest": "d2875f992c119c04bcb1369f2002bd8c", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9667, "upload_time": "2019-08-22T12:06:22", "url": "https://files.pythonhosted.org/packages/0d/98/f0806d9c56bd33c5aff9a643e6efb41994b0fc0e1ca8c5a321381c4a0867/djangocms-redirect-0.4.0.tar.gz" } ] }