Go to file
Anders Kaseorg fbac2a4dd8 Fixed #33700 -- Skipped extra resolution for successful requests not ending with /.
By moving a should_redirect_with_slash call out of an if block, commit
9390da7fb6 negated the performance fix
of commit 434d309ef6 (#24720).
Meanwhile, the logging issue #26293 that it targeted was subsequently
fixed more fully by commit 40b69607c7
(#26504), so it is no longer needed.  This effectively reverts it.

This speeds up successful requests not ending with / when APPEND_SLASH
is enabled (the default, and still useful in projects with a mix of
URLs with and without trailing /).  The amount of speedup varies from
about 5% in a typical project to nearly 50% on a benchmark with many
routes.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
2022-06-02 15:15:04 +02:00
.github Bumped versions in pre-commit and npm configurations. 2022-05-21 14:53:37 +02:00
.tx Removed contrib-messages entry in Transifex config file 2016-06-29 21:11:30 +02:00
django Fixed #33700 -- Skipped extra resolution for successful requests not ending with /. 2022-06-02 15:15:04 +02:00
docs Fixed #33742 -- Added id to GeoJSON serializer. 2022-06-01 19:11:26 +02:00
extras Refs #23433 -- Removed django-admin.py entry point per deprecation timeline. 2021-01-14 17:50:04 +01:00
js_tests Fixed #33637 -- Improved initial zoom level in MapWidget. 2022-04-14 11:50:31 +02:00
scripts Refs #33476 -- Reformatted code with Black. 2022-02-07 20:37:05 +01:00
tests Fixed #33700 -- Skipped extra resolution for successful requests not ending with /. 2022-06-02 15:15:04 +02:00
.editorconfig Refs #33476 -- Adjusted docs and config files for Black. 2022-02-07 20:36:04 +01:00
.eslintignore Refs #32165 -- Bumped minimum ESLint version to 7.16.0 to match pre-commit configuration. 2021-01-19 21:11:34 +01:00
.eslintrc Enabled ESLint's "eqeqeq" rule. 2020-05-18 07:42:51 +02:00
.git-blame-ignore-revs Refs #33476 -- Ignored formatting changes in git blame. 2022-02-08 07:14:51 +01:00
.gitattributes Fixed #19670 -- Applied CachedFilesMixin patterns to specific extensions 2016-03-30 14:34:41 +02:00
.gitignore Fixed #22446 -- Added tox.ini to automate pull request checks. 2016-07-20 14:06:28 -04:00
.pre-commit-config.yaml Bumped versions in pre-commit and npm configurations. 2022-05-21 14:53:37 +02:00
.readthedocs.yml Configured Read The Docs to build all formats. 2021-11-18 12:21:00 +01:00
AUTHORS Fixed #33754 -- Fixed crash with prematurely closed ASGI request body. 2022-05-31 08:38:00 +02:00
CONTRIBUTING.rst Added link to the code of conduct from contributing guides. 2015-04-17 18:12:41 -04:00
Gruntfile.js Refs #31265 -- Updated .eslintignore to match eslint tests 2020-12-23 11:14:48 +01:00
INSTALL Fixed #32355 -- Dropped support for Python 3.6 and 3.7 2021-02-10 10:20:54 +01:00
LICENSE Whitespace cleanup. 2013-10-10 16:49:20 -04:00
LICENSE.python Updated Python license for 2022. 2022-01-12 11:21:51 +01:00
MANIFEST.in Fixed #31524 -- Removed minified static assets from the admin. 2020-05-14 16:07:56 +02:00
README.rst Fixed 32956 -- Lowercased spelling of "web" and "web framework" where appropriate. 2021-07-29 06:24:12 +02:00
package.json Bumped versions in pre-commit and npm configurations. 2022-05-21 14:53:37 +02:00
pyproject.toml Refs #33476 -- Used black's force-exclude instead of extend-exclude. 2022-03-09 14:51:13 +01:00
setup.cfg Refs #33476 -- Adjusted docs and config files for Black. 2022-02-07 20:36:04 +01:00
setup.py Refs #33476 -- Reformatted code with Black. 2022-02-07 20:37:05 +01:00
tox.ini Refs #33476 -- Adjusted docs and config files for Black. 2022-02-07 20:36:04 +01:00

README.rst

======
Django
======

Django is a high-level Python web framework that encourages rapid development
and clean, pragmatic design. Thanks for checking it out.

All documentation is in the "``docs``" directory and online at
https://docs.djangoproject.com/en/stable/. If you're just getting started,
here's how we recommend you read the docs:

* First, read ``docs/intro/install.txt`` for instructions on installing Django.

* Next, work through the tutorials in order (``docs/intro/tutorial01.txt``,
  ``docs/intro/tutorial02.txt``, etc.).

* If you want to set up an actual deployment server, read
  ``docs/howto/deployment/index.txt`` for instructions.

* You'll probably want to read through the topical guides (in ``docs/topics``)
  next; from there you can jump to the HOWTOs (in ``docs/howto``) for specific
  problems, and check out the reference (``docs/ref``) for gory details.

* See ``docs/README`` for instructions on building an HTML version of the docs.

Docs are updated rigorously. If you find any problems in the docs, or think
they should be clarified in any way, please take 30 seconds to fill out a
ticket here: https://code.djangoproject.com/newticket

To get more help:

* Join the ``#django`` channel on ``irc.libera.chat``. Lots of helpful people
  hang out there. See https://web.libera.chat if you're new to IRC.

* Join the django-users mailing list, or read the archives, at
  https://groups.google.com/group/django-users.

To contribute to Django:

* Check out https://docs.djangoproject.com/en/dev/internals/contributing/ for
  information about getting involved.

To run Django's test suite:

* Follow the instructions in the "Unit tests" section of
  ``docs/internals/contributing/writing-code/unit-tests.txt``, published online at
  https://docs.djangoproject.com/en/dev/internals/contributing/writing-code/unit-tests/#running-the-unit-tests

Supporting the Development of Django
====================================

Django's development depends on your contributions. 

If you depend on Django, remember to support the Django Software Foundation: https://www.djangoproject.com/fundraising/