{ "info": { "author": "Andrew Pinkham", "author_email": "code@andrewsforge.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Framework :: Django", "Framework :: Django :: 2.1", "Intended Audience :: Developers", "License :: OSI Approved :: BSD License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Topic :: Software Development :: Testing" ], "description": "[![PyPI Version](https://img.shields.io/pypi/v/django-url-checks.svg)](https://pypi.org/project/django-url-checks/)\n[![Python Versions](https://img.shields.io/pypi/pyversions/django-url-checks.svg)](https://pypi.org/project/django-url-checks/)\n[![Django Versions](https://img.shields.io/pypi/djversions/django-url-checks.svg)](https://pypi.org/project/django-url-checks/)\n[![Build Status](https://travis-ci.org/jambonsw/django-url-checks.svg?branch=development)](https://travis-ci.org/jambonsw/django-url-checks)\n[![codecov](https://codecov.io/gh/jambonsw/django-url-checks/branch/development/graph/badge.svg)](https://codecov.io/gh/jambonsw/django-url-checks)\n[![BCH compliance](https://bettercodehub.com/edge/badge/jambonsw/django-url-checks?branch=development)](https://bettercodehub.com/)\n\n# Read Me\n\nUse Django's System Check Framework to ensure your URL Configuration\nworks correctly.\n\n## Table of Contents\n\n- [Project Purpose](#project-purpose)\n- [Project Rationale](#project-rationale)\n- [Installation and Usage](#installation-and-usage)\n- [Contributing](#contributing)\n\n## Project Purpose\n\nThis package checks your Django project's URL Configuration for a few\nthings.\n\n- Do the paths or regular expressions in your URL configuration tree end\n with slashes (or, for regular expressions, `/$`)\n- Is the URL configuration tree comprised of only `URLPattern` and\n `URLResolver` instances (`path()` and `include()`)?\n- Is `ROOT_URLCONF` defined in settings, and does it point to a valid\n Python module with `urlpatterns` defined?\n\n[\ud83d\udd1d Up to Table of Contents](#table-of-contents)\n\n## Project Rationale\n\nI constantly forget to add a slash to the end of my URI paths. This\nleads to strange behavior, and can be tricky to catch even with proper\ntesting.\n\nWhat's more, the errors raised when something is amiss with the URL\nconfiguration can be tricky to debug and understand.\n\nAs such, this package aim to try and make developers lives easier by\nproviding targeted checks of the URL configuration tree. This is meant\nto be used as part of a \"belt-and-braces\" approach, and is not a\nsubstitution for tests!\n\nI am open to suggestions on improving the checks. Please open an issue\nto do so.\n\n[\ud83d\udd1d Up to Table of Contents](#table-of-contents)\n\n## Installation and Usage\n\n1. Add `\"url_checks.apps.UrlChecksConfig\",` as an item in your Django\n project's `INSTALLED_APPS` setting\n2. In the terminal (in your Django projects code-root directory), run\n Django's check framework with `$ python manage.py check`\n3. Read the output in your terminal and track those bugs down!\n\n\ud83c\udf89\n\n[\ud83d\udd1d Up to Table of Contents](#table-of-contents)\n\n## Contributing\n\nFor ideas, bugs, feature-requests, and all the rest, please open an\n[issue on Github](https://github.com/jambonsw/django-url-checks/issues).\n\n[\ud83d\udd1d Up to Table of Contents](#table-of-contents)\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/jambonsw/django-url-checks", "keywords": "django,check,url,uri,slash", "license": "BSD-2-Clause", "maintainer": "Andrew Pinkham", "maintainer_email": "code@andrewsforge.com", "name": "django-url-checks", "package_url": "https://pypi.org/project/django-url-checks/", "platform": "", "project_url": "https://pypi.org/project/django-url-checks/", "project_urls": { "Homepage": "https://github.com/jambonsw/django-url-checks", "Repository": "https://github.com/jambonsw/django-url-checks" }, "release_url": "https://pypi.org/project/django-url-checks/0.2.0/", "requires_dist": null, "requires_python": ">=3.6,<4.0", "summary": "Django checks to ensure valid URL Configurations", "version": "0.2.0" }, "last_serial": 4624640, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "2f83b339f541201762602b99efbd0172", "sha256": "2886d2238c29425f624fafe3560939672e7d4d5c37ebfdd6bdd45dbfaf5e0bb9" }, "downloads": -1, "filename": "django_url_checks-0.1.0-py3-none-any.whl", "has_sig": false, "md5_digest": "2f83b339f541201762602b99efbd0172", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 10314, "upload_time": "2018-12-20T19:52:13", "url": "https://files.pythonhosted.org/packages/55/8f/f138dd2b8112799ce630c293a650c613a702a6fa69e767e033febcf95a22/django_url_checks-0.1.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "ed467a8e4d05af4812dbdfd872d422e3", "sha256": "bd491c9f3e710648c32d88e49fc4563000ad21b2c12d1c274e3f88c64e5267a3" }, "downloads": -1, "filename": "django-url-checks-0.1.0.tar.gz", "has_sig": false, "md5_digest": "ed467a8e4d05af4812dbdfd872d422e3", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 4577, "upload_time": "2018-12-20T19:52:10", "url": "https://files.pythonhosted.org/packages/d6/9f/9f9bf919ddd5ffe4c9dc4a775c0f80244fbf9f3dabfa3d4ff49d051f43ef/django-url-checks-0.1.0.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "802e3518d8a06034985ed91403c05ce3", "sha256": "dca4b930d9fec8020d2121e6715f1aecdd36773a291616f84ba083e38957e546" }, "downloads": -1, "filename": "django_url_checks-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "802e3518d8a06034985ed91403c05ce3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 11234, "upload_time": "2018-12-21T11:14:10", "url": "https://files.pythonhosted.org/packages/e2/36/947d1b1a7ad285741f389d25a586684ca7bc1463ce39457811dd3b2986ec/django_url_checks-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "48fa5a8ed357b74c94a9b86a779f24ce", "sha256": "28fe60c92a35442edb19a7ad0c622d4bfbe3852ce16893a9fc14cbb64ea19926" }, "downloads": -1, "filename": "django-url-checks-0.2.0.tar.gz", "has_sig": false, "md5_digest": "48fa5a8ed357b74c94a9b86a779f24ce", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 5730, "upload_time": "2018-12-21T11:14:08", "url": "https://files.pythonhosted.org/packages/c4/58/aea3e10cbec7fc3ca5d6da0a254e681c4f587ed5d0e4bee80b1083022647/django-url-checks-0.2.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "802e3518d8a06034985ed91403c05ce3", "sha256": "dca4b930d9fec8020d2121e6715f1aecdd36773a291616f84ba083e38957e546" }, "downloads": -1, "filename": "django_url_checks-0.2.0-py3-none-any.whl", "has_sig": false, "md5_digest": "802e3518d8a06034985ed91403c05ce3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.6,<4.0", "size": 11234, "upload_time": "2018-12-21T11:14:10", "url": "https://files.pythonhosted.org/packages/e2/36/947d1b1a7ad285741f389d25a586684ca7bc1463ce39457811dd3b2986ec/django_url_checks-0.2.0-py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "48fa5a8ed357b74c94a9b86a779f24ce", "sha256": "28fe60c92a35442edb19a7ad0c622d4bfbe3852ce16893a9fc14cbb64ea19926" }, "downloads": -1, "filename": "django-url-checks-0.2.0.tar.gz", "has_sig": false, "md5_digest": "48fa5a8ed357b74c94a9b86a779f24ce", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.6,<4.0", "size": 5730, "upload_time": "2018-12-21T11:14:08", "url": "https://files.pythonhosted.org/packages/c4/58/aea3e10cbec7fc3ca5d6da0a254e681c4f587ed5d0e4bee80b1083022647/django-url-checks-0.2.0.tar.gz" } ] }