]> git.ipfire.org Git - thirdparty/starlette.git/log
thirdparty/starlette.git
7 months agoFix: Resolve the issue where the directory itself being a symlink does not work....
涵曦 [Sun, 1 Dec 2024 16:46:16 +0000 (00:46 +0800)] 
Fix: Resolve the issue where the directory itself being a symlink does not work. (#2711)

7 months agoReplace `mkautodoc` by `mkdocstrings` (#2776)
Marcelo Trylesinski [Sat, 30 Nov 2024 11:41:25 +0000 (12:41 +0100)] 
Replace `mkautodoc` by `mkdocstrings` (#2776)

7 months agotest: add tests in `test_routing` (#2676)
Sean Chen [Sat, 30 Nov 2024 09:58:59 +0000 (17:58 +0800)] 
test: add tests in `test_routing` (#2676)

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
7 months agoPin httpx in `full` extra (#2773)
Marcelo Trylesinski [Sat, 30 Nov 2024 09:53:55 +0000 (10:53 +0100)] 
Pin httpx in `full` extra (#2773)

7 months agobump-python-multipart
Marcelo Trylesinski [Sat, 30 Nov 2024 09:52:32 +0000 (10:52 +0100)] 
bump-python-multipart

7 months agoMake _MiddlewareFactory compatible with Callable (#2768)
Eugene Toder [Tue, 26 Nov 2024 07:28:34 +0000 (02:28 -0500)] 
Make _MiddlewareFactory compatible with Callable (#2768)

7 months agodocs: fix typo in applications example (#2763)
Logan Connolly [Sun, 24 Nov 2024 15:00:32 +0000 (16:00 +0100)] 
docs: fix typo in applications example (#2763)

7 months agoFix issue with broken link in release notes (#2758)
Yurii Karabas [Tue, 19 Nov 2024 13:50:07 +0000 (14:50 +0100)] 
Fix issue with broken link in release notes (#2758)

7 months agoSupport for `send` client disconnect to HTTP (#2732)
Marcelo Trylesinski [Mon, 18 Nov 2024 20:56:13 +0000 (21:56 +0100)] 
Support for `send` client disconnect to HTTP (#2732)

7 months agoBump the python-packages group with 6 updates (#2743)
dependabot[bot] [Mon, 18 Nov 2024 20:19:15 +0000 (21:19 +0100)] 
Bump the python-packages group with 6 updates (#2743)

Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
7 months agoVersion 0.41.3 (#2754) 0.41.3
Marcelo Trylesinski [Mon, 18 Nov 2024 19:43:25 +0000 (20:43 +0100)] 
Version 0.41.3 (#2754)

7 months agofix(testclient): exclude query sting from `raw_path` (#2716)
Hao Guan [Mon, 18 Nov 2024 19:28:43 +0000 (03:28 +0800)] 
fix(testclient): exclude query sting from `raw_path` (#2716)

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
7 months agoReplace `dict` by `Mapping` on `HTTPException.headers` (#2749)
rijenkii [Mon, 18 Nov 2024 19:00:58 +0000 (02:00 +0700)] 
Replace `dict` by `Mapping` on `HTTPException.headers` (#2749)

7 months agoFix issue with middleware args passing (#2752)
Yurii Karabas [Thu, 14 Nov 2024 23:34:22 +0000 (00:34 +0100)] 
Fix issue with middleware args passing (#2752)

8 months agoMatch httpx documentation style (#2742)
Marcelo Trylesinski [Thu, 31 Oct 2024 07:05:06 +0000 (08:05 +0100)] 
Match httpx documentation style (#2742)

8 months agoVersion 0.41.2 (#2740) 0.41.2
Marcelo Trylesinski [Sun, 27 Oct 2024 08:18:54 +0000 (09:18 +0100)] 
Version 0.41.2 (#2740)

8 months agoRevert bump on `python-multipart` (#2737)
Marcelo Trylesinski [Sun, 27 Oct 2024 08:11:05 +0000 (09:11 +0100)] 
Revert bump on `python-multipart` (#2737)

8 months agoVersion 0.41.1 (#2736) 0.41.1
Marcelo Trylesinski [Thu, 24 Oct 2024 14:39:47 +0000 (16:39 +0200)] 
Version 0.41.1 (#2736)

8 months agoBump minimum `python-multipart` version to 0.0.13 (#2734)
Marcelo Trylesinski [Sun, 20 Oct 2024 12:25:43 +0000 (14:25 +0200)] 
Bump minimum `python-multipart` version to 0.0.13 (#2734)

8 months agoChange `python-multipart` import to `python_multipart` (#2733)
Marcelo Trylesinski [Sun, 20 Oct 2024 12:20:25 +0000 (14:20 +0200)] 
Change `python-multipart` import to `python_multipart` (#2733)

8 months agoVersion 0.41.0 (#2729) 0.41.0
Marcelo Trylesinski [Tue, 15 Oct 2024 17:30:20 +0000 (19:30 +0200)] 
Version 0.41.0 (#2729)

8 months agoAllow to raise `HTTPException` before `websocket.accept()` (#2725)
Marcelo Trylesinski [Tue, 15 Oct 2024 07:50:49 +0000 (09:50 +0200)] 
Allow to raise `HTTPException` before `websocket.accept()` (#2725)

* Allow to raise `HTTPException` before `websocket.accept()`

* move <<

* Add documentation

8 months agoVersion 0.40.0 (#2728) 0.40.0
Marcelo Trylesinski [Tue, 15 Oct 2024 06:49:52 +0000 (08:49 +0200)] 
Version 0.40.0 (#2728)

8 months agoMerge commit from fork
Marcelo Trylesinski [Tue, 15 Oct 2024 06:40:51 +0000 (08:40 +0200)] 
Merge commit from fork

9 months agoBump the python-packages group with 6 updates (#2713)
dependabot[bot] [Wed, 2 Oct 2024 06:49:29 +0000 (08:49 +0200)] 
Bump the python-packages group with 6 updates (#2713)

Bumps the python-packages group with 6 updates:

| Package | From | To |
| --- | --- | --- |
| [importlib-metadata](https://github.com/python/importlib_metadata) | `8.4.0` | `8.5.0` |
| [ruff](https://github.com/astral-sh/ruff) | `0.6.3` | `0.6.8` |
| [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.20240808` | `6.0.12.20240917` |
| [pytest](https://github.com/pytest-dev/pytest) | `8.3.2` | `8.3.3` |
| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.5.34` | `9.5.39` |
| [build](https://github.com/pypa/build) | `1.2.1` | `1.2.2` |

Updates `importlib-metadata` from 8.4.0 to 8.5.0
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/NEWS.rst)
- [Commits](https://github.com/python/importlib_metadata/compare/v8.4.0...v8.5.0)

Updates `ruff` from 0.6.3 to 0.6.8
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/0.6.3...0.6.8)

Updates `types-pyyaml` from 6.0.12.20240808 to 6.0.12.20240917
- [Commits](https://github.com/python/typeshed/commits)

Updates `pytest` from 8.3.2 to 8.3.3
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.3.2...8.3.3)

Updates `mkdocs-material` from 9.5.34 to 9.5.39
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.34...9.5.39)

Updates `build` from 1.2.1 to 1.2.2
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.2.1...1.2.2)

---
updated-dependencies:
- dependency-name: importlib-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: ruff
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: types-pyyaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: pytest
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: build
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
9 months agoVersion 0.39.2 (#2710) 0.39.2
Marcelo Trylesinski [Sun, 29 Sep 2024 10:33:42 +0000 (12:33 +0200)] 
Version 0.39.2 (#2710)

9 months agoSupport `request.url_for` when only "app" scope is avaialable (#2672)
Joel Sleppy [Sun, 29 Sep 2024 09:40:23 +0000 (05:40 -0400)] 
Support `request.url_for` when only "app" scope is avaialable (#2672)

* Support request.url_for in BaseMiddleware

* Move test to test_requests

* Call the endpoint properly

* fix test

* order the type hint

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
9 months agoSupport python-multipart 0.0.12 (#2708)
Marcelo Trylesinski [Sun, 29 Sep 2024 08:28:34 +0000 (10:28 +0200)] 
Support python-multipart 0.0.12 (#2708)

9 months agoVersion 0.39.1 (#2706) 0.39.1
Marcelo Trylesinski [Wed, 25 Sep 2024 15:24:24 +0000 (17:24 +0200)] 
Version 0.39.1 (#2706)

* Version 0.39.1

* Update docs/release-notes.md

* Update docs/release-notes.md

* Update docs/release-notes.md

9 months agogenerate boundary with token_hex (#2702)
Trim21 [Wed, 25 Sep 2024 11:27:55 +0000 (19:27 +0800)] 
generate boundary with token_hex (#2702)

* generate boundary with token_hex

* generate boundary with token_hex

* fix

* boundary size

* Update starlette/responses.py

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
9 months agoConsider `FileResponse.chunk_size` when handling multiple ranges (#2703)
Marcelo Trylesinski [Wed, 25 Sep 2024 07:16:08 +0000 (09:16 +0200)] 
Consider `FileResponse.chunk_size` when handling multiple ranges (#2703)

* Take in consideration the `FileResponse.chunk_size` on multiple ranges

* Update starlette/responses.py

* Update starlette/responses.py

* Update starlette/responses.py

Co-authored-by: Frost Ming <mianghong@gmail.com>
---------

Co-authored-by: Frost Ming <mianghong@gmail.com>
9 months agotest: add tests in `test_requests` (#2677)
Orenoid [Mon, 23 Sep 2024 18:38:19 +0000 (02:38 +0800)] 
test: add tests in `test_requests` (#2677)

* test: add tests in test_requests

* test: add test for Request.close method

* fix: typo

* test: ignore conditional branch in coverage report and remove unnecessary test

* test: pragma no branch

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
9 months agoperf: stop use `re` on `get_route_path` (#2701)
Trim21 [Mon, 23 Sep 2024 18:23:34 +0000 (02:23 +0800)] 
perf: stop use `re` on `get_route_path` (#2701)

* perf: stop use re on get_route_path

* add test

9 months agoperf: avoid regex re-compile (#2700)
Trim21 [Mon, 23 Sep 2024 06:54:17 +0000 (14:54 +0800)] 
perf: avoid regex re-compile (#2700)

* perf

* format

* avoid

* fix

9 months agoVersion 0.39.0 (#2699) 0.39.0
Marcelo Trylesinski [Mon, 23 Sep 2024 06:13:56 +0000 (08:13 +0200)] 
Version 0.39.0 (#2699)

9 months agoAdd support for HTTP Range to `FileResponse` (#2697)
Marcelo Trylesinski [Mon, 23 Sep 2024 01:20:21 +0000 (03:20 +0200)] 
Add support for HTTP Range to `FileResponse` (#2697)

* Add support for HTTP Range to `FileResponse`

* Remove pragmas

* Single line

9 months agoVersion 0.38.6 (#2698) 0.38.6
Marcelo Trylesinski [Sun, 22 Sep 2024 16:58:20 +0000 (18:58 +0200)] 
Version 0.38.6 (#2698)

9 months agoClose unclosed `MemoryObjectReceiveStream` in `TestClient` (#2693)
Moataz Elmasry [Sun, 22 Sep 2024 16:54:30 +0000 (17:54 +0100)] 
Close unclosed `MemoryObjectReceiveStream` in `TestClient` (#2693)

10 months agoVersion 0.38.5 (#2689) 0.38.5
Marcelo Trylesinski [Sun, 8 Sep 2024 09:49:21 +0000 (10:49 +0100)] 
Version 0.38.5 (#2689)

* Version 0.38.5

* Update release-notes.md

Co-authored-by: Adrian Garcia Badaracco <1755071+adriangb@users.noreply.github.com>
---------

Co-authored-by: Adrian Garcia Badaracco <1755071+adriangb@users.noreply.github.com>
10 months agoFix `BackgroundTasks` with `BaseHTTPMiddleware` (#2688)
Adrian Garcia Badaracco [Sat, 7 Sep 2024 12:42:54 +0000 (13:42 +0100)] 
Fix `BackgroundTasks` with `BaseHTTPMiddleware` (#2688)

* Streaming response early disconnect mode

* Fix BackgroundTasks with BaseHTTPMiddleware

* move comment

* initialize field

---------

Co-authored-by: Dmitry Maliuga <dmaliuga@fireworks.ai>
10 months agoBump the python-packages group with 9 updates (#2683)
dependabot[bot] [Sun, 1 Sep 2024 19:42:35 +0000 (19:42 +0000)] 
Bump the python-packages group with 9 updates (#2683)

* Bump the python-packages group with 9 updates

Bumps the python-packages group with 9 updates:

| Package | From | To |
| --- | --- | --- |
| [coverage](https://github.com/nedbat/coveragepy) | `7.6.0` | `7.6.1` |
| [importlib-metadata](https://github.com/python/importlib_metadata) | `8.2.0` | `8.4.0` |
| [mypy](https://github.com/python/mypy) | `1.11.1` | `1.11.2` |
| [ruff](https://github.com/astral-sh/ruff) | `0.5.5` | `0.6.3` |
| [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.20240724` | `6.0.12.20240808` |
| [trio](https://github.com/python-trio/trio) | `0.26.1` | `0.26.2` |
| [attrs](https://github.com/sponsors/hynek) | `23.2.0` | `24.2.0` |
| [mkdocs](https://github.com/mkdocs/mkdocs) | `1.6.0` | `1.6.1` |
| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.5.30` | `9.5.34` |

Updates `coverage` from 7.6.0 to 7.6.1
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.6.0...7.6.1)

Updates `importlib-metadata` from 8.2.0 to 8.4.0
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/NEWS.rst)
- [Commits](https://github.com/python/importlib_metadata/compare/v8.2.0...v8.4.0)

Updates `mypy` from 1.11.1 to 1.11.2
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.11.1...v1.11.2)

Updates `ruff` from 0.5.5 to 0.6.3
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/0.5.5...0.6.3)

Updates `types-pyyaml` from 6.0.12.20240724 to 6.0.12.20240808
- [Commits](https://github.com/python/typeshed/commits)

Updates `trio` from 0.26.1 to 0.26.2
- [Release notes](https://github.com/python-trio/trio/releases)
- [Commits](https://github.com/python-trio/trio/compare/v0.26.1...v0.26.2)

Updates `attrs` from 23.2.0 to 24.2.0
- [Commits](https://github.com/sponsors/hynek/commits)

Updates `mkdocs` from 1.6.0 to 1.6.1
- [Release notes](https://github.com/mkdocs/mkdocs/releases)
- [Commits](https://github.com/mkdocs/mkdocs/compare/1.6.0...1.6.1)

Updates `mkdocs-material` from 9.5.30 to 9.5.34
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.30...9.5.34)

---
updated-dependencies:
- dependency-name: coverage
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: importlib-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: mypy
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: ruff
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: types-pyyaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: trio
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: attrs
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: python-packages
- dependency-name: mkdocs
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
* Apply suggestions from code review

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
10 months agoRemove short logo from documentation (#2682)
Marcelo Trylesinski [Sun, 1 Sep 2024 18:48:01 +0000 (20:48 +0200)] 
Remove short logo from documentation (#2682)

10 months agoVersion 0.38.4 (#2681) 0.38.4
Marcelo Trylesinski [Sun, 1 Sep 2024 15:14:29 +0000 (17:14 +0200)] 
Version 0.38.4 (#2681)

10 months agoEnsure accurate `root_path` removal in `get_route_path` function (#2600)
Gabriel Figueiredo [Sun, 1 Sep 2024 15:12:43 +0000 (12:12 -0300)] 
Ensure accurate `root_path` removal in `get_route_path` function (#2600)

* fix: regex inside function get_route_path to remove root_path

* fix: apply format ruff

* fix: mypy

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
10 months agoChange documentation layout (#2680)
Marcelo Trylesinski [Sun, 1 Sep 2024 15:06:20 +0000 (17:06 +0200)] 
Change documentation layout (#2680)

10 months agoSet `line-length` to 120 on Ruff (#2679)
Marcelo Trylesinski [Sun, 1 Sep 2024 13:11:01 +0000 (15:11 +0200)] 
Set `line-length` to 120 on Ruff (#2679)

* Set `line-length` to 120 on Ruff

* Add links to selected rules

* Remove empty strings

* Fix more stuff

10 months agoVersion 0.38.3 (#2678) 0.38.3
Marcelo Trylesinski [Sun, 1 Sep 2024 07:16:18 +0000 (09:16 +0200)] 
Version 0.38.3 (#2678)

10 months agoDon't poll for disconnects in BaseHTTPMiddleware via StreamingResponse (#2620)
Adrian Garcia Badaracco [Sun, 1 Sep 2024 07:04:50 +0000 (02:04 -0500)] 
Don't poll for disconnects in BaseHTTPMiddleware via StreamingResponse (#2620)

* Don't poll for disconnects in BaseHTTPMiddleware via StreamingResponse

Fixes #2516

* add test

* fmt

* Update tests/middleware/test_base.py

Co-authored-by: Mikkel Duif <mikkel@duifs.dk>
* add test for line now missing coverage

* more coverage, fix test

* add comment

* fmt

* tweak test

* fix

* fix coverage

* relint

---------

Co-authored-by: Mikkel Duif <mikkel@duifs.dk>
11 months agoFix typo in README.md (#2666)
Logan [Sat, 10 Aug 2024 17:24:16 +0000 (01:24 +0800)] 
Fix typo in README.md (#2666)

11 months agoFix typo in docs/index.md (#2665)
Logan [Sat, 10 Aug 2024 07:17:25 +0000 (15:17 +0800)] 
Fix typo in docs/index.md (#2665)

11 months agoSupport Python 3.13 (#2662)
Marcelo Trylesinski [Tue, 6 Aug 2024 15:08:22 +0000 (17:08 +0200)] 
Support Python 3.13 (#2662)

* Support Python 3.13

* Use `exc_type_str` instead of `exc_type.__name__`

* Close GzipFile

* min changes

11 months agoAdd tests to `test_responses` (#2656)
Orenoid [Tue, 6 Aug 2024 07:14:59 +0000 (15:14 +0800)] 
Add tests to `test_responses` (#2656)

* test: add test cases for uncovered branches in starlette.responses

* chore: fix format issue

* Update test

* Remove unused import

* Update tmpdir to tmp_path

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
11 months agoBump trio and downgrade attrs on the `requirements.txt` (#2660)
Marcelo Trylesinski [Tue, 6 Aug 2024 07:13:24 +0000 (09:13 +0200)] 
Bump trio and downgrade attrs on the `requirements.txt` (#2660)

* Bump trio

* Downgrade attrs

11 months agoBump the python-packages group with 8 updates (#2657)
dependabot[bot] [Sat, 3 Aug 2024 12:14:13 +0000 (06:14 -0600)] 
Bump the python-packages group with 8 updates (#2657)

Bumps the python-packages group with 8 updates:

| Package | From | To |
| --- | --- | --- |
| [coverage](https://github.com/nedbat/coveragepy) | `7.5.4` | `7.6.0` |
| [importlib-metadata](https://github.com/python/importlib_metadata) | `8.0.0` | `8.2.0` |
| [mypy](https://github.com/python/mypy) | `1.10.1` | `1.11.1` |
| [ruff](https://github.com/astral-sh/ruff) | `0.5.0` | `0.5.5` |
| [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.20240311` | `6.0.12.20240724` |
| [pytest](https://github.com/pytest-dev/pytest) | `8.2.2` | `8.3.2` |
| [trio](https://github.com/python-trio/trio) | `0.25.1` | `0.26.0` |
| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.5.27` | `9.5.30` |

Updates `coverage` from 7.5.4 to 7.6.0
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.5.4...7.6.0)

Updates `importlib-metadata` from 8.0.0 to 8.2.0
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/NEWS.rst)
- [Commits](https://github.com/python/importlib_metadata/compare/v8.0.0...v8.2.0)

Updates `mypy` from 1.10.1 to 1.11.1
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.10.1...v1.11.1)

Updates `ruff` from 0.5.0 to 0.5.5
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/0.5.0...0.5.5)

Updates `types-pyyaml` from 6.0.12.20240311 to 6.0.12.20240724
- [Commits](https://github.com/python/typeshed/commits)

Updates `pytest` from 8.2.2 to 8.3.2
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.2.2...8.3.2)

Updates `trio` from 0.25.1 to 0.26.0
- [Release notes](https://github.com/python-trio/trio/releases)
- [Commits](https://github.com/python-trio/trio/compare/v0.25.1...v0.26.0)

Updates `mkdocs-material` from 9.5.27 to 9.5.30
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.27...9.5.30)

---
updated-dependencies:
- dependency-name: coverage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: importlib-metadata
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: mypy
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: ruff
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: types-pyyaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: pytest
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: trio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
11 months agoVersion 0.38.2 (#2655) 0.38.2
Marcelo Trylesinski [Sat, 27 Jul 2024 17:55:52 +0000 (19:55 +0200)] 
Version 0.38.2 (#2655)

11 months agoCreate types module inside tests (#2502)
Scirlat Danut [Sat, 27 Jul 2024 09:31:16 +0000 (12:31 +0300)] 
Create types module inside tests (#2502)

* Create types module inside tests

* Apply suggestions from code review

* Apply suggestions from code review

* Fix check errors

* Change testclientfactory due to autotest

* No cover fix

* Apply suggestions from code review

* Skip code coverage for TestClientFactory protocol

* Apply suggestions from code review

* Small improvements

* Lint

* Fix everything

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
11 months agoBump the python-packages group with 13 updates (#2632)
dependabot[bot] [Sat, 27 Jul 2024 09:03:46 +0000 (03:03 -0600)] 
Bump the python-packages group with 13 updates (#2632)

* Bump the python-packages group with 13 updates

Bumps the python-packages group with 13 updates:

| Package | From | To |
| --- | --- | --- |
| [anyio](https://github.com/agronholm/anyio) | `4.3.0` | `4.4.0` |
| [coverage](https://github.com/nedbat/coveragepy) | `7.4.3` | `7.5.4` |
| [importlib-metadata](https://github.com/python/importlib_metadata) | `7.0.1` | `8.0.0` |
| [mypy](https://github.com/python/mypy) | `1.8.0` | `1.10.1` |
| [ruff](https://github.com/astral-sh/ruff) | `0.1.15` | `0.5.0` |
| [typing-extensions](https://github.com/python/typing_extensions) | `4.10.0` | `4.12.2` |
| [types-pyyaml](https://github.com/python/typeshed) | `6.0.12.12` | `6.0.12.20240311` |
| [pytest](https://github.com/pytest-dev/pytest) | `8.0.2` | `8.2.2` |
| [trio](https://github.com/python-trio/trio) | `0.24.0` | `0.25.1` |
| [mkdocs](https://github.com/mkdocs/mkdocs) | `1.5.3` | `1.6.0` |
| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.5.12` | `9.5.27` |
| [build](https://github.com/pypa/build) | `1.1.1` | `1.2.1` |
| [twine](https://github.com/pypa/twine) | `5.0.0` | `5.1.1` |

Updates `anyio` from 4.3.0 to 4.4.0
- [Release notes](https://github.com/agronholm/anyio/releases)
- [Changelog](https://github.com/agronholm/anyio/blob/master/docs/versionhistory.rst)
- [Commits](https://github.com/agronholm/anyio/compare/4.3.0...4.4.0)

Updates `coverage` from 7.4.3 to 7.5.4
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.4.3...7.5.4)

Updates `importlib-metadata` from 7.0.1 to 8.0.0
- [Release notes](https://github.com/python/importlib_metadata/releases)
- [Changelog](https://github.com/python/importlib_metadata/blob/main/NEWS.rst)
- [Commits](https://github.com/python/importlib_metadata/compare/v7.0.1...v8.0.0)

Updates `mypy` from 1.8.0 to 1.10.1
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md)
- [Commits](https://github.com/python/mypy/compare/v1.8.0...v1.10.1)

Updates `ruff` from 0.1.15 to 0.5.0
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/v0.1.15...0.5.0)

Updates `typing-extensions` from 4.10.0 to 4.12.2
- [Release notes](https://github.com/python/typing_extensions/releases)
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/python/typing_extensions/compare/4.10.0...4.12.2)

Updates `types-pyyaml` from 6.0.12.12 to 6.0.12.20240311
- [Commits](https://github.com/python/typeshed/commits)

Updates `pytest` from 8.0.2 to 8.2.2
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.0.2...8.2.2)

Updates `trio` from 0.24.0 to 0.25.1
- [Release notes](https://github.com/python-trio/trio/releases)
- [Commits](https://github.com/python-trio/trio/compare/v0.24.0...v0.25.1)

Updates `mkdocs` from 1.5.3 to 1.6.0
- [Release notes](https://github.com/mkdocs/mkdocs/releases)
- [Commits](https://github.com/mkdocs/mkdocs/compare/1.5.3...1.6.0)

Updates `mkdocs-material` from 9.5.12 to 9.5.27
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.12...9.5.27)

Updates `build` from 1.1.1 to 1.2.1
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.1.1...1.2.1)

Updates `twine` from 5.0.0 to 5.1.1
- [Release notes](https://github.com/pypa/twine/releases)
- [Changelog](https://github.com/pypa/twine/blob/main/docs/changelog.rst)
- [Commits](https://github.com/pypa/twine/compare/5.0.0...v5.1.1)

---
updated-dependencies:
- dependency-name: anyio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: coverage
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: importlib-metadata
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: python-packages
- dependency-name: mypy
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: ruff
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: typing-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: types-pyyaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: pytest
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: trio
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: mkdocs
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: build
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: twine
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
* Add all changes needed for bump

* Ignore ResourceWarning

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
11 months agoFix `routing.get_name()` not to assume all routines have `__name__` (#2648)
Michał Górny [Wed, 24 Jul 2024 08:23:59 +0000 (10:23 +0200)] 
Fix `routing.get_name()` not to assume all routines have `__name__` (#2648)

Fix `routing.get_name()` to use the `__name__` attribute only if it is
actually present, rather than assuming that all routine and class types
have it, and use the fallback to class name otherwise.  This is
necessary for `functools.partial()` that doesn't have a `__name__`
attribute, but is recognized as a routine starting with Python 3.13.0b3.
Since for older versions of Python, it would have used the fallback
anyway, this doesn't really change the behavior there.

Fixes #2638

11 months agoVersion 0.38.1 (#2650) 0.38.1
Marcelo Trylesinski [Tue, 23 Jul 2024 10:17:08 +0000 (12:17 +0200)] 
Version 0.38.1 (#2650)

11 months agoRevert "Add support for ASGI `pathsend` extension" (#2649)
Giovanni Barillari [Tue, 23 Jul 2024 10:10:14 +0000 (12:10 +0200)] 
Revert "Add support for ASGI `pathsend` extension" (#2649)

This reverts commit 7936e86f0a0eb7494aee8a1094b0ccda31c67a72.

11 months agoVersion 0.38.0 (#2647) 0.38.0
Marcelo Trylesinski [Sat, 20 Jul 2024 09:16:30 +0000 (11:16 +0200)] 
Version 0.38.0 (#2647)

* Version 0.38.0

* Version 0.38.0

11 months agoAdd proper synchronisation to WebSocketTestSession (#2597)
Olocool17 [Sat, 20 Jul 2024 09:06:51 +0000 (09:06 +0000)] 
Add proper synchronisation to WebSocketTestSession (#2597)

* Add proper synchronisation to WebSocketTestSession
`anyio.sleep(0)` is often used as a way to yield to another task.
However, depending on event loop implememtation it is not guaranteed to
actually do so in a timely manner.
This commit alters this behaviour in _asgi_receive by using
`anyio.Event`s as a simple synchronisation primitive, dramatically
speeding up the session depending on underlying system/implementation.

* Fix mypy type errors
Jinja 3.1.4 slightly changed the argument types of FileSystemLoader.

* Formatting

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
11 months agotest: refine the test of client disconnection after reading request body (#2639)
Godot [Sat, 20 Jul 2024 09:06:30 +0000 (02:06 -0700)] 
test: refine the test of client disconnection after reading request body (#2639)

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
11 months agoAdd section for Vellox to third-party plugins (#2624)
Jun-Ah 준아 [Sat, 20 Jul 2024 09:04:27 +0000 (18:04 +0900)] 
Add section for Vellox to third-party plugins (#2624)

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
11 months agoAccept `None` on `set_cookie(path=...)` (#2612)
Marcelo Trylesinski [Sat, 20 Jul 2024 09:02:20 +0000 (11:02 +0200)] 
Accept `None` on `set_cookie(path=...)` (#2612)

11 months agoAdd Starlette-Compress to third-party docs (#2642)
Kamil Monicz [Sat, 20 Jul 2024 07:26:57 +0000 (09:26 +0200)] 
Add Starlette-Compress to third-party docs (#2642)

* Add Starlette-Compress

* Update docs/third-party-packages.md

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
11 months agodocs: add shiny to the frameworks sections (#2645)
Randy Zwitch [Sat, 20 Jul 2024 07:24:19 +0000 (03:24 -0400)] 
docs: add shiny to the frameworks sections (#2645)

12 months agoFix broken links (#2631)
rhoboro [Sat, 29 Jun 2024 12:02:09 +0000 (21:02 +0900)] 
Fix broken links (#2631)

13 months agoDon't print xfail on the test suite (#2609)
Marcelo Trylesinski [Tue, 4 Jun 2024 19:47:30 +0000 (21:47 +0200)] 
Don't print xfail on the test suite (#2609)

13 months agoAllow use of `memoryview` with `Response` (#2577)
Adrian Garcia Badaracco [Sat, 1 Jun 2024 13:12:34 +0000 (15:12 +0200)] 
Allow use of `memoryview` with `Response` (#2577)

13 months agoSend 404 instead of 500 when filename requested is too long on `StaticFiles` (#2583)
Jeremy Epstein [Sat, 1 Jun 2024 13:07:03 +0000 (23:07 +1000)] 
Send 404 instead of 500 when filename requested is too long on `StaticFiles` (#2583)

* Make "Filename too long" return 404 not 500

* Simplify code source

* Correct comment

---------

Co-authored-by: Jeremy Epstein <jeremy.epstein@seertechsolutions.com>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
13 months agoUpdate type hints based on `jinja2` (#2604)
Marcelo Trylesinski [Sat, 1 Jun 2024 13:04:43 +0000 (15:04 +0200)] 
Update type hints based on `jinja2` (#2604)

* Update type hints based on jinja2

* Pin anyio

14 months agoFix documentation on client address type (#2580)
julien4215 [Thu, 25 Apr 2024 06:49:38 +0000 (08:49 +0200)] 
Fix documentation on client address type (#2580)

14 months agoRemove Esmerald from third party docs (#2578)
Marcelo Trylesinski [Tue, 23 Apr 2024 19:24:12 +0000 (21:24 +0200)] 
Remove Esmerald from third party docs (#2578)

14 months agoAllow returning memoryview in StreamingResponse (#2576)
Bas Schoenmaeckers [Mon, 22 Apr 2024 17:15:24 +0000 (19:15 +0200)] 
Allow returning memoryview in StreamingResponse (#2576)

14 months agorefactor: check endpoint handler is async only once (#2536)
Sebastian Kreft [Sat, 20 Apr 2024 08:26:15 +0000 (04:26 -0400)] 
refactor: check endpoint handler is async only once (#2536)

* refactor: check endpoint handler is async only once

We improve the dispatch in the routing module to only check once whether the handler is async. This gives an improvement of 2.5% (sync), 1.82% (async) in the number of requests/s. The average latency decreased 1.6% (sync) and 1.5% (async).

Note that we had to use a cast in the helper function, as the typeguard does not work for the negative case. In the main branch the code is working without a cast, because the typeguard return type is in practice `AwaitableCAllable[Any]`, which end up swallowing the other types in the union.

Benchmarking
We use a simple json app, with both a sync and async endpoint, and the wrk tool to get the measurements.

The measuerements were done on a Macbook Pro with M1 chip, 16GB of memory and macOS 12.3. The Python version used for the tests is Python 3.12.2, and the uvicorn version is 0.27.1

Before
```
$ wrk http://localhost:8000/sync
Running 10s test @ http://localhost:8000/sync
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   733.77us   55.57us   3.21ms   78.35%
    Req/Sec     6.84k   147.06     7.15k    87.13%
  137474 requests in 10.10s, 18.35MB read
Requests/sec:  13610.69
Transfer/sec:      1.82MB

$ wrk http://localhost:8000/async
Running 10s test @ http://localhost:8000/async
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   717.14us   49.05us   1.83ms   71.11%
    Req/Sec     7.00k   112.14     7.36k    76.24%
  140613 requests in 10.10s, 18.77MB read
Requests/sec:  13922.97
Transfer/sec:      1.86MB
````

After
```
$ wrk http://localhost:8000/sync
Running 10s test @ http://localhost:8000/sync
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   721.34us  202.40us  11.13ms   99.32%
    Req/Sec     7.01k   230.04     7.62k    94.00%
  139558 requests in 10.00s, 18.63MB read
Requests/sec:  13956.14
Transfer/sec:      1.86MB

$ wrk http://localhost:8000/async
Running 10s test @ http://localhost:8000/async
  2 threads and 10 connections
  Thread Stats   Avg      Stdev     Max   +/- Stdev
    Latency   706.04us  109.90us   7.46ms   98.30%
    Req/Sec     7.12k   136.09     7.39k    90.59%
  143188 requests in 10.10s, 19.12MB read
Requests/sec:  14176.95
Transfer/sec:      1.89MB
```

The app used for the test is as follows
```python
from starlette.applications import Starlette
from starlette.responses import JSONResponse
from starlette.routing import Route
import uvicorn

async def async_page(request):
    return JSONResponse({'status': 'ok'})

async def sync_page(request):
    return JSONResponse({'status': 'ok'})

app = Starlette(routes=[
    Route('/async', async_page),
    Route('/sync', sync_page),
])

if __name__ == "__main__":
    uvicorn.run("app:app", port=8000, log_level="critical")
```

* Apply PR suggestion

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
14 months agoFail fast on invalid `Jinja2Template` instantiation parameters (#2568)
Pierre Delagrave [Sat, 20 Apr 2024 07:54:26 +0000 (03:54 -0400)] 
Fail fast on invalid `Jinja2Template` instantiation parameters (#2568)

Calling `Jinja2Template()` with both `directory` and `env` shouldn't be allowed. When both parameters were used, the passed `env` was silently ignored in favor of creating a new one with the provided `directory` and the deprecated `env_options`.

14 months agoFix typo in `SessionMiddleware` docs (#2559)
Daniel Erenrich [Wed, 17 Apr 2024 17:55:46 +0000 (10:55 -0700)] 
Fix typo in `SessionMiddleware` docs (#2559)

14 months agoUpdate SessionMiddleware and TrustedHostMiddleware Documentation (#2572)
Soul Lee [Mon, 15 Apr 2024 11:10:17 +0000 (20:10 +0900)] 
Update SessionMiddleware and TrustedHostMiddleware Documentation (#2572)

* Add 'path' argument in SessionMiddleware docs to reflect its presence in the code.

* Add 'www_redirect' argument in TrustedHostMiddleware docs to reflect its presence in the code.

15 months agoRemove old TODO on `scripts/check` (#2554) 2569/head
Marcelo Trylesinski [Fri, 29 Mar 2024 09:47:45 +0000 (10:47 +0100)] 
Remove old TODO on `scripts/check` (#2554)

15 months agoAdd missing `compresslevel` parameter on docs (#2553)
Jun-Ah 준아 [Mon, 25 Mar 2024 17:57:47 +0000 (02:57 +0900)] 
Add missing `compresslevel` parameter on docs (#2553)

* Add missing compresslevel parameter on docs

The compresslevel parameter was added in #1128.
But, it was not added to the document, so an explanation was added.

* Update docs/middleware.md

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
15 months agoAdd tests to `test_datastructure` (#2505)
Scirlat Danut [Sun, 24 Mar 2024 17:19:36 +0000 (19:19 +0200)] 
Add tests to `test_datastructure` (#2505)

* Add tests to test_datastructure

* Update tests

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
16 months agoVersion 0.37.2 (#2533) 0.37.2
Marcelo Trylesinski [Tue, 5 Mar 2024 16:08:44 +0000 (16:08 +0000)] 
Version 0.37.2 (#2533)

* Version 0.37.2

* Update docs/release-notes.md

16 months agoBump the python-packages group with 7 updates (#2532)
dependabot[bot] [Sat, 2 Mar 2024 12:35:35 +0000 (05:35 -0700)] 
Bump the python-packages group with 7 updates (#2532)

* Bump the python-packages group with 7 updates

Bumps the python-packages group with 7 updates:

| Package | From | To |
| --- | --- | --- |
| [coverage](https://github.com/nedbat/coveragepy) | `7.4.1` | `7.4.3` |
| [ruff](https://github.com/astral-sh/ruff) | `0.1.15` | `0.3.0` |
| [typing-extensions](https://github.com/python/typing_extensions) | `4.9.0` | `4.10.0` |
| [pytest](https://github.com/pytest-dev/pytest) | `8.0.0` | `8.0.2` |
| [mkdocs-material](https://github.com/squidfunk/mkdocs-material) | `9.5.6` | `9.5.12` |
| [build](https://github.com/pypa/build) | `1.0.3` | `1.1.1` |
| [twine](https://github.com/pypa/twine) | `4.0.2` | `5.0.0` |

Updates `coverage` from 7.4.1 to 7.4.3
- [Release notes](https://github.com/nedbat/coveragepy/releases)
- [Changelog](https://github.com/nedbat/coveragepy/blob/master/CHANGES.rst)
- [Commits](https://github.com/nedbat/coveragepy/compare/7.4.1...7.4.3)

Updates `ruff` from 0.1.15 to 0.3.0
- [Release notes](https://github.com/astral-sh/ruff/releases)
- [Changelog](https://github.com/astral-sh/ruff/blob/main/CHANGELOG.md)
- [Commits](https://github.com/astral-sh/ruff/compare/v0.1.15...v0.3.0)

Updates `typing-extensions` from 4.9.0 to 4.10.0
- [Release notes](https://github.com/python/typing_extensions/releases)
- [Changelog](https://github.com/python/typing_extensions/blob/main/CHANGELOG.md)
- [Commits](https://github.com/python/typing_extensions/compare/4.9.0...4.10.0)

Updates `pytest` from 8.0.0 to 8.0.2
- [Release notes](https://github.com/pytest-dev/pytest/releases)
- [Changelog](https://github.com/pytest-dev/pytest/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pytest-dev/pytest/compare/8.0.0...8.0.2)

Updates `mkdocs-material` from 9.5.6 to 9.5.12
- [Release notes](https://github.com/squidfunk/mkdocs-material/releases)
- [Changelog](https://github.com/squidfunk/mkdocs-material/blob/master/CHANGELOG)
- [Commits](https://github.com/squidfunk/mkdocs-material/compare/9.5.6...9.5.12)

Updates `build` from 1.0.3 to 1.1.1
- [Release notes](https://github.com/pypa/build/releases)
- [Changelog](https://github.com/pypa/build/blob/main/CHANGELOG.rst)
- [Commits](https://github.com/pypa/build/compare/1.0.3...1.1.1)

Updates `twine` from 4.0.2 to 5.0.0
- [Release notes](https://github.com/pypa/twine/releases)
- [Changelog](https://github.com/pypa/twine/blob/main/docs/changelog.rst)
- [Commits](https://github.com/pypa/twine/compare/4.0.2...5.0.0)

---
updated-dependencies:
- dependency-name: coverage
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: ruff
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: typing-extensions
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: pytest
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: mkdocs-material
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: python-packages
- dependency-name: build
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: python-packages
- dependency-name: twine
  dependency-type: direct:production
  update-type: version-update:semver-major
  dependency-group: python-packages
...

Signed-off-by: dependabot[bot] <support@github.com>
* Update requirements.txt

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
16 months agoRevert "Turn `scope["client"]` to `None` on `TestClient` (#2377)" (#2525)
Amin Alaee [Thu, 29 Feb 2024 12:55:04 +0000 (13:55 +0100)] 
Revert "Turn `scope["client"]` to `None` on `TestClient` (#2377)" (#2525)

* Revert "Turn `scope["client"]` to `None` on `TestClient` (#2377)"

This reverts commit 483849a466a2bfc121f5a367339e1aa3ed20344b.

* format

* Add type hints

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
16 months agoEnforce `__future__.annotations` (#2483)
Marcelo Trylesinski [Thu, 29 Feb 2024 10:16:42 +0000 (11:16 +0100)] 
Enforce `__future__.annotations` (#2483)

16 months agoRemove deprecated `app` argument passed to `httpx.Client` on the `TestClient` (#2526)
Takeshi OSOEKAWA [Mon, 26 Feb 2024 08:42:52 +0000 (17:42 +0900)] 
Remove deprecated `app` argument passed to `httpx.Client` on the `TestClient` (#2526)

16 months agoAdd `bytes` to `_RequestData` type (#2510)
Massaki [Thu, 15 Feb 2024 08:27:20 +0000 (05:27 -0300)] 
Add `bytes` to `_RequestData` type (#2510)

17 months agoVersion 0.37.1 (#2498) 0.37.1
Timofey Vasenin [Fri, 9 Feb 2024 21:43:54 +0000 (04:43 +0700)] 
Version 0.37.1 (#2498)

* Version 0.37.1

* Update docs/release-notes.md

---------

Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoRemove mypy skip flags (#2497)
Scirlat Danut [Fri, 9 Feb 2024 21:39:42 +0000 (23:39 +0200)] 
Remove mypy skip flags (#2497)

* Remove flags

* Apply suggestions from code review

* Remove mypy overrides

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoAdd type hints to `test_responses.py` (#2488)
Scirlat Danut [Fri, 9 Feb 2024 09:29:28 +0000 (11:29 +0200)] 
Add type hints to `test_responses.py` (#2488)

* Add type hints to test_responses.py

* Update tests/test_responses.py

* Linter fix

* Apply suggestions from code review

* Apply suggestions from code review

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoAdd type hints to `test_testclient.py` (#2493)
Scirlat Danut [Fri, 9 Feb 2024 09:13:38 +0000 (11:13 +0200)] 
Add type hints to `test_testclient.py` (#2493)

* Add type hints to test_testclient.py

* Fix check errors

* Apply suggestions from code review

* Use ASGIInstance instead

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoAdd type hints to `test_templates.py` (#2492)
Scirlat Danut [Fri, 9 Feb 2024 09:07:45 +0000 (11:07 +0200)] 
Add type hints to `test_templates.py` (#2492)

* Add type hints to test_templates.py

* Remove any

* nitpick

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoAdd type hints to `test_staticfiles.py` (#2491)
Scirlat Danut [Fri, 9 Feb 2024 08:58:52 +0000 (10:58 +0200)] 
Add type hints to `test_staticfiles.py` (#2491)

* Add type hints to test_staticfiles.py

* Remove any

* Remove ParamSpec

* Remove useless conditional

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoAdd type hints to `test_routing.py` (#2489)
Scirlat Danut [Wed, 7 Feb 2024 20:17:51 +0000 (22:17 +0200)] 
Add type hints to `test_routing.py` (#2489)

* Add type hints to test_routing.py

* Apply suggestions from code review

* Fix check errors

* Apply suggestions from code review

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoAdd type hints to `test_websockets.py` (#2494)
Scirlat Danut [Wed, 7 Feb 2024 19:56:21 +0000 (21:56 +0200)] 
Add type hints to `test_websockets.py` (#2494)

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoAdd type hints to `test_schemas.py` (#2490)
Scirlat Danut [Wed, 7 Feb 2024 18:47:23 +0000 (20:47 +0200)] 
Add type hints to `test_schemas.py` (#2490)

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
17 months agoAdd type hints to `test_formparsers.py` (#2480)
Scirlat Danut [Tue, 6 Feb 2024 22:01:44 +0000 (00:01 +0200)] 
Add type hints to `test_formparsers.py` (#2480)

* added type annotations to test_formparsers.py

* Apply suggestions from code review

* Apply suggestions from code review

* Apply suggestions from code review

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
17 months agoWarn instead of exception for missing env file (#2485)
Mathias Hauser [Tue, 6 Feb 2024 21:58:35 +0000 (22:58 +0100)] 
Warn instead of exception for missing env file (#2485)

17 months agoAdd type hints to `test_authentication.py` (#2472)
Scirlat Danut [Tue, 6 Feb 2024 20:47:45 +0000 (22:47 +0200)] 
Add type hints to `test_authentication.py` (#2472)

* added type annotations to test_authentication.py

* fixed types

* Apply suggestions from code review

* Fix linting

* Fix linting

* Apply suggestions from code review

---------

Co-authored-by: Scirlat Danut <scirlatdanut@scirlats-mini.lan>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>