Commit Graph

778 Commits

Author SHA1 Message Date
Eirik Ogilvie-Wigley 1a06727c0c Performance: Store weighted transactions in a tree 2019-10-07 14:23:42 -06:00
Eirik Ogilvie-Wigley 0b2c5cfcc2 Grammatical fixes
Co-Authored-By: Daira Hopwood <daira@jacaranda.org>
2019-10-07 14:23:41 -06:00
Eirik Ogilvie-Wigley a48b1ba7e2 Rebuild weighted list on removal and fix size calculation 2019-10-07 14:23:41 -06:00
Eirik Ogilvie-Wigley ae9ecf09e8 DoS protection: Weighted random drop of txs if mempool full 2019-10-07 14:23:41 -06:00
Daira Hopwood 7167dc9b2c Test setting an expiry height of 0.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2019-09-26 20:43:52 +01:00
Homu 961c0d58ec Auto merge of #4060 - str4d:remove-libsnark, r=daira
Remove libsnark

Closes #167. Closes #416. Closes #418. Closes #437.
Closes #521. Closes #743. Closes #750. Closes #894.
Closes #903. Closes #1125. Closes #1136. Closes #1240.
Closes #1264. Closes #1516. Closes #1517. Closes #1651.
Closes #2064. Closes #2158. Closes #3478. Closes #3652.
Closes #3744.
2019-09-26 11:21:40 -07:00
Homu 62dc5f0821 Auto merge of #4144 - zcash:hotfix-v2.0.7-3, r=str4d
Release v2.0.7-3
2019-09-24 16:02:35 -07:00
Jack Grigg 9d8322a341
Enable RPC tests to wait on mempool notifications 2019-09-20 21:41:49 +01:00
Jack Grigg 982e924e98
tests: Clean up use of repr() in mininode 2019-09-16 12:23:46 +01:00
Homu 06507722ac Auto merge of #4088 - LarryRuane:3708-insightexplorer-formatting, r=Eirik0
insightexplorer: formatting, pyflakes cleanups

These changes were too late (post-review) for the Insight Explorer PRs, see #3708. No functional differences.
2019-09-04 10:57:56 -07:00
Jack Grigg 8669cb692d
test: Update RPC tests to use a minimum of Sapling
The p2p_nu_peer_management and rewind_index RPC tests still start from
Sprout, because they are explicitly (and only) testing network behaviour
across network upgrades.

The mempool_tx_input_limit test is removed because the flag has been
ignored since Sapling activation, and will be removed at some point in
the near future.
2019-08-22 17:26:54 +01:00
Jack Grigg d7d4dd8a0f
test: Add hashFinalSaplingProxy to create_block 2019-08-22 15:44:18 +01:00
Jack Grigg 0097df5c7a
test: Add Sapling v4 transactions to mininode framework 2019-08-22 15:44:16 +01:00
Jack Grigg 3019c0be14
test: Require minimum of Sapling for all RPC tests 2019-08-22 15:42:54 +01:00
Jack Grigg 1f38ad2536
Remove libsnark unit tests from full test suite 2019-08-22 15:42:54 +01:00
Eirik Ogilvie-Wigley b54725fbed
Remove constant
Co-Authored-By: str4d <thestr4d@gmail.com>
2019-08-19 12:30:24 -06:00
zebambam 5ac48d8ebc Updated location to new download server, fixing #4100 2019-08-18 14:38:49 +01:00
Eirik Ogilvie-Wigley 94f642c80a Enable shorter block times rpc test 2019-08-16 13:21:33 -06:00
Daira Hopwood f58bc7b638 Add RPC test and test framework constants for Sapling->Blossom activation.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2019-08-16 20:19:18 +01:00
Jack Grigg cfdf040332 test: Fix AuthServiceProxy closed conn detection 2019-08-16 20:19:18 +01:00
zebambam 929b302e40 Updated location to new download server 2019-08-14 11:42:31 -07:00
Larry Ruane 7c5a791b73 insightexplorer: formatting, pyflakes cleanups 2019-08-09 15:27:52 -06:00
Homu 5fd1f5afc0 Auto merge of #3972 - LarryRuane:3708-getblockhashesrpc, r=str4d
3708 getblockhashesrpc

Part of #3708
2019-08-09 08:00:17 -07:00
Homu 2528af69ff Auto merge of #4025 - bitcartel:shorter_block_target_interval_zip208, r=daira
Implement ZIP 208: Shorter Block Target Spacing

