Commit Graph

9493 Commits

Author SHA1 Message Date
Simon a5ac2e25a0 Add GetUnspentNotes to wallet. 2016-09-08 21:46:14 -07:00
Simon 7b79275eba Add tests to try and improve coverage of perform_joinsplit. 2016-09-08 21:46:14 -07:00
Simon 269310ce3c Replace zcashParams_ with global. 2016-09-08 21:46:14 -07:00
Simon 5f8118c8a4 Revert "Reduce use of global pzcashParams with private member variable"
This reverts commit 4d71ba58d37eb4f93d68b5e437086ce14fb24825.
2016-09-08 21:46:14 -07:00
Simon 4b32c16ba5 Reduce use of global pzcashParams with private member variable 2016-09-08 21:46:14 -07:00
Simon 485145ea78 Disable proof generation when testmode is enabled in async SendMany operation. 2016-09-08 21:46:14 -07:00
Simon 4cff8a5c50 Fix typo in error message 2016-09-08 21:46:14 -07:00
Simon a0a3334c4d Add z_getbalance and z_gettotalbalance RPC calls to close #1201. 2016-09-08 21:46:14 -07:00
Simon cff6f0ac46 Add friend class for testing private members of AsyncRPCOperation_sendmany. 2016-09-08 21:46:14 -07:00
Simon 9bb6162626 Add extra checking of memo data in hexadecimal string format. 2016-09-08 21:46:14 -07:00
Simon a5905772c8 Add logging under the category "asyncrpc". 2016-09-08 21:46:14 -07:00
Simon 39c7f954d0 Remove redundant call. 2016-09-08 21:46:14 -07:00
Simon fc4b127ed3 Add tests for async queue and rpc commands: z_getoperationstatus, z_getoperationresult, z_listoperationids, z_sendmany 2016-09-08 21:46:14 -07:00
Simon 15c83ac6b4 Remove redundant check when getting spending key for a payment address. 2016-09-08 21:46:14 -07:00
Simon f86f625dce Update RPCServer to use AsyncRPCQueue's shared queue. 2016-09-08 21:46:14 -07:00
Simon 423a63d0a9 Add shared queue to AsynRPCQueue. 2016-09-08 21:46:14 -07:00
Simon b922924d14 Add test for AsyncRPCQueue and AsyncRPCOperation. 2016-09-08 21:46:14 -07:00
Simon 017b3ede33 Clear the operation queue when closing it. 2016-09-08 21:46:14 -07:00
Simon 87f7c98795 Refactor to use wallet note tracking from commit a72379 2016-09-08 21:46:14 -07:00
Simon 97b6f365a1 Fix bug where wallet was not persisting witnesses to disk.
Author: str4d
2016-09-08 21:46:14 -07:00
Simon 9cd713439a Added option to close a queue and wait for queued up operations to finish,
rather than just closing a queue and immediately cancelling all operations.
2016-09-08 21:46:14 -07:00
Simon c93d8bdf9c Fix bug where call to sign and send a transaction was in wrong scope. 2016-09-08 21:46:14 -07:00
Simon 3fd5a615ac Coinbase utxos can only be spent when sending to a single zaddr.
Change from the transaction will be sent to the same zaddr.
2016-09-08 21:46:14 -07:00
Simon 008fccfa48 Disable option to allow multiple async rpc workers. 2016-09-08 21:46:13 -07:00
Simon 14af21e9f7 Add chaining of JoinSplits within a transaction. 2016-09-08 21:46:13 -07:00
Simon c1eae2806c Closes #1293 by adding z_getoperationresult and making z_getoperationstatus idempotent. 2016-09-08 21:46:13 -07:00
Simon 3b54bf5813 Refactoring and small improvements to async rpc operations.
Added AsyncRPCQueue::closeAndWait() so rpcserver can block on worker threads when shutting down.
AsyncRPCOperation is no longer copyable - copy constructor and assignment operators now private.
Refactoring: renamed methods, renamed member variables
Tidy up: comments, const, size_t, braces
2016-09-08 21:46:13 -07:00
Simon 34f0001ccc Implement RPC call z_listoperationids and update z_getoperationstatus to take a list parameter. 2016-09-08 21:46:13 -07:00
Simon 861513a01f Add public method to AsycnRPCQueue to retrieve all the known operation ids. 2016-09-08 21:46:13 -07:00
Simon c72a427274 Add public method to get state as a human readable string from an AsyncRPCOperation. 2016-09-08 21:46:13 -07:00
Simon 15d345466d Successful result of z_sendmany returns txid so it doesn't need to return raw hex. 2016-09-08 21:46:13 -07:00
Simon b7d7b2ad9d z_sendmany from a taddr now routes change to a new address instead of back to the sender's taddr, 2016-09-08 21:46:13 -07:00
Simon 4876de6c6d Update find_unspent_notes() as mapNoteAddrs_t has been replaced by mapNoteData_t. 2016-09-08 21:46:13 -07:00
Simon dafb81614b Implement z_sendmany RPC call.
Simple implementation does not try to optimize coin or note selection.
Caller can send from a taddr or zaddr to multiple recipients.
Currently only one of the recipients can be a zaddr.
2016-09-08 21:46:13 -07:00
Simon 4eb1a96f9a Add public field 'memo' to JSOutput to enable creation of notes with custom memos. 2016-09-08 21:46:13 -07:00
Simon 8d08172d0d Add config option 'rpcasyncthreads' to specify number of async rpc workers. Default is 1. 2016-09-08 21:46:13 -07:00
Simon 2e6321a154 Add prefix to async operation id so it is easier to manage on cli. 2016-09-08 21:46:13 -07:00
Simon fc72c078be Add async RPC queue and operation classes.
Add z_getoperationstatus RPC command.
Add z_sendmany RPC command (dummy implementation, does not send actual
coins).
2016-09-08 21:46:13 -07:00
Jack Grigg 289b12e448 Add tests for refactored wallet code 2016-09-08 17:29:08 +12:00
Jack Grigg ac1c94350d Refactor wallet note code for testing 2016-09-08 17:17:35 +12:00
zkbot 2271d3feda Auto merge of #1338 - str4d:147-tweak-difficulty-adjustment-algorithm, r=ebfull
Tweaks to difficulty adjustment algorithm

