Skip to content

cargo install tuktuk-crank-turner fails to build #58

@jthiller

Description

@jthiller

System: Ubuntu, x86_64

rustc --version
rustc 1.87.0 (17067e9ac 2025-05-09)
cargo install tuktuk-crank-turner
[...]
Compiling tuktuk-crank-turner v0.2.17
error[E0061]: this function takes 3 arguments but 2 arguments were supplied
   --> /home/ubuntu/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tuktuk-crank-turner-0.2.17/src/main.rs:133:22
    |
133 |         let now_rx = clock::track(Arc::clone(&rpc_client), Arc::clone(&pubsub_tracker)).await?;
    |                      ^^^^^^^^^^^^------------------------------------------------------ argument #3 of type `SubsystemHandle` is missing
    |
note: expected `Sender<u64>`, found `Arc<SolanaRpcClient>`
   --> /home/ubuntu/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tuktuk-crank-turner-0.2.17/src/main.rs:133:35
    |
133 |         let now_rx = clock::track(Arc::clone(&rpc_client), Arc::clone(&pubsub_tracker)).await?;
    |                                   ^^^^^^^^^^^^^^^^^^^^^^^
    = note: expected struct `tokio::sync::watch::Sender<u64>`
               found struct `Arc<SolanaRpcClient>`
note: function defined here
   --> /home/ubuntu/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tuktuk-sdk-0.3.4/src/clock.rs:14:14
    |
14  | pub async fn track(
    |              ^^^^^
help: provide the argument
    |
133 -         let now_rx = clock::track(Arc::clone(&rpc_client), Arc::clone(&pubsub_tracker)).await?;
133 +         let now_rx = clock::track(/* tokio::sync::watch::Sender<u64> */, Arc::clone(&pubsub_tracker), /* SubsystemHandle */).await?;
    |

error[E0308]: mismatched types
   --> /home/ubuntu/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tuktuk-crank-turner-0.2.17/src/main.rs:137:18
    |
137 |             now: now_rx.clone(),
    |                  ^^^^^^^^^^^^^^ expected `Receiver<u64>`, found `()`
    |
    = note: expected struct `tokio::sync::watch::Receiver<u64>`
            found unit type `()`

error[E0308]: mismatched types
   --> /home/ubuntu/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tuktuk-crank-turner-0.2.17/src/main.rs:146:18
    |
146 |             now: now_rx.clone(),
    |                  ^^^^^^^^^^^^^^ expected `Receiver<u64>`, found `()`
    |
    = note: expected struct `tokio::sync::watch::Receiver<u64>`
            found unit type `()`

error[E0308]: mismatched types
   --> /home/ubuntu/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/tuktuk-crank-turner-0.2.17/src/main.rs:158:21
    |
158 |             now_rx: now_rx.clone(),
    |                     ^^^^^^^^^^^^^^ expected `Receiver<u64>`, found `()`
    |
    = note: expected struct `tokio::sync::watch::Receiver<u64>`
            found unit type `()`

Some errors have detailed explanations: E0061, E0308.
For more information about an error, try `rustc --explain E0061`.
error: could not compile `tuktuk-crank-turner` (bin "tuktuk-crank-turner") due to 4 previous errors
error: failed to compile `tuktuk-crank-turner v0.2.17`, intermediate artifacts can be found at `/tmp/cargo-installqICLVq`.
To reuse those artifacts with a future compilation, set the environment variable `CARGO_TARGET_DIR` to that path.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions