v1.8.0
Highlights
Features
- rt: add
Timer::now()method to allow overriding the instant returned (#3965) (5509ebe6)
Bug Fixes
- http1: fix rare missed write wakeup on connections (#3952) (2377b893)
- http2: fix internals of HTTP/2 CONNECT upgrades (#3967) (58e0e7dc, closes #3966)
Breaking Changes
While technically breaking, it's assumed you will not need to do anything or be affected.
-
The HTTP/2 client connection no longer allows an executor that can not spawn itself.
This was an oversight originally. The client connection will now include spawning a future that keeps a copy of the executor to spawn other futures. Thus, if it is
!Send, it needs to spawn!Sendfutures. The likelihood of executors that match the previously allowed behavior should be very remote.There is also technically a semver break in here, which is that the
Http2ClientConnExectrait no longer dyn-compatible, because it now expects to beClone. This should not break usage of theconnbuilder, because it already separately hadE: Clonebounds. If someone were usingdyn Http2ClientConnExec, that will break. However, there is no purpose for doing so, and it is not usable otherwise, since the trait only exists to propagate bounds into hyper. Thus, the breakage should not affect anyone. (58e0e7dc)
What's Changed
- chore(ci): update to actions/checkout@v5 by @tottoto in https://github.com/hyperium/hyper/pull/3935
- refactor(ffi): specify "C" ABI explicitly in ffi_fn! macro by @1911860538 in https://github.com/hyperium/hyper/pull/3937
- Update documented default values for
http1::Builderby @Will-Low in https://github.com/hyperium/hyper/pull/3938 - fix(client): port tests to in-memory socket by @cratelyn in https://github.com/hyperium/hyper/pull/3947
- feat: allow overriding the instant returned from Timer by @arielb1 in https://github.com/hyperium/hyper/pull/3965
- fix(http1): poll_loop writes when ready by @lthiery in https://github.com/hyperium/hyper/pull/3952
- test(ready_stream): replace tracing with printlns by @seanmonstar in https://github.com/hyperium/hyper/pull/3973
- fix(http2): fix internals of HTTP/2 CONNECT upgrades by @seanmonstar in https://github.com/hyperium/hyper/pull/3967
- Release v1.8.0 by @seanmonstar in https://github.com/hyperium/hyper/pull/3974
New Contributors
- @Will-Low made their first contribution in https://github.com/hyperium/hyper/pull/3938
- @arielb1 made their first contribution in https://github.com/hyperium/hyper/pull/3965
- @lthiery made their first contribution in https://github.com/hyperium/hyper/pull/3952