mirror of
https://github.com/sigp/lighthouse.git
synced 2026-03-03 00:31:50 +00:00
Update to tokio 1.1 (#2172)
## Issue Addressed resolves #2129 resolves #2099 addresses some of #1712 unblocks #2076 unblocks #2153 ## Proposed Changes - Updates all the dependencies mentioned in #2129, except for web3. They haven't merged their tokio 1.0 update because they are waiting on some dependencies of their own. Since we only use web3 in tests, I think updating it in a separate issue is fine. If they are able to merge soon though, I can update in this PR. - Updates `tokio_util` to 0.6.2 and `bytes` to 1.0.1. - We haven't made a discv5 release since merging tokio 1.0 updates so I'm using a commit rather than release atm. **Edit:** I think we should merge an update of `tokio_util` to 0.6.2 into discv5 before this release because it has panic fixes in `DelayQueue` --> PR in discv5: https://github.com/sigp/discv5/pull/58 ## Additional Info tokio 1.0 changes that required some changes in lighthouse: - `interval.next().await.is_some()` -> `interval.tick().await` - `sleep` future is now `!Unpin` -> https://github.com/tokio-rs/tokio/issues/3028 - `try_recv` has been temporarily removed from `mpsc` -> https://github.com/tokio-rs/tokio/issues/3350 - stream features have moved to `tokio-stream` and `broadcast::Receiver::into_stream()` has been temporarily removed -> `https://github.com/tokio-rs/tokio/issues/2870 - I've copied over the `BroadcastStream` wrapper from this PR, but can update to use `tokio-stream` once it's merged https://github.com/tokio-rs/tokio/pull/3384 Co-authored-by: realbigsean <seananderson33@gmail.com>
This commit is contained in:
@@ -1,14 +1,11 @@
|
||||
#![cfg(test)]
|
||||
|
||||
//TODO: Drop compat library once reqwest and other libraries update to tokio 0.3
|
||||
|
||||
use beacon_chain::StateSkipConfig;
|
||||
use node_test_rig::{
|
||||
environment::{Environment, EnvironmentBuilder},
|
||||
eth2::types::StateId,
|
||||
testing_client_config, LocalBeaconNode,
|
||||
};
|
||||
use tokio_compat_02::FutureExt;
|
||||
use types::{EthSpec, MinimalEthSpec, Slot};
|
||||
|
||||
fn env_builder() -> EnvironmentBuilder<MinimalEthSpec> {
|
||||
@@ -44,11 +41,7 @@ fn http_server_genesis_state() {
|
||||
|
||||
let api_state = env
|
||||
.runtime()
|
||||
.block_on(
|
||||
remote_node
|
||||
.get_debug_beacon_states(StateId::Slot(Slot::new(0)))
|
||||
.compat(),
|
||||
)
|
||||
.block_on(remote_node.get_debug_beacon_states(StateId::Slot(Slot::new(0))))
|
||||
.expect("should fetch state from http api")
|
||||
.unwrap()
|
||||
.data;
|
||||
|
||||
Reference in New Issue
Block a user