This PR changes the difficulty algorithm to adjust from the average difficulty over the
block window instead of from the last difficulty. It also removes the special rules for the
testnet, which are incompatible with difficulty averaging.

Closes #147 again.
2016-09-08 02:21:13 +00:00
zkbot 0372ce1f92 Auto merge of #1355 - bitcartel:zc.v0.11.2.latest_paymentapi, r=ebfull
Update payment API documentation for beta 1

Remove 'not in alpha 9' labels as RPC calls are now implemented.
2016-09-08 01:40:49 +00:00
Jack Grigg 622ced8a74 Adjust test to account for integer division precision loss 2016-09-08 12:46:00 +12:00
Jack Grigg 4b37cfd5b8 Remove unnecessary method 2016-09-08 12:22:08 +12:00
bitcartel 4ab24d3625 Update payment API documentation for beta 1 2016-09-07 16:53:24 -07:00
Jack Grigg aea79ec053 Adjust test to avoid spurious failures
Previously, if the two random numbers happened to be equal, the block time
would not be updated, and subsequent checks would fail.
2016-09-08 11:34:50 +12:00
Simon fa511e1084 Replace GetTxid() with GetHash() after rebase on latest. 2016-09-07 15:12:20 -07:00
Simon 33264f5b46 Remove GetTxid() from CTransaction and update test_txid 2016-09-07 15:12:09 -07:00
Simon 805344dcf4 Refactor: replace calls to GetTxid() with GetHash() 2016-09-07 15:12:09 -07:00
Simon 6c79b9a12a Update txid gtest to verify #1144 has been removed: GetTxid() and
GetHash() return the same result.
2016-09-07 15:12:09 -07:00