-
Notifications
You must be signed in to change notification settings - Fork 6
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
refactor: use futures-lite instead of futures #49
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I assume that because the future trait itself is not in the futures crate, this won't cause too much trouble for users that still want to use the futures crate?
@@ -732,8 +744,9 @@ fn encode_decode_partial_fsm_proptest( | |||
let (size, selection) = size_and_selection; | |||
let data = make_test_data(size); | |||
let outboard = PostOrderMemOutboard::create(&data, block_size); | |||
let ok = | |||
futures::executor::block_on(encode_decode_partial_fsm_impl(&data, outboard, selection)); | |||
let ok = tokio::runtime::Runtime::new() |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I guess 5x is enough to make a helper fn.
yes |
Due to the low maintenance and absurd high amount of `unsafe` code in parts of the `futures` crate, we are trying to avoid usage of it. Usages are replaced with - `futures-lite` : general `Future` and `Stream` tooling - `futures-sink`: `Sink` trait - `futures-buffered`: faster and safer version of `Futures{Un}Ordered` - If must be `futures-util` for sink specific things that are missing ## Breaking Changes - `iroh::node::Node` does not implement `Future` anymore - `iroh::node::Node::shutdown()` is now `async` and can be awaited upon to wait for the node to exit - `iroh_net::util::AbortingJoinHandle`s inner field is not public anymore, use the `From<JoinHandle>` implementation to contruct it ## Followups - [x] Apply this to `bao-tree`: n0-computer/bao-tree#49 - [x] Apply this to `iroh-io`: n0-computer/iroh-io#6 - [x] Apply this to `quic-rpc`: n0-computer/quic-rpc#73 --------- Co-authored-by: Ruediger Klaehn <rklaehn@protonmail.com>
Due to the low maintenance and absurd high amount of `unsafe` code in parts of the `futures` crate, we are trying to avoid usage of it. Usages are replaced with - `futures-lite` : general `Future` and `Stream` tooling - `futures-sink`: `Sink` trait - `futures-buffered`: faster and safer version of `Futures{Un}Ordered` - If must be `futures-util` for sink specific things that are missing ## Breaking Changes - `iroh::node::Node` does not implement `Future` anymore - `iroh::node::Node::shutdown()` is now `async` and can be awaited upon to wait for the node to exit - `iroh_net::util::AbortingJoinHandle`s inner field is not public anymore, use the `From<JoinHandle>` implementation to contruct it ## Followups - [x] Apply this to `bao-tree`: n0-computer/bao-tree#49 - [x] Apply this to `iroh-io`: n0-computer/iroh-io#6 - [x] Apply this to `quic-rpc`: n0-computer/quic-rpc#73 --------- Co-authored-by: Ruediger Klaehn <rklaehn@protonmail.com>
Due to the low maintenance and absurd high amount of `unsafe` code in parts of the `futures` crate, we are trying to avoid usage of it. Usages are replaced with - `futures-lite` : general `Future` and `Stream` tooling - `futures-sink`: `Sink` trait - `futures-buffered`: faster and safer version of `Futures{Un}Ordered` - If must be `futures-util` for sink specific things that are missing ## Breaking Changes - `iroh::node::Node` does not implement `Future` anymore - `iroh::node::Node::shutdown()` is now `async` and can be awaited upon to wait for the node to exit - `iroh_net::util::AbortingJoinHandle`s inner field is not public anymore, use the `From<JoinHandle>` implementation to contruct it ## Followups - [x] Apply this to `bao-tree`: n0-computer/bao-tree#49 - [x] Apply this to `iroh-io`: n0-computer/iroh-io#6 - [x] Apply this to `quic-rpc`: n0-computer/quic-rpc#73 --------- Co-authored-by: Ruediger Klaehn <rklaehn@protonmail.com>
Due to the low maintenance and absurd high amount of `unsafe` code in parts of the `futures` crate, we are trying to avoid usage of it. Usages are replaced with - `futures-lite` : general `Future` and `Stream` tooling - `futures-sink`: `Sink` trait - `futures-buffered`: faster and safer version of `Futures{Un}Ordered` - If must be `futures-util` for sink specific things that are missing ## Breaking Changes - `iroh::node::Node` does not implement `Future` anymore - `iroh::node::Node::shutdown()` is now `async` and can be awaited upon to wait for the node to exit - `iroh_net::util::AbortingJoinHandle`s inner field is not public anymore, use the `From<JoinHandle>` implementation to contruct it ## Followups - [x] Apply this to `bao-tree`: n0-computer/bao-tree#49 - [x] Apply this to `iroh-io`: n0-computer/iroh-io#6 - [x] Apply this to `quic-rpc`: n0-computer/quic-rpc#73 --------- Co-authored-by: Ruediger Klaehn <rklaehn@protonmail.com>
Due to the low maintenance and absurd high amount of `unsafe` code in parts of the `futures` crate, we are trying to avoid usage of it. Usages are replaced with - `futures-lite` : general `Future` and `Stream` tooling - `futures-sink`: `Sink` trait - `futures-buffered`: faster and safer version of `Futures{Un}Ordered` - If must be `futures-util` for sink specific things that are missing ## Breaking Changes - `iroh::node::Node` does not implement `Future` anymore - `iroh::node::Node::shutdown()` is now `async` and can be awaited upon to wait for the node to exit - `iroh_net::util::AbortingJoinHandle`s inner field is not public anymore, use the `From<JoinHandle>` implementation to contruct it ## Followups - [x] Apply this to `bao-tree`: n0-computer/bao-tree#49 - [x] Apply this to `iroh-io`: n0-computer/iroh-io#6 - [x] Apply this to `quic-rpc`: n0-computer/quic-rpc#73 --------- Co-authored-by: Ruediger Klaehn <rklaehn@protonmail.com>
Due to the low maintenance and absurd high amount of `unsafe` code in parts of the `futures` crate, we are trying to avoid usage of it. Usages are replaced with - `futures-lite` : general `Future` and `Stream` tooling - `futures-sink`: `Sink` trait - `futures-buffered`: faster and safer version of `Futures{Un}Ordered` - If must be `futures-util` for sink specific things that are missing ## Breaking Changes - `iroh::node::Node` does not implement `Future` anymore - `iroh::node::Node::shutdown()` is now `async` and can be awaited upon to wait for the node to exit - `iroh_net::util::AbortingJoinHandle`s inner field is not public anymore, use the `From<JoinHandle>` implementation to contruct it ## Followups - [x] Apply this to `bao-tree`: n0-computer/bao-tree#49 - [x] Apply this to `iroh-io`: n0-computer/iroh-io#6 - [x] Apply this to `quic-rpc`: n0-computer/quic-rpc#73 --------- Co-authored-by: Ruediger Klaehn <rklaehn@protonmail.com>
Ref n0-computer/iroh#2117