Load Testing #113
Annotations
9 errors and 28 warnings
an async construct yields a type which is itself awaitable:
bin/load_test/scenarios/mod.rs#L160
error: an async construct yields a type which is itself awaitable
--> bin/load_test/scenarios/mod.rs:160:35
|
155 | #[instrument(skip(endpoint, requests_per_minute, shadow_tree))]
| --------------------------------------------------------------- outer async construct
...
160 | ) -> JoinHandle<eyre::Result<()>> {
| ___________________________________^
161 | | let sleep_time =
162 | | Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
163 | |
... |
200 | | })
201 | | }
| |_^ awaitable value not awaited
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#async_yields_async
help: consider awaiting this value
|
160 ~ ) -> JoinHandle<eyre::Result<()>> {
161 + let sleep_time =
162 + Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
163 +
164 + let client = reqwest::Client::new();
165 + let url = Url::parse(endpoint).expect("Could not parse endpoint");
166 +
167 + //TODO: use a more sound approach but for now generate an identity that is unlikely to be in the tree
168 + let invalid_identity = Hash::from(1);
169 +
170 + tokio::spawn(async move {
171 + loop {
172 + let tree_history =
173 + shadow_tree.0.tree_data.tree_history.read().await;
174 +
175 + let historical_tree = tree_history
176 + .iter()
177 + .choose(&mut rand::thread_rng())
178 + .expect("Could not get historical tree");
179 +
180 + let historical_root = historical_tree.root();
181 +
182 + let payload = InclusionProofRequest {
183 + identity_commitment: invalid_identity,
184 + root: Some(historical_root),
185 + };
186 +
187 + let res = client.post(url.clone()).json(&payload).send().await?;
188 +
189 + if res.status().is_success() {
190 + let proof_response: Option<InclusionProof> = res.json().await?;
191 + if proof_response.is_some() {
192 + tracing::error!("Unexpected proof received")
193 + }
194 + } else {
195 + tracing::error!("Invalid response: {:?}", res.status());
196 + }
197 +
198 + tokio::time::sleep(sleep_time);
199 + }
200 + })
201 + }.await
|
|
an async construct yields a type which is itself awaitable:
bin/load_test/scenarios/mod.rs#L122
error: an async construct yields a type which is itself awaitable
--> bin/load_test/scenarios/mod.rs:122:35
|
118 | #[instrument(skip(endpoint, requests_per_minute))]
| -------------------------------------------------- outer async construct
...
122 | ) -> JoinHandle<eyre::Result<()>> {
| ___________________________________^
123 | | let sleep_time =
124 | | Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
125 | |
... |
152 | | })
153 | | }
| |_^ awaitable value not awaited
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#async_yields_async
help: consider awaiting this value
|
122 ~ ) -> JoinHandle<eyre::Result<()>> {
123 + let sleep_time =
124 + Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
125 +
126 + let client = reqwest::Client::new();
127 + let url = Url::parse(endpoint).expect("Could not parse endpoint");
128 +
129 + //TODO: use a more sound approach but for now generate an identity that is unlikely to be in the tree
130 + let invalid_identity = Hash::from(1);
131 +
132 + tokio::spawn(async move {
133 + loop {
134 + let payload = InclusionProofRequest {
135 + identity_commitment: invalid_identity,
136 + root: None,
137 + };
138 +
139 + let res = client.post(url.clone()).json(&payload).send().await?;
140 +
141 + if res.status().is_success() {
142 + let proof_response: Option<InclusionProof> = res.json().await?;
143 + if proof_response.is_some() {
144 + tracing::error!("Unexpected proof received")
145 + }
146 + } else {
147 + tracing::error!("Invalid response: {:?}", res.status());
148 + }
149 +
150 + tokio::time::sleep(sleep_time);
151 + }
152 + })
153 + }.await
|
|
an async construct yields a type which is itself awaitable:
bin/load_test/scenarios/mod.rs#L69
error: an async construct yields a type which is itself awaitable
--> bin/load_test/scenarios/mod.rs:69:35
|
64 | #[instrument(skip(endpoint, requests_per_minute, shadow_tree))]
| --------------------------------------------------------------- outer async construct
...
69 | ) -> JoinHandle<eyre::Result<()>> {
| ___________________________________^
70 | | let sleep_time =
71 | | Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
72 | |
... |
115 | | })
116 | | }
| |_^ awaitable value not awaited
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#async_yields_async
help: consider awaiting this value
|
69 ~ ) -> JoinHandle<eyre::Result<()>> {
70 + let sleep_time =
71 + Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
72 +
73 + let client = reqwest::Client::new();
74 + let url = Url::parse(endpoint).expect("Could not parse endpoint");
75 +
76 + tokio::spawn(async move {
77 + loop {
78 + let tree_history =
79 + shadow_tree.0.tree_data.tree_history.read().await;
80 +
81 + let historical_tree = tree_history
82 + .iter()
83 + .choose(&mut rand::thread_rng())
84 + .expect("Could not get historical tree");
85 +
86 + let random_identity = historical_tree
87 + .leaves()
88 + .filter(|&leaf| leaf != Hash::ZERO) //TODO: this can be more efficient
89 + .choose(&mut rand::thread_rng())
90 + .expect("No identities available")
91 + .to_owned();
92 +
93 + let historical_root = historical_tree.root();
94 +
95 + let payload = InclusionProofRequest {
96 + identity_commitment: random_identity,
97 + root: Some(historical_root),
98 + };
99 +
100 + let res = client.post(url.clone()).json(&payload).send().await?;
101 +
102 + if res.status().is_success() {
103 + let proof_response: Option<InclusionProof> = res.json().await?;
104 + if let Some(proof) = proof_response {
105 + tracing::info!("Valid proof received: {:?}", proof);
106 + } else {
107 + tracing::error!("Proof is None");
108 + }
109 + } else {
110 + tracing::error!("Invalid response: {:?}", res.status());
111 + }
112 +
113 + tokio::time::sleep(sleep_time);
114 + }
115 + })
116 + }.await
|
|
an async construct yields a type which is itself awaitable:
bin/load_test/scenarios/mod.rs#L21
error: an async construct yields a type which is itself awaitable
--> bin/load_test/scenarios/mod.rs:21:35
|
16 | #[instrument(skip(endpoint, requests_per_minute, shadow_tree))]
| --------------------------------------------------------------- outer async construct
...
21 | ) -> JoinHandle<eyre::Result<()>> {
| ___________________________________^
22 | | let sleep_time =
23 | | Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
24 | |
... |
61 | | })
62 | | }
| |_^ awaitable value not awaited
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#async_yields_async
= note: `#[deny(clippy::async_yields_async)]` on by default
help: consider awaiting this value
|
21 ~ ) -> JoinHandle<eyre::Result<()>> {
22 + let sleep_time =
23 + Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
24 +
25 + let client = reqwest::Client::new();
26 + let url = Url::parse(endpoint).expect("Could not parse endpoint");
27 +
28 + tokio::spawn(async move {
29 + loop {
30 + let latest_tree = shadow_tree.0.tree_data.tree.read().await;
31 +
32 + let random_identity = latest_tree
33 + .leaves()
34 + .filter(|&leaf| leaf != Hash::ZERO) //TODO: this can be more efficient
35 + .choose(&mut rand::thread_rng())
36 + .expect("No identities available")
37 + .to_owned();
38 +
39 + tracing::info!(?random_identity);
40 +
41 + let payload = InclusionProofRequest {
42 + identity_commitment: random_identity,
43 + root: None,
44 + };
45 +
46 + let res = client.post(url.clone()).json(&payload).send().await?;
47 +
48 + if res.status().is_success() {
49 + let proof_response: Option<InclusionProof> = res.json().await?;
50 + if let Some(proof) = proof_response {
51 + tracing::info!("Valid proof received: {:?}", proof);
52 + } else {
53 + tracing::error!("Proof is None");
54 + }
55 + } else {
56 + tracing::error!("Invalid response: {:?}", res.status());
57 + }
58 +
59 + tokio::time::sleep(sleep_time);
60 + }
61 + })
62 + }.await
|
|
an async construct yields a type which is itself awaitable:
bin/load_test/scenarios/mod.rs#L160
error: an async construct yields a type which is itself awaitable
--> bin/load_test/scenarios/mod.rs:160:35
|
155 | #[instrument(skip(endpoint, requests_per_minute, shadow_tree))]
| --------------------------------------------------------------- outer async construct
...
160 | ) -> JoinHandle<eyre::Result<()>> {
| ___________________________________^
161 | | let sleep_time =
162 | | Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
163 | |
... |
200 | | })
201 | | }
| |_^ awaitable value not awaited
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#async_yields_async
help: consider awaiting this value
|
160 ~ ) -> JoinHandle<eyre::Result<()>> {
161 + let sleep_time =
162 + Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
163 +
164 + let client = reqwest::Client::new();
165 + let url = Url::parse(endpoint).expect("Could not parse endpoint");
166 +
167 + //TODO: use a more sound approach but for now generate an identity that is unlikely to be in the tree
168 + let invalid_identity = Hash::from(1);
169 +
170 + tokio::spawn(async move {
171 + loop {
172 + let tree_history =
173 + shadow_tree.0.tree_data.tree_history.read().await;
174 +
175 + let historical_tree = tree_history
176 + .iter()
177 + .choose(&mut rand::thread_rng())
178 + .expect("Could not get historical tree");
179 +
180 + let historical_root = historical_tree.root();
181 +
182 + let payload = InclusionProofRequest {
183 + identity_commitment: invalid_identity,
184 + root: Some(historical_root),
185 + };
186 +
187 + let res = client.post(url.clone()).json(&payload).send().await?;
188 +
189 + if res.status().is_success() {
190 + let proof_response: Option<InclusionProof> = res.json().await?;
191 + if proof_response.is_some() {
192 + tracing::error!("Unexpected proof received")
193 + }
194 + } else {
195 + tracing::error!("Invalid response: {:?}", res.status());
196 + }
197 +
198 + tokio::time::sleep(sleep_time);
199 + }
200 + })
201 + }.await
|
|
an async construct yields a type which is itself awaitable:
bin/load_test/scenarios/mod.rs#L122
error: an async construct yields a type which is itself awaitable
--> bin/load_test/scenarios/mod.rs:122:35
|
118 | #[instrument(skip(endpoint, requests_per_minute))]
| -------------------------------------------------- outer async construct
...
122 | ) -> JoinHandle<eyre::Result<()>> {
| ___________________________________^
123 | | let sleep_time =
124 | | Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
125 | |
... |
152 | | })
153 | | }
| |_^ awaitable value not awaited
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#async_yields_async
help: consider awaiting this value
|
122 ~ ) -> JoinHandle<eyre::Result<()>> {
123 + let sleep_time =
124 + Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
125 +
126 + let client = reqwest::Client::new();
127 + let url = Url::parse(endpoint).expect("Could not parse endpoint");
128 +
129 + //TODO: use a more sound approach but for now generate an identity that is unlikely to be in the tree
130 + let invalid_identity = Hash::from(1);
131 +
132 + tokio::spawn(async move {
133 + loop {
134 + let payload = InclusionProofRequest {
135 + identity_commitment: invalid_identity,
136 + root: None,
137 + };
138 +
139 + let res = client.post(url.clone()).json(&payload).send().await?;
140 +
141 + if res.status().is_success() {
142 + let proof_response: Option<InclusionProof> = res.json().await?;
143 + if proof_response.is_some() {
144 + tracing::error!("Unexpected proof received")
145 + }
146 + } else {
147 + tracing::error!("Invalid response: {:?}", res.status());
148 + }
149 +
150 + tokio::time::sleep(sleep_time);
151 + }
152 + })
153 + }.await
|
|
an async construct yields a type which is itself awaitable:
bin/load_test/scenarios/mod.rs#L69
error: an async construct yields a type which is itself awaitable
--> bin/load_test/scenarios/mod.rs:69:35
|
64 | #[instrument(skip(endpoint, requests_per_minute, shadow_tree))]
| --------------------------------------------------------------- outer async construct
...
69 | ) -> JoinHandle<eyre::Result<()>> {
| ___________________________________^
70 | | let sleep_time =
71 | | Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
72 | |
... |
115 | | })
116 | | }
| |_^ awaitable value not awaited
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#async_yields_async
help: consider awaiting this value
|
69 ~ ) -> JoinHandle<eyre::Result<()>> {
70 + let sleep_time =
71 + Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
72 +
73 + let client = reqwest::Client::new();
74 + let url = Url::parse(endpoint).expect("Could not parse endpoint");
75 +
76 + tokio::spawn(async move {
77 + loop {
78 + let tree_history =
79 + shadow_tree.0.tree_data.tree_history.read().await;
80 +
81 + let historical_tree = tree_history
82 + .iter()
83 + .choose(&mut rand::thread_rng())
84 + .expect("Could not get historical tree");
85 +
86 + let random_identity = historical_tree
87 + .leaves()
88 + .filter(|&leaf| leaf != Hash::ZERO) //TODO: this can be more efficient
89 + .choose(&mut rand::thread_rng())
90 + .expect("No identities available")
91 + .to_owned();
92 +
93 + let historical_root = historical_tree.root();
94 +
95 + let payload = InclusionProofRequest {
96 + identity_commitment: random_identity,
97 + root: Some(historical_root),
98 + };
99 +
100 + let res = client.post(url.clone()).json(&payload).send().await?;
101 +
102 + if res.status().is_success() {
103 + let proof_response: Option<InclusionProof> = res.json().await?;
104 + if let Some(proof) = proof_response {
105 + tracing::info!("Valid proof received: {:?}", proof);
106 + } else {
107 + tracing::error!("Proof is None");
108 + }
109 + } else {
110 + tracing::error!("Invalid response: {:?}", res.status());
111 + }
112 +
113 + tokio::time::sleep(sleep_time);
114 + }
115 + })
116 + }.await
|
|
an async construct yields a type which is itself awaitable:
bin/load_test/scenarios/mod.rs#L21
error: an async construct yields a type which is itself awaitable
--> bin/load_test/scenarios/mod.rs:21:35
|
16 | #[instrument(skip(endpoint, requests_per_minute, shadow_tree))]
| --------------------------------------------------------------- outer async construct
...
21 | ) -> JoinHandle<eyre::Result<()>> {
| ___________________________________^
22 | | let sleep_time =
23 | | Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
24 | |
... |
61 | | })
62 | | }
| |_^ awaitable value not awaited
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#async_yields_async
= note: `#[deny(clippy::async_yields_async)]` on by default
help: consider awaiting this value
|
21 ~ ) -> JoinHandle<eyre::Result<()>> {
22 + let sleep_time =
23 + Duration::from_micros(MICROSECONDS_IN_MINUTE / requests_per_minute);
24 +
25 + let client = reqwest::Client::new();
26 + let url = Url::parse(endpoint).expect("Could not parse endpoint");
27 +
28 + tokio::spawn(async move {
29 + loop {
30 + let latest_tree = shadow_tree.0.tree_data.tree.read().await;
31 +
32 + let random_identity = latest_tree
33 + .leaves()
34 + .filter(|&leaf| leaf != Hash::ZERO) //TODO: this can be more efficient
35 + .choose(&mut rand::thread_rng())
36 + .expect("No identities available")
37 + .to_owned();
38 +
39 + tracing::info!(?random_identity);
40 +
41 + let payload = InclusionProofRequest {
42 + identity_commitment: random_identity,
43 + root: None,
44 + };
45 +
46 + let res = client.post(url.clone()).json(&payload).send().await?;
47 +
48 + if res.status().is_success() {
49 + let proof_response: Option<InclusionProof> = res.json().await?;
50 + if let Some(proof) = proof_response {
51 + tracing::info!("Valid proof received: {:?}", proof);
52 + } else {
53 + tracing::error!("Proof is None");
54 + }
55 + } else {
56 + tracing::error!("Invalid response: {:?}", res.status());
57 + }
58 +
59 + tokio::time::sleep(sleep_time);
60 + }
61 + })
62 + }.await
|
|
Lint
Clippy had exited with the 101 exit code
|
unused `tokio::time::Sleep` that must be used:
bin/load_test/scenarios/mod.rs#L198
warning: unused `tokio::time::Sleep` that must be used
--> bin/load_test/scenarios/mod.rs:198:13
|
198 | tokio::time::sleep(sleep_time);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: futures do nothing unless you `.await` or poll them
help: use `let _ = ...` to ignore the resulting value
|
198 | let _ = tokio::time::sleep(sleep_time);
| +++++++
|
unused `tokio::time::Sleep` that must be used:
bin/load_test/scenarios/mod.rs#L150
warning: unused `tokio::time::Sleep` that must be used
--> bin/load_test/scenarios/mod.rs:150:13
|
150 | tokio::time::sleep(sleep_time);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: futures do nothing unless you `.await` or poll them
help: use `let _ = ...` to ignore the resulting value
|
150 | let _ = tokio::time::sleep(sleep_time);
| +++++++
|
unused `tokio::time::Sleep` that must be used:
bin/load_test/scenarios/mod.rs#L113
warning: unused `tokio::time::Sleep` that must be used
--> bin/load_test/scenarios/mod.rs:113:13
|
113 | tokio::time::sleep(sleep_time);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: futures do nothing unless you `.await` or poll them
help: use `let _ = ...` to ignore the resulting value
|
113 | let _ = tokio::time::sleep(sleep_time);
| +++++++
|
unused `tokio::time::Sleep` that must be used:
bin/load_test/scenarios/mod.rs#L59
warning: unused `tokio::time::Sleep` that must be used
--> bin/load_test/scenarios/mod.rs:59:13
|
59 | tokio::time::sleep(sleep_time);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: futures do nothing unless you `.await` or poll them
= note: `#[warn(unused_must_use)]` on by default
help: use `let _ = ...` to ignore the resulting value
|
59 | let _ = tokio::time::sleep(sleep_time);
| +++++++
|
unused `tokio::time::Sleep` that must be used:
bin/load_test/scenarios/mod.rs#L198
warning: unused `tokio::time::Sleep` that must be used
--> bin/load_test/scenarios/mod.rs:198:13
|
198 | tokio::time::sleep(sleep_time);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: futures do nothing unless you `.await` or poll them
help: use `let _ = ...` to ignore the resulting value
|
198 | let _ = tokio::time::sleep(sleep_time);
| +++++++
|
unused `tokio::time::Sleep` that must be used:
bin/load_test/scenarios/mod.rs#L150
warning: unused `tokio::time::Sleep` that must be used
--> bin/load_test/scenarios/mod.rs:150:13
|
150 | tokio::time::sleep(sleep_time);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: futures do nothing unless you `.await` or poll them
help: use `let _ = ...` to ignore the resulting value
|
150 | let _ = tokio::time::sleep(sleep_time);
| +++++++
|
unused `tokio::time::Sleep` that must be used:
bin/load_test/scenarios/mod.rs#L113
warning: unused `tokio::time::Sleep` that must be used
--> bin/load_test/scenarios/mod.rs:113:13
|
113 | tokio::time::sleep(sleep_time);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: futures do nothing unless you `.await` or poll them
help: use `let _ = ...` to ignore the resulting value
|
113 | let _ = tokio::time::sleep(sleep_time);
| +++++++
|
unused `tokio::time::Sleep` that must be used:
bin/load_test/scenarios/mod.rs#L59
warning: unused `tokio::time::Sleep` that must be used
--> bin/load_test/scenarios/mod.rs:59:13
|
59 | tokio::time::sleep(sleep_time);
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: futures do nothing unless you `.await` or poll them
= note: `#[warn(unused_must_use)]` on by default
help: use `let _ = ...` to ignore the resulting value
|
59 | let _ = tokio::time::sleep(sleep_time);
| +++++++
|
function `wait_until_tas_is_synced` is never used:
bin/load_test/utils.rs#L67
warning: function `wait_until_tas_is_synced` is never used
--> bin/load_test/utils.rs:67:14
|
67 | pub async fn wait_until_tas_is_synced(tas_endpoint: &str) -> eyre::Result<()> {
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
|
function `wait_until_tas_is_synced` is never used:
bin/load_test/utils.rs#L67
warning: function `wait_until_tas_is_synced` is never used
--> bin/load_test/utils.rs:67:14
|
67 | pub async fn wait_until_tas_is_synced(tas_endpoint: &str) -> eyre::Result<()> {
| ^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(dead_code)]` on by default
|
unused import: `utils::ShadowTree`:
bin/load_test/main.rs#L7
warning: unused import: `utils::ShadowTree`
--> bin/load_test/main.rs:7:5
|
7 | use utils::ShadowTree;
| ^^^^^^^^^^^^^^^^^
|
unused import: `once_cell::sync::OnceCell`:
bin/load_test/main.rs#L6
warning: unused import: `once_cell::sync::OnceCell`
--> bin/load_test/main.rs:6:5
|
6 | use once_cell::sync::OnceCell;
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
unused import: `utils::ShadowTree`:
bin/load_test/main.rs#L7
warning: unused import: `utils::ShadowTree`
--> bin/load_test/main.rs:7:5
|
7 | use utils::ShadowTree;
| ^^^^^^^^^^^^^^^^^
|
unused import: `once_cell::sync::OnceCell`:
bin/load_test/main.rs#L6
warning: unused import: `once_cell::sync::OnceCell`
--> bin/load_test/main.rs:6:5
|
6 | use once_cell::sync::OnceCell;
| ^^^^^^^^^^^^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
very complex type used. Consider factoring parts into `type` definitions:
src/state_bridge/service.rs#L96
warning: very complex type used. Consider factoring parts into `type` definitions
--> src/state_bridge/service.rs:96:10
|
96 | ) -> Result<
| __________^
97 | | Vec<JoinHandle<Result<(), StateBridgeError<L1M, L2M>>>>,
98 | | StateBridgeError<L1M, L2M>,
99 | | > {
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
= note: `#[warn(clippy::type_complexity)]` on by default
|
very complex type used. Consider factoring parts into `type` definitions:
src/state_bridge/service.rs#L96
warning: very complex type used. Consider factoring parts into `type` definitions
--> src/state_bridge/service.rs:96:10
|
96 | ) -> Result<
| __________^
97 | | Vec<JoinHandle<Result<(), StateBridgeError<L1M, L2M>>>>,
98 | | StateBridgeError<L1M, L2M>,
99 | | > {
| |_____^
|
= help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#type_complexity
= note: `#[warn(clippy::type_complexity)]` on by default
|
unused import: `FuturesOrdered`:
src/tree/tree_updater.rs#L8
warning: unused import: `FuturesOrdered`
--> src/tree/tree_updater.rs:8:23
|
8 | use futures::stream::{FuturesOrdered, FuturesUnordered};
| ^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
unused import: `FuturesOrdered`:
src/tree/tree_updater.rs#L8
warning: unused import: `FuturesOrdered`
--> src/tree/tree_updater.rs:8:23
|
8 | use futures::stream::{FuturesOrdered, FuturesUnordered};
| ^^^^^^^^^^^^^^
|
= note: `#[warn(unused_imports)]` on by default
|
Lint
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/[email protected], actions-rs/cargo@v1, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|
Lint
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Lint
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Lint
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Lint
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Test
The following actions uses node12 which is deprecated and will be forced to run on node16: actions-rs/toolchain@v1, actions-rs/cargo@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
|
Test
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Test
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Test
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|
Test
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
|