tonic
tonic copied to clipboard
Update to hyper 1.0 and axum 0.7
Hello! This is continue for: https://github.com/hyperium/tonic/pull/1583
Also I merged:
- https://github.com/allan2/tonic/pull/1
- https://github.com/allan2/tonic/pull/2
TODO:
- [x] update imports to use -util crates
- [x] update AddrStream and AddrIncoming
- [ ] use axum Request and Response in transport (in-progress)
- [ ] add poll_frame to impl http_body::Body (in-progress)
- [ ] remove poll_trailers from impl http_body::Body (in-progress)
- [x] fix hyper-timeout connector
- [ ] fix connect, Connect (no more hyper::client::service::Connect)
- [ ] update version, docs
- [ ] update examples
- [ ] many more (tonic-web, etc. Some of these will be in separate PRs)
Depends on:
- [ ] https://github.com/hyperium/hyper/issues/3461
Closed: https://github.com/hyperium/tonic/issues/1579
Well, now I understand. I need to re-implement two structs:
- https://docs.rs/hyper/0.14.27/hyper/client/service/struct.Connect.html
- https://docs.rs/hyper/0.14.27/hyper/client/conn/struct.SendRequest.html
And Channel will start to compile. Great, small, but progress))
Maybe it will be useful in hyper-utils.
@ikrivosheev do you plan on continuing with this PR?
@ikrivosheev do you plan on continuing with this PR?
@jakubadamw , hello! Yes, I do. At the moment I need to finish tasks in hyper-util (https://github.com/hyperium/hyper/issues/3080)
@ikrivosheev is there anyway I can help in pushing this forward?
@ikrivosheev is there anyway I can help in pushing this forward?
Hello! For the PR needs something like: https://docs.rs/hyper/0.14.28/hyper/client/service/struct.Connect.html. A service which return a service https://docs.rs/hyper/0.14.28/hyper/client/conn/struct.SendRequest.html for make http request.
From my understanding this PR will unlock upgrading to rustls 0.23 as hyper_rustls 0.27 uses hyper 1.0.
Hello! For the PR needs something like: https://docs.rs/hyper/0.14.28/hyper/client/service/struct.Connect.html. A service which return a service https://docs.rs/hyper/0.14.28/hyper/client/conn/struct.SendRequest.html for make http request.
hyper-util can help us here. Can we consider using some of those structs?
Hello! For the PR needs something like: https://docs.rs/hyper/0.14.28/hyper/client/service/struct.Connect.html. A service which return a service https://docs.rs/hyper/0.14.28/hyper/client/conn/struct.SendRequest.html for make http request.
hyper-util can help us here. Can we consider using some of those structs?
Yes, I saw it. But there aren't structures like in the old hyper version.
I think I got the SendRequest and Connection pieces working in #1670, but I'm running into what I think is a compiler error.
In that PR I still want to finish handling poll_frame and properly add graceful shutdowns (both things I punted on while just trying to get tonic to compile)
I really appreciate you guys working on this. I am looking forward to multiplexing Axum and Tonic in my current project. Right now I have strict dependencies on Hyper 1.0+ and Axum 0.7+.
If there is anything I can do to help out please let me know.