Commit graph

4051 commits

Author SHA1 Message Date
Andrew Poelstra
f9255e62d7 Merge 751ffaabad into merged_master (Bitcoin PR #20562) 2021-06-11 03:56:06 +00:00
Andrew Poelstra
137e74a3dc Merge 681ce59d0e into merged_master (Bitcoin PR #20466) 2021-06-11 00:13:51 +00:00
Andrew Poelstra
406e81efb5 Merge 0a13d15c14 into merged_master (Bitcoin PR #20530) 2021-06-10 23:32:14 +00:00
Andrew Poelstra
0533e80b8c Merge 283f22cabb into merged_master (Bitcoin PR #20461) 2021-06-10 22:04:42 +00:00
Andrew Poelstra
eb8384648f Merge 607c844f37 into merged_master (Bitcoin PR #20540) 2021-06-10 21:43:43 +00:00
Andrew Poelstra
2d31b7300e Merge f17e8ba3a1 into merged_master (Bitcoin PR #20207) 2021-06-10 20:35:12 +00:00
Andrew Poelstra
4240c083aa Merge 7ae86b3c68 into merged_master (Bitcoin PR #20522) 2021-05-08 00:06:07 +00:00
Andrew Poelstra
2522ba9f6d Merge 1ae5758981 into merged_master (Bitcoin PR #20448) 2021-05-07 23:27:40 +00:00
Andrew Poelstra
8d52d54329 Merge afdfd3c8c1 into merged_master (Bitcoin PR #20403) 2021-05-07 21:52:40 +00:00
Andrew Poelstra
3fff08ad6a Merge efd4cdb81f into merged_master (Bitcoin PR #20456) 2021-05-07 21:14:51 +00:00
Andrew Poelstra
d3321390c2 Merge ca4a784942 into merged_master (Bitcoin PR #20410) 2021-05-07 20:56:02 +00:00
Andrew Poelstra
c9266f6d1c Merge 3a32b62fa7 into merged_master (Bitcoin PR #20462) 2021-05-07 19:41:18 +00:00
Andrew Poelstra
a9e2850a58 Merge 2ee954daae into merged_master (Bitcoin PR #20458) 2021-05-07 18:18:43 +00:00
Andrew Poelstra
d16f8ae480 Merge 816132e6eb into merged_master (Bitcoin PR #20426)
Needed to restore an #include in wallet/rpcwallet.cpp for several
functions (ChainActive, IsDynaFedActive, GetFeeMap and others)
2021-05-07 16:18:13 +00:00
Andrew Poelstra
a0f440e27a Merge d4159984c3 into merged_master (Bitcoin PR #20223) 2021-05-07 15:22:08 +00:00
Andrew Poelstra
9068fbf10e Merge ea460291f9 into merged_master (Bitcoin PR #20430) 2021-05-07 14:59:39 +00:00
Andrew Poelstra
1357911374 Merge 3d632c3f49 into merged_master (Bitcoin PR #20428) 2021-05-06 22:59:14 +00:00
Andrew Poelstra
575da3c422 Merge 46f0b2f976 into merged_master (Bitcoin PR #19851) 2021-05-06 22:22:51 +00:00
Andrew Poelstra
00e18636bf Merge 04670ef81e into merged_master (Bitcoin PR #20385) 2021-05-06 21:53:52 +00:00
Andrew Poelstra
82faa689f1 Merge c4d1e24f54 into merged_master (Bitcoin PR #20047) 2021-05-06 21:24:00 +00:00
Andrew Poelstra
ec8588c71e Merge 71d068db40 into merged_master (Bitcoin PR #18531)
(Mostly) mechanical RPC changes
2021-05-06 21:05:40 +00:00
Andrew Poelstra
304d53b5f7 Merge 888c22e0dd into merged_master (Bitcoin PR #20359) 2021-05-06 19:06:58 +00:00
Andrew Poelstra
b8d53f04fb Merge 4b24c3962f into merged_master (Bitcoin PR #19504) 2021-05-06 16:02:38 +00:00
Andrew Poelstra
2573747447 fix test code duplication from 3a0de44d90 2021-04-15 17:06:37 +00:00
Andrew Poelstra
24ca09cb84 test: add missing sync_blocks to dynafed test; disable timing out travis test 2021-04-01 20:59:38 +00:00
Andrew Poelstra
f76fe5e469 ci: fix some test timeouts 2021-03-31 23:01:22 +00:00
Andrew Poelstra
7575e050bb remove some unused imports from new sighash_rangeproof test 2021-03-26 23:24:08 +00:00
Andrew Poelstra
e801e951df ci: whitelist some RPCs on the functional test coverage check 2021-03-26 17:33:05 +00:00
Andrew Poelstra
98d0ff7035 tests: actually fix intermittent failure in feature_assetsdir.py 2021-03-26 17:33:05 +00:00
Andrew Poelstra
14ff891036 Various ubsan fixes
Mostly harmless signed/unsigned conversions but also an actual
memory leak related to `BlindingData`.
2021-03-26 17:33:05 +00:00
Andrew Poelstra
f1092db80e disable previous-release compatibility test and walletupgrade test
Should revisit; I am not sure whether we have a long-term stable
URL for prebuilt past Elements releases, but we should be able
to just point test/get-previous-releases.py at that, and change
the set of versions (since we do not have 0.15, 0.19, etc), and
we're good to go.
2021-03-26 17:33:05 +00:00
Andrew Poelstra
55be2930fb test: disable "is everyone connected" check in sync_all in blocksigner test
Everyone is _not_ connected in this test, so on slow machines
where this check triggers (e.g. the CI boxes) the test incorrectly
fails. This was also a source of (very infrequent) spurious failures
during the rebase.
2021-03-26 17:33:05 +00:00
Andrew Poelstra
1670bdfa0b ci: fix benchmarks, fuzztests and unit tests
Includes a memory leak in the checkqueue unit test (but not in
the actual code). WE really need to switch our checkqueue to use
std::unique_pointer rather than bare pointers. But this would be
invasive enough that I want to do it in a followup PR.

Also pretty-much disable the validation_flush_cache unit test.
This is a stupid and irritating test which tries to unit-test
exact memory usage of std containers. It already has at least
one "remove wrong assumptions" update upstream and after many
tries I was unable to change all the magic numbers in a way
that'd consistently pass CI for Elements.

Also adds a couple ubsan suppressions about perfectly-legitimate
conversions of integer types.
2021-03-26 17:33:05 +00:00
Andrew Poelstra
697cd77985 ci: disable broken feature_pruning test
It may be that we just need to recompute some numbers because our
block limits are different. But this test takes 20 minutes to
fail and it would take some time to understand what the expected
behavior is.
2021-03-26 17:33:05 +00:00
Andrew Poelstra
0c98d2f5d4 ci: fix address in signet test so that the test works with wallet disabled 2021-03-26 17:33:05 +00:00
Andrew Poelstra
f1642283f5 travis: temporarily remove bitcoin_functional tests from Python linter 2021-03-26 17:33:04 +00:00
Andrew Poelstra
68bfd70b43 ci: various linter / CI compiler error fixes
Includes changing TRUE to OP_TRUE for anyone-can-spend output name,
to avoid symbol conflict on win64 builds, which is really obnoxious.
2021-03-26 17:33:04 +00:00
Andrew Poelstra
29ab3fdda1 travis: temporarily disable lint-git-commit-check.sh
This fails on upstream commit messages which are incorrectly formatted
and there is obviously nothing we can do about this. Re-enable this
check after the rebase is merged.
2021-03-26 01:34:49 +00:00
Andrew Poelstra
ae064874bc travis: temporarily blacklist a specific commit in the scripted-diff filter
Commit f471a3be00 currently has the text "scripted diff"
rather than "scripted-diff", which causes the scripted-diff linter to fail, saying
that it sees a script but not the magic words.

Changing the linter to detect "scripted diff" causes it to fail on this commit,
because the included script does not work. (For reference, the script is

    r() { sed -i 's/vout must be positive/vout cannot be negative/g' $1 }
    r $(git grep -l 'vout must be positive')

Bet you can't guess why bash rejects this without running it!)

We should remember to change this back.
2021-03-26 01:34:49 +00:00
Andrew Poelstra
0699c4d5aa Merge 277cbb2dc8 into merged_master (Elements PR #969) 2021-03-26 01:26:01 +00:00
Andrew Poelstra
d89112072c Merge 3b8e4070c8 into merged_master (Elements PR #958)
Conflicts due to change of error state formatting upstream.
2021-03-26 00:21:11 +00:00
Andrew Poelstra
22cf380984 Merge a993a7c675 into merged_master (Elements PR #960)
Several conflicts in the C++ code related to the new `flags` parameter
to `CheckSignature` and the corresponding function being renamed upstream
to `CheckSignatureECDSA`.

Several conflicts in the test harness as Steven sorta pulled the new
upstream ECKey module into the Python code, and the actual upstream
code was slightly different. Also needed to update the feature_taproot
code to always use the non-RANGEPROOF sighash since dynafed is not
enabled in the Taproot test.

Also had to pull the `set_wif` method out of `ECKey` and inline it because
otherwise it triggers a "circular inclusion" error between script.py (which
would pull in `base58_to_bytes` from address.py) and address.py (which now
pulls in some taproot EC related stuff from script.py).

Noticed that #960 does not test the "sighash rangeproof flag set but no
witnesses" case.
2021-03-25 23:46:21 +00:00
Steven Roose
7aaf01e02f
Test duration of fedpeg validity in dynafed test 2021-03-10 17:00:33 +00:00
Steven Roose
3b8e4070c8
Merge #958: Some minor dynafed improvements
14a42a018 Add two missing dynafed fields to getblockchaininfo (Steven Roose)
fe0372933 dynafed: Support changing mainnet dynafed activation (Steven Roose)
ce7a93d93 dynafed: Only verify proposed parameters if they differ from current (Steven Roose)

Pull request description:

  - support blocksigners specifying their own activation to make coordination a bit more flexible
  - don't force fedpeg script to change in order to change the block signing script

Tree-SHA512: 8dd66440261f910b083f7ed461e1930c9380350e3648f6aca44726c39dcca3bb7e62c36d36ae56c2717827fbaee2b9046c6ce0b05441c1d8d1b54f3c284bc4d7
2021-03-02 16:25:46 +00:00
Steven Roose
b888f42270
tests: Add test feature_sighash_rangeproof.py 2021-02-22 15:19:10 +00:00
Steven Roose
236f0b1762
tests: Replace CECKey with new ECKey impl from Bitcoin master
Somehow the CECKey impl is really broken if you want to set
a raw private key. Core master already has a new impl so I just
took that one and replaces the usages. This will probably be equivalent
with what would be rebased in at a later stage.
2021-02-22 13:45:37 +00:00
Steven Roose
fe03729338
dynafed: Support changing mainnet dynafed activation
This should obviously only be done by blocksigners. The flag used is not
documented.
2021-02-10 14:07:06 +01:00
Andrew Chow
773c42b265 tests: Test that a fully signed tx given to signrawtx is unchanged
Tests that a fully signed transaction given to
signrawtransactionwithwallet is both unchanged and marked as complete.
This tests for a regression in 0.20 where the transaction would not be
marked as complete.
2020-12-03 15:53:58 -05:00
MarcoFalke
681ce59d0e
Merge #20466: test: Fix intermittent p2p_fingerprint issue
fad7be584f test: Fix intermittent p2p_finerprint issue (MarcoFalke)

Pull request description:

  A single sync_with_ping can't be used to drop a block announcement, as the block might be sent *after* the ping has been responded to.

  Fix that by waiting for the block.

ACKs for top commit:
  theStack:
    ACK fad7be584f

Tree-SHA512: d43ba9d07273486858f65a26326cc6637ef743bf7b400e5048ba7eac266fb1893283e6503dd49f179caa1abab2977315fb70ba9fba34be9a817a74259d8e4034
2020-12-03 10:09:30 +01:00
Andrew Poelstra
5b89a9fc92 Merge 80e32e120e into merged_master (Bitcoin PR #20305) 2020-12-02 17:53:59 +00:00