Closes #3690.
2019-08-09 02:35:30 -07:00
Larry Ruane 2e505df351 add timestampindex related RPC getblockhashes 2019-08-08 14:35:07 -06:00
Larry Ruane 86b23f37ad add spentindex RPC for bitcore block explorer 2019-08-07 14:23:42 -06:00
Eirik Ogilvie-Wigley 2f00729061 Add copyright info 2019-08-05 19:05:11 -06:00
Eirik Ogilvie-Wigley 42a21ef004 Test clean up and fixes 2019-08-05 14:52:34 -06:00
Eirik Ogilvie-Wigley 65df6225a6 Do not create transactions that will expire after the next epoch 2019-08-02 16:01:20 -06:00
Homu c68511b876 Auto merge of #3926 - LarryRuane:3708-getaddressrpcs, r=str4d
add addressindex RPC for bitcore block explorer

Addresses #3708
2019-08-01 05:43:29 -07:00
Homu 2300b911f8 Auto merge of #4035 - Eirik0:use-committransaction, r=str4d
Use CommitTransaction

This enables `-walletbroadcast` to correctly control transactions created with `z_*` APIs. It also addresses some TODOs in the code and consolidates some repeated logic.

Closes #4077 (because `CommitTransaction` calls `KeepKey` on the transparent change address).
2019-08-01 03:04:06 -07:00
Jack Grigg 907554be3a
test: Fix pyflakes warnings 2019-08-01 10:43:03 +01:00
Jack Grigg 8e48ca1fb2
test: Fix permissions on wallet_changeaddresses RPC test 2019-08-01 10:21:27 +01:00
Larry Ruane 68e174e22b add addressindex related RPCs 2019-07-31 10:31:16 -06:00
Jack Grigg 6bc69c39cb
test: Check for change t-addr reuse in z_sendmany 2019-07-31 12:11:14 +01:00
Eirik Ogilvie-Wigley 07851670b4 Temporarily disable test 2019-07-29 15:04:34 -06:00
Eirik Ogilvie-Wigley 102dafdf89 Update block subsidy halving for zip208 2019-07-29 13:44:53 -06:00
Homu 5306121e5c Auto merge of #4075 - Eirik0:4059-fix-migration-test, r=Eirik0
Fix nondeterministic failure in sapling migration test

Fixes #4059
2019-07-26 01:06:55 -07:00
Eirik Ogilvie-Wigley a63ec6e717 Shorter block times rpc test 2019-07-25 12:49:15 -06:00
Eirik Ogilvie-Wigley 5fc227c7dd
Apply suggestions from code review
Show migration status in assertion failures

Co-Authored-By: Daira Hopwood <daira@jacaranda.org>
2019-07-25 12:35:10 -06:00
Eirik Ogilvie-Wigley 6a3f9d8260 Clean up and fix typo 2019-07-24 15:43:08 -06:00
Homu 6da42887f1 Auto merge of #3944 - daira:update-license-info, r=daira
Update license info

Includes commits cherry-picked from bitcoin/bitcoin#8784 with some minor changes.

