Benoit Chesneau
9bce72cfc3
Update changelog with missing 25.3.0 changes
2026-03-27 00:45:56 +01:00
Benoit Chesneau
bdb2ebd5a4
Reject chunk extensions with bare CR bytes (RFC 9112)
...
Both WSGI and ASGI parsers now validate that chunk extensions
do not contain bare CR characters, which are not allowed per
RFC 9112.
Fixes #3556
2026-03-26 15:45:48 +01:00
Benoit Chesneau
7057fc9f89
Fix http_protocols documentation to use string syntax
...
The http_protocols setting expects a comma-separated string, not a list.
Updated all examples in the HTTP/2 guide.
Fixes #3561
2026-03-26 15:45:11 +01:00
Benoit Chesneau
d43acb8fe0
Update to gunicorn_h1c >= 0.6.2 for asgi_headers support
...
- Use asgi_headers property (lowercase names) from fast parser
- Bump version to 25.3.0
- Update changelog with all changes for this release
2026-03-26 15:45:11 +01:00
Benoit Chesneau
389438fb5a
Require gunicorn_h1c >= 0.6.0 for finish() method support
...
Update minimum version requirement for the fast HTTP parser to 0.6.0
which includes the finish() method for EOF handling in chunked encoding.
2026-03-26 14:12:50 +01:00
Benoit Chesneau
18f5d0ea95
Fix 25.2.0 changelog: correct ASGI parser optimization description
...
Remove inaccurate BytesIO claims - the callback parser uses bytearray directly.
2026-03-25 09:42:07 +01:00
Benoit Chesneau
6f601a0de9
Bump version to 25.2.0
2026-03-24 23:42:01 +01:00
Benoit Chesneau
cb708b4698
Add uwsgi async fix to changelog
2026-03-24 23:18:25 +01:00
Benoit Chesneau
f555180191
Add FileWrapper iterator fix to changelog
2026-03-24 23:06:06 +01:00
Benoit Chesneau
2bf2632944
Update docs and changelog for gunicorn_h1c 0.4.1 integration
2026-03-22 13:44:31 +01:00
Benoit Chesneau
b3b98b1322
perf(asgi): optimize HTTP parser for improved performance
...
- Read chunk size lines and trailers in 64-byte blocks instead of 1 byte
at a time, pushing back excess data to the unreader buffer
- Reuse BytesIO buffers with truncate/seek instead of creating new
objects to reduce GC pressure in AsyncUnreader
- Use bytearray.find() directly instead of converting to bytes first
in header parsing loop
- Use index-based iteration for header parsing instead of list.pop(0)
which is O(n) per pop vs O(1) for index access
Add tests for the optimized parsing code paths.
2026-02-18 10:00:46 +01:00
Benoit Chesneau
2d4310116d
docs: merge gunicornc into 25.1.0 release
2026-02-13 12:03:48 +01:00
Benoit Chesneau
bf4ad8d610
docs: update 25.1.0 release date to 2026-02-13
2026-02-13 11:59:42 +01:00
Benoit Chesneau
3e60d2942d
docs: add gunicornc control interface guide
...
- Add guides/gunicornc.md with usage examples and command reference
- Update mkdocs.yml navigation to include Control Interface guide
- Update 2026-news.md and news.md changelog with 25.2.0 release
- Regenerate reference/settings.md with control socket settings
2026-02-13 02:29:44 +01:00
Benoit Chesneau
0077b05916
docs: add TTIN/TTOU to changelog
2026-02-12 23:59:20 +01:00
Benoit Chesneau
ac00c862d7
docs: mark ASGI as stable, Dirty Arbiters as beta
...
- Remove beta warning from ASGI worker documentation
- Add beta warning to Dirty Arbiters documentation
- Update README feature list accordingly
- Update changelog to reflect stability changes
2026-02-12 22:09:14 +01:00
Benoit Chesneau
7f6cf908e5
release: 25.1.0
...
New Features:
- Dirty Stash: global shared state between workers (#3503 )
- Dirty Binary Protocol: TLV encoding for efficient IPC (#3500 )
Documentation:
- Fix Markdown formatting in /configure
2026-02-12 22:06:44 +01:00
Benoit Chesneau
fc850687df
chore: prepare release 25.0.3
2026-02-07 15:36:43 +01:00
Benoit Chesneau
95b7ffeeaa
chore: prepare release 25.0.2
...
- Bump version to 25.0.2
- Update copyright year to 2026 in LICENSE and NOTICE
- Add license headers to all Python source files
- Add changelog entry for 25.0.2
2026-02-06 08:21:18 +01:00
Benoit Chesneau
3bf529f6c2
docs: sync news.md with 2026-news.md
2026-02-02 14:28:37 +01:00
Benoit Chesneau
658924c436
docs: update changelog for 25.0.1
2026-02-02 10:17:50 +01:00
Benoit Chesneau
8652aec783
docs: update news.md with complete 25.0.0 changelog
2026-02-01 14:50:02 +01:00
Benoit Chesneau
c914f336b8
docs: add dirty arbiters to navigation and changelog
2026-01-25 10:23:25 +01:00
Benoit Chesneau
375e79e95b
release: bump version to 24.1.1
2026-01-24 02:13:42 +01:00
Benoit Chesneau
d73ff4b1d8
docs: update main changelog with 24.1.0
2026-01-23 22:16:37 +01:00
Benoit Chesneau
e021e3e93f
docs: Update 24.0.0 changelog with security fixes
2026-01-23 01:39:23 +01:00
Benoit Chesneau
d34d3de01b
docs: Set release date for 24.0.0
2026-01-23 01:20:03 +01:00
Benoit Chesneau
5ea4eb340a
docs: Add 2026 changelog and modernize README
2026-01-23 01:20:03 +01:00
Benoit Chesneau
19a2efec63
Migrate docs build to MkDocs
2026-01-23 01:20:03 +01:00