When specifying sc-network
as a dependency:
sc-network = { git = "https://github.com/paritytech/substrate", branch = "polkadot-v1.0.0" }
I get a compile error:
error[E0433]: failed to resolve: could not find `Config` in `noise`
--> /Users/nologik/.cargo/git/checkouts/substrate-7e08433d4c370a21/948fbd2/client/network/src/transport.rs:83:37
|
83 | let authentication_config = noise::Config::new(&keypair).expect("Can create noise config. qed");
| ^^^^^^ could not find `Config` in `noise`
|
help: consider importing one of these items
|
21 + use crate::Config;
|
21 + use crate::transport::tcp::Config;
|
21 + use crate::transport::websocket::tls::Config;
|
help: if you import `Config`, refer to it directly
|
83 - let authentication_config = noise::Config::new(&keypair).expect("Can create noise config. qed");
83 + let authentication_config = Config::new(&keypair).expect("Can create noise config. qed");
Upon further inspection, the sc-network
crate specifies using libp2p version 0.51.3, yet, attempts to call this function: https://github.com/paritytech/substrate/blob/948fbd2fd1233dc26dbb9f9bbc1d2cca2c03945d/client/network/src/transport.rs#L83
The function noise::Config::new
does not exist for libp2p version 0.51.3. It doesn’t exist until the next version (0.52.0). Working in Polkadot has historically given me lots of unorthodox dependency issues, which leads me to believe there might be something I’m overlooking here.