v1.8.1
- http1: fix consuming extra CPU from previous change (#3977) (4492f31e)
Full Changelog: https://github.com/hyperium/hyper/compare/v1.8.0...v1.8.1
v1.8.0
- rt: add
Timer::now()method to allow overriding the instant returned (#3965) (5509ebe6)
- http1: fix rare missed write wakeup on connections (#3952) (2377b893)
- http2: fix internals of HTTP/2 CONNECT upgrades (#3967) (58e0e7dc, closes #3966)
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)
- 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
- @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
v1.7.0
- client:
- error: add
Error::is_shutdown()(#3863) (b8affd8a, closes #2745) - server: add
allow_multiple_spaces_in_request_line_delimitershttp1 builder method (#3929) (9749184f)
- server: improve caching accuracy of Date header (#3887) (436cadd1)
- chore: remove redundant backticks by @jimmycathy in https://github.com/hyperium/hyper/pull/3855
- Gate tests with features they test by @WhyNotHugo in https://github.com/hyperium/hyper/pull/3864
- docs(service): add
HttpServicedocumentation by @cratelyn in https://github.com/hyperium/hyper/pull/3869 - docs(examples): alias Builder for clarity by @Muffeter in https://github.com/hyperium/hyper/pull/3873
- docs(MAINTAINERS): add katelyn martin as collaborator by @seanmonstar in https://github.com/hyperium/hyper/pull/3878
- chore(proto/h2): fix module-level documentation by @cratelyn in https://github.com/hyperium/hyper/pull/3881
- feat(client): add a
TrySendError::message()method by @cratelyn in https://github.com/hyperium/hyper/pull/3884 - feat(client): add a
TrySendError::error()method by @cratelyn in https://github.com/hyperium/hyper/pull/3885 - fix(http2): add decriptive error for non-zero connect request by @samp5 in https://github.com/hyperium/hyper/pull/3886
- refactor(lib): drop futures-util except in ffi by @hanna-kruppe in https://github.com/hyperium/hyper/pull/3890
- fix(date): improve caching accuracy by @Patryk27 in https://github.com/hyperium/hyper/pull/3887
- docs(SECURITY): update policy to use GSA drafts when reporting vulnerabilities by @seanmonstar in https://github.com/hyperium/hyper/pull/3894
- feat: add Error::is_shutdown() by @joshka in https://github.com/hyperium/hyper/pull/3863
- docs: improve ext module overview by @seanmonstar in https://github.com/hyperium/hyper/pull/3921
- docs(rt): improve rt module overview by @seanmonstar in https://github.com/hyperium/hyper/pull/3920
- chore(ci): update to cargo-check-external-types-0.3.0 by @tottoto in https://github.com/hyperium/hyper/pull/3928
- test(common): add missing assertion in full_rewind test by @1911860538 in https://github.com/hyperium/hyper/pull/3926
- fix(lib): avoid implicit cargo feature by @hanna-kruppe in https://github.com/hyperium/hyper/pull/3931
- feat(http1): add allow_multiple_spaces_in_request_line_delimiters h1 builder config method by @mccordryan in https://github.com/hyperium/hyper/pull/3929
- Prepare v1.7.0 by @seanmonstar in https://github.com/hyperium/hyper/pull/3933
- @jimmycathy made their first contribution in https://github.com/hyperium/hyper/pull/3855
- @Muffeter made their first contribution in https://github.com/hyperium/hyper/pull/3873
- @samp5 made their first contribution in https://github.com/hyperium/hyper/pull/3886
- @hanna-kruppe made their first contribution in https://github.com/hyperium/hyper/pull/3890
- @Patryk27 made their first contribution in https://github.com/hyperium/hyper/pull/3887
- @joshka made their first contribution in https://github.com/hyperium/hyper/pull/3863
- @1911860538 made their first contribution in https://github.com/hyperium/hyper/pull/3926
- @mccordryan made their first contribution in https://github.com/hyperium/hyper/pull/3929
Full Changelog: https://github.com/hyperium/hyper/compare/v1.6.0...v1.7.0
v1.6.0
- ext: add
ext::on_informational()callback extension (#3818) (8ce1fcfa, closes #2565) - server: add
http1::Builder::ignore_invalid_headers(bool)option (#3824) (3817a79b)
- server:
http2::Builder::max_local_error_reset_streams()now takes&mut selfand returns&mut Self. In practice, this shouldn't break almost anyone. It was the wrong receiver and return types. (e981a91e)
- @finnbear made their first contribution in https://github.com/hyperium/hyper/pull/3820
- @GlenDC
- @tottoto
- @seanmonstar
Full Changelog: https://github.com/hyperium/hyper/compare/v1.5.2...v1.6.0
v1.5.2
- http1:
- @23doors made their first contribution in https://github.com/hyperium/hyper/pull/3795
- @ionionascu made their first contribution in https://github.com/hyperium/hyper/pull/3799
- @linyihai made their first contribution in https://github.com/hyperium/hyper/pull/3800
- @suzp1984 made their first contribution in https://github.com/hyperium/hyper/pull/3807
- @seanmonstar
Full Changelog: https://github.com/hyperium/hyper/compare/v1.5.1...v1.5.2
v0.14.32
- server: add
Builder::max_pending_accept_reset_streams(num)option (a24f0c0)
- http1: fix intermittent panic parsing partial headers (0f274ae)
- @cratelyn made their first contribution in https://github.com/hyperium/hyper/pull/3796
Full Changelog: https://github.com/hyperium/hyper/compare/v0.14.31...v0.14.32
v1.5.1
- http2:
- test(client): unflake client try_send_request unit test by @seanmonstar in https://github.com/hyperium/hyper/pull/3770
- docs(lib): fix up misleading example about unstable features by @seanmonstar in https://github.com/hyperium/hyper/pull/3771
- docs(lib): do not inline http rexports by @seanmonstar in https://github.com/hyperium/hyper/pull/3772
- Change graceful_shutdown function behavior. by @ionut-slaveanu in https://github.com/hyperium/hyper/pull/3729
- chore(ci): pin hashbrown in MSRV job by @seanmonstar in https://github.com/hyperium/hyper/pull/3783
- fix(http2): pass proper value to h2
max_local_error_reset_streamsby @magurotuna in https://github.com/hyperium/hyper/pull/3782 - chore(dependencies): remove libc crate from dependencies by @tottoto in https://github.com/hyperium/hyper/pull/3377
- @ionut-slaveanu made their first contribution in https://github.com/hyperium/hyper/pull/3729
- @seanmonstar
- @ionut-slaveanu
- @magurotuna
- @tottoto
Full Changelog: https://github.com/hyperium/hyper/compare/v1.5.0...v1.5.1
v1.5.0
- client: Add HTTP/2 builder options
header_table_size()andmax_concurrent_streams()(4c84e8c1) - rt: add
ReadBufCursormethodsremaining()andput_slice()(#3700) (5a13041e)
- http1:
- http2: strip content-length header in response to CONNECT requests (#3748) (67a4a498)
- @yinheli made their first contribution in https://github.com/hyperium/hyper/pull/3712
- @yhx-12243 made their first contribution in https://github.com/hyperium/hyper/pull/3718
- @friendlyping made their first contribution in https://github.com/hyperium/hyper/pull/3739
- @WhyNotHugo made their first contribution in https://github.com/hyperium/hyper/pull/3742
- @fasterthanlime made their first contribution in https://github.com/hyperium/hyper/pull/3745
- @hongmengning made their first contribution in https://github.com/hyperium/hyper/pull/3753
- @n1haldev made their first contribution in https://github.com/hyperium/hyper/pull/3702
- @nox
- @seanmonstar
- @tottoto
- @0x676e67
- @SabrinaJewson
- @dndx
Full Changelog: https://github.com/hyperium/hyper/compare/v1.4.1...v1.5.0