-
Notifications
You must be signed in to change notification settings - Fork 402
Open
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
No status