Commit Graph

214 Commits

Author SHA1 Message Date
Chris Kleeschulte e87f628e7a Merge pull request #439 from braydonf/zmqcheck
bitcoind: added zmq precondition
2016-06-02 14:11:59 -04:00
Braydon Fuller cf16a23408 bitcoind: added zmq precondition
Adds a state check that transaction and block events are over the same host
and port. This is to make sure that block events can be subscribed to and
that the tip of the chain stays up to date for correct confirmation counts.
2016-06-01 19:50:45 -04:00
Braydon Fuller 4d780a9d2d bitcoind: separate function for relative datadir expanding 2016-06-01 11:41:41 -04:00
Braydon Fuller 814576953c bitcoind: relative spawn.datadir handling
Will expand the datadir into an absolute path based on the location
of the configuration file. This is to avoid unexpected behavior in regards
to the location of configuration files.
2016-06-01 11:33:06 -04:00
Braydon Fuller e8a35e2bb5 bitcoind: bug with getting block hash from address
Fixes an issue where passing an address as the blockArg would get the blockhash
for the parsed integer of the address. `parseInt` would parse the address as
an integer and then get the block hash for 1. A regular expression now checks
that the string is numeric with only 0-9 and the length is less than 40, the
size of a ripemd160, and also less than the length of a sha256 hash.
2016-05-26 10:15:42 -04:00
Braydon Fuller f38fa1324f bitcoind: account for scriptPubKey.addresses not always being set 2016-05-25 17:14:22 -04:00
Braydon Fuller 2dddf01bb0 test: coverage for spawnChildProcess 2016-05-24 17:11:02 -04:00
Braydon Fuller f76b206178 test: coverage for getBlockHeader 2016-05-24 16:39:22 -04:00
Braydon Fuller 0cb795d980 test: add bitcoind test for early shutdown while connecting 2016-05-24 16:22:41 -04:00
Braydon Fuller 86b1acd0be test: coverage for bitcoind getAddressUnspentOutputs 2016-05-24 14:06:03 -04:00
Braydon Fuller 3fef6f5ffc test: increase test coverage of bitcoind service 2016-05-24 13:07:51 -04:00
Braydon Fuller 0a95765e51 bitcoind: fix indentation 2016-05-23 16:48:17 -04:00
Braydon Fuller 28ff52ece6 tests: add tests for addresstxid event 2016-05-18 11:20:23 -04:00
Braydon Fuller 1800294dfe bitcoind: change dataformat of addresstxid event
Adds the address to the message to quickly determine the address
associated with the event.
2016-05-18 10:20:18 -04:00
Braydon Fuller bf080422ed web: get remoteAddress for socket with cloudflare header 2016-05-18 00:17:45 -04:00
Braydon Fuller 57cb146ce0 build: fix jshint unused variable warnings 2016-05-17 23:03:04 -04:00
Braydon Fuller 4df9b5f6cf bitcoind: add addresstxid event 2016-05-17 22:46:38 -04:00
Braydon Fuller a48bcaf900 web: added logging for web socket events 2016-05-17 18:16:56 -04:00
Braydon Fuller fa6474e85f bitcoind: handle block height number as string 2016-05-16 18:01:12 -04:00
Braydon Fuller 484b707589 bitcoind: update jsdocs for getDetailedTransaction 2016-05-16 17:39:54 -04:00
Braydon Fuller 8f11a33834 test: add getBlockOverview unit tests and refactor 2016-05-16 17:34:40 -04:00
Braydon Fuller cd4432652d main: remove transaction with populate methods
The methods populateInputs and populateSpentInfo are nolonger necessary or used
now that there is is getDetailedTransaction.
2016-05-13 18:52:12 -04:00
Braydon Fuller 8bddf4f0d6 bitcoind: add getDetailedTransaction method
Adds a new method getDetailedTransaction with a standard JavaScript object
with block information, address, amounts and fees. And removes the
getTransactionWithBlockInfo method since this new method is equivalent,
and will serialize over an API correctly.

