Marcelo Trylesinski
d86740573f
Pre-compute root_path bytes encoding once per connection
...
root_path.encode("ascii") was called on every request to build
raw_path, but root_path is immutable config. Encode it once in
__init__ and reuse the cached value.
2026-03-15 17:25:08 +01:00
Marcelo Trylesinski
b3c69da8c1
Use bytearray for request body accumulation ( #2845 )
...
* Use bytearray for request body accumulation
Accumulating request body with bytes += creates a new bytes object on
every chunk, leading to O(n^2) allocation for fragmented bodies.
bytearray extends in-place (amortized O(1)), avoiding the quadratic cost.
* Add fragmented body benchmark for chunked body accumulation
Sends 100KB in 390 x 256-byte chunks to exercise the body += path
that triggers O(n^2) allocation with bytes concatenation.
* Revert "Add fragmented body benchmark for chunked body accumulation"
This reverts commit 47662509c1 .
2026-03-15 17:16:56 +01:00
Marcelo Trylesinski
3f3ebee20f
Disable pytest-xdist for CodSpeed benchmark runs ( #2847 )
...
CodSpeed instrumentation does not work with parallel test execution.
Pass -n 0 to disable xdist workers.
2026-03-15 16:10:36 +00:00
Marcelo Trylesinski
d072de754f
Add fragmented body benchmark for chunked body accumulation ( #2846 )
...
Sends 100KB in 390 x 256-byte chunks to exercise the body += path
that triggers O(n^2) allocation with bytes concatenation.
2026-03-15 16:01:51 +00:00
Marcelo Trylesinski
e300c2c75d
Add CodSpeed benchmark suite for HTTP protocol hot paths ( #2844 )
...
* Add CodSpeed benchmark suite for HTTP protocol hot paths
* Suppress mypy operator error on ASGI message body concatenation
* Use OIDC token and pin CodSpeed action to latest commit
2026-03-15 15:37:09 +00:00
Kadir Can Ozden
1fa697651b
Escape brackets and backslash in httptools HEADER_RE regex ( #2824 )
...
* Fix broken HEADER_RE regex in httptools HTTP implementation
The character class in HEADER_RE has unescaped [ and ] which causes
the regex to be parsed incorrectly. The ] prematurely closes the
character class after ':', so the remaining characters '={} \t"'
are treated as a literal sequence rather than part of the class.
As a result the regex never matches any invalid header name character
and the validation at line 496 is completely non-functional.
This escapes the brackets and backslash properly inside the
character class so all RFC 7230 header name separators are caught.
* Add tests for invalid HTTP header name validation
* Add comment explaining why no 500 is sent on invalid header name
* Use backticks around response_started in comment
---------
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2026-03-15 14:00:30 +00:00
Kadir Can Ozden
59ec1de7a4
Fix multiple issues in websockets sansio implementation ( #2825 )
2026-03-15 11:22:13 +01:00
Marcelo Trylesinski
2fc0efcdd9
Clarify Windows asyncio event loop selection in docs ( #2843 )
...
* Fix Windows event loop docs
* Clarify Windows event loop docs note
2026-03-14 10:07:39 +00:00
dependabot[bot]
c825f4eb6e
chore(deps): bump the github-actions group with 3 updates ( #2831 )
...
Bumps the github-actions group with 3 updates: [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv ), [actions/upload-artifact](https://github.com/actions/upload-artifact ) and [actions/download-artifact](https://github.com/actions/download-artifact ).
Updates `astral-sh/setup-uv` from 7.3.0 to 7.3.1
- [Release notes](https://github.com/astral-sh/setup-uv/releases )
- [Commits](eac588ad8d...5a095e7a20 )
Updates `actions/upload-artifact` from 6.0.0 to 7.0.0
- [Release notes](https://github.com/actions/upload-artifact/releases )
- [Commits](b7c566a772...bbbca2ddaa )
Updates `actions/download-artifact` from 7.0.0 to 8.0.0
- [Release notes](https://github.com/actions/download-artifact/releases )
- [Commits](37930b1c2a...70fc10c6e5 )
---
updated-dependencies:
- dependency-name: astral-sh/setup-uv
dependency-version: 7.3.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: github-actions
- dependency-name: actions/upload-artifact
dependency-version: 7.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
- dependency-name: actions/download-artifact
dependency-version: 8.0.0
dependency-type: direct:production
update-type: version-update:semver-major
dependency-group: github-actions
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-03-01 07:54:55 +01:00
dependabot[bot]
38731c31d1
chore(deps): bump the github-actions group with 2 updates ( #2827 )
...
Bumps the github-actions group with 2 updates: [actions/checkout](https://github.com/actions/checkout ) and [astral-sh/setup-uv](https://github.com/astral-sh/setup-uv ).
Updates `actions/checkout` from 6.0.1 to 6.0.2
- [Release notes](https://github.com/actions/checkout/releases )
- [Changelog](https://github.com/actions/checkout/blob/main/CHANGELOG.md )
- [Commits](8e8c483db8...de0fac2e45 )
Updates `astral-sh/setup-uv` from 7.1.6 to 7.3.0
- [Release notes](https://github.com/astral-sh/setup-uv/releases )
- [Commits](681c641aba...eac588ad8d )
---
updated-dependencies:
- dependency-name: actions/checkout
dependency-version: 6.0.2
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: github-actions
- dependency-name: astral-sh/setup-uv
dependency-version: 7.3.0
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: github-actions
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-22 13:57:51 +01:00
Marcelo Trylesinski
9283c0f15c
Version 0.41.0 ( #2821 )
...
* Version 0.41.0
* Add #2776 to release notes
2026-02-16 22:33:52 +00:00
Jonas Haag
a01a33eb8f
Add --limit-max-requests-jitter to stagger worker restarts ( #2707 )
...
* feat: max_requests_jitter
* format
* type check
* Fix test
* Add type annotation for `Server.limit_max_requests`
Mypy infers `int` from the first branch and errors on the `None`
assignment in the else branch.
* Use `cached_property` for `Server.limit_max_requests`
Keeps `__init__` clean by moving the jitter computation out.
* Document `--limit-max-requests-jitter` setting
---------
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2026-02-15 20:52:08 +00:00
Marcelo Trylesinski
2ce65bde15
Ignore permission denied errors in watchfiles reloader ( #2817 )
...
Pass `ignore_permission_denied=True` to `watchfiles.watch()` so
that directories the process cannot access are silently skipped
instead of crashing the reloader.
Bump the minimum watchfiles version to 0.20, which is the release
that introduced the `ignore_permission_denied` parameter.
Closes #1785
2026-02-15 19:49:07 +00:00
Marcelo Trylesinski
654f2ed7d7
Ensure lifespan shutdown runs when should_exit is set during startup ( #2812 )
2026-02-15 19:02:12 +00:00
Shahar Evron
a03d9f6f0e
Reduce the log level of 'request limit exceeded' messages ( #2788 )
...
Co-authored-by: Shahar Evron <shahar@DS-shahar-MBP.local>
2026-02-15 18:40:14 +00:00
Marcelo Trylesinski
e377de40d0
Add socket path to scope["server"] ( #2561 )
...
* Add socket path to scope["server"]
* fix lint
* Address review feedback and update sansio protocol
- Use `if` instead of `elif` after early returns in `get_local_addr`
- Update `server` type in `WebSocketsSansIOProtocol` to support UDS
- Add missing test case for full coverage
2026-02-15 18:34:14 +00:00
Marcelo Trylesinski
0779f7f8a4
Poll for readiness in test_multiprocess_health_check and run_server ( #2816 )
...
* Poll for readiness in `test_multiprocess_health_check` and `run_server`
Apply the same polling pattern to `test_multiprocess_health_check` — wait
for all processes to be alive instead of a fixed 1s sleep.
In `run_server`, wait for `server.started` instead of a fixed 0.1s sleep
to avoid connection races on slow setups (e.g. free-threaded Python 3.14).
* Avoid uncovered branch in health check polling loop
* Add pragma: no cover to health check polling loop body
2026-02-15 18:23:26 +00:00
Marcelo Trylesinski
7e9ce2c974
Poll for PID changes in test_multiprocess_sighup instead of fixed sleep ( #2815 )
...
The 1-second sleep wasn't always enough for the supervisor to pick up the
signal and complete `restart_all()`, causing flaky failures on macOS 3.14.
2026-02-15 18:12:12 +00:00
Erik Wienhold
99f0d8734d
Fix grep warning in scripts/sync-version ( #2807 )
...
Extended regular expressions (enabled via flag -E) don't support
non-capturing groups under POSIX. Get rid of them as they don't add any
value since we don't handle the captured groups in the first place.
2026-02-15 18:01:40 +00:00
dependabot[bot]
7ae2e6375a
chore(deps): bump the python-packages group with 18 updates ( #2801 )
...
* chore(deps): bump the python-packages group with 18 updates
Bumps the python-packages group with 18 updates:
| Package | From | To |
| --- | --- | --- |
| [click](https://github.com/pallets/click ) | `8.3.0` | `8.3.1` |
| [python-dotenv](https://github.com/theskumar/python-dotenv ) | `1.1.1` | `1.2.1` |
| [watchfiles](https://github.com/samuelcolvin/watchfiles ) | `1.1.0` | `1.1.1` |
| [websockets](https://github.com/python-websockets/websockets ) | `13.1` | `16.0` |
| [ruff](https://github.com/astral-sh/ruff ) | `0.11.9` | `0.14.14` |
| [pytest](https://github.com/pytest-dev/pytest ) | `8.3.5` | `9.0.2` |
| [pytest-mock](https://github.com/pytest-dev/pytest-mock ) | `3.14.0` | `3.15.1` |
| [pytest-xdist[psutil]](https://github.com/pytest-dev/pytest-xdist ) | `3.6.1` | `3.8.0` |
| [mypy](https://github.com/python/mypy ) | `1.15.0` | `1.19.1` |
| [types-pyyaml](https://github.com/typeshed-internal/stub_uploader ) | `6.0.12.20250402` | `6.0.12.20250915` |
| [cryptography](https://github.com/pyca/cryptography ) | `46.0.3` | `46.0.4` |
| [coverage](https://github.com/coveragepy/coveragepy ) | `7.8.0` | `7.13.2` |
| [twine](https://github.com/pypa/twine ) | `6.1.0` | `6.2.0` |
| [a2wsgi](https://github.com/abersheeran/a2wsgi ) | `1.10.8` | `1.10.10` |
| [wsproto](https://github.com/python-hyper/wsproto ) | `1.2.0` | `1.3.2` |
| [mkdocs-material](https://github.com/squidfunk/mkdocs-material ) | `9.6.21` | `9.7.1` |
| [mkdocstrings-python](https://github.com/mkdocstrings/python ) | `1.18.2` | `2.0.1` |
| [mkdocs-llmstxt](https://github.com/pawamoy/mkdocs-llmstxt ) | `0.4.0` | `0.5.0` |
Updates `click` from 8.3.0 to 8.3.1
- [Release notes](https://github.com/pallets/click/releases )
- [Changelog](https://github.com/pallets/click/blob/main/CHANGES.rst )
- [Commits](https://github.com/pallets/click/compare/8.3.0...8.3.1 )
Updates `python-dotenv` from 1.1.1 to 1.2.1
- [Release notes](https://github.com/theskumar/python-dotenv/releases )
- [Changelog](https://github.com/theskumar/python-dotenv/blob/main/CHANGELOG.md )
- [Commits](https://github.com/theskumar/python-dotenv/compare/v1.1.1...v1.2.1 )
Updates `watchfiles` from 1.1.0 to 1.1.1
- [Release notes](https://github.com/samuelcolvin/watchfiles/releases )
- [Commits](https://github.com/samuelcolvin/watchfiles/compare/v1.1.0...v1.1.1 )
Updates `websockets` from 13.1 to 16.0
- [Release notes](https://github.com/python-websockets/websockets/releases )
- [Commits](https://github.com/python-websockets/websockets/compare/13.1...16.0 )
Updates `ruff` from 0.11.9 to 0.14.14
- [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.11.9...0.14.14 )
Updates `pytest` from 8.3.5 to 9.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.3.5...9.0.2 )
Updates `pytest-mock` from 3.14.0 to 3.15.1
- [Release notes](https://github.com/pytest-dev/pytest-mock/releases )
- [Changelog](https://github.com/pytest-dev/pytest-mock/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pytest-dev/pytest-mock/compare/v3.14.0...v3.15.1 )
Updates `pytest-xdist[psutil]` from 3.6.1 to 3.8.0
- [Release notes](https://github.com/pytest-dev/pytest-xdist/releases )
- [Changelog](https://github.com/pytest-dev/pytest-xdist/blob/master/CHANGELOG.rst )
- [Commits](https://github.com/pytest-dev/pytest-xdist/compare/v3.6.1...v3.8.0 )
Updates `mypy` from 1.15.0 to 1.19.1
- [Changelog](https://github.com/python/mypy/blob/master/CHANGELOG.md )
- [Commits](https://github.com/python/mypy/compare/v1.15.0...v1.19.1 )
Updates `types-pyyaml` from 6.0.12.20250402 to 6.0.12.20250915
- [Commits](https://github.com/typeshed-internal/stub_uploader/commits )
Updates `cryptography` from 46.0.3 to 46.0.4
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pyca/cryptography/compare/46.0.3...46.0.4 )
Updates `coverage` from 7.8.0 to 7.13.2
- [Release notes](https://github.com/coveragepy/coveragepy/releases )
- [Changelog](https://github.com/coveragepy/coveragepy/blob/main/CHANGES.rst )
- [Commits](https://github.com/coveragepy/coveragepy/compare/7.8.0...7.13.2 )
Updates `twine` from 6.1.0 to 6.2.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/6.1.0...6.2.0 )
Updates `a2wsgi` from 1.10.8 to 1.10.10
- [Commits](https://github.com/abersheeran/a2wsgi/compare/v1.10.8...v1.10.10 )
Updates `wsproto` from 1.2.0 to 1.3.2
- [Changelog](https://github.com/python-hyper/wsproto/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/python-hyper/wsproto/compare/1.2.0...1.3.2 )
Updates `mkdocs-material` from 9.6.21 to 9.7.1
- [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.6.21...9.7.1 )
Updates `mkdocstrings-python` from 1.18.2 to 2.0.1
- [Release notes](https://github.com/mkdocstrings/python/releases )
- [Changelog](https://github.com/mkdocstrings/python/blob/main/CHANGELOG.md )
- [Commits](https://github.com/mkdocstrings/python/compare/1.18.2...2.0.1 )
Updates `mkdocs-llmstxt` from 0.4.0 to 0.5.0
- [Release notes](https://github.com/pawamoy/mkdocs-llmstxt/releases )
- [Changelog](https://github.com/pawamoy/mkdocs-llmstxt/blob/main/CHANGELOG.md )
- [Commits](https://github.com/pawamoy/mkdocs-llmstxt/compare/0.4.0...0.5.0 )
---
updated-dependencies:
- dependency-name: click
dependency-version: 8.3.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: python-packages
- dependency-name: python-dotenv
dependency-version: 1.2.1
dependency-type: direct:production
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: watchfiles
dependency-version: 1.1.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: python-packages
- dependency-name: websockets
dependency-version: '16.0'
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: python-packages
- dependency-name: ruff
dependency-version: 0.14.14
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: pytest
dependency-version: 9.0.2
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: python-packages
- dependency-name: pytest-mock
dependency-version: 3.15.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: pytest-xdist[psutil]
dependency-version: 3.8.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: mypy
dependency-version: 1.19.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: types-pyyaml
dependency-version: 6.0.12.20250915
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: python-packages
- dependency-name: cryptography
dependency-version: 46.0.4
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: python-packages
- dependency-name: coverage
dependency-version: 7.13.2
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: twine
dependency-version: 6.2.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: a2wsgi
dependency-version: 1.10.10
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: python-packages
- dependency-name: wsproto
dependency-version: 1.3.2
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: mkdocs-material
dependency-version: 9.7.1
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
- dependency-name: mkdocstrings-python
dependency-version: 2.0.1
dependency-type: direct:development
update-type: version-update:semver-major
dependency-group: python-packages
- dependency-name: mkdocs-llmstxt
dependency-version: 0.5.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: python-packages
...
Signed-off-by: dependabot[bot] <support@github.com>
* Keep websockets pinned at 13.1, remove stale type: ignore comments
websockets 16.0 has breaking API changes (removed legacy module
from type stubs, renamed exceptions) that require a separate
migration effort. Keep it at 13.1 for now.
The two removed `type: ignore` comments became unused with mypy 1.19.
---------
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>
2026-02-15 17:53:17 +00:00
dependabot[bot]
4532a39a67
chore(deps-dev): bump cryptography from 46.0.3 to 46.0.5 ( #2814 )
...
Bumps [cryptography](https://github.com/pyca/cryptography ) from 46.0.3 to 46.0.5.
- [Changelog](https://github.com/pyca/cryptography/blob/main/CHANGELOG.rst )
- [Commits](https://github.com/pyca/cryptography/compare/46.0.3...46.0.5 )
---
updated-dependencies:
- dependency-name: cryptography
dependency-version: 46.0.5
dependency-type: direct:development
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-15 14:33:36 +00:00
dependabot[bot]
4aff1b95f4
chore(deps): bump urllib3 from 2.5.0 to 2.6.3 ( #2803 )
...
Bumps [urllib3](https://github.com/urllib3/urllib3 ) from 2.5.0 to 2.6.3.
- [Release notes](https://github.com/urllib3/urllib3/releases )
- [Changelog](https://github.com/urllib3/urllib3/blob/main/CHANGES.rst )
- [Commits](https://github.com/urllib3/urllib3/compare/2.5.0...2.6.3 )
---
updated-dependencies:
- dependency-name: urllib3
dependency-version: 2.6.3
dependency-type: indirect
...
Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-02-15 14:28:38 +00:00
Fardin Alizadeh
a148fc5a71
fix typos ( #2800 )
2026-02-02 10:33:31 +00:00
Irfanuddin Shafi Ahmed
422ce367ae
Update sdist include list in pyproject.toml ( #2802 )
...
Removed requirements.txt from the sdist include list as the project no longer uses it
2026-02-02 11:29:12 +01:00
dependabot[bot]
918dae6ef9
chore(deps): bump the github-actions group with 4 updates ( #2779 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-01-01 09:09:13 +01:00
t-kawasumi
ae56d07af7
Fix typo: error_occured -> error_occurred ( #2776 )
2025-12-25 09:26:05 +01:00
Marcelo Trylesinski
9ff60042a5
Version 0.40.0 ( #2773 )
2025-12-21 14:04:42 +00:00
Marcelo Trylesinski
19df042c54
Drop Python 3.9 ( #2772 )
2025-12-21 14:56:01 +01:00
Marcelo Trylesinski
865ce7c0b4
Run strict mypy on test suite ( #2771 )
2025-12-21 13:35:00 +00:00
Marcelo Trylesinski
4f40b84957
Version 0.39.0 ( #2770 )
2025-12-21 12:49:56 +01:00
Marcelo Trylesinski
5692dfc416
fix(websockets): Send close frame on ASGI return ( #2769 )
2025-12-21 12:23:26 +01:00
dependabot[bot]
4194764a26
chore(deps): bump the github-actions group with 2 updates ( #2763 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2025-12-21 10:06:02 +00:00
Philip Meier
d94bf28743
explicitly start ASGI run with empty context ( #2742 )
...
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2025-12-21 10:55:50 +01:00
dependabot[bot]
8ae0bcbecb
chore(deps): bump the github-actions group with 2 updates ( #2748 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-04 07:56:23 +00:00
Marcelo Trylesinski
4744ff9a1a
Add groups configuration for GitHub Actions ( #2747 )
2025-11-04 07:32:40 +00:00
dependabot[bot]
0391372376
chore(deps): bump astral-sh/setup-uv from 6.8.0 to 7.1.2 ( #2746 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-11-01 10:28:19 +01:00
Marcelo Trylesinski
69a6ae3198
Improve typing in test_http.py ( #2740 )
2025-10-23 19:53:31 +00:00
Marcelo Trylesinski
3850ad6520
Version 0.38.0 ( #2733 )
2025-10-18 13:43:56 +00:00
Marcelo Trylesinski
9b3f17a549
Support Python 3.14 ( #2723 )
...
Co-authored-by: Jair Henrique <jair.henrique@gmail.com>
2025-10-18 15:38:06 +02:00
Marcelo Trylesinski
ce79f95d06
Revert "Add Marcelo Trylesinski to the license ( #2699 )" ( #2730 )
2025-10-16 22:51:35 +00:00
Marcelo Trylesinski
dbf8797b47
docs: add social icons ( #2728 )
2025-10-12 21:51:14 +00:00
Marcelo Trylesinski
58f28be98e
Add section about event loop ( #2725 )
2025-10-12 16:43:26 +01:00
Marcelo Trylesinski
93d9510749
Bump docs dependencies ( #2724 )
2025-10-11 08:51:24 +00:00
Marcelo Trylesinski
9b1c6c45ed
Move Marcelo Trylesinski to maintainers in pyproject.toml ( #2719 )
2025-10-02 19:27:29 +00:00
Marcelo Trylesinski
57a61d86f2
Add discord to README ( #2718 )
2025-10-02 18:49:43 +00:00
dependabot[bot]
7ef5f9f5e7
chore(deps): bump astral-sh/setup-uv from 6.7.0 to 6.8.0 ( #2717 )
...
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2025-10-01 07:30:12 +02:00
NGANAMODEIJunior
6d26d88970
Update pyproject.toml for PEP639 compliance ( #2713 )
...
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2025-09-25 13:08:08 +00:00
Marcelo Trylesinski
4098bcac97
Version 0.37.0 ( #2712 )
2025-09-23 13:32:12 +00:00
Nikita Reznikov
8c057fa3fc
Add os.PathLike[str] type to ssl_ca_certs ( #2676 )
...
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2025-09-23 13:21:28 +00:00
LincolnPuzey
bbe119e4e8
Add note about --timeout-keep-alive being measured in seconds ( #2669 )
...
Co-authored-by: Marcelo Trylesinski <marcelotryle@gmail.com>
2025-09-23 13:12:42 +00:00