v0.10.0
See CHANGELOG.md for the full release notes.
What's Changed
- --mount: several applications in one process (stage 1) by @codetalcott in #95
- --mount stage 2: each mount in its own native execution mode by @codetalcott in #96
- Several ASGI mounts: one executor each, per-lane drain-ack credit by @codetalcott in #97
- Django ASGI parity: the peer reaches Python, and an ASGI validator to prove it by @codetalcott in #98
- Cross-worker fan-out for ASGI apps: state["m0"] over the BroadcastBus by @codetalcott in #99
- Stop the fan-out probe failing on a lost accept race by @codetalcott in #103
- Per-mount execution modes under --threads by @codetalcott in #100
- Chunked transfer-encoding: a stream no longer ends its connection by @codetalcott in #101
- sendfile(2) binding (foundation, no caller yet) by @codetalcott in #102
- Zero-copy static files: fd-backed response bodies over sendfile(2) by @codetalcott in #104
- Pin granian as the locked benchmark comparator by @codetalcott in #105
- Hot-path allocation pass: +25% on the hello row, profile-ranked by @codetalcott in #106
- Machine-sourced doc facts get a ratchet; benchmarks leave artifacts by @codetalcott in #107
- ROADMAP: the release path as five finite gates by @codetalcott in #108
- Known issues: the WebSocket close path's suspected RST-for-FIN race by @codetalcott in #109
- A PyPI wheel for m0serve, and the two blind spots found on the way by @codetalcott in #110
- Release 0.10.0rc1: the first PyPI upload by @codetalcott in #111
- Pin --target-cpu: the release crashed with SIGILL on a machine that did not build it by @codetalcott in #112
- Parse Mach-O natively: one Linux runner has to inspect both wheels by @codetalcott in #113
- Flag pre-releases, or an rc becomes "Latest" above the stable release by @codetalcott in #114
- Release 0.10.0: promote the release candidate unchanged by @codetalcott in #115
Full Changelog: v0.9.0...v0.10.0