-
Notifications
You must be signed in to change notification settings - Fork 411
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Describe the bug
The v0.23.1 release of bdk_electrum bumped the underlying minor version of rust-electrum-client on a patch release. This has the builds of previous releases of LDK Node fail due to the mismatching API types. E.g.:
error[E0599]: the method `populate_tx_cache` exists for struct `Arc<BdkElectrumClient<Client>>`, but its trait bounds were not satisfied
--> src/chain/electrum.rs:487:23
|
487 | bdk_electrum_client.populate_tx_cache(cached_txs);
| ^^^^^^^^^^^^^^^^^ method cannot be called on `Arc<BdkElectrumClient<Client>>` due to unsatisfied trait bounds
|
::: /home/tnull/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/electrum-client-0.23.1/src/client.rs:32:1
|
32 | pub struct Client {
| ----------------- doesn't satisfy `_: ElectrumApi` or `electrum_client::Client: Deref`
|
= note: the following trait bounds were not satisfied:
`electrum_client::Client: Deref`
which is required by `electrum_client::Client: bdk_electrum::electrum_client::ElectrumApi`
error[E0599]: the method `full_scan` exists for struct `Arc<BdkElectrumClient<Client>>`, but its trait bounds were not satisfied
--> src/chain/electrum.rs:490:24
|
490 | bdk_electrum_client.full_scan(
| --------------------^^^^^^^^^ method cannot be called on `Arc<BdkElectrumClient<Client>>` due to unsatisfied trait bounds
|
::: /home/tnull/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/electrum-client-0.23.1/src/client.rs:32:1
|
32 | pub struct Client {
| ----------------- doesn't satisfy `_: ElectrumApi` or `electrum_client::Client: Deref`
|
= note: the following trait bounds were not satisfied:
`electrum_client::Client: Deref`
which is required by `electrum_client::Client: bdk_electrum::electrum_client::ElectrumApi`
error[E0599]: the method `populate_tx_cache` exists for struct `Arc<BdkElectrumClient<Client>>`, but its trait bounds were not satisfied
--> src/chain/electrum.rs:521:23
|
521 | bdk_electrum_client.populate_tx_cache(cached_txs);
| ^^^^^^^^^^^^^^^^^ method cannot be called on `Arc<BdkElectrumClient<Client>>` due to unsatisfied trait bounds
|
::: /home/tnull/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/electrum-client-0.23.1/src/client.rs:32:1
|
32 | pub struct Client {
| ----------------- doesn't satisfy `_: ElectrumApi` or `electrum_client::Client: Deref`
|
= note: the following trait bounds were not satisfied:
`electrum_client::Client: Deref`
which is required by `electrum_client::Client: bdk_electrum::electrum_client::ElectrumApi`
error[E0599]: the method `sync` exists for struct `Arc<BdkElectrumClient<Client>>`, but its trait bounds were not satisfied
--> src/chain/electrum.rs:524:24
|
524 | bdk_electrum_client.sync(request, BDK_ELECTRUM_CLIENT_BATCH_SIZE, true)
| ^^^^ method cannot be called on `Arc<BdkElectrumClient<Client>>` due to unsatisfied trait bounds
|
::: /home/tnull/.cargo/registry/src/index.crates.io-1949cf8c6b5b557f/electrum-client-0.23.1/src/client.rs:32:1
|
32 | pub struct Client {
| ----------------- doesn't satisfy `_: ElectrumApi` or `electrum_client::Client: Deref`
|
= note: the following trait bounds were not satisfied:
`electrum_client::Client: Deref`
which is required by `electrum_client::Client: bdk_electrum::electrum_client::ElectrumApi`
To Reproduce
Try to build LDK Node.
Expected behavior
Should build.
Please don't arbitrarily bump dependencies as part of patch releases. To fix this, we'll now first have to upgrade electrsd, and then have to push out a new LDK Node release that work around the API breakage.
oleonardolima
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working
Type
Projects
Status
Done