Commit Graph

3627 Commits

Author SHA1 Message Date
Christopher Jeffrey
4d5eaaa64a
asyncemitter: add sync emission. 2017-03-05 15:06:07 -08:00
Christopher Jeffrey
a0d2cc598c
chaindb: do not use asyncobject. 2017-03-05 14:32:50 -08:00
Christopher Jeffrey
f2ab1611e4
db: rewrite lowlevelup without asyncobject. 2017-03-05 14:32:36 -08:00
Christopher Jeffrey
e52eebd652
fullnode: fix persistent mempool block addition/removal. 2017-03-05 13:01:30 -08:00
Christopher Jeffrey
c2b8dc37c7
mempool: handle trimming differently. 2017-03-05 11:43:28 -08:00
Christopher Jeffrey
47c1955e2c
mempool: rename hasTX to hasEntry. 2017-03-05 10:02:34 -08:00
Christopher Jeffrey
210ce4c767
mempool: evict by lowest fee rate. 2017-03-05 02:03:14 -08:00
Christopher Jeffrey
ef92070a28
rbt: always return node for insert. 2017-03-05 01:23:46 -08:00
Christopher Jeffrey
fce0126c13
util: refactor hrtime usage. 2017-03-05 01:23:16 -08:00
Christopher Jeffrey
a2fd9b35c6
rpc: fix besthash byte order. 2017-03-04 16:00:37 -08:00
Christopher Jeffrey
1a5263ef23
chain: minor. logging. 2017-03-04 16:00:07 -08:00
Christopher Jeffrey
a96868ff8e
pool: track peer heights. 2017-03-04 15:40:59 -08:00
Christopher Jeffrey
beefcfba67
chain: return null on orphan blocks. 2017-03-04 15:37:27 -08:00
Christopher Jeffrey
b265877b36
chain: refactor event emission and logging. 2017-03-04 15:34:16 -08:00
Christopher Jeffrey
fbf73ddabf
memorydb: rename to memdb. 2017-03-04 11:37:21 -08:00
Christopher Jeffrey
df06c91557
memorydb: more validation. 2017-03-04 11:31:46 -08:00
Christopher Jeffrey
d4f5f7cd66
rbt: refactor and move. 2017-03-03 18:11:41 -08:00
Christopher Jeffrey
694bab4ad0
net: less strict bip152 behavior. 2017-03-02 18:17:26 -08:00
Christopher Jeffrey
7b516ddd1e
net: more stall behavior. 2017-03-02 17:47:02 -08:00
Christopher Jeffrey
75877d2f22
upnp: rename resolve to discover. 2017-03-02 15:54:06 -08:00
Christopher Jeffrey
04735a1a37
upnp/ip: move some upnp functions to ip. 2017-03-02 15:50:25 -08:00
Christopher Jeffrey
b8bf8209f0
ip/netaddress: add reachability score. 2017-03-02 15:25:44 -08:00
Christopher Jeffrey
beaf9ee37e
upnp: minor. 2017-03-02 12:20:55 -08:00
Christopher Jeffrey
d09ed2442c
upnp: lint. 2017-03-02 12:18:25 -08:00
Christopher Jeffrey
c0a6952bb2
upnp: minor. 2017-03-02 12:14:04 -08:00
Christopher Jeffrey
36377d5a7f
upnp: better params for addPortMapping. 2017-03-02 12:04:09 -08:00
Christopher Jeffrey
0791bad973
upnp: do not throw when getting network interfaces. 2017-03-02 11:58:26 -08:00
Christopher Jeffrey
525e6f21b7
upnp: better timeouts. 2017-03-02 11:54:04 -08:00
Christopher Jeffrey
da5851ed51
net: add upnp support for port mappings and external ip. 2017-03-02 11:40:30 -08:00
Christopher Jeffrey
28b55339d5
http: improve request options. 2017-03-01 20:30:45 -08:00
Christopher Jeffrey
46a646aebd
mempool: refactor descendants handling. 2017-03-01 17:45:51 -08:00
Christopher Jeffrey
8977e99906
mempool: extra sanity checking for mining. 2017-03-01 15:19:55 -08:00
Christopher Jeffrey
027470e8cb
v1.0.0-beta.8 2017-03-01 15:04:25 -08:00
Christopher Jeffrey
77371fc501
mempool: fix fee estimator inject() method. 2017-03-01 15:03:05 -08:00
Christopher Jeffrey
bade290765
v1.0.0-beta.7 2017-03-01 12:26:55 -08:00
Christopher Jeffrey
53f607e19f
hostlist: minor. 2017-03-01 11:39:14 -08:00
Christopher Jeffrey
da69c5d888
hostlist: persist to file. 2017-03-01 11:29:11 -08:00
Christopher Jeffrey
ac6d7696a8
x509: lint. 2017-03-01 11:03:04 -08:00
Christopher Jeffrey
34cb226000
mempool: enable persistent fees. 2017-03-01 11:01:41 -08:00
Christopher Jeffrey
a11344db0e
mempool: refactor fee estimation. 2017-03-01 09:53:10 -08:00
Christopher Jeffrey
161fe6e2a1
net: increase timeout for getdata. see #144. 2017-03-01 09:25:26 -08:00
Christopher Jeffrey
23ca2cc65f
mempool: minor. 2017-03-01 09:23:21 -08:00
Christopher Jeffrey
02f43304b4
pkg: add pkg.js. 2017-03-01 09:16:41 -08:00
Christopher Jeffrey
dae6917c00
bip70: refactor error handling. 2017-03-01 09:15:40 -08:00
Christopher Jeffrey
89ff0796c7
refactor: do not require json files. 2017-03-01 08:48:53 -08:00
Christopher Jeffrey
38cfdbf8f9
mempool: drop old getCoinView. 2017-03-01 07:26:20 -08:00
Christopher Jeffrey
3988d2766d
mempool: add double spend events. 2017-02-28 23:19:38 -08:00
Christopher Jeffrey
7a1e539700
http: refactor route handlers. 2017-02-28 22:45:47 -08:00
Christopher Jeffrey
bffc225179
chain/mempool/node: expose getSpentView. 2017-02-28 22:43:44 -08:00
Christopher Jeffrey
8cb2c4a1a0
mempool: refactor addr indexing. 2017-02-28 21:49:06 -08:00
Christopher Jeffrey
d92d6487b5
mempool: move memUsage method. 2017-02-28 20:55:50 -08:00
Christopher Jeffrey
653163929e
mempool: correct memusage numbers. 2017-02-28 20:48:51 -08:00
Christopher Jeffrey
92d896c729
mempool: refactor. 2017-02-28 17:21:16 -08:00
Christopher Jeffrey
3abc47c292
fullnode: minor. 2017-02-28 17:15:13 -08:00
Christopher Jeffrey
73210b3ed4
mempool: preliminary work for persistent fees. 2017-02-28 17:09:51 -08:00
Christopher Jeffrey
e7f850b4ba
fees: refactor estimator. 2017-02-28 16:57:45 -08:00
Christopher Jeffrey
42a2e61d7f
mempool: fix getDepends. 2017-02-28 15:22:35 -08:00
Christopher Jeffrey
c365ecb3ea
rpc: improve getrawtransaction. 2017-02-28 15:15:52 -08:00
Christopher Jeffrey
9f09de4867
rpc/http/wallet: more aggressive validation for addrs/keys. 2017-02-28 14:52:54 -08:00
Christopher Jeffrey
aa869e0b6a
fullnode: open http after walletdb. 2017-02-28 14:10:45 -08:00
Christopher Jeffrey
21bc517f8b
node: only add wallet addr if no others are available. 2017-02-28 14:05:46 -08:00
Christopher Jeffrey
e80c98d4e8
mempool: load descFee/descSize correctly. 2017-02-28 13:35:13 -08:00
Christopher Jeffrey
6dcbb93802
mempool: minor. 2017-02-28 13:21:53 -08:00
Christopher Jeffrey
7bfe5cfd08
mempool: return missing txs again. 2017-02-28 13:15:49 -08:00
Christopher Jeffrey
ce45b501da
mempool: lint. 2017-02-28 13:13:45 -08:00
Christopher Jeffrey
29fe6468eb
db: do not use isBrowser for bufferKeys check. see #137. 2017-02-28 13:04:55 -08:00
Christopher Jeffrey
7bd89b35c3
mempool: persist to disk. 2017-02-28 12:59:19 -08:00
Christopher Jeffrey
08936c8970
mempool: fix countDescendants (again). 2017-02-28 10:43:05 -08:00
Christopher Jeffrey
3ac91b9a77
mempoolentry: improve serialization. 2017-02-28 10:41:59 -08:00
Christopher Jeffrey
7ccea6fbb8
mempool: fix countDescendants. 2017-02-28 10:41:21 -08:00
Christopher Jeffrey
60ff33bdb2
block: minor. 2017-02-28 10:13:48 -08:00
Christopher Jeffrey
e9d87dcd98
refactor: lint. 2017-02-28 10:09:17 -08:00
Christopher Jeffrey
a4201e6bd5
peer: better stall detection. 2017-02-28 10:08:17 -08:00
Christopher Jeffrey
56ccfaa980
merkleblock/minerblock: fix hasTX calls. 2017-02-28 09:32:17 -08:00
Christopher Jeffrey
45952a4140
mempool: preliminary work for persistent mempool. 2017-02-28 09:20:23 -08:00
Christopher Jeffrey
914b66b94f
block: do not cache height parsing. 2017-02-28 09:20:23 -08:00
Christopher Jeffrey
a535d7d414
tx: fix witness item check. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
ac70656e71
chain/tx: fixes. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
33bda01d21
tx/mempool: simplify some witness policy. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
7688d80e74
block/chain: refactor block verification and caching. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
47c43ea39a
rpcclient: refactor error handling. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
89160bdfa8
workers: fix ecsign. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
cb5fa84042
rpc: minor fixes. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
c5e4aa0245
rpc: refactor help handling. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
39c1817043
chain: add verifyBlock method. expose on rpc. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
426ab85f15
block: remove commitment hash cache. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
f71f2d954b
chain: optimize reward calculation. 2017-02-28 09:20:22 -08:00
Christopher Jeffrey
2a69b7ab7a
pool: account for header download time before invoking stall behavior. 2017-02-28 09:13:03 -08:00
Christopher Jeffrey
5511526d98
hd: add spanish wordlist. fixes #138. 2017-02-28 05:59:11 -08:00
Christopher Jeffrey
2ee803810e
http: remove unnecessary headers. 2017-02-28 05:35:25 -08:00
Christopher Jeffrey
49bb9ed0fa
http: always parse json for compatability. fixes #146. 2017-02-28 05:30:10 -08:00
Christopher Jeffrey
e31ddaa61a
mining: remove mod size from priority. better free calculation. 2017-02-27 16:58:44 -08:00
Christopher Jeffrey
e577228944
miner: improve rate comparison. 2017-02-27 16:33:45 -08:00
Christopher Jeffrey
c02f19a288
miner: better block timestamp creation. 2017-02-27 09:12:56 -08:00
Christopher Jeffrey
369ef75840
miner: move logs. 2017-02-27 00:29:11 -08:00
Christopher Jeffrey
0120e67203
rpc: more accurate client rules handling (gbt). 2017-02-27 00:16:44 -08:00
Christopher Jeffrey
0a8228b3f4
miner: log block creation. 2017-02-26 23:06:46 -08:00
Christopher Jeffrey
2d9f96d86b
mempool: use virtual size weighted against sigops. 2017-02-26 22:50:25 -08:00
Christopher Jeffrey
769bbd1370
rpc: clean up some rpc calls. 2017-02-26 22:50:07 -08:00
Christopher Jeffrey
a68ade51bc
miner: minor. 2017-02-26 22:12:00 -08:00
Christopher Jeffrey
1dd0e366ac
mempool: fix descendant fees calculation. 2017-02-26 22:05:43 -08:00
Christopher Jeffrey
6d4a2c61cb
miner: fix priorityWeight check. 2017-02-26 21:54:49 -08:00
Christopher Jeffrey
b73b2fba85
heap: minor refactor. 2017-02-26 21:53:05 -08:00
Christopher Jeffrey
e49e877f17
rpc: do not use weight pre-segwit (see 9fc7f0b). 2017-02-26 21:20:24 -08:00
Christopher Jeffrey
70d4de39ce
miner: use a proper priority queue. 2017-02-26 12:53:41 -08:00
Christopher Jeffrey
bb5a7b00d6
http: less spam. 2017-02-26 04:27:00 -08:00
Christopher Jeffrey
ad51bf53f3
rpc: better bitcoind compat. 2017-02-26 04:21:24 -08:00
Christopher Jeffrey
3ac0d3de78
http: fix for ckpool (getblocktemplate). 2017-02-26 04:03:27 -08:00
Christopher Jeffrey
c80c242738
rpc: reverse target endianness. 2017-02-26 03:25:55 -08:00
Christopher Jeffrey
cb7af959ce
miner: compare cumulative descendant fee rate. 2017-02-26 03:09:33 -08:00
Christopher Jeffrey
dcf7e7a9f4
miner: improve policy defaults. switch rate sorting immediately. 2017-02-25 23:12:13 -08:00
Christopher Jeffrey
3ec781ee60
miner: expose max-block-weight config option. 2017-02-25 22:25:34 -08:00
Christopher Jeffrey
386ef622c0
rpc: only add wit-nonce if segwit is active (submitblock). 2017-02-25 18:22:22 -08:00
Christopher Jeffrey
4c4cf9e6a4
peer: timeout inv spamming. 2017-02-24 16:25:29 -08:00
Christopher Jeffrey
fb997d43bb
pool: increase max header chain failures. 2017-02-23 20:56:21 -08:00
Christopher Jeffrey
7104e4c02f
miner: use bigger reserve defaults. 2017-02-22 20:56:47 -08:00
Christopher Jeffrey
f2964e06fb
minerblock: ensure constant coinbase size. 2017-02-22 20:35:34 -08:00
Christopher Jeffrey
09c2357552
networks: increase default fee rates. 2017-02-22 11:38:37 -08:00
Christopher Jeffrey
304f0e7e75
smart coin selection. 2017-02-22 11:35:49 -08:00
Steven Bower
393dd5dae7 HTTP: Fix DELETE requests 2017-02-20 17:36:28 -08:00
Christopher Jeffrey
275eb917aa
chain: shave a few ms of block processing time. 2017-02-13 22:27:23 -08:00
Christopher Jeffrey
1e07d1ba83
chain: improve target and mtp calculation. 2017-02-13 21:59:41 -08:00
Christopher Jeffrey
dcf705d8bc
chain: s/bad-witness-merkle-size/bad-witness-nonce-size/ 2017-02-11 12:54:24 -08:00
Christopher Jeffrey
5d2429a7b1
docs: get rid of global symbols. 2017-02-10 10:09:27 -08:00
Christopher Jeffrey
e8b0a9ef83
pool: fix uncatchable error. 2017-02-08 15:57:13 -08:00
Christopher Jeffrey
7cc62c0a1e
rpc: fix getpeerinfo - relaytxes. 2017-02-08 15:56:31 -08:00
Christopher Jeffrey
c12a0630aa
pool: do not request duplicate txs. 2017-02-08 14:40:55 -08:00
Christopher Jeffrey
e3c0b123a0
docs: build and expose scripterror properly. 2017-02-07 16:09:25 -08:00
Christopher Jeffrey
182b25f9ab
fullnode: document events. 2017-02-07 14:18:39 -08:00
Christopher Jeffrey
b0b7745039
fullnode: broadcast in selfish mode. 2017-02-07 14:15:33 -08:00
Christopher Jeffrey
1ec49be808
config: expose mempool max size. 2017-02-07 14:02:54 -08:00
Christopher Jeffrey
d3f94dbc6a
mempool: force broadcasting on addTX fail. 2017-02-07 13:56:30 -08:00
Christopher Jeffrey
256c449e68
ec: force secp25k1 bindings only. 2017-02-07 13:55:58 -08:00
Christopher Jeffrey
d56e50e166
script: docs for getters. 2017-02-05 18:17:49 -08:00
Christopher Jeffrey
23f7d3a782
script: minor. 2017-02-04 15:09:06 -08:00
Christopher Jeffrey
ef95b69e5e
minor: refactor. move asyncobject. 2017-02-04 14:52:13 -08:00
Christopher Jeffrey
60125003a4
ip: minor. 2017-02-04 01:16:17 -08:00
Christopher Jeffrey
1b5d361415
docs: add types. 2017-02-04 00:42:17 -08:00
Christopher Jeffrey
4e7df6ef87
docs: get jsdoc compiling again. 2017-02-03 22:47:26 -08:00
Christopher Jeffrey
b4a21cad2d
proxysocket: do not stop reads. 2017-02-03 10:25:04 -08:00
Christopher Jeffrey
91f36b3d1c
net: expose more of the tcp interface. 2017-02-03 09:59:02 -08:00
Christopher Jeffrey
f20aae676a
pool: do not reset chain when checkpoints=false. 2017-02-02 17:55:38 -08:00
Christopher Jeffrey
69b442a318
wallet: fix resend. 2017-02-02 16:54:15 -08:00
Christopher Jeffrey
9650d8adae
scrypt: move async version. 2017-02-02 11:45:11 -08:00
Christopher Jeffrey
bec4264fcf
crypto: remove async functions. 2017-02-02 11:34:35 -08:00
Christopher Jeffrey
a443b88f92
chain: cleanup some functions. 2017-02-02 11:28:25 -08:00
Christopher Jeffrey
5b1966a6c3
bip70: comments. 2017-02-01 19:56:22 -08:00
Christopher Jeffrey
91af611866
sha256: minor. 2017-02-01 18:54:10 -08:00
Christopher Jeffrey
c225f67bfc
crypto: remove subtle support. remove DSA support. 2017-02-01 17:46:54 -08:00
Christopher Jeffrey
66dfce4397
chain: avoid getDeployments in spv mode. see #128. 2017-02-01 17:15:57 -08:00
Christopher Jeffrey
87f9d58d47
crypto: fix hash160 for browser. 2017-02-01 17:04:46 -08:00
Christopher Jeffrey
096d348791
crypto: optimized sha256 for browser. 2017-02-01 16:59:40 -08:00
Christopher Jeffrey
db85d6db18
network: remove batchSize. 2017-02-01 11:56:06 -08:00
Christopher Jeffrey
65f7b94c07
hostlist: lint. 2017-01-31 16:28:26 -08:00
Christopher Jeffrey
389adee8f0
mining: change some miner apis. 2017-01-31 16:27:05 -08:00
Christopher Jeffrey
95fab44015
hostlist: allow multiple refs even if full. 2017-01-30 15:47:55 -08:00
Christopher Jeffrey
9cd70fb589
hostlist: improve hash perf. 2017-01-30 15:44:29 -08:00
Christopher Jeffrey
4740a2fff3
wallet: rename noSorting to sort. see #122. 2017-01-29 17:28:12 -08:00
Christopher Jeffrey
80d47b8db4
wallet: more failsafes for sending. 2017-01-29 17:21:16 -08:00
Christopher Jeffrey
3d0254054c
peer: remove useless call. 2017-01-29 16:49:09 -08:00
Christopher Jeffrey
cc6ccfe9d9
peer: only request cmpctblock if we received sendcmpct. 2017-01-29 16:26:36 -08:00
Christopher Jeffrey
fae56d1387
pool: less log spam. 2017-01-29 16:08:59 -08:00
Christopher Jeffrey
4085321145
net: better compact block debug logs. 2017-01-29 13:19:30 -08:00
Christopher Jeffrey
5e1d8c743c
chain: add genesis check. 2017-01-28 19:29:16 -08:00
Christopher Jeffrey
0f8fd1dc77
minor: lint. 2017-01-28 19:09:12 -08:00
Christopher Jeffrey
17742434a5
logger: handle mkdir error. 2017-01-28 19:06:56 -08:00
Christopher Jeffrey
963e812bf9
chain: do not handle genesis block. 2017-01-28 19:06:15 -08:00
Christopher Jeffrey
0ec58ca93d
wallet: minor style change. 2017-01-27 18:11:23 -08:00
Christopher Jeffrey
86fdf33f8a
block: fix isBlock. 2017-01-27 18:10:51 -08:00
Christopher Jeffrey
695509b1b3
peer: fix potential memory leak. 2017-01-27 18:10:51 -08:00
Christopher Jeffrey (JJ)
94ec846fdd Merge pull request #122 from mnaamani/bip69-optional
add option to disable bip69 in Wallet.send
2017-01-27 17:49:35 -08:00
Christopher Jeffrey
394df48408
pool: some cleanup. 2017-01-27 00:11:34 -08:00
Christopher Jeffrey
a61679c4a9
miner: 4 byte nonces. 2017-01-27 00:08:49 -08:00
Christopher Jeffrey
8e6819714b
merkleblock: improve extractTree perf. 2017-01-27 00:08:49 -08:00
Mokhtar Naamani
e651338ff3 pool: graceful disconnect - minor fix 2017-01-27 10:01:35 +02:00
Mokhtar Naamani
06d25a9007 pool: graceful disconnect - simpler approach 2017-01-27 09:56:58 +02:00
Mokhtar Naamani
de36d64d4a pool: graceful disconnect 2017-01-26 18:21:13 +02:00
Christopher Jeffrey
bae2aa33dd
parser: minor. 2017-01-26 03:00:14 -08:00
Christopher Jeffrey
67e6c8d768
http: add hooks. 2017-01-26 03:00:14 -08:00
Christopher Jeffrey
e52130ef29
config: fix path handling. 2017-01-26 03:00:14 -08:00
Christopher Jeffrey
977ef01d5a
txdb: failsafe for unconfirm. 2017-01-26 03:00:14 -08:00
Christopher Jeffrey
0a1c0d1890
config: refactor config parsing. 2017-01-26 03:00:13 -08:00
Christopher Jeffrey
f576ab6e6c
pool: always relay onion addresses. 2017-01-26 03:00:13 -08:00
Christopher Jeffrey
e05fb77d33
socks: more checks for tor resolve. 2017-01-26 03:00:13 -08:00
Christopher Jeffrey (JJ)
2552b3fca3 Merge pull request #123 from mnaamani/fix-pool-broadcast-item
pool: fix BroadcastItem multiple reject methods
2017-01-25 13:35:31 -08:00
Mokhtar Naamani
e1147cdf3d pool: fix BroadcastItem multiple reject methods 2017-01-25 21:20:16 +02:00
Christopher Jeffrey
64114460ad
socks: refactor addr parsing. 2017-01-25 02:31:40 -08:00
Christopher Jeffrey
00dccf0d5d
socks: minor. 2017-01-25 02:01:45 -08:00
Christopher Jeffrey
c6aad6448c
socks: error handling. 2017-01-25 01:20:58 -08:00
Christopher Jeffrey
b8cd9893fb
net: fix socket and dns callbacks. 2017-01-24 18:34:01 -08:00
Christopher Jeffrey
32fd1d6dba
dns: fix tor resolution. 2017-01-24 18:30:47 -08:00
Christopher Jeffrey
5073c1508f
net: tor support for outgoing conns. 2017-01-24 18:25:44 -08:00
Christopher Jeffrey
5288e8a619
socks: refactor errors. 2017-01-24 18:21:41 -08:00
Christopher Jeffrey
3a0b7d07d3
socks: fix no auth and proxying. 2017-01-24 06:03:27 -08:00
Christopher Jeffrey
a87484f2e8
socks: misc fixes. 2017-01-24 05:17:52 -08:00
Christopher Jeffrey
0de1302ca9
socks: fix state handling. 2017-01-24 03:58:18 -08:00
Christopher Jeffrey
6c9dd723cd
net: add socks proxy. 2017-01-24 03:52:08 -08:00
Mokhtar Naamani
38e5a0f615 add option to disable bip69 in Wallet.send 2017-01-24 10:10:25 +02:00
Christopher Jeffrey
b8324e0b09
ip: rename some functions. 2017-01-23 23:08:21 -08:00
Christopher Jeffrey
07c3177227
ip: better tor support. 2017-01-23 22:44:17 -08:00