Also includes a new method getBlockOverview to get the txids for a block,
that can be combined with getDetailedTransaction for viewing block
transactions with additional information.
2016-05-13 16:50:49 -04:00
Braydon Fuller ae91ff2420 bitcoind: update jsdocs for getBlockHeader 2016-05-11 12:15:33 -04:00
Braydon Fuller b597a05cb4 bitcoind: camelCase result from getBlockHeader
for consistency with other methods
2016-05-11 11:39:14 -04:00
Braydon Fuller d399e9acea bitcoind: camelCase getInfo results
for consistency with other bitcoind api responses
2016-05-11 11:16:04 -04:00
Braydon Fuller 791047c10d bitcoind: bump max tx history default to 50 2016-05-10 19:30:36 -04:00
Braydon Fuller 75c43559d4 bitcoind: paginate txids in address summary
so that one request doesn't yield a 80MB response
2016-05-10 13:48:56 -04:00
Braydon Fuller 36f337afb3 web: update jsdoc with enableSocketRPC option 2016-05-09 14:30:07 -04:00
Braydon Fuller b0290899ce bitcoind: handle empty input from pid file 2016-04-28 16:19:33 -04:00
Braydon Fuller 2e912af9b4 bitcoind: subscribe to zmq event closer to 100% sync
Instead of subscribing at >= 0.995 subscribe at >= 0.9999 progress
2016-04-28 13:13:51 -04:00
Braydon Fuller c22f6505eb bitcoind: reduce duplicate tx messages
remember a larger number of tx zmq messages to not emit a transaction twice
once from the block and another from the mempool
2016-04-28 12:10:05 -04:00
Braydon Fuller 92bae5f09a general: code cleanup, refactoring and formatting 2016-04-27 11:36:26 -04:00
Braydon Fuller c1e9d5a3d9 test: added tests for stopSpawnedBitcoin 2016-04-26 17:29:40 -04:00
Braydon Fuller d28f8567f1 bitcoind: handle unexpected process exits 2016-04-26 14:32:51 -04:00
Braydon Fuller 944c44ed74 bitcoind: return selected set of info for getinfo 2016-04-25 11:16:06 -04:00
Braydon Fuller 3f34fb6ea0 bitcoind: always log errors emitted instead of being uncaught exceptions 2016-04-25 11:02:37 -04:00
Braydon Fuller c63e98f061 bitcoind: limit tx history range 2016-04-22 16:51:56 -04:00
Braydon Fuller c6e543c2a1 bitcoind: fix noTxList caching issue 2016-04-22 16:13:57 -04:00
Braydon Fuller 5e6600162a test: add unit test for getaddressunspentoutputs with mempool 2016-04-22 12:48:16 -04:00
Braydon Fuller 7f17dd4a4c bitcoind: fixed issue with cache mempool updates 2016-04-22 12:09:57 -04:00
Braydon Fuller b901e10c9d bitcoind: update unspentoutputs with mempool 2016-04-21 17:13:24 -04:00
Braydon Fuller d1cf9deef0 bitcoind: parse ints for pagination 2016-04-20 15:35:43 -04:00
Braydon Fuller 587602d080 bitcoind: stop failsafe timeout 2016-04-20 13:03:18 -04:00
Braydon Fuller 019bc2a58c bitcoind: load network bitcoin.conf and set defaults 2016-04-20 11:41:02 -04:00
Braydon Fuller c3dab07b30 bitcoind: fix clearInterval issue with Node.js 0.12 2016-04-19 20:27:52 -04:00
Braydon Fuller 7d878adcf0 bitcoind: immediately subscribe with connect option 2016-04-19 17:23:27 -04:00
Braydon Fuller 458fe2f2b6 bitcoind: emit block events while polling before subscribing to zmq events 2016-04-19 16:53:00 -04:00
Braydon Fuller b092adcc21 bitcoind: subscribe to zmq events without interval if already synced 2016-04-19 16:40:54 -04:00
Braydon Fuller 2b38f08175 bitcoind: subscribe to zmq events once synced
prevents flooding tx and and block events that can cause issues
2016-04-19 16:00:17 -04:00