]> git.ipfire.org Git - thirdparty/starlette.git/commitdiff
Change documentation layout (#2680)
authorMarcelo Trylesinski <marcelotryle@gmail.com>
Sun, 1 Sep 2024 15:06:20 +0000 (17:06 +0200)
committerGitHub <noreply@github.com>
Sun, 1 Sep 2024 15:06:20 +0000 (17:06 +0200)
README.md
docs/img/logo.svg [new file with mode: 0644]
docs/img/starlette.png [deleted file]
docs/img/starlette.svg [new file with mode: 0644]
docs/img/starlette_dark.svg [new file with mode: 0644]
docs/index.md
docs/overrides/partials/nav.html [deleted file]
docs/overrides/partials/toc-item.html [new file with mode: 0644]
docs/release-notes.md
docs/sponsors/fastapi.png [deleted file]
mkdocs.yml

index 7427c3bdc9763b662c0ac63e35074142ede495f6..b0bfc27e7866e27360610697f2cd176ff1e403d7 100644 (file)
--- a/README.md
+++ b/README.md
@@ -1,5 +1,5 @@
 <p align="center">
-  <a href="https://www.starlette.io/"><img width="420px" src="https://raw.githubusercontent.com/encode/starlette/master/docs/img/starlette.png" alt='starlette'></a>
+  <a href="https://www.starlette.io/"><img width="420px" src="https://raw.githubusercontent.com/encode/starlette/master/docs/img/starlette.svg" alt='starlette'></a>
 </p>
 <p align="center">
     <em>✨ The little ASGI framework that shines. ✨</em>
 [![Package version](https://badge.fury.io/py/starlette.svg)](https://pypi.python.org/pypi/starlette)
 [![Supported Python Version](https://img.shields.io/pypi/pyversions/starlette.svg?color=%2334D058)](https://pypi.org/project/starlette)
 
-**Documentation**: [https://www.starlette.io/](https://www.starlette.io/)
+---
+
+**Documentation**: <a href="https://www.starlette.io/" target="_blank">https://www.starlette.io</a>
+
+**Source Code**: <a href="https://github.com/encode/starlette" target="_blank">https://github.com/encode/starlette</a>
 
 ---
 
@@ -35,27 +39,21 @@ It is production-ready, and gives you the following:
 * Compatible with `asyncio` and `trio` backends.
 * Great overall performance [against independent benchmarks][techempower].
 
-## Requirements
-
-Python 3.8+
-
 ## Installation
 
 ```shell
-$ pip3 install starlette
+$ pip install starlette
 ```
 
 You'll also want to install an ASGI server, such as [uvicorn](https://www.uvicorn.org/), [daphne](https://github.com/django/daphne/), or [hypercorn](https://hypercorn.readthedocs.io/en/latest/).
 
 ```shell
-$ pip3 install uvicorn
+$ pip install uvicorn
 ```
 
 ## Example
 
-**example.py**:
-
-```python
+```python title="example.py"
 from starlette.applications import Starlette
 from starlette.responses import JSONResponse
 from starlette.routing import Route
@@ -89,7 +87,7 @@ Starlette only requires `anyio`, and the following are optional:
 * [`itsdangerous`][itsdangerous] - Required for `SessionMiddleware` support.
 * [`pyyaml`][pyyaml] - Required for `SchemaGenerator` support.
 
-You can install all of these with `pip3 install starlette[full]`.
+You can install all of these with `pip install starlette[full]`.
 
 ## Framework or Toolkit
 
diff --git a/docs/img/logo.svg b/docs/img/logo.svg
new file mode 100644 (file)
index 0000000..347c1dc
--- /dev/null
@@ -0,0 +1 @@
+<svg enable-background="new 0 0 800 600" viewBox="0 0 800 600" xmlns="http://www.w3.org/2000/svg"><path d="m741.5 298.677-107.805-49.938-7.756-118.557c-.543-8.301-10.751-11.928-16.409-5.829l-80.808 87.096-115.15-29.259c-8.063-2.049-14.666 6.539-10.615 13.805l57.863 103.766-63.41 100.475c-4.44 7.035 1.688 15.969 9.849 14.361l116.569-22.966 75.96 91.355c5.319 6.397 15.708 3.33 16.702-4.93l14.18-117.961 110.357-44.012c7.727-3.08 8.021-13.91.473-17.406z" fill="#ffdc65"/><g fill="#fff182"><path d="m505.03 83.247c2.879 9.912 6.878 49.51 9.031 72.524.339 3.618-4.555 5.039-6.207 1.803-10.511-20.585-28.348-56.164-31.227-66.077-2.278-7.843 2.233-16.048 10.077-18.326 7.843-2.279 16.047 2.233 18.326 10.076z"/><path d="m732.954 164.209c-8.487 5.875-36.569 34.077-52.757 50.576-2.545 2.594.355 6.783 3.679 5.314 21.142-9.342 57.425-25.697 65.913-31.571 6.715-4.648 8.391-13.861 3.742-20.576-4.649-6.716-13.862-8.391-20.577-3.743z"/><path d="m740.534 427.586c-8.176-6.3-43.578-24.486-64.214-34.896-3.244-1.637-6.354 2.4-3.946 5.12 15.324 17.304 41.93 46.903 50.106 53.203 6.469 4.985 15.755 3.783 20.741-2.687 4.985-6.47 3.782-15.755-2.687-20.74z"/><path d="m467.394 507.678c3.455-9.726 23.346-44.199 35.045-64.133 1.839-3.134 6.641-1.428 6.091 2.163-3.497 22.848-9.81 62.143-13.265 71.87-2.734 7.696-11.189 11.719-18.885 8.985-7.697-2.733-11.72-11.189-8.986-18.885z"/></g><path d="m628.759 173.295-2.821-43.112c-.543-8.301-10.751-11.928-16.409-5.829l-80.808 87.096-115.149-29.258c-8.063-2.049-14.666 6.539-10.615 13.805l57.863 103.766-63.41 100.473c-4.44 7.035 1.688 15.969 9.849 14.361l15.515-3.057c69.301-128.504 163.804-207.337 205.985-238.245z" fill="#fdc850"/><g fill="#1f1f1f"><path d="m82.126 412.809c-.986 3.315-1.702 6.561-2.149 9.74-.449 3.181-.672 6.293-.672 9.337 0 6.18 1.364 12.224 4.098 18.136 2.73 5.91 6.761 11.15 12.091 15.718 5.328 4.567 11.889 8.239 19.681 11.016 7.791 2.774 16.746 4.165 26.868 4.165 7.074 0 14.194-.672 21.36-2.015 7.164-1.344 14.059-3.359 20.689-6.046 6.627-2.687 12.783-6.002 18.472-9.941 5.686-3.942 10.634-8.553 14.845-13.837 4.209-5.284 7.523-11.196 9.941-17.734 2.418-6.537 3.628-13.703 3.628-21.495 0-7.433-1.008-14.194-3.023-20.286-2.015-6.089-4.816-11.62-8.397-16.591-3.583-4.97-7.814-9.538-12.695-13.702-4.883-4.165-10.166-8.014-15.852-11.554-5.689-3.537-11.688-6.919-18.002-10.142-6.314-3.225-12.65-6.402-19.009-9.539-6.717-3.312-13.366-6.717-19.95-10.21-6.583-3.493-12.896-7.254-18.941-11.284-6.046-4.03-11.644-8.441-16.793-13.233-5.152-4.79-9.606-10.142-13.367-16.053s-6.717-12.471-8.867-19.681c-2.149-7.209-3.224-15.292-3.224-24.249 0-9.313 1.321-18.022 3.963-26.129 2.641-8.105 6.315-15.561 11.016-22.368 4.702-6.806 10.299-12.874 16.793-18.203 6.493-5.328 13.59-9.851 21.293-13.569 7.701-3.715 15.852-6.536 24.45-8.463 8.598-1.925 17.418-2.888 26.465-2.888 8.238 0 16.478.873 24.718 2.619 8.239 1.746 15.651 4.456 22.234 8.128 6.583 3.673 11.933 8.352 16.053 14.038 4.119 5.689 6.18 12.427 6.18 20.219 0 4.03-.762 7.771-2.283 11.218-1.524 3.449-3.606 6.448-6.248 9.001-2.642 2.552-5.709 4.546-9.202 5.978-3.493 1.433-7.166 2.149-11.016 2.149-1.255 0-2.553-.067-3.896-.201-1.343-.135-2.643-.424-3.896-.874l-1.209-1.209c1.612-5.643 2.418-10.657 2.418-15.047 0-7.523-1.299-13.724-3.896-18.606-2.599-4.88-5.978-8.753-10.142-11.621-4.165-2.865-8.867-4.88-14.106-6.045-5.239-1.163-10.502-1.746-15.785-1.746-9.135 0-17.622 1.411-25.457 4.232-7.839 2.821-14.622 6.785-20.354 11.89-5.732 5.104-10.232 11.197-13.501 18.27-3.27 7.075-4.903 14.868-4.903 23.375 0 7.254.985 13.837 2.956 19.749 1.969 5.911 4.723 11.308 8.262 16.188 3.537 4.882 7.724 9.36 12.561 13.433 4.836 4.077 10.097 7.883 15.785 11.42 5.686 3.538 11.688 6.919 18.002 10.142 6.314 3.224 12.695 6.404 19.144 9.539 6.358 3.136 12.806 6.381 19.345 9.74 6.536 3.359 12.896 7.032 19.076 11.016 6.18 3.986 11.977 8.352 17.398 13.098 5.417 4.748 10.163 10.031 14.24 15.852 4.074 5.823 7.275 12.315 9.606 19.479 2.327 7.167 3.493 15.137 3.493 23.913 0 12.002-1.77 22.996-5.307 32.98-3.538 9.988-8.352 18.966-14.441 26.935-6.092 7.971-13.212 14.957-21.36 20.958-8.151 5.999-16.884 10.992-26.197 14.978-9.316 3.985-18.942 6.963-28.884 8.934-9.941 1.97-19.748 2.957-29.421 2.957-6.091 0-12.607-.494-19.546-1.479-6.942-.986-13.861-2.484-20.756-4.5-6.898-2.015-13.525-4.591-19.883-7.724-6.36-3.136-11.957-6.874-16.793-11.219s-8.709-9.336-11.621-14.978c-2.909-5.642-4.366-11.957-4.366-18.943 0-4.477.806-8.551 2.418-12.225 1.612-3.671 3.762-6.828 6.449-9.471 2.686-2.641 5.753-4.679 9.202-6.113 3.447-1.432 7.007-2.149 10.68-2.149 1.343 0 2.708.113 4.098.336 1.388.225 2.798.604 4.232 1.142z"/><path d="m350.546 97.106c-1.792 15.227-3.56 30.832-5.306 46.818s-3.404 32.154-4.97 48.498c-1.568 16.345-3.023 32.758-4.366 49.236-1.344 16.481-2.509 32.712-3.493 48.699-.987 15.986-1.746 31.683-2.284 47.086-.537 15.405-.806 30.183-.806 44.333 0 8.867.111 16.48.336 22.838.222 6.36.581 11.734 1.075 16.121.491 4.389 1.163 7.926 2.015 10.613.85 2.687 1.902 4.748 3.157 6.18 1.253 1.433 2.731 2.398 4.433 2.888 1.7.494 3.715.739 6.045.739 4.299 0 8.934-.649 13.905-1.948 4.97-1.296 10.008-3.11 15.114-5.441l2.552 6.986c-3.224 2.599-7.277 5.24-12.158 7.927-4.883 2.687-10.008 5.152-15.382 7.389-5.374 2.238-10.636 4.05-15.785 5.441-5.151 1.386-9.606 2.082-13.366 2.082-4.837 0-8.666-1.232-11.487-3.695-2.821-2.462-4.97-6.469-6.448-12.023-1.478-5.552-2.419-12.785-2.822-21.696s-.604-19.769-.604-32.578c0-4.656.134-11.305.403-19.95.269-8.642.648-18.694 1.142-30.159.491-11.463 1.052-24.001 1.679-37.616.625-13.613 1.297-27.695 2.015-42.251.716-14.553 1.478-29.24 2.283-44.064.807-14.821 1.612-29.152 2.418-42.989.807-13.837 1.566-26.89 2.284-39.161.716-12.269 1.388-23.107 2.015-32.51.088-2.149.716-4.008 1.88-5.575 1.163-1.566 2.664-2.822 4.5-3.762 1.835-.941 3.896-1.634 6.18-2.082 2.284-.447 4.589-.672 6.919-.672 5.374 0 11.016 1.433 16.927 4.298z"/></g></svg>
\ No newline at end of file
diff --git a/docs/img/starlette.png b/docs/img/starlette.png
deleted file mode 100644 (file)
index 14ae001..0000000
Binary files a/docs/img/starlette.png and /dev/null differ
diff --git a/docs/img/starlette.svg b/docs/img/starlette.svg
new file mode 100644 (file)
index 0000000..5ad428e
--- /dev/null
@@ -0,0 +1 @@
+<svg enable-background="new 0 0 800 600" viewBox="0 0 800 600" xmlns="http://www.w3.org/2000/svg"><g fill="#1f1f1f"><path d="m52.79 382.479c-.476 1.601-.822 3.168-1.038 4.702-.217 1.536-.324 3.038-.324 4.508 0 2.983.659 5.902 1.978 8.756 1.318 2.854 3.264 5.384 5.837 7.589 2.572 2.205 5.74 3.978 9.502 5.318s8.085 2.011 12.972 2.011c3.415 0 6.853-.324 10.312-.973s6.788-1.622 9.988-2.919c3.199-1.297 6.172-2.897 8.918-4.8s5.134-4.129 7.167-6.681c2.032-2.551 3.632-5.404 4.8-8.561s1.751-6.616 1.751-10.378c0-3.588-.486-6.852-1.459-9.793-.973-2.94-2.325-5.61-4.054-8.01s-3.773-4.605-6.129-6.616c-2.357-2.01-4.908-3.869-7.653-5.578-2.747-1.708-5.643-3.34-8.691-4.897-3.049-1.557-6.108-3.091-9.178-4.605-3.243-1.599-6.454-3.243-9.631-4.929-3.178-1.687-6.227-3.502-9.146-5.448-2.918-1.946-5.621-4.075-8.107-6.389-2.487-2.312-4.637-4.896-6.453-7.75s-3.243-6.021-4.281-9.502c-1.038-3.48-1.557-7.383-1.557-11.707 0-4.497.637-8.701 1.914-12.615 1.274-3.913 3.048-7.513 5.318-10.799 2.27-3.285 4.972-6.215 8.107-8.788 3.134-2.572 6.561-4.756 10.28-6.551 3.718-1.794 7.653-3.156 11.804-4.086 4.151-.929 8.41-1.394 12.777-1.394 3.978 0 7.956.421 11.934 1.265 3.978.843 7.556 2.151 10.734 3.924s5.761 4.032 7.75 6.778c1.988 2.746 2.983 6 2.983 9.761 0 1.946-.368 3.751-1.103 5.416-.736 1.665-1.741 3.113-3.016 4.346-1.276 1.232-2.756 2.195-4.443 2.886-1.686.692-3.459 1.038-5.318 1.038-.606 0-1.232-.032-1.881-.097-.648-.065-1.276-.205-1.881-.421l-.583-.584c.778-2.724 1.167-5.145 1.167-7.264 0-3.632-.627-6.626-1.881-8.983-1.255-2.356-2.886-4.226-4.897-5.61-2.011-1.383-4.281-2.356-6.81-2.918-2.53-.562-5.07-.843-7.621-.843-4.411 0-8.508.681-12.291 2.043-3.784 1.362-7.059 3.275-9.826 5.74-2.768 2.464-4.94 5.405-6.519 8.821s-2.367 7.178-2.367 11.285c0 3.502.475 6.681 1.427 9.534.951 2.854 2.28 5.459 3.989 7.815 1.708 2.357 3.729 4.519 6.064 6.486 2.335 1.968 4.875 3.805 7.621 5.513s5.643 3.34 8.691 4.897 6.129 3.092 9.242 4.605c3.07 1.514 6.183 3.081 9.34 4.702 3.156 1.622 6.227 3.395 9.21 5.318 2.983 1.925 5.783 4.033 8.399 6.324 2.616 2.292 4.907 4.843 6.875 7.653 1.967 2.812 3.512 5.946 4.637 9.405 1.124 3.46 1.687 7.308 1.687 11.545 0 5.794-.854 11.102-2.562 15.922-1.709 4.821-4.033 9.156-6.973 13.004-2.941 3.849-6.378 7.221-10.312 10.118-3.935 2.896-8.151 5.308-12.647 7.231-4.498 1.924-9.145 3.362-13.944 4.313-4.8.95-9.535 1.427-14.204 1.427-2.941 0-6.087-.238-9.437-.713-3.352-.477-6.692-1.2-10.021-2.173-3.33-.974-6.529-2.217-9.599-3.729-3.07-1.515-5.772-3.319-8.107-5.416-2.335-2.098-4.205-4.508-5.61-7.231-1.405-2.725-2.108-5.772-2.108-9.146 0-2.161.389-4.129 1.167-5.902.778-1.772 1.816-3.296 3.113-4.572 1.297-1.274 2.778-2.259 4.443-2.951 1.664-.69 3.383-1.037 5.156-1.037.649 0 1.308.055 1.979.162.67.108 1.351.292 2.043.551z"/><path d="m184.132 263.917c-1.816 8.216-3.34 16.701-4.573 25.458-1.232 8.756-2.281 17.393-3.146 25.911 2.032.087 4.01.152 5.935.194 1.923.043 3.718.087 5.383.13 1.664.043 3.178.065 4.54.065s2.497 0 3.405 0c3.934 0 7.156-.237 9.664-.714.216.736.389 1.406.519 2.011.13.606.195 1.167.195 1.687 0 1.903-.79 3.135-2.367 3.697-1.579.562-3.859.843-6.843.843-2.854 0-6.043-.172-9.567-.519-3.524-.345-7.384-.67-11.577-.973-.476 4.627-.875 9.135-1.2 13.523-.325 4.389-.584 8.529-.778 12.42-.195 3.892-.335 7.502-.422 10.832s-.129 6.227-.129 8.691c0 4.627.237 8.756.713 12.388.475 3.632 1.318 6.713 2.529 9.242 1.21 2.529 2.875 4.465 4.994 5.805 2.118 1.341 4.8 2.011 8.042 2.011 2.335 0 4.939-.41 7.815-1.232 2.875-.821 6.15-2.141 9.826-3.956 1.167 1.167 1.837 2.594 2.011 4.28-2.682 1.773-5.383 3.384-8.107 4.832-2.724 1.449-5.406 2.691-8.042 3.729-2.638 1.037-5.188 1.837-7.653 2.399s-4.8.844-7.005.844c-2.897 0-5.545-.53-7.945-1.59-2.399-1.06-4.475-2.939-6.226-5.643-1.751-2.701-3.113-6.345-4.086-10.929-.973-4.582-1.459-10.376-1.459-17.381 0-3.934.064-7.988.194-12.161.13-4.172.302-8.399.519-12.68.216-4.281.497-8.562.843-12.842.345-4.281.734-8.497 1.167-12.647-3.416.043-6.583.185-9.501.421-2.919.238-5.416.616-7.491 1.135-.13-.259-.195-.562-.195-.908 0-.908.443-1.761 1.33-2.562.886-.799 2.118-1.524 3.697-2.172 1.578-.649 3.47-1.189 5.675-1.622 2.206-.432 4.626-.735 7.264-.908.995-9.037 2.053-17.577 3.178-25.619 1.124-8.042 2.248-15.22 3.373-21.533.216-1.124.616-2.053 1.2-2.789.583-.734 1.265-1.318 2.043-1.751.778-.432 1.622-.735 2.529-.908.908-.172 1.794-.259 2.659-.259 1.427 0 2.713.152 3.859.454 1.145.302 2.216.735 3.211 1.296z"/><path d="m266.635 337.467c0-3.416-.562-6.377-1.687-8.886-1.125-2.507-2.594-4.562-4.41-6.162-1.816-1.599-3.87-2.789-6.162-3.567s-4.584-1.167-6.875-1.167c-3.071 0-5.665.324-7.783.973-2.119.648-3.838 1.535-5.156 2.659-1.319 1.125-2.27 2.455-2.854 3.989-.583 1.535-.875 3.189-.875 4.962 0 2.075.378 4.162 1.135 6.259.756 2.098 1.87 4.141 3.34 6.129l-.26.713c-2.464 1.211-4.952 1.816-7.458 1.816-1.471 0-2.844-.227-4.119-.681-1.276-.454-2.378-1.113-3.308-1.978-.931-.865-1.666-1.924-2.206-3.178-.541-1.254-.811-2.659-.811-4.216 0-2.551.616-4.951 1.849-7.199 1.232-2.248 2.864-4.302 4.896-6.162 2.032-1.859 4.388-3.524 7.07-4.994 2.681-1.47 5.448-2.713 8.302-3.729s5.718-1.794 8.594-2.335c2.875-.54 5.545-.811 8.01-.811 4.54 0 8.42.606 11.642 1.816 3.221 1.211 5.837 2.973 7.848 5.286 2.01 2.313 3.48 5.113 4.41 8.399.929 3.287 1.395 7.005 1.395 11.156 0 2.854-.12 5.989-.357 9.405-.238 3.416-.508 6.995-.811 10.734-.303 3.741-.574 7.6-.811 11.577-.238 3.979-.357 7.936-.357 11.87 0 6.226 1.156 10.906 3.47 14.041 2.312 3.136 5.351 4.702 9.112 4.702 3.329 0 7.047-1.232 11.156-3.696l1.881 2.789c-2.897 2.896-6.054 5.103-9.469 6.615-3.416 1.513-7.005 2.27-10.767 2.27-2.811 0-5.406-.476-7.783-1.427-2.378-.951-4.433-2.367-6.162-4.248s-3.07-4.248-4.021-7.102c-.952-2.854-1.427-6.162-1.427-9.924 0-1.124.032-2.247.097-3.372.065-1.124.205-2.312.421-3.567h-.389c-1.859 3.719-4.011 7.384-6.453 10.993-2.443 3.61-5.124 6.832-8.042 9.664-2.919 2.832-6.032 5.124-9.34 6.875s-6.778 2.627-10.41 2.627c-2.984 0-5.708-.52-8.172-1.557-2.465-1.038-4.573-2.465-6.324-4.281-1.751-1.815-3.113-3.966-4.086-6.453-.973-2.486-1.459-5.199-1.459-8.14 0-3.805.702-7.264 2.108-10.377 1.404-3.113 3.35-5.902 5.837-8.367 2.486-2.465 5.458-4.594 8.918-6.389 3.458-1.794 7.221-3.286 11.285-4.476 4.064-1.188 8.367-2.075 12.907-2.659 4.54-.583 9.167-.875 13.88-.875.302-2.724.551-5.361.746-7.913.198-2.55.295-5.36.295-8.431zm-39.823 44.558c0 1.686.183 3.297.551 4.832.367 1.534.951 2.886 1.751 4.053.8 1.168 1.816 2.087 3.048 2.757 1.232.671 2.713 1.005 4.443 1.005 1.946 0 3.957-.454 6.032-1.361 2.076-.908 4.119-2.162 6.129-3.762s3.934-3.513 5.772-5.74c1.837-2.227 3.491-4.659 4.962-7.296 1.469-2.637 2.691-5.416 3.664-8.334s1.61-5.912 1.914-8.983c-3.2.087-6.378.292-9.534.616-3.157.324-6.151.833-8.983 1.524-2.833.692-5.459 1.6-7.88 2.724-2.422 1.125-4.508 2.52-6.259 4.184-1.751 1.665-3.125 3.632-4.119 5.902-.994 2.269-1.491 4.896-1.491 7.879z"/><path d="m314.569 405.828-1.038-.065c.346-4.107.67-8.582.973-13.426.302-4.842.583-9.761.843-14.754.259-4.994.486-9.945.681-14.853.195-4.907.367-9.491.519-13.75.151-4.258.259-8.075.324-11.447.065-3.373.097-6.032.097-7.978 0-1.599-.064-2.983-.194-4.151s-.421-2.14-.875-2.918-1.114-1.351-1.979-1.719c-.865-.367-2.033-.551-3.502-.551-.736 0-1.492.043-2.271.129-.778.087-1.644.217-2.594.389-.952.173-2.021.4-3.21.681-1.19.282-2.562.616-4.119 1.005l-.973-4.67c7.177-2.594 12.993-4.42 17.447-5.48 4.453-1.059 7.459-1.589 9.016-1.589 2.854 0 4.897.833 6.129 2.497 1.232 1.665 1.849 4.141 1.849 7.426 0 .303-.043 1.189-.13 2.659s-.206 3.384-.356 5.74c-.152 2.357-.335 5.092-.551 8.205-.217 3.113-.465 6.454-.746 10.021-.282 3.567-.595 7.287-.94 11.156-.347 3.87-.713 7.729-1.103 11.577l.648.065c2.076-8.474 4.421-16.377 7.038-23.706 2.615-7.329 5.555-13.695 8.821-19.101 3.264-5.404 6.853-9.653 10.766-12.745 3.913-3.091 8.205-4.637 12.875-4.637 1.643 0 3.178.259 4.605.778s2.66 1.243 3.697 2.173c1.038.93 1.858 2.033 2.464 3.308.605 1.276.908 2.67.908 4.184 0 1.945-.421 3.816-1.265 5.61-.843 1.795-2.173 3.384-3.989 4.767h-.519c-1.816-1.513-3.535-2.604-5.156-3.275-1.622-.67-3.34-1.005-5.156-1.005-1.946 0-3.827.368-5.643 1.103-1.816.736-3.481 1.794-4.994 3.178-2.465 2.249-4.757 5.221-6.875 8.918-2.119 3.697-4.054 7.794-5.805 12.291-1.751 4.498-3.33 9.221-4.734 14.172-1.406 4.952-2.617 9.772-3.632 14.463-1.017 4.692-1.838 9.103-2.465 13.23-.627 4.13-1.07 7.6-1.33 10.41z"/><path d="m412.184 230.061c-.865 7.351-1.718 14.885-2.562 22.603-.843 7.718-1.644 15.523-2.399 23.414-.757 7.892-1.46 15.815-2.108 23.771s-1.211 15.793-1.687 23.511-.843 15.296-1.103 22.733c-.259 7.438-.389 14.572-.389 21.403 0 4.281.054 7.957.162 11.026.107 3.07.28 5.665.519 7.783.237 2.119.562 3.826.973 5.124.411 1.297.919 2.292 1.524 2.983s1.318 1.157 2.141 1.395c.821.237 1.794.356 2.919.356 2.076 0 4.312-.313 6.713-.94 2.4-.626 4.832-1.502 7.297-2.627l1.232 3.373c-1.557 1.254-3.514 2.529-5.871 3.826-2.355 1.297-4.832 2.487-7.426 3.567-2.595 1.08-5.135 1.956-7.621 2.627-2.486.67-4.637 1.005-6.454 1.005-2.335 0-4.183-.595-5.545-1.783s-2.399-3.123-3.113-5.805c-.713-2.681-1.167-6.172-1.362-10.475-.194-4.302-.292-9.544-.292-15.728 0-2.248.065-5.458.195-9.632.129-4.172.313-9.025.551-14.561.237-5.535.508-11.587.811-18.161.302-6.572.626-13.371.973-20.398.345-7.026.713-14.117 1.103-21.274.389-7.156.778-14.074 1.167-20.755.389-6.68.756-12.982 1.103-18.906.346-5.923.67-11.156.973-15.696.043-1.038.346-1.935.908-2.692.562-.756 1.286-1.362 2.173-1.816.886-.454 1.881-.789 2.983-1.005 1.103-.216 2.215-.324 3.34-.324 2.594.002 5.318.695 8.172 2.078z"/><path d="m495.011 384.035c.26.13.595.314 1.006.552.41.238.788.498 1.135.778.346.281.648.584.908.908s.389.639.389.94c0 .173-.064.346-.194.519-2.422 3.372-5.026 6.303-7.815 8.788-2.789 2.487-5.687 4.562-8.691 6.227s-6.063 2.896-9.177 3.697c-3.113.8-6.185 1.199-9.21 1.199-5.189 0-9.946-1.06-14.27-3.178s-8.042-5.016-11.155-8.691c-3.113-3.674-5.546-7.987-7.297-12.938s-2.627-10.258-2.627-15.923c0-4.626.508-9.252 1.524-13.88 1.016-4.626 2.486-9.037 4.41-13.231s4.27-8.096 7.037-11.707c2.767-3.61 5.912-6.746 9.438-9.405 3.523-2.659 7.394-4.745 11.609-6.259 4.216-1.513 8.745-2.27 13.588-2.27 3.199 0 6.248.433 9.146 1.297 2.896.865 5.437 2.108 7.621 3.729 2.183 1.622 3.924 3.622 5.221 6s1.946 5.082 1.946 8.107c0 4.411-1.438 8.259-4.313 11.545-2.876 3.287-6.843 6.075-11.901 8.367-5.06 2.292-11.017 4.141-17.869 5.545-6.854 1.406-14.259 2.455-22.214 3.146v1.103c0 5.535.702 10.594 2.107 15.177s3.341 8.507 5.806 11.772c2.464 3.265 5.36 5.805 8.69 7.62 3.329 1.816 6.918 2.725 10.767 2.725 3.892 0 7.881-.962 11.967-2.887 4.084-1.923 8.223-5.048 12.418-9.372zm-12.194-52.081c0-1.988-.335-3.848-1.005-5.578-.671-1.729-1.601-3.232-2.789-4.508-1.189-1.275-2.605-2.28-4.248-3.016-1.644-.734-3.416-1.103-5.318-1.103-2.812 0-5.362.498-7.653 1.492-2.293.995-4.346 2.346-6.162 4.054-1.815 1.708-3.416 3.697-4.8 5.967s-2.562 4.681-3.534 7.231c-.973 2.552-1.763 5.167-2.367 7.848-.606 2.682-1.038 5.297-1.298 7.848 6.14-.432 11.643-1.177 16.507-2.237 4.864-1.059 8.972-2.421 12.323-4.086 3.351-1.664 5.912-3.653 7.686-5.967 1.772-2.312 2.658-4.961 2.658-7.945z"/><path d="m591.978 316.193c3.373 0 6.421-.042 9.146-.129 2.724-.086 4.842-.172 6.356-.26 1.945-.086 3.739-.194 5.383-.324 1.643-.13 3.069-.302 4.28-.519.476 1.644.714 2.941.714 3.892 0 1.903-.789 3.189-2.367 3.859-1.579.671-3.859 1.005-6.843 1.005-2.854 0-6.054-.043-9.599-.13-3.547-.086-7.417-.216-11.61-.389-.477 4.973-.865 9.708-1.167 14.204-.304 4.498-.552 8.648-.746 12.453-.194 3.806-.336 7.178-.422 10.118-.087 2.941-.13 5.341-.13 7.199 0 4.627.237 8.756.714 12.388.476 3.632 1.318 6.713 2.529 9.242 1.21 2.529 2.875 4.465 4.994 5.805 2.118 1.341 4.8 2.011 8.043 2.011 2.335 0 4.939-.41 7.815-1.232 2.875-.821 6.15-2.141 9.826-3.956 1.167 1.167 1.837 2.594 2.011 4.28-2.682 1.773-5.384 3.384-8.107 4.832-2.725 1.449-5.406 2.691-8.043 3.729-2.638 1.037-5.188 1.837-7.653 2.399s-4.8.844-7.005.844c-2.897 0-5.545-.53-7.945-1.59-2.399-1.06-4.475-2.939-6.227-5.643-1.751-2.701-3.113-6.345-4.086-10.929-.973-4.582-1.459-10.376-1.459-17.381 0-7.653.227-15.576.681-23.771.454-8.193 1.113-16.657 1.979-25.392-5.362-.216-10.929-.389-16.701-.519-5.772-.129-11.771-.194-17.998-.194h-4.865c-.476 4.627-.875 9.113-1.199 13.458-.324 4.346-.584 8.443-.778 12.291-.194 3.849-.336 7.416-.422 10.702-.087 3.287-.13 6.162-.13 8.626 0 4.627.237 8.756.714 12.388.476 3.632 1.318 6.713 2.529 9.242 1.21 2.529 2.875 4.465 4.994 5.805 2.118 1.341 4.8 2.011 8.043 2.011 2.335 0 4.842-.378 7.523-1.135s5.837-1.979 9.469-3.665c1.168 1.168 1.838 2.595 2.011 4.28-2.464 1.645-5.005 3.157-7.621 4.541s-5.231 2.584-7.848 3.6c-2.616 1.015-5.167 1.815-7.653 2.399s-4.832.876-7.037.876c-2.897 0-5.545-.53-7.945-1.59-2.399-1.06-4.475-2.939-6.227-5.643-1.751-2.701-3.113-6.345-4.086-10.929-.973-4.582-1.459-10.376-1.459-17.381 0-7.956.237-16.183.713-24.679.476-8.497 1.146-16.938 2.011-25.328-3.416.043-6.583.185-9.502.422-2.918.238-5.415.616-7.491 1.135-.087-.13-.141-.302-.162-.519-.021-.216-.032-.389-.032-.519 0-.908.443-1.772 1.33-2.594.886-.821 2.118-1.567 3.696-2.238 1.578-.67 3.471-1.232 5.676-1.687s4.626-.767 7.264-.94c.432-3.934.886-7.826 1.362-11.674s.962-7.578 1.459-11.188.994-7.047 1.492-10.312c.496-3.264.982-6.259 1.459-8.983.216-1.167.616-2.14 1.2-2.918s1.254-1.395 2.011-1.849c.756-.454 1.578-.767 2.465-.94.886-.172 1.761-.259 2.626-.259 1.428 0 2.702.152 3.827.454 1.124.303 2.183.736 3.178 1.297-.735 3.632-1.427 7.405-2.075 11.318-.648 3.914-1.255 7.859-1.816 11.837-.562 3.979-1.081 7.945-1.557 11.901-.476 3.957-.907 7.815-1.297 11.578 6.615 0 13.199.076 19.75.227 6.551.152 13.155.314 19.814.487.864-8.475 1.848-16.755 2.95-24.841 1.103-8.085 2.346-15.847 3.729-23.284.216-1.124.616-2.053 1.2-2.789.584-.734 1.265-1.318 2.043-1.751.778-.432 1.621-.735 2.529-.908.908-.172 1.794-.259 2.659-.259 1.427 0 2.713.152 3.859.454 1.146.303 2.216.736 3.211 1.297-.908 4.108-1.752 8.346-2.53 12.712-.778 4.368-1.491 8.767-2.14 13.199-.648 4.433-1.232 8.865-1.752 13.296-.519 4.433-.973 8.788-1.361 13.069h3.826z"/><path d="m688.685 384.035c.26.13.595.314 1.006.552.41.238.788.498 1.135.778.346.281.648.584.908.908s.389.639.389.94c0 .173-.064.346-.194.519-2.422 3.372-5.026 6.303-7.815 8.788-2.789 2.487-5.687 4.562-8.691 6.227s-6.063 2.896-9.177 3.697c-3.113.8-6.185 1.199-9.21 1.199-5.189 0-9.946-1.06-14.27-3.178s-8.042-5.016-11.155-8.691c-3.113-3.674-5.546-7.987-7.297-12.938s-2.627-10.258-2.627-15.923c0-4.626.508-9.252 1.524-13.88 1.016-4.626 2.486-9.037 4.41-13.231s4.27-8.096 7.037-11.707c2.767-3.61 5.912-6.746 9.438-9.405 3.523-2.659 7.394-4.745 11.609-6.259 4.216-1.513 8.745-2.27 13.588-2.27 3.199 0 6.248.433 9.146 1.297 2.896.865 5.437 2.108 7.621 3.729 2.183 1.622 3.924 3.622 5.221 6s1.946 5.082 1.946 8.107c0 4.411-1.438 8.259-4.313 11.545-2.876 3.287-6.843 6.075-11.901 8.367-5.06 2.292-11.017 4.141-17.869 5.545-6.854 1.406-14.259 2.455-22.214 3.146v1.103c0 5.535.702 10.594 2.107 15.177s3.341 8.507 5.806 11.772c2.464 3.265 5.36 5.805 8.69 7.62 3.329 1.816 6.918 2.725 10.767 2.725 3.892 0 7.881-.962 11.967-2.887 4.084-1.923 8.223-5.048 12.418-9.372zm-12.194-52.081c0-1.988-.335-3.848-1.005-5.578-.671-1.729-1.601-3.232-2.789-4.508-1.189-1.275-2.605-2.28-4.248-3.016-1.644-.734-3.416-1.103-5.318-1.103-2.812 0-5.362.498-7.653 1.492-2.293.995-4.346 2.346-6.162 4.054-1.815 1.708-3.416 3.697-4.8 5.967s-2.562 4.681-3.534 7.231c-.973 2.552-1.763 5.167-2.367 7.848-.606 2.682-1.038 5.297-1.298 7.848 6.14-.432 11.643-1.177 16.507-2.237 4.864-1.059 8.972-2.421 12.323-4.086 3.351-1.664 5.912-3.653 7.686-5.967 1.772-2.312 2.658-4.961 2.658-7.945z"/></g><path d="m760.74 252.477-36.46-16.889-2.623-40.096c-.184-2.808-3.636-4.034-5.549-1.971l-27.329 29.456-38.944-9.895c-2.727-.693-4.96 2.212-3.59 4.669l19.57 35.094-21.446 33.98c-1.502 2.379.571 5.401 3.331 4.857l39.424-7.767 25.69 30.896c1.799 2.163 5.313 1.126 5.649-1.667l4.796-39.895 37.323-14.885c2.611-1.042 2.711-4.704.158-5.887z" fill="#ffdc65"/><g fill="#fff182"><path d="m680.765 179.618c.974 3.352 2.326 16.744 3.054 24.528.115 1.224-1.54 1.704-2.099.61-3.555-6.962-9.587-18.995-10.561-22.347-.771-2.653.755-5.428 3.408-6.198 2.652-.771 5.427.755 6.198 3.407z"/><path d="m757.849 207c-2.87 1.987-12.368 11.525-17.843 17.105-.861.877.12 2.294 1.244 1.797 7.15-3.159 19.421-8.691 22.292-10.678 2.271-1.572 2.838-4.688 1.266-6.959s-4.687-2.837-6.959-1.265z"/><path d="m760.413 296.075c-2.765-2.131-14.738-8.281-21.717-11.802-1.097-.554-2.149.812-1.334 1.731 5.183 5.852 14.181 15.863 16.946 17.994 2.188 1.686 5.328 1.279 7.015-.909 1.685-2.188 1.278-5.328-.91-7.014z"/><path d="m622.585 247.116c3.49.091 16.66 2.872 24.296 4.543 1.2.263 1.155 1.985-.057 2.185-7.713 1.271-21.01 3.363-24.5 3.272-2.761-.072-4.941-2.369-4.869-5.13.072-2.762 2.368-4.942 5.13-4.87z"/></g><path d="m722.61 210.073-.954-14.581c-.184-2.808-3.636-4.034-5.55-1.971l-27.329 29.456-38.944-9.895c-2.727-.693-4.96 2.212-3.59 4.669l19.57 35.094-21.446 33.98c-1.502 2.379.571 5.401 3.331 4.857l5.247-1.034c23.439-43.46 55.4-70.122 69.665-80.575z" fill="#fdc850"/></svg>
\ No newline at end of file
diff --git a/docs/img/starlette_dark.svg b/docs/img/starlette_dark.svg
new file mode 100644 (file)
index 0000000..7157dca
--- /dev/null
@@ -0,0 +1 @@
+<svg enable-background="new 0 0 800 600" viewBox="0 0 800 600" xmlns="http://www.w3.org/2000/svg"><g fill="#fff"><path d="m52.79 382.479c-.476 1.601-.822 3.168-1.038 4.702-.217 1.536-.324 3.038-.324 4.508 0 2.983.659 5.902 1.978 8.756 1.318 2.854 3.264 5.384 5.837 7.589 2.572 2.205 5.74 3.978 9.502 5.318s8.085 2.011 12.972 2.011c3.415 0 6.853-.324 10.312-.973s6.788-1.622 9.988-2.919c3.199-1.297 6.172-2.897 8.918-4.8s5.134-4.129 7.167-6.681c2.032-2.551 3.632-5.404 4.8-8.561s1.751-6.616 1.751-10.378c0-3.588-.486-6.852-1.459-9.793-.973-2.94-2.325-5.61-4.054-8.01s-3.773-4.605-6.129-6.616c-2.357-2.01-4.908-3.869-7.653-5.578-2.747-1.708-5.643-3.34-8.691-4.897-3.049-1.557-6.108-3.091-9.178-4.605-3.243-1.599-6.454-3.243-9.631-4.929-3.178-1.687-6.227-3.502-9.146-5.448-2.918-1.946-5.621-4.075-8.107-6.389-2.487-2.312-4.637-4.896-6.453-7.75s-3.243-6.021-4.281-9.502c-1.038-3.48-1.557-7.383-1.557-11.707 0-4.497.637-8.701 1.914-12.615 1.274-3.913 3.048-7.513 5.318-10.799 2.27-3.285 4.972-6.215 8.107-8.788 3.134-2.572 6.561-4.756 10.28-6.551 3.718-1.794 7.653-3.156 11.804-4.086 4.151-.929 8.41-1.394 12.777-1.394 3.978 0 7.956.421 11.934 1.265 3.978.843 7.556 2.151 10.734 3.924s5.761 4.032 7.75 6.778c1.988 2.746 2.983 6 2.983 9.761 0 1.946-.368 3.751-1.103 5.416-.736 1.665-1.741 3.113-3.016 4.346-1.276 1.232-2.756 2.195-4.443 2.886-1.686.692-3.459 1.038-5.318 1.038-.606 0-1.232-.032-1.881-.097-.648-.065-1.276-.205-1.881-.421l-.583-.584c.778-2.724 1.167-5.145 1.167-7.264 0-3.632-.627-6.626-1.881-8.983-1.255-2.356-2.886-4.226-4.897-5.61-2.011-1.383-4.281-2.356-6.81-2.918-2.53-.562-5.07-.843-7.621-.843-4.411 0-8.508.681-12.291 2.043-3.784 1.362-7.059 3.275-9.826 5.74-2.768 2.464-4.94 5.405-6.519 8.821s-2.367 7.178-2.367 11.285c0 3.502.475 6.681 1.427 9.534.951 2.854 2.28 5.459 3.989 7.815 1.708 2.357 3.729 4.519 6.064 6.486 2.335 1.968 4.875 3.805 7.621 5.513s5.643 3.34 8.691 4.897 6.129 3.092 9.242 4.605c3.07 1.514 6.183 3.081 9.34 4.702 3.156 1.622 6.227 3.395 9.21 5.318 2.983 1.925 5.783 4.033 8.399 6.324 2.616 2.292 4.907 4.843 6.875 7.653 1.967 2.812 3.512 5.946 4.637 9.405 1.124 3.46 1.687 7.308 1.687 11.545 0 5.794-.854 11.102-2.562 15.922-1.709 4.821-4.033 9.156-6.973 13.004-2.941 3.849-6.378 7.221-10.312 10.118-3.935 2.896-8.151 5.308-12.647 7.231-4.498 1.924-9.145 3.362-13.944 4.313-4.8.95-9.535 1.427-14.204 1.427-2.941 0-6.087-.238-9.437-.713-3.352-.477-6.692-1.2-10.021-2.173-3.33-.974-6.529-2.217-9.599-3.729-3.07-1.515-5.772-3.319-8.107-5.416-2.335-2.098-4.205-4.508-5.61-7.231-1.405-2.725-2.108-5.772-2.108-9.146 0-2.161.389-4.129 1.167-5.902.778-1.772 1.816-3.296 3.113-4.572 1.297-1.274 2.778-2.259 4.443-2.951 1.664-.69 3.383-1.037 5.156-1.037.649 0 1.308.055 1.979.162.67.108 1.351.292 2.043.551z"/><path d="m184.132 263.917c-1.816 8.216-3.34 16.701-4.573 25.458-1.232 8.756-2.281 17.393-3.146 25.911 2.032.087 4.01.152 5.935.194 1.923.043 3.718.087 5.383.13 1.664.043 3.178.065 4.54.065s2.497 0 3.405 0c3.934 0 7.156-.237 9.664-.714.216.736.389 1.406.519 2.011.13.606.195 1.167.195 1.687 0 1.903-.79 3.135-2.367 3.697-1.579.562-3.859.843-6.843.843-2.854 0-6.043-.172-9.567-.519-3.524-.345-7.384-.67-11.577-.973-.476 4.627-.875 9.135-1.2 13.523-.325 4.389-.584 8.529-.778 12.42-.195 3.892-.335 7.502-.422 10.832s-.129 6.227-.129 8.691c0 4.627.237 8.756.713 12.388.475 3.632 1.318 6.713 2.529 9.242 1.21 2.529 2.875 4.465 4.994 5.805 2.118 1.341 4.8 2.011 8.042 2.011 2.335 0 4.939-.41 7.815-1.232 2.875-.821 6.15-2.141 9.826-3.956 1.167 1.167 1.837 2.594 2.011 4.28-2.682 1.773-5.383 3.384-8.107 4.832-2.724 1.449-5.406 2.691-8.042 3.729-2.638 1.037-5.188 1.837-7.653 2.399s-4.8.844-7.005.844c-2.897 0-5.545-.53-7.945-1.59-2.399-1.06-4.475-2.939-6.226-5.643-1.751-2.701-3.113-6.345-4.086-10.929-.973-4.582-1.459-10.376-1.459-17.381 0-3.934.064-7.988.194-12.161.13-4.172.302-8.399.519-12.68.216-4.281.497-8.562.843-12.842.345-4.281.734-8.497 1.167-12.647-3.416.043-6.583.185-9.501.421-2.919.238-5.416.616-7.491 1.135-.13-.259-.195-.562-.195-.908 0-.908.443-1.761 1.33-2.562.886-.799 2.118-1.524 3.697-2.172 1.578-.649 3.47-1.189 5.675-1.622 2.206-.432 4.626-.735 7.264-.908.995-9.037 2.053-17.577 3.178-25.619 1.124-8.042 2.248-15.22 3.373-21.533.216-1.124.616-2.053 1.2-2.789.583-.734 1.265-1.318 2.043-1.751.778-.432 1.622-.735 2.529-.908.908-.172 1.794-.259 2.659-.259 1.427 0 2.713.152 3.859.454 1.145.302 2.216.735 3.211 1.296z"/><path d="m266.635 337.467c0-3.416-.562-6.377-1.687-8.886-1.125-2.507-2.594-4.562-4.41-6.162-1.816-1.599-3.87-2.789-6.162-3.567s-4.584-1.167-6.875-1.167c-3.071 0-5.665.324-7.783.973-2.119.648-3.838 1.535-5.156 2.659-1.319 1.125-2.27 2.455-2.854 3.989-.583 1.535-.875 3.189-.875 4.962 0 2.075.378 4.162 1.135 6.259.756 2.098 1.87 4.141 3.34 6.129l-.26.713c-2.464 1.211-4.952 1.816-7.458 1.816-1.471 0-2.844-.227-4.119-.681-1.276-.454-2.378-1.113-3.308-1.978-.931-.865-1.666-1.924-2.206-3.178-.541-1.254-.811-2.659-.811-4.216 0-2.551.616-4.951 1.849-7.199 1.232-2.248 2.864-4.302 4.896-6.162 2.032-1.859 4.388-3.524 7.07-4.994 2.681-1.47 5.448-2.713 8.302-3.729s5.718-1.794 8.594-2.335c2.875-.54 5.545-.811 8.01-.811 4.54 0 8.42.606 11.642 1.816 3.221 1.211 5.837 2.973 7.848 5.286 2.01 2.313 3.48 5.113 4.41 8.399.929 3.287 1.395 7.005 1.395 11.156 0 2.854-.12 5.989-.357 9.405-.238 3.416-.508 6.995-.811 10.734-.303 3.741-.574 7.6-.811 11.577-.238 3.979-.357 7.936-.357 11.87 0 6.226 1.156 10.906 3.47 14.041 2.312 3.136 5.351 4.702 9.112 4.702 3.329 0 7.047-1.232 11.156-3.696l1.881 2.789c-2.897 2.896-6.054 5.103-9.469 6.615-3.416 1.513-7.005 2.27-10.767 2.27-2.811 0-5.406-.476-7.783-1.427-2.378-.951-4.433-2.367-6.162-4.248s-3.07-4.248-4.021-7.102c-.952-2.854-1.427-6.162-1.427-9.924 0-1.124.032-2.247.097-3.372.065-1.124.205-2.312.421-3.567h-.389c-1.859 3.719-4.011 7.384-6.453 10.993-2.443 3.61-5.124 6.832-8.042 9.664-2.919 2.832-6.032 5.124-9.34 6.875s-6.778 2.627-10.41 2.627c-2.984 0-5.708-.52-8.172-1.557-2.465-1.038-4.573-2.465-6.324-4.281-1.751-1.815-3.113-3.966-4.086-6.453-.973-2.486-1.459-5.199-1.459-8.14 0-3.805.702-7.264 2.108-10.377 1.404-3.113 3.35-5.902 5.837-8.367 2.486-2.465 5.458-4.594 8.918-6.389 3.458-1.794 7.221-3.286 11.285-4.476 4.064-1.188 8.367-2.075 12.907-2.659 4.54-.583 9.167-.875 13.88-.875.302-2.724.551-5.361.746-7.913.198-2.55.295-5.36.295-8.431zm-39.823 44.558c0 1.686.183 3.297.551 4.832.367 1.534.951 2.886 1.751 4.053.8 1.168 1.816 2.087 3.048 2.757 1.232.671 2.713 1.005 4.443 1.005 1.946 0 3.957-.454 6.032-1.361 2.076-.908 4.119-2.162 6.129-3.762s3.934-3.513 5.772-5.74c1.837-2.227 3.491-4.659 4.962-7.296 1.469-2.637 2.691-5.416 3.664-8.334s1.61-5.912 1.914-8.983c-3.2.087-6.378.292-9.534.616-3.157.324-6.151.833-8.983 1.524-2.833.692-5.459 1.6-7.88 2.724-2.422 1.125-4.508 2.52-6.259 4.184-1.751 1.665-3.125 3.632-4.119 5.902-.994 2.269-1.491 4.896-1.491 7.879z"/><path d="m314.569 405.828-1.038-.065c.346-4.107.67-8.582.973-13.426.302-4.842.583-9.761.843-14.754.259-4.994.486-9.945.681-14.853.195-4.907.367-9.491.519-13.75.151-4.258.259-8.075.324-11.447.065-3.373.097-6.032.097-7.978 0-1.599-.064-2.983-.194-4.151s-.421-2.14-.875-2.918-1.114-1.351-1.979-1.719c-.865-.367-2.033-.551-3.502-.551-.736 0-1.492.043-2.271.129-.778.087-1.644.217-2.594.389-.952.173-2.021.4-3.21.681-1.19.282-2.562.616-4.119 1.005l-.973-4.67c7.177-2.594 12.993-4.42 17.447-5.48 4.453-1.059 7.459-1.589 9.016-1.589 2.854 0 4.897.833 6.129 2.497 1.232 1.665 1.849 4.141 1.849 7.426 0 .303-.043 1.189-.13 2.659s-.206 3.384-.356 5.74c-.152 2.357-.335 5.092-.551 8.205-.217 3.113-.465 6.454-.746 10.021-.282 3.567-.595 7.287-.94 11.156-.347 3.87-.713 7.729-1.103 11.577l.648.065c2.076-8.474 4.421-16.377 7.038-23.706 2.615-7.329 5.555-13.695 8.821-19.101 3.264-5.404 6.853-9.653 10.766-12.745 3.913-3.091 8.205-4.637 12.875-4.637 1.643 0 3.178.259 4.605.778s2.66 1.243 3.697 2.173c1.038.93 1.858 2.033 2.464 3.308.605 1.276.908 2.67.908 4.184 0 1.945-.421 3.816-1.265 5.61-.843 1.795-2.173 3.384-3.989 4.767h-.519c-1.816-1.513-3.535-2.604-5.156-3.275-1.622-.67-3.34-1.005-5.156-1.005-1.946 0-3.827.368-5.643 1.103-1.816.736-3.481 1.794-4.994 3.178-2.465 2.249-4.757 5.221-6.875 8.918-2.119 3.697-4.054 7.794-5.805 12.291-1.751 4.498-3.33 9.221-4.734 14.172-1.406 4.952-2.617 9.772-3.632 14.463-1.017 4.692-1.838 9.103-2.465 13.23-.627 4.13-1.07 7.6-1.33 10.41z"/><path d="m412.184 230.061c-.865 7.351-1.718 14.885-2.562 22.603-.843 7.718-1.644 15.523-2.399 23.414-.757 7.892-1.46 15.815-2.108 23.771s-1.211 15.793-1.687 23.511-.843 15.296-1.103 22.733c-.259 7.438-.389 14.572-.389 21.403 0 4.281.054 7.957.162 11.026.107 3.07.28 5.665.519 7.783.237 2.119.562 3.826.973 5.124.411 1.297.919 2.292 1.524 2.983s1.318 1.157 2.141 1.395c.821.237 1.794.356 2.919.356 2.076 0 4.312-.313 6.713-.94 2.4-.626 4.832-1.502 7.297-2.627l1.232 3.373c-1.557 1.254-3.514 2.529-5.871 3.826-2.355 1.297-4.832 2.487-7.426 3.567-2.595 1.08-5.135 1.956-7.621 2.627-2.486.67-4.637 1.005-6.454 1.005-2.335 0-4.183-.595-5.545-1.783s-2.399-3.123-3.113-5.805c-.713-2.681-1.167-6.172-1.362-10.475-.194-4.302-.292-9.544-.292-15.728 0-2.248.065-5.458.195-9.632.129-4.172.313-9.025.551-14.561.237-5.535.508-11.587.811-18.161.302-6.572.626-13.371.973-20.398.345-7.026.713-14.117 1.103-21.274.389-7.156.778-14.074 1.167-20.755.389-6.68.756-12.982 1.103-18.906.346-5.923.67-11.156.973-15.696.043-1.038.346-1.935.908-2.692.562-.756 1.286-1.362 2.173-1.816.886-.454 1.881-.789 2.983-1.005 1.103-.216 2.215-.324 3.34-.324 2.594.002 5.318.695 8.172 2.078z"/><path d="m495.011 384.035c.26.13.595.314 1.006.552.41.238.788.498 1.135.778.346.281.648.584.908.908s.389.639.389.94c0 .173-.064.346-.194.519-2.422 3.372-5.026 6.303-7.815 8.788-2.789 2.487-5.687 4.562-8.691 6.227s-6.063 2.896-9.177 3.697c-3.113.8-6.185 1.199-9.21 1.199-5.189 0-9.946-1.06-14.27-3.178s-8.042-5.016-11.155-8.691c-3.113-3.674-5.546-7.987-7.297-12.938s-2.627-10.258-2.627-15.923c0-4.626.508-9.252 1.524-13.88 1.016-4.626 2.486-9.037 4.41-13.231s4.27-8.096 7.037-11.707c2.767-3.61 5.912-6.746 9.438-9.405 3.523-2.659 7.394-4.745 11.609-6.259 4.216-1.513 8.745-2.27 13.588-2.27 3.199 0 6.248.433 9.146 1.297 2.896.865 5.437 2.108 7.621 3.729 2.183 1.622 3.924 3.622 5.221 6s1.946 5.082 1.946 8.107c0 4.411-1.438 8.259-4.313 11.545-2.876 3.287-6.843 6.075-11.901 8.367-5.06 2.292-11.017 4.141-17.869 5.545-6.854 1.406-14.259 2.455-22.214 3.146v1.103c0 5.535.702 10.594 2.107 15.177s3.341 8.507 5.806 11.772c2.464 3.265 5.36 5.805 8.69 7.62 3.329 1.816 6.918 2.725 10.767 2.725 3.892 0 7.881-.962 11.967-2.887 4.084-1.923 8.223-5.048 12.418-9.372zm-12.194-52.081c0-1.988-.335-3.848-1.005-5.578-.671-1.729-1.601-3.232-2.789-4.508-1.189-1.275-2.605-2.28-4.248-3.016-1.644-.734-3.416-1.103-5.318-1.103-2.812 0-5.362.498-7.653 1.492-2.293.995-4.346 2.346-6.162 4.054-1.815 1.708-3.416 3.697-4.8 5.967s-2.562 4.681-3.534 7.231c-.973 2.552-1.763 5.167-2.367 7.848-.606 2.682-1.038 5.297-1.298 7.848 6.14-.432 11.643-1.177 16.507-2.237 4.864-1.059 8.972-2.421 12.323-4.086 3.351-1.664 5.912-3.653 7.686-5.967 1.772-2.312 2.658-4.961 2.658-7.945z"/><path d="m591.978 316.193c3.373 0 6.421-.042 9.146-.129 2.724-.086 4.842-.172 6.356-.26 1.945-.086 3.739-.194 5.383-.324 1.643-.13 3.069-.302 4.28-.519.476 1.644.714 2.941.714 3.892 0 1.903-.789 3.189-2.367 3.859-1.579.671-3.859 1.005-6.843 1.005-2.854 0-6.054-.043-9.599-.13-3.547-.086-7.417-.216-11.61-.389-.477 4.973-.865 9.708-1.167 14.204-.304 4.498-.552 8.648-.746 12.453-.194 3.806-.336 7.178-.422 10.118-.087 2.941-.13 5.341-.13 7.199 0 4.627.237 8.756.714 12.388.476 3.632 1.318 6.713 2.529 9.242 1.21 2.529 2.875 4.465 4.994 5.805 2.118 1.341 4.8 2.011 8.043 2.011 2.335 0 4.939-.41 7.815-1.232 2.875-.821 6.15-2.141 9.826-3.956 1.167 1.167 1.837 2.594 2.011 4.28-2.682 1.773-5.384 3.384-8.107 4.832-2.725 1.449-5.406 2.691-8.043 3.729-2.638 1.037-5.188 1.837-7.653 2.399s-4.8.844-7.005.844c-2.897 0-5.545-.53-7.945-1.59-2.399-1.06-4.475-2.939-6.227-5.643-1.751-2.701-3.113-6.345-4.086-10.929-.973-4.582-1.459-10.376-1.459-17.381 0-7.653.227-15.576.681-23.771.454-8.193 1.113-16.657 1.979-25.392-5.362-.216-10.929-.389-16.701-.519-5.772-.129-11.771-.194-17.998-.194h-4.865c-.476 4.627-.875 9.113-1.199 13.458-.324 4.346-.584 8.443-.778 12.291-.194 3.849-.336 7.416-.422 10.702-.087 3.287-.13 6.162-.13 8.626 0 4.627.237 8.756.714 12.388.476 3.632 1.318 6.713 2.529 9.242 1.21 2.529 2.875 4.465 4.994 5.805 2.118 1.341 4.8 2.011 8.043 2.011 2.335 0 4.842-.378 7.523-1.135s5.837-1.979 9.469-3.665c1.168 1.168 1.838 2.595 2.011 4.28-2.464 1.645-5.005 3.157-7.621 4.541s-5.231 2.584-7.848 3.6c-2.616 1.015-5.167 1.815-7.653 2.399s-4.832.876-7.037.876c-2.897 0-5.545-.53-7.945-1.59-2.399-1.06-4.475-2.939-6.227-5.643-1.751-2.701-3.113-6.345-4.086-10.929-.973-4.582-1.459-10.376-1.459-17.381 0-7.956.237-16.183.713-24.679.476-8.497 1.146-16.938 2.011-25.328-3.416.043-6.583.185-9.502.422-2.918.238-5.415.616-7.491 1.135-.087-.13-.141-.302-.162-.519-.021-.216-.032-.389-.032-.519 0-.908.443-1.772 1.33-2.594.886-.821 2.118-1.567 3.696-2.238 1.578-.67 3.471-1.232 5.676-1.687s4.626-.767 7.264-.94c.432-3.934.886-7.826 1.362-11.674s.962-7.578 1.459-11.188.994-7.047 1.492-10.312c.496-3.264.982-6.259 1.459-8.983.216-1.167.616-2.14 1.2-2.918s1.254-1.395 2.011-1.849c.756-.454 1.578-.767 2.465-.94.886-.172 1.761-.259 2.626-.259 1.428 0 2.702.152 3.827.454 1.124.303 2.183.736 3.178 1.297-.735 3.632-1.427 7.405-2.075 11.318-.648 3.914-1.255 7.859-1.816 11.837-.562 3.979-1.081 7.945-1.557 11.901-.476 3.957-.907 7.815-1.297 11.578 6.615 0 13.199.076 19.75.227 6.551.152 13.155.314 19.814.487.864-8.475 1.848-16.755 2.95-24.841 1.103-8.085 2.346-15.847 3.729-23.284.216-1.124.616-2.053 1.2-2.789.584-.734 1.265-1.318 2.043-1.751.778-.432 1.621-.735 2.529-.908.908-.172 1.794-.259 2.659-.259 1.427 0 2.713.152 3.859.454 1.146.303 2.216.736 3.211 1.297-.908 4.108-1.752 8.346-2.53 12.712-.778 4.368-1.491 8.767-2.14 13.199-.648 4.433-1.232 8.865-1.752 13.296-.519 4.433-.973 8.788-1.361 13.069h3.826z"/><path d="m688.685 384.035c.26.13.595.314 1.006.552.41.238.788.498 1.135.778.346.281.648.584.908.908s.389.639.389.94c0 .173-.064.346-.194.519-2.422 3.372-5.026 6.303-7.815 8.788-2.789 2.487-5.687 4.562-8.691 6.227s-6.063 2.896-9.177 3.697c-3.113.8-6.185 1.199-9.21 1.199-5.189 0-9.946-1.06-14.27-3.178s-8.042-5.016-11.155-8.691c-3.113-3.674-5.546-7.987-7.297-12.938s-2.627-10.258-2.627-15.923c0-4.626.508-9.252 1.524-13.88 1.016-4.626 2.486-9.037 4.41-13.231s4.27-8.096 7.037-11.707c2.767-3.61 5.912-6.746 9.438-9.405 3.523-2.659 7.394-4.745 11.609-6.259 4.216-1.513 8.745-2.27 13.588-2.27 3.199 0 6.248.433 9.146 1.297 2.896.865 5.437 2.108 7.621 3.729 2.183 1.622 3.924 3.622 5.221 6s1.946 5.082 1.946 8.107c0 4.411-1.438 8.259-4.313 11.545-2.876 3.287-6.843 6.075-11.901 8.367-5.06 2.292-11.017 4.141-17.869 5.545-6.854 1.406-14.259 2.455-22.214 3.146v1.103c0 5.535.702 10.594 2.107 15.177s3.341 8.507 5.806 11.772c2.464 3.265 5.36 5.805 8.69 7.62 3.329 1.816 6.918 2.725 10.767 2.725 3.892 0 7.881-.962 11.967-2.887 4.084-1.923 8.223-5.048 12.418-9.372zm-12.194-52.081c0-1.988-.335-3.848-1.005-5.578-.671-1.729-1.601-3.232-2.789-4.508-1.189-1.275-2.605-2.28-4.248-3.016-1.644-.734-3.416-1.103-5.318-1.103-2.812 0-5.362.498-7.653 1.492-2.293.995-4.346 2.346-6.162 4.054-1.815 1.708-3.416 3.697-4.8 5.967s-2.562 4.681-3.534 7.231c-.973 2.552-1.763 5.167-2.367 7.848-.606 2.682-1.038 5.297-1.298 7.848 6.14-.432 11.643-1.177 16.507-2.237 4.864-1.059 8.972-2.421 12.323-4.086 3.351-1.664 5.912-3.653 7.686-5.967 1.772-2.312 2.658-4.961 2.658-7.945z"/></g><path d="m760.74 252.477-36.46-16.889-2.623-40.096c-.184-2.808-3.636-4.034-5.549-1.971l-27.329 29.456-38.944-9.895c-2.727-.693-4.96 2.212-3.59 4.669l19.57 35.094-21.446 33.98c-1.502 2.379.571 5.401 3.331 4.857l39.424-7.767 25.69 30.896c1.799 2.163 5.313 1.126 5.649-1.667l4.796-39.895 37.323-14.885c2.611-1.042 2.711-4.704.158-5.887z" fill="#ffdc65"/><path d="m680.765 179.618c.974 3.352 2.326 16.744 3.054 24.528.115 1.224-1.54 1.704-2.099.61-3.555-6.962-9.587-18.995-10.561-22.347-.771-2.653.755-5.428 3.408-6.198 2.652-.771 5.427.755 6.198 3.407z" fill="#fff182"/><path d="m757.849 207c-2.87 1.987-12.368 11.525-17.843 17.105-.861.877.12 2.294 1.244 1.797 7.15-3.159 19.421-8.691 22.292-10.678 2.271-1.572 2.838-4.688 1.266-6.959s-4.687-2.837-6.959-1.265z" fill="#fff182"/><path d="m760.413 296.075c-2.765-2.131-14.738-8.281-21.717-11.802-1.097-.554-2.149.812-1.334 1.731 5.183 5.852 14.181 15.863 16.946 17.994 2.188 1.686 5.328 1.279 7.015-.909 1.685-2.188 1.278-5.328-.91-7.014z" fill="#fff182"/><path d="m622.585 247.116c3.49.091 16.66 2.872 24.296 4.543 1.2.263 1.155 1.985-.057 2.185-7.713 1.271-21.01 3.363-24.5 3.272-2.761-.072-4.941-2.369-4.869-5.13.072-2.762 2.368-4.942 5.13-4.87z" fill="#fff182"/><path d="m722.61 210.073-.954-14.581c-.184-2.808-3.636-4.034-5.55-1.971l-27.329 29.456-38.944-9.895c-2.727-.693-4.96 2.212-3.59 4.669l19.57 35.094-21.446 33.98c-1.502 2.379.571 5.401 3.331 4.857l5.247-1.034c23.439-43.46 55.4-70.122 69.665-80.575z" fill="#fdc850"/></svg>
\ No newline at end of file
index 44f0c3708a25171da9a5f3c7ff0ed82cda368479..cc243b43c637bd841e497125562ef52f1909d84d 100644 (file)
@@ -1,5 +1,10 @@
+---
+hide: navigation
+---
+
 <p align="center">
-  <img width="420px" src="/img/starlette.png" alt='starlette'>
+  <img width="400px" src="/img/starlette.svg#only-light" alt="starlette"/>
+  <img width="400px" src="/img/starlette_dark.svg#only-dark" alt="starlette"/>
 </p>
 <p align="center">
     <em>✨ The little ASGI framework that shines. ✨</em>
 <a href="https://pypi.org/project/starlette/">
     <img src="https://badge.fury.io/py/starlette.svg" alt="Package version">
 </a>
+<a href="https://pypi.org/project/starlette" target="_blank">
+    <img src="https://img.shields.io/pypi/pyversions/starlette.svg?color=%2334D058" alt="Supported Python versions">
+</a>
 </p>
 
 ---
 
+**Documentation**: <a href="https://www.starlette.io/" target="_blank">https://www.starlette.io</a>
+
+**Source Code**: <a href="https://github.com/encode/starlette" target="_blank">https://github.com/encode/starlette</a>
+
+---
 
 # Introduction
 
@@ -36,27 +49,21 @@ It is production-ready, and gives you the following:
 * Compatible with `asyncio` and `trio` backends.
 * Great overall performance [against independent benchmarks][techempower].
 
-## Requirements
-
-Python 3.8+
-
 ## Installation
 
 ```shell
-$ pip3 install starlette
+$ pip install starlette
 ```
 
 You'll also want to install an ASGI server, such as [uvicorn](https://www.uvicorn.org/), [daphne](https://github.com/django/daphne/), or [hypercorn](https://hypercorn.readthedocs.io/en/latest/).
 
 ```shell
-$ pip3 install uvicorn
+$ pip install uvicorn
 ```
 
 ## Example
 
-**example.py**:
-
-```python
+```python title="example.py"
 from starlette.applications import Starlette
 from starlette.responses import JSONResponse
 from starlette.routing import Route
@@ -89,7 +96,7 @@ Starlette only requires `anyio`, and the following dependencies are optional:
 * [`itsdangerous`][itsdangerous] - Required for `SessionMiddleware` support.
 * [`pyyaml`][pyyaml] - Required for `SchemaGenerator` support.
 
-You can install all of these with `pip3 install starlette[full]`.
+You can install all of these with `pip install starlette[full]`.
 
 ## Framework or Toolkit
 
diff --git a/docs/overrides/partials/nav.html b/docs/overrides/partials/nav.html
deleted file mode 100644 (file)
index 93d5c8c..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-{% import "partials/nav-item.html" as item with context %}
-
-<!-- Determine class according to configuration -->
- {% set class = "md-nav md-nav--primary" %}
- {% if "navigation.tabs" in features %}
-   {% set class = class ~ " md-nav--lifted" %}
- {% endif %}
- {% if "toc.integrate" in features %}
-   {% set class = class ~ " md-nav--integrated" %}
- {% endif %}
-
- <!-- Main navigation -->
- <nav
-   class="{{ class }}"
-   aria-label="{{ lang.t('nav.title') }}"
-   data-md-level="0"
- >
-
-   <!-- Site title -->
-   <label class="md-nav__title" for="__drawer">
-     <a
-       href="{{ config.extra.homepage | d(nav.homepage.url, true) | url }}"
-       title="{{ config.site_name | e }}"
-       class="md-nav__button md-logo"
-       aria-label="{{ config.site_name }}"
-       data-md-component="logo"
-     >
-       {% include "partials/logo.html" %}
-     </a>
-     {{ config.site_name }}
-   </label>
-
-   <!-- Repository information -->
-   {% if config.repo_url %}
-     <div class="md-nav__source">
-       {% include "partials/source.html" %}
-     </div>
-   {% endif %}
-
-   <!-- Navigation list -->
-   <ul class="md-nav__list" data-md-scrollfix>
-     {% for nav_item in nav %}
-       {% set path = "__nav_" ~ loop.index %}
-       {{ item.render(nav_item, path, 1) }}
-     {% endfor %}
-   </ul>
-
-   <ul class="md-nav__list" data-md-scrollfix style="padding-top: 15px; padding-left: 10px">
-     <div>
-       <a href="https://fastapi.tiangolo.com"><img src="/sponsors/fastapi.png" width=150px style=></img></a>
-     </div>
-   </ul>
- </nav>
diff --git a/docs/overrides/partials/toc-item.html b/docs/overrides/partials/toc-item.html
new file mode 100644 (file)
index 0000000..12f8e3d
--- /dev/null
@@ -0,0 +1,18 @@
+<!-- Copied from https://github.com/squidfunk/mkdocs-material/issues/4827#issuecomment-1869812019 -->
+<li class="md-nav__item"></li>
+<a href="{{ toc_item.url }}" class="md-nav__link">
+    <span class="md-ellipsis">
+        {{ toc_item.title }}
+    </span>
+</a>
+
+<!-- Table of contents list -->
+{% if toc_item.children %}
+<nav class="md-nav" aria-label="{{ toc_item.title | striptags }}">
+    <ul class="md-nav__list">
+        {% for toc_item in toc_item.children %}
+        {% if not page.meta.toc_depth or toc_item.level <= page.meta.toc_depth %} {% include "partials/toc-item.html" %}
+            {% endif %} {% endfor %} </ul>
+</nav>
+{% endif %}
+</li>
index 1597fc4f117a47ee729f8c47616432b1f49f55b8..512de7ddc1a2fde597bdfce48b788afe69bffa3d 100644 (file)
@@ -1,6 +1,9 @@
-## 0.38.3
+---
+hide: navigation
+toc_depth: 2
+---
 
-September 1, 2024
+## 0.38.3 (September 1, 2024)
 
 #### Added
 
@@ -10,25 +13,19 @@ September 1, 2024
 
 * Don't poll for disconnects in `BaseHTTPMiddleware` via `StreamingResponse` [#2620](https://github.com/encode/starlette/pull/2620).
 
-## 0.38.2
-
-July 27, 2024
+## 0.38.2 (July 27, 2024)
 
 #### Fixed
 
 * Not assume all routines have `__name__` on `routing.get_name()` [#2648](https://github.com/encode/starlette/pull/2648).
 
-## 0.38.1
-
-July 23, 2024
+## 0.38.1 (July 23, 2024)
 
 #### Removed
 
 * Revert "Add support for ASGI pathsend extension" [#2649](https://github.com/encode/starlette/pull/2649).
 
-## 0.38.0
-
-July 20, 2024
+## 0.38.0 (July 20, 2024)
 
 #### Added
 
@@ -45,9 +42,7 @@ July 20, 2024
 
 * Add proper synchronization to `WebSocketTestSession` [#2597](https://github.com/encode/starlette/pull/2597).
 
-## 0.37.2
-
-March 5, 2024
+## 0.37.2 (March 5, 2024)
 
 #### Added
 
@@ -58,50 +53,38 @@ March 5, 2024
 * Revert "Turn `scope["client"]` to `None` on `TestClient` (#2377)" [#2525](https://github.com/encode/starlette/pull/2525).
 * Remove deprecated `app` argument passed to `httpx.Client` on the `TestClient` [#2526](https://github.com/encode/starlette/pull/2526).
 
-## 0.37.1
-
-February 9, 2024
+## 0.37.1 (February 9, 2024)
 
 #### Fixed
 
 * Warn instead of raise for missing env file on `Config` [#2485](https://github.com/encode/starlette/pull/2485).
 
-## 0.37.0
-
-February 5, 2024
+## 0.37.0 (February 5, 2024)
 
 #### Added
 
 * Support the WebSocket Denial Response ASGI extension [#2041](https://github.com/encode/starlette/pull/2041).
 
-## 0.36.3
-
-February 4, 2024
+## 0.36.3 (February 4, 2024)
 
 #### Fixed
 
 * Create `anyio.Event` on async context [#2459](https://github.com/encode/starlette/pull/2459).
 
-## 0.36.2
-
-February 3, 2024
+## 0.36.2 (February 3, 2024)
 
 #### Fixed
 
 * Upgrade `python-multipart` to `0.0.7` [13e5c26](13e5c26a27f4903924624736abd6131b2da80cc5).
 * Avoid duplicate charset on `Content-Type` [#2443](https://github.com/encode/starlette/2443).
 
-## 0.36.1
-
-January 23, 2024
+## 0.36.1 (January 23, 2024)
 
 #### Fixed
 
 * Check if "extensions" in scope before checking the extension [#2438](http://github.com/encode/starlette/pull/2438).
 
-## 0.36.0
-
-January 22, 2024
+## 0.36.0 (January 22, 2024)
 
 #### Added
 
@@ -110,18 +93,14 @@ January 22, 2024
 * Raise `WebSocketDisconnect` when `WebSocket.send()` excepts `IOError` [#2425](http://github.com/encode/starlette/pull/2425).
 * Raise `FileNotFoundError` when the `env_file` parameter on `Config` is not valid [#2422](http://github.com/encode/starlette/pull/2422).
 
-## 0.35.1
-
-January 11, 2024
+## 0.35.1 (January 11, 2024)
 
 #### Fixed
 
 * Stop using the deprecated "method" parameter in `FileResponse` inside of `StaticFiles` [#2406](https://github.com/encode/starlette/pull/2406).
 * Make `typing-extensions` optional again [#2409](https://github.com/encode/starlette/pull/2409).
 
-## 0.35.0
-
-January 11, 2024
+## 0.35.0 (January 11, 2024)
 
 #### Added
 
@@ -136,9 +115,7 @@ January 11, 2024
 * Handle `root_path` to keep compatibility with mounted ASGI applications and WSGI [#2400](https://github.com/encode/starlette/pull/2400).
 * Turn `scope["client"]` to `None` on `TestClient` [#2377](https://github.com/encode/starlette/pull/2377).
 
-## 0.34.0
-
-December 16, 2023
+## 0.34.0 (December 16, 2023)
 
 ### Added
 
@@ -154,9 +131,7 @@ December 16, 2023
 
 * Deprecate `FileResponse(method=...)` parameter [#2366](https://github.com/encode/starlette/pull/2366).
 
-## 0.33.0
-
-December 1, 2023
+## 0.33.0 (December 1, 2023)
 
 ### Added
 
@@ -168,17 +143,13 @@ December 1, 2023
 * Do not overwrite `"path"` and `"root_path"` scope keys [#2352](https://github.com/encode/starlette/pull/2352).
 * Set `ensure_ascii=False` on `json.dumps()` for `WebSocket.send_json()` [#2341](https://github.com/encode/starlette/pull/2341).
 
-## 0.32.0.post1
-
-November 5, 2023
+## 0.32.0.post1 (November 5, 2023)
 
 ### Fixed
 
 * Revert mkdocs-material from 9.1.17 to 9.4.7 [#2326](https://github.com/encode/starlette/pull/2326).
 
-## 0.32.0
-
-November 4, 2023
+## 0.32.0 (November 4, 2023)
 
 ### Added
 
@@ -190,18 +161,14 @@ November 4, 2023
 * Inherit from `HTMLResponse` instead of `Response` on `_TemplateResponse` [#2274](https://github.com/encode/starlette/pull/2274).
 * Restore the `Response.render` type annotation to its pre-0.31.0 state [#2264](https://github.com/encode/starlette/pull/2264).
 
-## 0.31.1
-
-August 26, 2023
+## 0.31.1 (August 26, 2023)
 
 ### Fixed
 
 * Fix import error when `exceptiongroup` isn't available [#2231](https://github.com/encode/starlette/pull/2231).
 * Set `url_for` global for custom Jinja environments [#2230](https://github.com/encode/starlette/pull/2230).
 
-## 0.31.0
-
-July 24, 2023
+## 0.31.0 (July 24, 2023)
 
 ### Added
 
@@ -213,17 +180,13 @@ July 24, 2023
 
 * Don't group duplicated headers on a single string when using the `TestClient` [#2219](https://github.com/encode/starlette/pull/2219).
 
-## 0.30.0
-
-July 13, 2023
+## 0.30.0 (July 13, 2023)
 
 ### Removed
 
 * Drop Python 3.7 support [#2178](https://github.com/encode/starlette/pull/2178).
 
-## 0.29.0
-
-July 13, 2023
+## 0.29.0 (July 13, 2023)
 
 ### Added
 
@@ -237,9 +200,7 @@ July 13, 2023
 
 * Stop `body_stream` in case `more_body=False` on `BaseHTTPMiddleware` [#2194](https://github.com/encode/starlette/pull/2194).
 
-## 0.28.0
-
-June 7, 2023
+## 0.28.0 (June 7, 2023)
 
 ### Changed
 * Reuse `Request`'s body buffer for call_next in `BaseHTTPMiddleware` [#1692](https://github.com/encode/starlette/pull/1692).
@@ -252,9 +213,7 @@ June 7, 2023
 ### Fixed
 * Allow "name" argument on `templates url_for()` [#2127](https://github.com/encode/starlette/pull/2127).
 
-## 0.27.0
-
-May 16, 2023
+## 0.27.0 (May 16, 2023)
 
 This release fixes a path traversal vulnerability in `StaticFiles`. You can view the full security advisory:
 https://github.com/encode/starlette/security/advisories/GHSA-v5gw-mw7f-84px
@@ -267,23 +226,17 @@ https://github.com/encode/starlette/security/advisories/GHSA-v5gw-mw7f-84px
 * Convert ImportErrors into ModuleNotFoundError [#2135](https://github.com/encode/starlette/pull/2135).
 * Correct the RuntimeError message content in websockets [#2141](https://github.com/encode/starlette/pull/2141).
 
-## 0.26.1
-
-March 13, 2023
+## 0.26.1 (March 13, 2023)
 
 ### Fixed
 * Fix typing of Lifespan to allow subclasses of Starlette [#2077](https://github.com/encode/starlette/pull/2077).
 
-## 0.26.0.post1
-
-March 9, 2023
+## 0.26.0.post1 (March 9, 2023)
 
 ### Fixed
 * Replace reference from Events to Lifespan on the mkdocs.yml [#2072](https://github.com/encode/starlette/pull/2072).
 
-## 0.26.0
-
-March 9, 2023
+## 0.26.0 (March 9, 2023)
 
 ### Added
 * Support [lifespan state](lifespan.md) [#2060](https://github.com/encode/starlette/pull/2060),
@@ -298,16 +251,12 @@ March 9, 2023
 ### Deprecated
 * Deprecate `on_startup` and `on_shutdown` events [#2070](https://github.com/encode/starlette/pull/2070).
 
-## 0.25.0
-
-February 14, 2023
+## 0.25.0 (February 14, 2023)
 
 ### Fix
 * Limit the number of fields and files when parsing `multipart/form-data` on the `MultipartParser` [8c74c2c](https://github.com/encode/starlette/commit/8c74c2c8dba7030154f8af18e016136bea1938fa) and [#2036](https://github.com/encode/starlette/pull/2036).
 
-## 0.24.0
-
-February 6, 2023
+## 0.24.0 (February 6, 2023)
 
 ### Added
 * Allow `StaticFiles` to follow symlinks [#1683](https://github.com/encode/starlette/pull/1683).
@@ -325,16 +274,12 @@ February 6, 2023
 ### Fixed
 * Fix url parsing of ipv6 urls on `URL.replace` [#1965](https://github.com/encode/starlette/pull/1965).
 
-## 0.23.1
-
-December 9, 2022
+## 0.23.1 (December 9, 2022)
 
 ### Fixed
 * Only stop receiving stream on `body_stream` if body is empty on the `BaseHTTPMiddleware` [#1940](https://github.com/encode/starlette/pull/1940).
 
-## 0.23.0
-
-December 5, 2022
+## 0.23.0 (December 5, 2022)
 
 ### Added
 * Add `headers` parameter to the `TestClient` [#1966](https://github.com/encode/starlette/pull/1966).
@@ -345,9 +290,7 @@ December 5, 2022
 ### Fixed
 * Fix bug on `FloatConvertor` regex [#1973](https://github.com/encode/starlette/pull/1973).
 
-## 0.22.0
-
-November 17, 2022
+## 0.22.0 (November 17, 2022)
 
 ### Changed
 * Bypass `GZipMiddleware` when response includes `Content-Encoding` [#1901](https://github.com/encode/starlette/pull/1901).
@@ -357,9 +300,7 @@ November 17, 2022
 * Make sure `MutableHeaders._list` is actually a `list` [#1917](https://github.com/encode/starlette/pull/1917).
 * Import compatibility with the next version of `AnyIO` [#1936](https://github.com/encode/starlette/pull/1936).
 
-## 0.21.0
-
-September 26, 2022
+## 0.21.0 (September 26, 2022)
 
 This release replaces the underlying HTTP client used on the `TestClient` (`requests` :arrow_right: `httpx`), and as those clients [differ _a bit_ on their API](https://www.python-httpx.org/compatibility/), your test suite will likely break. To make the migration smoother, you can use the [`bump-testclient`](https://github.com/Kludex/bump-testclient) tool.
 
@@ -375,31 +316,23 @@ This release replaces the underlying HTTP client used on the `TestClient` (`requ
 ### Fixed
 * Fix bug on which `BackgroundTasks` were cancelled when using `BaseHTTPMiddleware` and client disconnected [#1715](https://github.com/encode/starlette/pull/1715).
 
-## 0.20.4
-
-June 28, 2022
+## 0.20.4 (June 28, 2022)
 
 ### Fixed
 * Remove converter from path when generating OpenAPI schema [#1648](https://github.com/encode/starlette/pull/1648).
 
-## 0.20.3
-
-June 10, 2022
+## 0.20.3 (June 10, 2022)
 
 ### Fixed
 * Revert "Allow `StaticFiles` to follow symlinks" [#1681](https://github.com/encode/starlette/pull/1681).
 
-## 0.20.2
-
-June 7, 2022
+## 0.20.2 (June 7, 2022)
 
 ### Fixed
 * Fix regression on route paths with colons [#1675](https://github.com/encode/starlette/pull/1675).
 * Allow `StaticFiles` to follow symlinks [#1337](https://github.com/encode/starlette/pull/1377).
 
-## 0.20.1
-
-May 28, 2022
+## 0.20.1 (May 28, 2022)
 
 ### Fixed
 * Improve detection of async callables [#1444](https://github.com/encode/starlette/pull/1444).
@@ -408,17 +341,13 @@ May 28, 2022
 * Do not send empty data to `StreamingResponse` on `BaseHTTPMiddleware` [#1609](https://github.com/encode/starlette/pull/1609).
 * Add `__bool__` dunder for `Secret` [#1625](https://github.com/encode/starlette/pull/1625).
 
-## 0.20.0
-
-May 3, 2022
+## 0.20.0 (May 3, 2022)
 
 ### Removed
 * Drop Python 3.6 support [#1357](https://github.com/encode/starlette/pull/1357) and [#1616](https://github.com/encode/starlette/pull/1616).
 
 
-## 0.19.1
-
-April 22, 2022
+## 0.19.1 (April 22, 2022)
 
 ### Fixed
 * Fix inference of `Route.name` when created from methods [#1553](https://github.com/encode/starlette/pull/1553).
@@ -428,9 +357,7 @@ April 22, 2022
 * Deprecate `WS_1004_NO_STATUS_RCVD` and `WS_1005_ABNORMAL_CLOSURE` in favor of `WS_1005_NO_STATUS_RCVD` and `WS_1006_ABNORMAL_CLOSURE`, as the previous constants didn't match the [WebSockets specs](https://www.iana.org/assignments/websocket/websocket.xhtml) [#1580](https://github.com/encode/starlette/pull/1580).
 
 
-## 0.19.0
-
-March 9, 2022
+## 0.19.0 (March 9, 2022)
 
 ### Added
 * Error handler will always run, even if the error happens on a background task [#761](https://github.com/encode/starlette/pull/761).
@@ -457,9 +384,7 @@ March 9, 2022
 * Deprecate `run_until_first_complete` [#1443](https://github.com/encode/starlette/pull/1443).
 
 
-## 0.18.0
-
-January 23, 2022
+## 0.18.0 (January 23, 2022)
 
 ### Added
 * Change default chunk size from 4Kb to 64Kb on `FileResponse` [#1345](https://github.com/encode/starlette/pull/1345).
@@ -479,16 +404,12 @@ January 23, 2022
 * Fix `path_params` type on `url_path_for()` method i.e. turn `str` into `Any` [#1341](https://github.com/encode/starlette/pull/1341).
 * `Host` now ignores `port` on routing [#1322](https://github.com/encode/starlette/pull/1322).
 
-## 0.17.1
-
-November 17, 2021
+## 0.17.1 (November 17, 2021)
 
 ### Fixed
 * Fix `IndexError` in authentication `requires` when wrapped function arguments are distributed between `*args` and `**kwargs` [#1335](https://github.com/encode/starlette/pull/1335).
 
-## 0.17.0
-
-November 4, 2021
+## 0.17.0 (November 4, 2021)
 
 ### Added
 * `Response.delete_cookie` now accepts the same parameters as `Response.set_cookie` [#1228](https://github.com/encode/starlette/pull/1228).
@@ -505,9 +426,7 @@ November 4, 2021
 ### Removed
 * Remove GraphQL support [#1198](https://github.com/encode/starlette/pull/1198).
 
-## 0.16.0
-
-July 19, 2021
+## 0.16.0 (July 19, 2021)
 
 ### Added
  * Added [Encode](https://github.com/sponsors/encode) funding option
@@ -530,9 +449,7 @@ July 19, 2021
    [#1227](https://github.com/encode/starlette/pull/1227)
    [#1110](https://github.com/encode/starlette/pull/1110)
 
-## 0.15.0
-
-June 23, 2021
+## 0.15.0 (June 23, 2021)
 
 This release includes major changes to the low-level asynchronous parts of Starlette. As a result,
 **Starlette now depends on [AnyIO](https://anyio.readthedocs.io/en/stable/)** and some minor API
@@ -575,9 +492,7 @@ changes have occurred. Another significant change with this release is the
 * The `workers` parameter to `WSGIMiddleware` was removed. This hasn't had any effect since
   Starlette v0.6.3.
 
-## 0.14.2
-
-February 2, 2021
+## 0.14.2 (February 2, 2021)
 
 ### Fixed
 
@@ -589,9 +504,7 @@ February 2, 2021
   [#1106](https://github.com/encode/starlette/pull/1106).
 
 
-## 0.14.1
-
-November 9th, 2020
+## 0.14.1 (November 9th, 2020)
 
 ### Removed
 
@@ -600,9 +513,7 @@ November 9th, 2020
   implement responses using custom JSON serialization -
   [#1074](https://github.com/encode/starlette/pull/1047).
 
-## 0.14.0
-
-November 8th, 2020
+## 0.14.0 (November 8th, 2020)
 
 ### Added
 
@@ -816,13 +727,13 @@ visible throughout the middleware stack.
 
 ## 0.8.2
 
-## StaticFiles
+### StaticFiles
 
 * StaticFiles no longer reads the file for responses to `HEAD` requests.
 
 ## 0.8.1
 
-## Templating
+### Templating
 
 * Add a default templating configuration with Jinja2.
 
diff --git a/docs/sponsors/fastapi.png b/docs/sponsors/fastapi.png
deleted file mode 100644 (file)
index a5b2af1..0000000
Binary files a/docs/sponsors/fastapi.png and /dev/null differ
index 3cde34408b28a749e59abd1ff54dc55d45cdf736..83683f89341ab69d15967c81ea5f23c0070a96a9 100644 (file)
@@ -3,53 +3,59 @@ site_description: The little ASGI library that shines.
 site_url: https://www.starlette.io
 
 theme:
-  name: 'material'
+  name: "material"
   custom_dir: docs/overrides
   palette:
-    - scheme: 'default'
-      media: '(prefers-color-scheme: light)'
+    - scheme: "default"
+      media: "(prefers-color-scheme: light)"
       toggle:
-        icon: 'material/lightbulb'
+        icon: "material/lightbulb"
         name: "Switch to dark mode"
-    - scheme: 'slate'
-      media: '(prefers-color-scheme: dark)'
-      primary: 'blue'
+    - scheme: "slate"
+      media: "(prefers-color-scheme: dark)"
+      primary: "blue"
       toggle:
-        icon: 'material/lightbulb-outline'
-        name: 'Switch to light mode'
+        icon: "material/lightbulb-outline"
+        name: "Switch to light mode"
+  logo: img/logo.svg
+  favicon: img/logo.svg
   icon:
     repo: fontawesome/brands/github
   features:
     - content.code.copy
+    - navigation.tabs
+    - toc.follow
 
 repo_name: encode/starlette
 repo_url: https://github.com/encode/starlette
 edit_uri: edit/master/docs/
 
 nav:
-  - Introduction: 'index.md'
-  - Applications: 'applications.md'
-  - Requests: 'requests.md'
-  - Responses: 'responses.md'
-  - WebSockets: 'websockets.md'
-  - Routing: 'routing.md'
-  - Endpoints: 'endpoints.md'
-  - Middleware: 'middleware.md'
-  - Static Files: 'staticfiles.md'
-  - Templates: 'templates.md'
-  - Database: 'database.md'
-  - GraphQL: 'graphql.md'
-  - Authentication: 'authentication.md'
-  - API Schemas: 'schemas.md'
-  - Lifespan: 'lifespan.md'
-  - Background Tasks: 'background.md'
-  - Server Push: 'server-push.md'
-  - Exceptions: 'exceptions.md'
-  - Configuration: 'config.md'
-  - Test Client: 'testclient.md'
-  - Third Party Packages: 'third-party-packages.md'
-  - Contributing: 'contributing.md'
-  - Release Notes: 'release-notes.md'
+  - Home: "index.md"
+  - Features:
+      - Applications: "applications.md"
+      - Requests: "requests.md"
+      - Responses: "responses.md"
+      - WebSockets: "websockets.md"
+      - Routing: "routing.md"
+      - Endpoints: "endpoints.md"
+      - Middleware: "middleware.md"
+      - Static Files: "staticfiles.md"
+      - Templates: "templates.md"
+      - Database: "database.md"
+      - GraphQL: "graphql.md"
+      - Authentication: "authentication.md"
+      - API Schemas: "schemas.md"
+      - Lifespan: "lifespan.md"
+      - Background Tasks: "background.md"
+      - Server Push: "server-push.md"
+      - Exceptions: "exceptions.md"
+      - Configuration: "config.md"
+      - Test Client: "testclient.md"
+  - Release Notes: "release-notes.md"
+  - Community:
+      - Third Party Packages: "third-party-packages.md"
+      - Contributing: "contributing.md"
 
 markdown_extensions:
   - mkautodoc