diff --git a/subxt/Cargo.toml b/subxt/Cargo.toml index f06bd9dd63..4a18bb2b41 100644 --- a/subxt/Cargo.toml +++ b/subxt/Cargo.toml @@ -61,7 +61,7 @@ unstable-metadata = [] # Activate this to expose the Light Client functionality. # Note that this feature is experimental and things may break or not work as expected. -unstable-light-client = ["subxt-lightclient", "tokio-stream", "tokio"] +unstable-light-client = ["subxt-lightclient", "tokio-stream"] [dependencies] async-trait = { workspace = true } @@ -117,7 +117,6 @@ getrandom = { workspace = true, optional = true } # Included if "native" feature is enabled tokio-util = { workspace = true, features = ["compat"], optional = true } -tokio = { workspace = true, features = ["macros", "time", "rt-multi-thread"], optional = true } [dev-dependencies] bitvec = { workspace = true } diff --git a/subxt/src/client/light_client/mod.rs b/subxt/src/client/light_client/mod.rs index 6881e6ac76..a4b116652e 100644 --- a/subxt/src/client/light_client/mod.rs +++ b/subxt/src/client/light_client/mod.rs @@ -93,29 +93,7 @@ impl RawLightClient { ) -> Result, crate::Error> { let raw_rpc = self.raw_rpc.for_chain(chain_id); let rpc_client = RpcClient::new(raw_rpc.clone()); - - use crate::backend::unstable::UnstableBackend; - use std::sync::Arc; - let (backend, mut driver) = UnstableBackend::builder().build(rpc_client); - let future = async move { - use futures::StreamExt; - while let Some(val) = driver.next().await { - if let Err(e) = val { - // This is a test; bail if something does wrong and try to - // ensure that the message makes it to some logs. - eprintln!("Error driving unstable backend in tests (will panic): {e}"); - panic!("Error driving unstable backend in tests: {e}"); - } - } - }; - // The unstable backend needs driving: - #[cfg(feature = "native")] - tokio::spawn(future); - #[cfg(feature = "web")] - wasm_bindgen_futures::spawn_local(future); - let client = OnlineClient::from_backend(Arc::new(backend)) - .await - .map_err(|e| format!("Cannot construct OnlineClient from backend: {e}"))?; + let client = OnlineClient::::from_rpc_client(rpc_client).await?; Ok(LightClient { client, chain_id }) }