Commit graph

6168 commits

Author SHA1 Message Date
Tom Trevethan
d5a756738e update functional tests 2025-07-24 13:06:43 +01:00
Tom Trevethan
cd1b94e64b Merge remote-tracking branch 'origin/master' into mintxfee 2025-07-22 11:57:05 +01:00
Tom Trevethan
e8e19528b0 Zero fee transactions without fee output 2025-07-22 11:37:30 +01:00
Byron Hambly
b379bb2465
Merge pull request #1459 from ElementsProject/simplicity
Update Simplicity integeration
2025-07-17 17:04:48 +02:00
Tom Trevethan
c4bc9fd5b4
Fix position of version argument in walletcreatefundedpsbt (#1474)
* fix position of version argument and add test

* add test for version number

---------

Co-authored-by: Tom Trevethan <ttrevethan@blockstream.com>
2025-07-11 12:27:43 +02:00
Byron Hambly
67cd78dbc2
Merge pull request #1451 from tomt1664/v25+_cherry_pick
Selected Bitcoin v25 and onwards patches
2025-07-08 14:17:15 +02:00
Tom Trevethan
a9da179304 remove unused variable 2025-07-07 15:55:11 +01:00
Tom Trevethan
2f9eab6379 add solved_data to options for functional test 2025-07-07 15:55:11 +01:00
Russell O'Connor
0a0a69f315 Update Simplicity integeration
This Simplicity update has
- renamed a few types
- moved some files around
- added a minCost parameter, currently set to 0
- added a new error code
2025-06-24 11:38:08 -04:00
merge-script
8614ff46c9 Merge bitcoin/bitcoin#30435: init: change shutdown order of load block thread and scheduler
5fd4836019 init: change shutdown order of load block thread and scheduler (Martin Zumsande)

Pull request description:

  This avoids situations during a reindex, in which the shutdown doesn't finish since `LimitValidationInterfaceQueue()` is called by the load block thread when the scheduler is already stopped, in which case it would block indefinitely. This can lead to intermittent failures in `feature_reindex.py` (#30424), which I could locally reproduce with
  ```diff
  diff --git a/src/validation.cpp b/src/validation.cpp
  index 74f0e4975c..be1706fdaf 100644
  --- a/src/validation.cpp
  +++ b/src/validation.cpp
  @@ -3446,6 +3446,7 @@ static void LimitValidationInterfaceQueue(ValidationSignals& signals) LOCKS_EXCL
       AssertLockNotHeld(cs_main);

       if (signals.CallbacksPending() > 10) {
  +        std::this_thread::sleep_for(std::chrono::milliseconds(50));
           signals.SyncWithValidationInterfaceQueue();
       }
   }
  ```
  It has also been reported by users running `reindex-chainstate` (#23234).

  I thought for a bit about potential downsides of changing this order, but couldn't find any.

  Fixes #30424
  Fixes #23234

ACKs for top commit:
  maflcko:
    review ACK 5fd4836019
  hebasto:
    re-ACK 5fd4836019.
  tdb3:
    ACK 5fd4836019
  BrandonOdiwuor:
    Code Review ACK 5fd4836019

Tree-SHA512: 3b8894e99551c5d4392b55eaa718eee05841a7287aeef2978699e1d633d5234399fa2f5a3e71eac1508d97845906bd33e0e63e5351855139e7be04c421359b36
2025-06-24 10:25:22 +01:00
Andrew Chow
cb5c59e8a5 Merge bitcoin/bitcoin#28784: rpc: keep .cookie file if it was not generated
7cb9367157 rpc: keep .cookie if it was not generated (Roman Zeyde)

Pull request description:

  Otherwise, starting bitcoind twice may cause the `.cookie` file generated by the first instance to be deleted by the second instance shutdown (after failing to obtain a lock).

ACKs for top commit:
  willcl-ark:
    re-ACK 7cb9367157
  achow101:
    ACK 7cb9367157
  kristapsk:
    re-ACK 7cb9367157
  stickies-v:
    ACK 7cb9367157

Tree-SHA512: 0960dbc457975b0e0535f3d814824a879d7f85c9f1191537415b3fc253429a316a8e4badde56c8bc139778f132392983cec5fbe03891fb15ff61d3bc3f6e681b
2025-06-24 10:25:22 +01:00
Pablo Greco
1f598d59a8 MSAN: provide a copy of bdb4 config files to avoid using git.savannah.gnu.org 2025-06-22 06:54:39 -07:00
Byron Hambly
10a8e36813
Merge pull request #1428 from psgreco/master-showpak
wallet: Show full pak entry in getwalletpakinfo
2025-06-10 19:30:06 +02:00
Pablo Greco
811d835960
Merge pull request #1439 from tomt1664/fix/check-missing-proofs
Add missing proof checks and tests
2025-03-26 05:11:02 -07:00
Thomas Trevethan
51f81f3286 add missing proof checks and tests 2025-03-26 11:35:22 +00:00
Pablo Greco
3c1782e3ce
Merge pull request #1438 from delta1/simplicity-activation-dynafed
fix: simplicity activation when dynafed is active
2025-03-26 04:17:30 -07:00
Byron Hambly
1bb6c424c2
simplicity: change deployment to version bit 21 2025-03-25 09:29:04 +02:00
Byron Hambly
4b5c6e578b
test: failing test for simplicity activation when dynafed is active 2025-03-25 09:25:17 +02:00
Byron Hambly
8cde3cd308
test: add dust relay output value test 2025-03-19 14:48:27 +02:00
Pablo Greco
b63f7ab9b5
Merge pull request #1433 from kilrau/reduce-default-dust-relay-fee
feat: reduce default dust relay fee
2025-03-13 08:00:07 -07:00
Byron Hambly
32390d1552
test: use bitcoin default dustrelayfee in mempool_accept.py 2025-03-13 09:38:10 +02:00
Thomas Trevethan
d74af31c9e use elements regtest address for derive test 2025-03-10 23:02:16 +00:00
muxator
0cb8f113df rpc: add non-regression test about deriveaddresses crash when index is 2147483647
This test would cause a crash in bitcoind (see #26274) if the fix given in the
previous commit was not applied.

Github-Pull: #26275
Rebased-From: 9153ff3e27
2025-03-10 17:56:03 +00:00
brunoerg
2f9042a967 test: ensure createmultisig and addmultisigaddress are not returning any warning for expected cases
Github-Pull: #25220
Rebased-From: 3a9b9bb38e
2025-03-10 16:21:52 +00:00
Andrew Chow
fb888905f5 tests: Calculate input weight more accurately
The external input test with specifying input weight would make a
pessimistic estimate of the input weight. However this would result in a
test failure as it is sometimes too pessimistic when an ECDSA signature
ends up being smaller than usual. To correct this, we can calculate the
input weight more accurately.

Github-Pull: #24454
Rebased-From: 8a04a386f7
2025-03-10 15:15:58 +00:00
Thomas Trevethan
45fdd42927 fixed tests 2025-03-10 13:03:15 +00:00
Jon Atack
608381c1e8 rpc: rename getdeploymentinfo status-next to status_next
Github-Pull: bitcoin#24528
Rebased-From: 5d7c69b
2025-03-10 11:51:55 +00:00
Pablo Greco
c878b2587b wallet: Show full pak entry in getwalletpakinfo 2025-03-04 07:16:05 -08:00
Pablo Greco
258d9d3c87 feature_fedpeg: Use os.join instead of hardcoded separator 2025-02-23 10:19:51 -08:00
Pablo Greco
305de6d265 feature_confidential_transactions: Use system temp dir instead of hardcoded /tmp 2025-02-23 09:24:05 -08:00
Pablo Greco
cd67236c12 feature_discount_ct: some txs can return 2 different weights, adapt the test to it 2025-02-22 09:05:56 -08:00
Jon Atack
7f56623441 Put lock logging behind DEBUG_LOCKCONTENTION preprocessor directive 2025-02-15 00:22:57 -08:00
Byron Hambly
2f1b86e84a
lint: fix shellcheck, spelling, and locale 2025-02-13 16:08:39 +02:00
Byron Hambly
5cb3acef29
Merge pull request #1310 from GoodDaisy/master
Fix typos
2025-02-13 09:47:55 +02:00
Byron Hambly
e41b225107
Merge pull request #1384 from apoelstra/2024-12--simple-fuzz
simplicity: add fuzz target
2025-02-12 14:15:27 +02:00
Byron Hambly
2c9c6cd7a0 test: add discountvsize test vectors 2025-02-11 11:21:18 -08:00
Andrew Poelstra
bd852baca6
ci: add more ubsan suppressions 2025-02-11 16:12:29 +00:00
MarcoFalke
56eec70de4
Fix signed integer overflow in prioritisetransaction RPC
Cherry-pick of fa52cf8e11
https://github.com/bitcoin/bitcoin/pull/23418 (2/2)
2025-02-11 13:47:57 +00:00
Byron Hambly
99c2ee7f9a
Merge pull request #1399 from apoelstra/2025-02--fuzz-fixes
various bugfixes for new fuzz test vectors
2025-02-11 09:49:42 +02:00
Byron Hambly
22089ac8f6
Merge pull request #1372 from delta1/issues-1371
decodepsbt: add asset/assetcommitment to input.witness_utxo
2025-02-11 08:47:17 +02:00
Andrew Poelstra
b90ef38727
ubsan: add suppression for simplicity 2025-02-11 03:00:51 +00:00
Pablo Greco
e6aa6e773e CI: example_elements_code_tutorial test test uses initialfreecoins, disable for descriptor wallets 2025-02-06 13:35:38 -08:00
Pablo Greco
a33ceacdbc CI: feature_tapscript_opcodes test uses initialfreecoins, disable for descriptor wallets 2025-02-06 13:35:38 -08:00
Pablo Greco
87808101be CI: feature_taphash_pegins_issuances test uses initialfreecoins, disable for descriptor wallets 2025-02-06 13:35:20 -08:00
Pablo Greco
e3c318b2b8 CI: discounttests use initialfreecoins, disable for descriptor wallets 2025-02-06 13:35:20 -08:00
Pablo Greco
6991cf7960 CI: trim_headers test uses combineblocksigs, disable for descriptor wallets 2025-02-06 13:35:20 -08:00
Pablo Greco
1ecd5821e8 CI: wallet_elements_regression_1263 uses getpeginaddress, disable for descriptor wallets 2025-02-06 13:35:20 -08:00
Pablo Greco
74cae2d9ec CI: use default wallet name in wallet_elements_21million 2025-02-06 13:35:20 -08:00
Andrew Poelstra
b1b4e6d5c9 Sanitize libsimplicity
Without this patch, the --with-sanitizers config flag has no effect on
the copy of libsimplicity in Elements Core. This means that we aren't
running asan or tsan when we intend to, and also means that when fuzzing
we aren't instrumenting the Simplicity binary.

The result is extremely bad fuzz coverage and missed bugs.

ubsan suppression for simplicity sha256.c

ubsan detects when a left shift would overflow an integer type. This is
not UB (it would be if you tried to shift more than the type's width in
one shot) but "may be unintentional" and is therefore detected.

Add a whitelist to the giant list of whitelists.
2025-01-31 11:43:23 -05:00
Byron Hambly
4303fa500d
test: add functional test for issue 2025-01-14 15:25:05 +02:00