-
Notifications
You must be signed in to change notification settings - Fork 50
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade or replace bitcoind
in integration tests
#369
Comments
bitcoind-json-rpc-regtest appears to be the favored upgrade path in the rust-bitcoin issue linked in OP |
some functions we use from
|
bitcoind-json-rpc-regtest has been archived and development is now happening at https://github.com/rust-bitcoin/corepc. The corresponding crate is corepc-node. |
I made a local fork of However, some problems remain:
Overall it seems |
@nothingmuch mentioned a potential workaround for upgrading |
I set the
Side note: I believe the |
I wrote the v1-v1 taproot test but I guess I never confirmed that it actually works. Exact fee calculations are tricky to get right in tests. My first guess is that the value returned by |
Correct. When I pulled |
Makes sense, ideally we'd just use If you push a working branch with your bitcoind changes I can take a look at why |
Noting this isn't really so much tech debt as it is maintenance. When the dependency was taken on it was state of the art, and the state of the art changed. Not really tech debt to pay back, but regular maintenance |
I can put it up but there isn't much code changed. To reproduce you just need to run latest bitcoin core locally and set |
I replicated the taproot error with a local bitcoind_exe.
This is strange... the payjoin input calculations actually match the expected values. The reason it's off-by-one is because the original PSBT is paying 1 sat more than we should expect 🤔 I added some debug prints: let psbt = build_original_psbt(&sender, &uri)?;
dbg!(psbt.clone().extract_tx_unchecked_fee_rate().weight());
dbg!(psbt.fee().unwrap());
520 WU is exactly 130 vB, and we explicitly specify a feerate of |
I replicated this with bitcoin-cli alone:
The fee is 131 sats despite the vsize being 130vB and the fee_rate of 1sat/vB. |
Moved from #367 (comment)
Currently
bitcoind
is on 0.21 which doesn't support bech32m addresses and is preventing us from using taproot in integration tests.My attempts to upgrade it have failed so far (bitcoind 0_22 fails because it creates legacy wallets by default, which don't support bech32m. bitcoind 0_23 and above fail because of some deadlock between tests running in parallel).
It looks like bitcoind might be on its way out so if upgrading doesn't work perhaps we should consider replacing this dependency with something else.
The text was updated successfully, but these errors were encountered: