[INFO] cloning repository https://github.com/cowprotocol/cow-native-liquidity [INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/cowprotocol/cow-native-liquidity" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcowprotocol%2Fcow-native-liquidity", kill_on_drop: false }` [INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcowprotocol%2Fcow-native-liquidity'... [INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }` [INFO] [stdout] ff6e7ce34644de8acc3d7a2de0312654b52fbd42 [INFO] checking cowprotocol/cow-native-liquidity against try#8ea250bdb76176ecb0225baa34aa634b024ae0e2 for pr-101692 [INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fcowprotocol%2Fcow-native-liquidity" "/workspace/builds/worker-1/source", kill_on_drop: false }` [INFO] [stderr] Cloning into '/workspace/builds/worker-1/source'... [INFO] [stderr] done. [INFO] validating manifest of git repo https://github.com/cowprotocol/cow-native-liquidity on toolchain 8ea250bdb76176ecb0225baa34aa634b024ae0e2 [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8ea250bdb76176ecb0225baa34aa634b024ae0e2" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }` [INFO] started tweaking git repo https://github.com/cowprotocol/cow-native-liquidity [INFO] finished tweaking git repo https://github.com/cowprotocol/cow-native-liquidity [INFO] tweaked toml for git repo https://github.com/cowprotocol/cow-native-liquidity written to /workspace/builds/worker-1/source/Cargo.toml [INFO] crate git repo https://github.com/cowprotocol/cow-native-liquidity already has a lockfile, it will not be regenerated [INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+8ea250bdb76176ecb0225baa34aa634b024ae0e2" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }` [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:824c28ce115f6b999260af6986f3384c158e782489540e41c0b698ca1d9fd927" "/opt/rustwide/cargo-home/bin/cargo" "+8ea250bdb76176ecb0225baa34aa634b024ae0e2" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }` [INFO] [stdout] 194bdbbbddaefa8cd37714986a7c534e71bbf53d38520ee59590fba3d191b61e [INFO] running `Command { std: "docker" "start" "-a" "194bdbbbddaefa8cd37714986a7c534e71bbf53d38520ee59590fba3d191b61e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "inspect" "194bdbbbddaefa8cd37714986a7c534e71bbf53d38520ee59590fba3d191b61e", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "194bdbbbddaefa8cd37714986a7c534e71bbf53d38520ee59590fba3d191b61e", kill_on_drop: false }` [INFO] [stdout] 194bdbbbddaefa8cd37714986a7c534e71bbf53d38520ee59590fba3d191b61e [INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:824c28ce115f6b999260af6986f3384c158e782489540e41c0b698ca1d9fd927" "/opt/rustwide/cargo-home/bin/cargo" "+8ea250bdb76176ecb0225baa34aa634b024ae0e2" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }` [INFO] [stdout] 3d6eb56b23f5a72db9c827c03ccb202e80131de9fac6b26f85736d76acfe5741 [INFO] running `Command { std: "docker" "start" "-a" "3d6eb56b23f5a72db9c827c03ccb202e80131de9fac6b26f85736d76acfe5741", kill_on_drop: false }` [INFO] [stderr] Compiling proc-macro2 v1.0.36 [INFO] [stderr] Compiling unicode-xid v0.2.2 [INFO] [stderr] Compiling syn v1.0.86 [INFO] [stderr] Compiling libc v0.2.118 [INFO] [stderr] Compiling version_check v0.9.4 [INFO] [stderr] Checking cfg-if v1.0.0 [INFO] [stderr] Compiling serde_derive v1.0.136 [INFO] [stderr] Compiling serde v1.0.136 [INFO] [stderr] Compiling memchr v2.4.1 [INFO] [stderr] Compiling autocfg v1.1.0 [INFO] [stderr] Compiling typenum v1.15.0 [INFO] [stderr] Compiling log v0.4.16 [INFO] [stderr] Compiling cc v1.0.73 [INFO] [stderr] Compiling futures-task v0.3.21 [INFO] [stderr] Compiling crunchy v0.2.2 [INFO] [stderr] Compiling radium v0.6.2 [INFO] [stderr] Compiling futures-util v0.3.21 [INFO] [stderr] Checking bytes v1.1.0 [INFO] [stderr] Compiling tiny-keccak v2.0.2 [INFO] [stderr] Compiling serde_json v1.0.79 [INFO] [stderr] Checking pin-project-lite v0.2.8 [INFO] [stderr] Compiling futures-core v0.3.21 [INFO] [stderr] Checking itoa v1.0.1 [INFO] [stderr] Checking once_cell v1.9.0 [INFO] [stderr] Compiling rustc-hex v2.1.0 [INFO] [stderr] Checking futures-sink v0.3.21 [INFO] [stderr] Compiling ppv-lite86 v0.2.16 [INFO] [stderr] Compiling parking_lot_core v0.9.1 [INFO] [stderr] Compiling static_assertions v1.1.0 [INFO] [stderr] Compiling funty v1.1.0 [INFO] [stderr] Compiling futures-channel v0.3.21 [INFO] [stderr] Compiling tap v1.0.1 [INFO] [stderr] Compiling byteorder v1.4.3 [INFO] [stderr] Compiling wyz v0.2.0 [INFO] [stderr] Compiling byte-slice-cast v1.2.0 [INFO] [stderr] Compiling arrayvec v0.7.2 [INFO] [stderr] Checking lazy_static v1.4.0 [INFO] [stderr] Compiling hex v0.4.3 [INFO] [stderr] Checking pin-utils v0.1.0 [INFO] [stderr] Checking futures-io v0.3.21 [INFO] [stderr] Checking slab v0.4.5 [INFO] [stderr] Compiling tinyvec_macros v0.1.0 [INFO] [stderr] Compiling ryu v1.0.9 [INFO] [stderr] Compiling block-padding v0.2.1 [INFO] [stderr] Compiling matches v0.1.9 [INFO] [stderr] Compiling convert_case v0.4.0 [INFO] [stderr] Compiling opaque-debug v0.3.0 [INFO] [stderr] Compiling smallvec v1.8.0 [INFO] [stderr] Compiling scopeguard v1.1.0 [INFO] [stderr] Compiling keccak v0.1.0 [INFO] [stderr] Compiling unicode-bidi v0.3.7 [INFO] [stderr] Compiling futures-timer v3.0.2 [INFO] [stderr] Checking fnv v1.0.7 [INFO] [stderr] Compiling anyhow v1.0.55 [INFO] [stderr] Compiling percent-encoding v2.1.0 [INFO] [stderr] Compiling pkg-config v0.3.24 [INFO] [stderr] Compiling regex-syntax v0.6.25 [INFO] [stderr] Checking bitflags v1.3.2 [INFO] [stderr] Checking foreign-types-shared v0.1.1 [INFO] [stderr] Compiling httparse v1.6.0 [INFO] [stderr] Compiling openssl v0.10.38 [INFO] [stderr] Compiling zeroize v1.5.2 [INFO] [stderr] Compiling parking_lot_core v0.8.5 [INFO] [stderr] Checking httpdate v1.0.2 [INFO] [stderr] Compiling strsim v0.10.0 [INFO] [stderr] Compiling native-tls v0.2.10 [INFO] [stderr] Checking try-lock v0.2.3 [INFO] [stderr] Compiling ident_case v1.0.1 [INFO] [stderr] Checking either v1.6.1 [INFO] [stderr] Checking predicates-core v1.0.3 [INFO] [stderr] Compiling maplit v1.0.2 [INFO] [stderr] Compiling protobuf v2.27.1 [INFO] [stderr] Checking mime v0.3.16 [INFO] [stderr] Checking openssl-probe v0.1.5 [INFO] [stderr] Checking tower-service v0.3.1 [INFO] [stderr] Compiling prometheus v0.13.0 [INFO] [stderr] Compiling encoding_rs v0.8.30 [INFO] [stderr] Checking termtree v0.2.4 [INFO] [stderr] Checking normalize-line-endings v0.3.0 [INFO] [stderr] Compiling rustversion v1.0.6 [INFO] [stderr] Checking difflib v0.4.0 [INFO] [stderr] Checking base64 v0.13.0 [INFO] [stderr] Checking cpufeatures v0.2.2 [INFO] [stderr] Compiling heck v0.4.0 [INFO] [stderr] Compiling async-trait v0.1.53 [INFO] [stderr] Checking downcast v0.11.0 [INFO] [stderr] Checking fragile v1.2.0 [INFO] [stderr] Checking termcolor v1.1.2 [INFO] [stderr] Checking ipnet v2.4.0 [INFO] [stderr] Checking scoped-tls v1.0.0 [INFO] [stderr] Checking textwrap v0.15.0 [INFO] [stderr] Compiling hex-literal v0.3.4 [INFO] [stderr] Checking instant v0.1.12 [INFO] [stderr] Compiling generic-array v0.14.5 [INFO] [stderr] Compiling ahash v0.7.6 [INFO] [stderr] Compiling unicase v2.6.0 [INFO] [stderr] Compiling proc-macro-error-attr v1.0.4 [INFO] [stderr] Compiling proc-macro-error v1.0.4 [INFO] [stderr] Compiling num-traits v0.2.14 [INFO] [stderr] Compiling indexmap v1.8.0 [INFO] [stderr] Compiling num-integer v0.1.44 [INFO] [stderr] Compiling num-bigint v0.4.3 [INFO] [stderr] Compiling num-rational v0.4.1 [INFO] [stderr] Compiling num-iter v0.1.42 [INFO] [stderr] Compiling rlp v0.5.1 [INFO] [stderr] Checking tracing-core v0.1.22 [INFO] [stderr] Compiling secp256k1-sys v0.4.2 [INFO] [stderr] Compiling tinyvec v1.5.1 [INFO] [stderr] Compiling lock_api v0.4.6 [INFO] [stderr] Checking http v0.2.6 [INFO] [stderr] Compiling form_urlencoded v1.0.1 [INFO] [stderr] Checking foreign-types v0.3.2 [INFO] [stderr] Compiling openssl-sys v0.9.72 [INFO] [stderr] Checking itertools v0.10.3 [INFO] [stderr] Checking predicates-tree v1.0.5 [INFO] [stderr] Compiling impl-rlp v0.3.0 [INFO] [stderr] Checking unicode-normalization v0.1.19 [INFO] [stderr] Checking aho-corasick v0.7.18 [INFO] [stderr] Checking os_str_bytes v6.0.0 [INFO] [stderr] Compiling quote v1.0.15 [INFO] [stderr] Checking want v0.3.0 [INFO] [stderr] Compiling bitvec v0.20.4 [INFO] [stderr] Compiling uint v0.9.3 [INFO] [stderr] Checking http-body v0.4.4 [INFO] [stderr] Checking headers-core v0.2.0 [INFO] [stderr] Checking getrandom v0.2.4 [INFO] [stderr] Checking socket2 v0.4.4 [INFO] [stderr] Checking mio v0.8.0 [INFO] [stderr] Checking atty v0.2.14 [INFO] [stderr] Compiling idna v0.2.3 [INFO] [stderr] Compiling mime_guess v2.0.4 [INFO] [stderr] Checking regex v1.5.5 [INFO] [stderr] Checking rand_core v0.6.3 [INFO] [stderr] Checking float-cmp v0.9.0 [INFO] [stderr] Checking parking_lot v0.12.0 [INFO] [stderr] Checking parking_lot v0.11.2 [INFO] [stderr] Compiling secp256k1 v0.21.3 [INFO] [stderr] Compiling digest v0.9.0 [INFO] [stderr] Compiling block-buffer v0.9.0 [INFO] [stderr] Compiling url v2.2.2 [INFO] [stderr] Checking crypto-common v0.1.3 [INFO] [stderr] Checking block-buffer v0.10.2 [INFO] [stderr] Checking rand_chacha v0.3.1 [INFO] [stderr] Checking hashbrown v0.11.2 [INFO] [stderr] Compiling Inflector v0.11.4 [INFO] [stderr] Checking predicates v2.1.1 [INFO] [stderr] Compiling darling_core v0.13.2 [INFO] [stderr] Compiling sha3 v0.9.1 [INFO] [stderr] Checking digest v0.10.3 [INFO] [stderr] Checking rand v0.8.5 [INFO] [stderr] Checking lru v0.7.5 [INFO] [stderr] Checking sha-1 v0.10.0 [INFO] [stderr] Compiling thiserror-impl v1.0.30 [INFO] [stderr] Compiling futures-macro v0.3.21 [INFO] [stderr] Compiling impl-trait-for-tuples v0.2.2 [INFO] [stderr] Compiling pin-project-internal v1.0.10 [INFO] [stderr] Compiling derive_more v0.99.17 [INFO] [stderr] Checking fixed-hash v0.7.0 [INFO] [stderr] Compiling tokio-macros v1.7.0 [INFO] [stderr] Compiling tracing-attributes v0.1.20 [INFO] [stderr] Compiling mockall_derive v0.11.0 [INFO] [stderr] Compiling clap_derive v3.1.7 [INFO] [stderr] Compiling prometheus-metric-storage-derive v0.4.0 [INFO] [stderr] Compiling darling_macro v0.13.2 [INFO] [stderr] Checking headers v0.3.7 [INFO] [stderr] Compiling pin-project v1.0.10 [INFO] [stderr] Compiling thiserror v1.0.30 [INFO] [stderr] Checking tokio v1.17.0 [INFO] [stderr] Checking tracing v0.1.32 [INFO] [stderr] Checking clap v3.1.8 [INFO] [stderr] Compiling darling v0.13.2 [INFO] [stderr] Compiling futures-executor v0.3.21 [INFO] [stderr] Checking mockall v0.11.0 [INFO] [stderr] Compiling futures v0.3.21 [INFO] [stderr] Compiling serde_with_macros v1.5.1 [INFO] [stderr] Checking prometheus-metric-storage v0.4.0 [INFO] [stderr] Checking tokio-util v0.6.9 [INFO] [stderr] Checking tokio-native-tls v0.3.0 [INFO] [stderr] Checking impl-serde v0.3.2 [INFO] [stderr] Checking serde_urlencoded v0.7.1 [INFO] [stderr] Checking num-complex v0.4.0 [INFO] [stderr] Compiling toml v0.5.8 [INFO] [stderr] Checking h2 v0.3.11 [INFO] [stderr] Checking tokio-stream v0.1.8 [INFO] [stderr] Checking ethbloom v0.11.1 [INFO] [stderr] Checking jsonrpc-core v18.0.0 [INFO] [stderr] Checking serde_with v1.12.0 [INFO] [stderr] Compiling proc-macro-crate v1.1.2 [INFO] [stderr] Checking hyper v0.14.17 [INFO] [stderr] Compiling parity-scale-codec-derive v2.3.1 [INFO] [stderr] Checking num v0.4.0 [INFO] [stderr] Compiling parity-scale-codec v2.3.1 [INFO] [stderr] Compiling impl-codec v0.5.1 [INFO] [stderr] Checking hyper-tls v0.5.0 [INFO] [stderr] Checking warp v0.3.1 (https://github.com/vkgnosis/warp.git?rev=87a91e24311b0ca6ed67408d2d302c569331dfec#87a91e24) [INFO] [stderr] Compiling primitive-types v0.10.1 [INFO] [stderr] Checking reqwest v0.11.10 [INFO] [stderr] Compiling ethereum-types v0.12.1 [INFO] [stderr] Compiling ethabi v16.0.0 [INFO] [stderr] Compiling web3 v0.18.0 [INFO] [stderr] Compiling ethcontract-common v0.17.0 [INFO] [stderr] Compiling ethcontract-generate v0.17.0 [INFO] [stderr] Compiling ethcontract v0.17.0 [INFO] [stderr] Compiling ethcontract-derive v0.17.0 [INFO] [stderr] Compiling contracts v0.1.0 (/opt/rustwide/workdir/contracts) [INFO] [stderr] Checking ethcontract-mock v0.17.0 [INFO] [stderr] Checking liquidity-sources v0.1.0 (/opt/rustwide/workdir/liquidity-sources) [INFO] [stdout] error[E0391]: cycle detected when type-checking `current_block::::current_block` [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `current_block::::current_block`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `current_block::::current_block_number` [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `current_block::::current_block_number`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance` [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `current_block::::current_block` [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:5 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `current_block::::current_block::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:92:52 [INFO] [stdout] | [INFO] [stdout] 92 | async fn current_block(&self) -> Result { [INFO] [stdout] | ____________________________________________________^ [INFO] [stdout] 93 | | self.eth() [INFO] [stdout] 94 | | .block(BlockId::Number(BlockNumber::Latest)) [INFO] [stdout] 95 | | .await [INFO] [stdout] 96 | | .context("failed to get current block")? [INFO] [stdout] 97 | | .ok_or_else(|| anyhow!("no current block")) [INFO] [stdout] 98 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `current_block::::current_block`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `current_block::::current_block_number` [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:5 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `current_block::::current_block_number::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/current_block.rs:100:57 [INFO] [stdout] | [INFO] [stdout] 100 | async fn current_block_number(&self) -> Result { [INFO] [stdout] | _________________________________________________________^ [INFO] [stdout] 101 | | Ok(self [INFO] [stdout] 102 | | .eth() [INFO] [stdout] 103 | | .block_number() [INFO] [stdout] ... | [INFO] [stdout] 106 | | .as_u64()) [INFO] [stdout] 107 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `current_block::::current_block_number`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `token_info::::get_token_infos` [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `token_info::::get_token_infos`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 4 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0391`. [INFO] [stdout] [INFO] [stderr] error: could not compile `liquidity-sources` due to 5 previous errors [INFO] [stderr] warning: build failed, waiting for other jobs to finish... [INFO] [stdout] error[E0391]: cycle detected when type-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance` [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:5 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/sources/balancer_v2/pool_fetching/cache.rs:80:51 [INFO] [stdout] | [INFO] [stdout] 80 | async fn run_maintenance(&self) -> Result<()> { [INFO] [stdout] | ___________________________________________________^ [INFO] [stdout] 81 | | futures::try_join!(self.inner.run_maintenance(), self.cache.update_cache())?; [INFO] [stdout] 82 | | Ok(()) [INFO] [stdout] 83 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `sources::balancer_v2::pool_fetching::cache::::run_maintenance`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `token_info::::get_token_infos` [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:5 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | ^^^^^^^^^^^^^^^^^^^^^^^^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires elaborating drops for `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires borrow-checking `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires processing MIR for `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires unsafety-checking `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires building MIR for `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] note: ...which requires type-checking `token_info::::get_token_infos::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/token_info.rs:87:85 [INFO] [stdout] | [INFO] [stdout] 87 | async fn get_token_infos(&self, addresses: &[H160]) -> HashMap { [INFO] [stdout] | _____________________________________________________________________________________^ [INFO] [stdout] 88 | | let mut cache = self.cache.lock().await; [INFO] [stdout] 89 | | [INFO] [stdout] 90 | | // Compute set of requested addresses that are not in cache. [INFO] [stdout] ... | [INFO] [stdout] 125 | | .collect() [INFO] [stdout] 126 | | } [INFO] [stdout] | |_____^ [INFO] [stdout] = note: ...which again requires type-checking `token_info::::get_token_infos`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `transport::http::::send` [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:130:10 [INFO] [stdout] | [INFO] [stdout] 130 | .boxed() [INFO] [stdout] | ^^^^^ [INFO] [stdout] | [INFO] [stdout] = note: ...which requires evaluating trait selection obligation `[generator interior@liquidity-sources/src/transport/http.rs:124:20: 129:10]: core::marker::Send`... [INFO] [stdout] note: ...which requires generator glue MIR for `transport::http::::send::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 125 | | let _guard = metrics.on_request_start(method_name(&call)); [INFO] [stdout] 126 | | [INFO] [stdout] 127 | | let output = execute_rpc(client, inner, id, &Request::Single(call)).await?; [INFO] [stdout] 128 | | helpers::to_result_from_output(output) [INFO] [stdout] 129 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires elaborating drops for `transport::http::::send::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 125 | | let _guard = metrics.on_request_start(method_name(&call)); [INFO] [stdout] 126 | | [INFO] [stdout] 127 | | let output = execute_rpc(client, inner, id, &Request::Single(call)).await?; [INFO] [stdout] 128 | | helpers::to_result_from_output(output) [INFO] [stdout] 129 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires borrow-checking `transport::http::::send::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 125 | | let _guard = metrics.on_request_start(method_name(&call)); [INFO] [stdout] 126 | | [INFO] [stdout] 127 | | let output = execute_rpc(client, inner, id, &Request::Single(call)).await?; [INFO] [stdout] 128 | | helpers::to_result_from_output(output) [INFO] [stdout] 129 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires processing `transport::http::::send::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 125 | | let _guard = metrics.on_request_start(method_name(&call)); [INFO] [stdout] 126 | | [INFO] [stdout] 127 | | let output = execute_rpc(client, inner, id, &Request::Single(call)).await?; [INFO] [stdout] 128 | | helpers::to_result_from_output(output) [INFO] [stdout] 129 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires processing MIR for `transport::http::::send::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 125 | | let _guard = metrics.on_request_start(method_name(&call)); [INFO] [stdout] 126 | | [INFO] [stdout] 127 | | let output = execute_rpc(client, inner, id, &Request::Single(call)).await?; [INFO] [stdout] 128 | | helpers::to_result_from_output(output) [INFO] [stdout] 129 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires unsafety-checking `transport::http::::send::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 125 | | let _guard = metrics.on_request_start(method_name(&call)); [INFO] [stdout] 126 | | [INFO] [stdout] 127 | | let output = execute_rpc(client, inner, id, &Request::Single(call)).await?; [INFO] [stdout] 128 | | helpers::to_result_from_output(output) [INFO] [stdout] 129 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires building MIR for `transport::http::::send::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 125 | | let _guard = metrics.on_request_start(method_name(&call)); [INFO] [stdout] 126 | | [INFO] [stdout] 127 | | let output = execute_rpc(client, inner, id, &Request::Single(call)).await?; [INFO] [stdout] 128 | | helpers::to_result_from_output(output) [INFO] [stdout] 129 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires type-checking `transport::http::::send::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:124:20 [INFO] [stdout] | [INFO] [stdout] 124 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 125 | | let _guard = metrics.on_request_start(method_name(&call)); [INFO] [stdout] 126 | | [INFO] [stdout] 127 | | let output = execute_rpc(client, inner, id, &Request::Single(call)).await?; [INFO] [stdout] 128 | | helpers::to_result_from_output(output) [INFO] [stdout] 129 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] = note: ...which again requires type-checking `transport::http::::send`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error[E0391]: cycle detected when type-checking `transport::http::::send_batch` [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:137:5 [INFO] [stdout] | [INFO] [stdout] 137 | / fn send_batch(&self, requests: T) -> Self::Batch [INFO] [stdout] 138 | | where [INFO] [stdout] 139 | | T: IntoIterator, [INFO] [stdout] | |__________________________________________________^ [INFO] [stdout] | [INFO] [stdout] note: ...which requires generator glue MIR for `transport::http::::send_batch::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 149 | | let _guard = metrics.on_request_start("batch"); [INFO] [stdout] 150 | | [INFO] [stdout] 151 | | let outputs = execute_rpc(client, inner, id, &Request::Batch(calls)).await?; [INFO] [stdout] 152 | | handle_batch_response(&ids, outputs) [INFO] [stdout] 153 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires elaborating drops for `transport::http::::send_batch::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 149 | | let _guard = metrics.on_request_start("batch"); [INFO] [stdout] 150 | | [INFO] [stdout] 151 | | let outputs = execute_rpc(client, inner, id, &Request::Batch(calls)).await?; [INFO] [stdout] 152 | | handle_batch_response(&ids, outputs) [INFO] [stdout] 153 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires borrow-checking `transport::http::::send_batch::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 149 | | let _guard = metrics.on_request_start("batch"); [INFO] [stdout] 150 | | [INFO] [stdout] 151 | | let outputs = execute_rpc(client, inner, id, &Request::Batch(calls)).await?; [INFO] [stdout] 152 | | handle_batch_response(&ids, outputs) [INFO] [stdout] 153 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires processing `transport::http::::send_batch::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 149 | | let _guard = metrics.on_request_start("batch"); [INFO] [stdout] 150 | | [INFO] [stdout] 151 | | let outputs = execute_rpc(client, inner, id, &Request::Batch(calls)).await?; [INFO] [stdout] 152 | | handle_batch_response(&ids, outputs) [INFO] [stdout] 153 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires processing MIR for `transport::http::::send_batch::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 149 | | let _guard = metrics.on_request_start("batch"); [INFO] [stdout] 150 | | [INFO] [stdout] 151 | | let outputs = execute_rpc(client, inner, id, &Request::Batch(calls)).await?; [INFO] [stdout] 152 | | handle_batch_response(&ids, outputs) [INFO] [stdout] 153 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires unsafety-checking `transport::http::::send_batch::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 149 | | let _guard = metrics.on_request_start("batch"); [INFO] [stdout] 150 | | [INFO] [stdout] 151 | | let outputs = execute_rpc(client, inner, id, &Request::Batch(calls)).await?; [INFO] [stdout] 152 | | handle_batch_response(&ids, outputs) [INFO] [stdout] 153 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires building MIR for `transport::http::::send_batch::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 149 | | let _guard = metrics.on_request_start("batch"); [INFO] [stdout] 150 | | [INFO] [stdout] 151 | | let outputs = execute_rpc(client, inner, id, &Request::Batch(calls)).await?; [INFO] [stdout] 152 | | handle_batch_response(&ids, outputs) [INFO] [stdout] 153 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] note: ...which requires type-checking `transport::http::::send_batch::{closure#0}`... [INFO] [stdout] --> liquidity-sources/src/transport/http.rs:148:20 [INFO] [stdout] | [INFO] [stdout] 148 | async move { [INFO] [stdout] | ____________________^ [INFO] [stdout] 149 | | let _guard = metrics.on_request_start("batch"); [INFO] [stdout] 150 | | [INFO] [stdout] 151 | | let outputs = execute_rpc(client, inner, id, &Request::Batch(calls)).await?; [INFO] [stdout] 152 | | handle_batch_response(&ids, outputs) [INFO] [stdout] 153 | | } [INFO] [stdout] | |_________^ [INFO] [stdout] = note: ...which again requires type-checking `transport::http::::send_batch`, completing the cycle [INFO] [stdout] = note: cycle used when type-checking all item bodies [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] error: aborting due to 6 previous errors [INFO] [stdout] [INFO] [stdout] [INFO] [stdout] For more information about this error, try `rustc --explain E0391`. [INFO] [stdout] [INFO] [stderr] error: could not compile `liquidity-sources` due to 7 previous errors [INFO] running `Command { std: "docker" "inspect" "3d6eb56b23f5a72db9c827c03ccb202e80131de9fac6b26f85736d76acfe5741", kill_on_drop: false }` [INFO] running `Command { std: "docker" "rm" "-f" "3d6eb56b23f5a72db9c827c03ccb202e80131de9fac6b26f85736d76acfe5741", kill_on_drop: false }` [INFO] [stdout] 3d6eb56b23f5a72db9c827c03ccb202e80131de9fac6b26f85736d76acfe5741