Fixes #2827.
2019-07-24 04:07:03 -07:00
Eirik Ogilvie-Wigley ded45b90d7 Fix nondeterministic failure in sapling migration test 2019-07-20 14:36:08 -06:00
Daira Hopwood 2fe59a5681 qa/zcash/checksec.sh is under a BSD license, with a specialized non-endorsement clause.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2019-07-18 15:31:39 +01:00
Daira Hopwood bc909a7a7f Replace http with https: in links to the MIT license.
Also change MIT/X11 to just MIT, since no distinction was intended.

Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2019-07-18 15:26:01 +01:00
Homu 1c899f5a83 Auto merge of #4044 - Eirik0:fix-mergetoaddress-test-comment, r=Eirik0
Fix comment in mergetoaddress RPC test
2019-07-18 06:12:22 -07:00
Dimitris Apostolou f57f76d789
Rename vjoinsplit to vJoinSplit 2019-06-16 19:13:49 +03:00
Eirik0 c9d14272af Fix comment in mergetoaddress RPC test 2019-06-11 14:32:57 -06:00
Larry Ruane f381d4e085 add spentindex to getrawtransaction RPC results 2019-06-11 10:29:51 -06:00
Eirik0 a8055cfe10 Fix z_mergetoaddress sending from ANY_SPROUT/ANY_SAPLING when the wallet contains both note types 2019-06-10 13:21:25 -06:00
Eirik0 bb0a3e1cb5 Remove old mergetoaddress RPC test 2019-05-22 16:01:50 -06:00
Eirik0 23d9826ef9 Fix LogPrint statements 2019-05-10 17:25:30 -06:00
Eirik0 7470ae8885 Do not automatically remove async migration operations and return txids 2019-05-10 17:19:56 -06:00
Daira Hopwood e7529049fb Test the expiry height of migration transactions.
Signed-off-by: Daira Hopwood <daira@jacaranda.org>
2019-05-10 13:48:43 +01:00
Eirik0 7cf4749d0d Correctly account for migration transactions in the mempool
Co-authored-by: LarryRuane <larry@z.cash>
2019-05-05 12:59:43 -06:00
Eirik0 345177cfc1 Do not look at vin/vout when determining migration txs and other cleanup 2019-04-30 09:52:53 -06:00
Eirik0 e9530f40f2 use -valueBalance rather than vpub_new to calculate migrated amount 2019-04-29 17:00:26 -06:00
Eirik0 108e587c14 Fix typos and update documentation 2019-04-29 15:29:29 -06:00
Eirik0 2276133bb3 Test migration using both the parameter and the default Sapling address 2019-04-29 15:29:29 -06:00
Eirik0 6e82d72852 Add rpc to get Sprout to Sapling migration status 2019-04-29 15:28:35 -06:00
Eirik0 6acb37bcee Check for full failure message in test case 2019-04-26 19:01:23 -06:00
Eirik0 5519d16997 Set min depth when selecting notes to migrate 2019-04-25 13:43:23 -06:00
Eirik0 d2a584e35a Refactor wait_and_assert_operationid_status to allow returning the result 2019-04-24 11:31:14 -06:00
Eirik0 699288b4b4 Documentation cleanup 2019-04-24 11:31:14 -06:00
Eirik0 81a45d6984 Add rpc to enable and disable Sprout to Sapling migration 2019-04-24 11:31:14 -06:00
Simon d6b47948bf Add qa test for experimental feature: -developersetpoolsizezero 2019-04-23 15:05:15 -07:00
Jack Grigg 3cb20f26a1
test: Make expected_utxos optional in get_coinbase_address() 2019-03-06 09:03:55 +13:00
Jack Grigg b0f1d643aa
test: Fetch coinbase address from coinbase UTXOs
After upstream PR bitcoin/bitcoin#5994, the first call to getnewaddress after
startup does not return the address being used by the miner.
2019-03-06 09:03:51 +13:00
Homu 48b7dea5a8 Auto merge of #3639 - leto:size_on_disk, r=bitcartel
Port getblockchaininfo.size_on_disk from BTC master

Closes #3630.
2019-02-25 10:08:44 -08:00
Jack Grigg ecde950bac
Add Sapling benchmarks to benchmark runner 2019-02-16 18:44:16 +00:00
Eirik Ogilvie-Wigley a482e4c9fa Strategically sync to prevent intermittent failures 2019-01-17 15:00:57 -07:00
Eirik Ogilvie-Wigley 32212cbad7 Extract helper methods 2019-01-17 15:00:57 -07:00
Eirik Ogilvie-Wigley 5e654035a6 fail test if pong is not received 2019-01-17 15:00:57 -07:00
Eirik Ogilvie-Wigley 3dab742638 Check entire contents of mempool 2019-01-17 15:00:52 -07:00
Eirik Ogilvie-Wigley 57dcc9e6bf Make variables local 2019-01-17 14:58:50 -07:00
Eirik Ogilvie-Wigley 73859fd218 Move common code to helper 2019-01-17 14:58:46 -07:00
Eirik Ogilvie-Wigley 23b329d912 flake8 cleanup 2019-01-14 14:00:24 -07:00
mdr0id 4ca5def62f Make pythonisms consistent 2018-12-18 12:16:23 -08:00
Simon 067b6f9373 For ZEC-013. Update qa tests broken by expiring soon threshold. 2018-11-17 09:02:10 -08:00
Simon 4484c76202 For ZEC-013. RPC createrawtransaction returns error if tx expiring soon. 2018-11-17 09:02:10 -08:00
Simon cc1ab2db55 For ZEC-013. Don't propagate txs which are expiring soon in p2p messages.
When responding to "mempool" message, do not include the txid of an
expiring soon transaction in the "inv" message reply.
When responding to "getdata" message, do not reply with a "tx" message
for a transaction which is expiring soon.
2018-11-17 09:02:00 -08:00
Simon f8cd79c2de For ZEC-013. Mitigate potential tx expiry height related DoS vector.
Don't accept transactions which are about to expire (next 3 blocks).
Don't set a ban score if a peer does propragate these transactions.
See ZEC-013 for more detail.
2018-11-17 09:01:49 -08:00
Simon 43040e9384 Add support for "notfound" message to mininode. 2018-11-17 08:27:41 -08:00
Homu a47e1fda73 Auto merge of #3684 - str4d:load-sapling-chain-value, r=bitcartel
Load sapling chain value into memory

`CBlockIndex::nSaplingValue` has been correctly set and written to disk since before Sapling activated, meaning that all nodes now are correctly tracking the Sapling shielded pool value on-disk. However, on restart the per-block values are not being read into memory, and so the in-memory pool value appears to be zero on every restart. Setting `nSaplingValue` in-memory during block index loading fixes the problem.
2018-11-16 21:07:46 -08:00
Eirik Ogilvie-Wigley e0b89f59f9 Adjust z_mergetoaddress assertions in Sapling rpc test 2018-11-16 18:14:58 -07:00
Eirik Ogilvie-Wigley 0adb77d32e Add locking for Sapling notes 2018-11-16 18:14:58 -07:00
Eirik Ogilvie-Wigley 487c9020bd Add Sapling support to z_mergetoaddress 2018-11-16 18:14:58 -07:00
Eirik Ogilvie-Wigley e0c491c073 Extend Sprout mergetoaddress rpc test to also work for Sapling 2018-11-16 18:14:57 -07:00
Eirik Ogilvie-Wigley fe393e8a2f Add fail method to rpc test utils 2018-11-16 18:00:05 -07:00
Simon 12a1267a4a Update qa tests for new "sapling" default for z_getnewaddress. 2018-11-16 14:22:23 -08:00
Jack Grigg 4e117579c5
Test Sapling value pool accounting 2018-11-16 16:14:52 +00:00
Jonathan "Duke" Leto 6c1bf4e7ed Add size_on_disk test
Co-authored-by: Simon <simon@bitcartel.com>
2018-11-14 15:04:05 -08:00
Homu 97fccdbac5 Auto merge of #3605 - LarryRuane:3604-memo-zeros, r=daira
3604 fix sapling default memo - 0xF6 plus zeros

Closes #3604. For Sapling outputs, set the default memo to `no_memo` instead of all zeros. (See section 5.5 of the Sapling protocol specification.)
2018-10-28 03:15:07 -07:00
Eirik Ogilvie-Wigley 882a4f577f Fix potentially misleading test failures 2018-10-24 13:53:25 -06:00
Larry Ruane 245db9c8a6 update bug in wallet_listreceived.py, now it highlights the fix 2018-10-24 08:13:56 -06:00
Homu d810703431 Auto merge of #3588 - bitcartel:hash_final_sapling_root_verification, r=bitcartel
Add test to verify final sapling root in block header is updated.
2018-10-18 17:52:11 -07:00
Simon 61caa46619 For #3359. Return error if Sapling addresses passed to RPC z_mergetoaddress.
RPC z_mergetoaddress does not support Sapling yet but the existing error
reporting was not clear to users.
2018-10-13 08:10:10 -07:00
Simon de1b86a429 For #3359. RPCs transferring funds return error if Sapling addresses are used before Sapling activation. 2018-10-12 23:14:06 -07:00
Homu 527b7feef5 Auto merge of #3592 - Eirik0:z-sendmany-better-error, r=bitcartel
Better error message when sending to both sprout and sapling

When trying to send to both Sprout and Sapling (not currently supported with z_sendmany) we were getting the following error in our operation result: `general exception: boost::bad_get: failed value get using boost::get`.

This PR changes this to fail with a better error message before the async operation begins:
```
error code: -8
error message:
Cannot send to both Sprout and Sapling addresses using z_sendmany
```
2018-10-12 15:30:34 -07:00
Eirik Ogilvie-Wigley 0917c84d9a Better error message when sending to both sprout and sapling
Co-authored-by mdr0id <marshall@z.cash>
2018-10-12 14:12:21 -06:00