Commit Graph

290 Commits

Author SHA1 Message Date
Christopher Jeffrey
7eefb773be
refactor: use maps and sets wherever possible. 2017-07-25 05:15:47 -07:00
Christopher Jeffrey
8c212d797f
block: rename some more methods. refactor bip152 ptx vector. 2017-07-25 01:16:25 -07:00
Christopher Jeffrey
5dd18d5fa6
chain: fix unknown versionbits log. 2017-07-23 07:41:19 -07:00
Christopher Jeffrey
3a0c9b60e2
chain: implement bip91 and bip148. 2017-07-23 07:32:18 -07:00
Christopher Jeffrey
ffec8ff2d7
chain: improve version display. fix getLocator. 2017-07-20 17:22:59 -07:00
Christopher Jeffrey
cedc54436a
lowlevelup: automatic dummies. 2017-07-17 14:26:43 -07:00
Christopher Jeffrey
ff856fd6c2
chain: post-verify transactions due to potential of rejected promises. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
4771f2d0a8
chaindb: minor. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
6893d5aa99
chain: minor. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
18c1476de9
chain: refactor getLocks. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
8a1eb9f5e1
chain: minor. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
797016630c
chaindb: minor. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
0ffabd7a9a
chaindb: more cases for genesis block. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
e65f6e26c3
chain: remove isCoinbase calls. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
73e61e864a
chaindb: minor. 2017-07-17 14:26:42 -07:00
Christopher Jeffrey
ca48ab748f
bn: use toBuffer instead of toArrayLike. 2017-07-17 14:26:40 -07:00
Christopher Jeffrey
296e65d0fd
refactor: use es6 template strings everywhere. 2017-07-17 14:26:39 -07:00
Christopher Jeffrey
3af014119a
refactor: switch to template strings for errors. 2017-07-17 14:26:38 -07:00
Christopher Jeffrey
10672784e5
refactor: rename tx functions. more es6 features. 2017-07-17 14:26:38 -07:00
Christopher Jeffrey
8c7279518f
refactor: de-globalize workerpool. 2017-07-17 14:26:38 -07:00
Christopher Jeffrey
c53f4cf89e
refactor: switch to const/let. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
e00472891d
refactor: start using for...of. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
78d62c73b8
refactor: start using multiple return values. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
aa05bb5df7
refactor: use es6 maps for everything. 2017-07-17 14:26:37 -07:00
Christopher Jeffrey
62e7f97359
refactor: module index. 2017-06-27 09:28:18 -07:00
Christopher Jeffrey
d4cc22e1c5
refactor: crypto. 2017-06-27 07:27:53 -07:00
Christopher Jeffrey
8358fa59c6
util: drop all homemade polyfills. 2017-06-27 00:36:13 -07:00
Christopher Jeffrey
d9342cd81c
util: rely on polyfill for nextTick and typed arrays. 2017-06-26 23:31:32 -07:00
Christopher Jeffrey
2ef4d137e6
pkg: switch from jshint to eslint. 2017-06-24 04:45:46 -07:00
Christopher Jeffrey
84eccc29fa
refactor: switch to async/await. see #227. 2017-06-24 02:39:06 -07:00
Christopher Jeffrey
33ffb780b3
refactor: expose int64 and big numbers as modules. 2017-06-22 03:59:49 -07:00
Christopher Jeffrey
9238d29a28
chain: minor. 2017-06-22 02:22:15 -07:00
Christopher Jeffrey
6ca3a3fda6
chain: minor. 2017-06-16 00:18:59 -07:00
Christopher Jeffrey
b8c788c207
chain: getLocator refactor. 2017-06-16 00:13:29 -07:00
Christopher Jeffrey
fb8b9fac2b
chain: fix getProofTime. 2017-06-16 00:07:50 -07:00
Christopher Jeffrey
71f8b25d3c
chain: refactor getLocator. 2017-06-16 00:04:26 -07:00
Christopher Jeffrey
a3c7a49c80
refactor: replace util.equal with Buffer#equals. 2017-06-12 03:00:08 -07:00
Christopher Jeffrey
28cd43045d
refactor: avoid using new Buffer() due to its new perf implications. 2017-05-30 21:11:10 -07:00
Christopher Jeffrey
8763600e53
chaindb: minor. 2017-05-28 13:43:25 -07:00
Christopher Jeffrey
46b34677f1
address/wallet: refactor usage of Address.getHash. 2017-05-25 23:27:37 -07:00
Christopher Jeffrey
7d61cda3aa
chain/mempool: more aggressive asserts. 2017-05-21 18:40:43 -07:00
Christopher Jeffrey
1eaafb1a09
chain: minor refactor. 2017-05-21 09:05:35 -07:00
Christopher Jeffrey
0ceca23cb5
chain/mempool: store peer id and punish invalid orphans. 2017-05-19 17:02:06 -07:00
Christopher Jeffrey
028fee9eee
chain: compact db after pruning. 2017-05-15 03:42:14 -07:00
Christopher Jeffrey
f0cc8eb128
chain: rename some methods. remove unused methods. 2017-05-14 22:11:55 -07:00
Christopher Jeffrey
f0bc6d5925
rpc: implement pruneblockchain. 2017-05-14 15:24:32 -07:00
Christopher Jeffrey
290f6ab563
rpc: implement invalidateblock correctly. 2017-03-14 06:10:37 -07:00
Christopher Jeffrey
5b3ca8ce6f
chain: refactor getDeployments. 2017-03-14 06:10:36 -07:00
Christopher Jeffrey
eb601eece6
node: start using logger contexts. 2017-03-14 06:10:35 -07:00
Christopher Jeffrey
a81733a720
node/config: refactor config and options. 2017-03-14 06:09:29 -07:00
Christopher Jeffrey
eeeff1f795
chain: skip all preliminary verification when using checkpoints. 2017-03-06 18:24:38 -08:00
Christopher Jeffrey
3c4bee11f2
chain: add serial asynchronous "hooks". 2017-03-05 15:06:26 -08:00
Christopher Jeffrey
a0d2cc598c
chaindb: do not use asyncobject. 2017-03-05 14:32:50 -08:00
Christopher Jeffrey
fce0126c13
util: refactor hrtime usage. 2017-03-05 01:23:16 -08:00
Christopher Jeffrey
1a5263ef23
chain: minor. logging. 2017-03-04 16:00:07 -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
bffc225179
chain/mempool/node: expose getSpentView. 2017-02-28 22:43:44 -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
56ccfaa980
merkleblock/minerblock: fix hasTX calls. 2017-02-28 09:32:17 -08:00
Christopher Jeffrey
ac70656e71
chain/tx: fixes. 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
39c1817043
chain: add verifyBlock method. expose on rpc. 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
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
ef95b69e5e
minor: refactor. move asyncobject. 2017-02-04 14:52:13 -08:00
Christopher Jeffrey
4e7df6ef87
docs: get jsdoc compiling again. 2017-02-03 22:47:26 -08:00
Christopher Jeffrey
f20aae676a
pool: do not reset chain when checkpoints=false. 2017-02-02 17:55:38 -08:00
Christopher Jeffrey
a443b88f92
chain: cleanup some functions. 2017-02-02 11:28:25 -08:00
Christopher Jeffrey
66dfce4397
chain: avoid getDeployments in spv mode. see #128. 2017-02-01 17:15:57 -08:00
Christopher Jeffrey
5e1d8c743c
chain: add genesis check. 2017-01-28 19:29:16 -08:00
Christopher Jeffrey
963e812bf9
chain: do not handle genesis block. 2017-01-28 19:06:15 -08:00
Christopher Jeffrey
2d49e38580
chain: coin cache. 2017-01-23 15:18:25 -08:00
Christopher Jeffrey
c6b439f21c
chain/pool: remove witness option. 2017-01-23 14:51:40 -08:00
Christopher Jeffrey
e7413aabb7
chain/pool: disable checkpoints on checkpoint failure. see #121. 2017-01-23 13:25:01 -08:00
Christopher Jeffrey
77032f758d
chain: different checkpoints handling. 2017-01-23 12:41:07 -08:00
Christopher Jeffrey
a52db227e3
network: fix/improve some chain params. 2017-01-23 03:42:50 -08:00
Christopher Jeffrey
cbb45db801
config: rename useCheckpoints. allow implicit noAuth on localhost. 2017-01-23 03:19:19 -08:00
Christopher Jeffrey
2fdbdfc087
network: remove witness field. 2017-01-23 03:03:38 -08:00
Christopher Jeffrey
6e13fe57c0
pool: refactor header sync. 2017-01-21 16:59:20 -08:00
Christopher Jeffrey
39b941516d
chainentry: minor. 2017-01-21 14:40:51 -08:00
Christopher Jeffrey
4692849593
peer: abstract all deps. 2017-01-21 03:43:26 -08:00
Christopher Jeffrey
de0a60340b
chain: add getProofTime. 2017-01-20 22:05:04 -08:00
Christopher Jeffrey
66ec0ae36e
net: better headers first. 2017-01-19 04:35:12 -08:00
Christopher Jeffrey
9c352c5d2b
net: better locks. 2017-01-19 01:18:57 -08:00
Christopher Jeffrey
8f09755533
chaindb: remove useless object. 2017-01-16 17:29:10 -08:00
Christopher Jeffrey
fcc3f52f72
chaindb: cleanup. 2017-01-16 16:14:08 -08:00
Christopher Jeffrey
07103da04f
chainentry: minor. 2017-01-16 01:28:01 -08:00
Christopher Jeffrey
6d1c918793
hostlist: refactor seed handling. 2017-01-15 13:03:57 -08:00
Christopher Jeffrey
199699d73a
node: better option handling. 2017-01-14 19:35:59 -08:00
Christopher Jeffrey
a486bd3a18
refactor: options. 2017-01-14 17:59:54 -08:00
Christopher Jeffrey
07414f5fd3
chain: remove chain.byTime. 2017-01-14 06:44:00 -08:00
Christopher Jeffrey
fd2f158169
net: avoid requesting duplicate blocks. avoid reconnecting to banned peers. 2017-01-14 06:43:49 -08:00
Christopher Jeffrey
166fe0ad6e
chain: remove bestHeight tracking. 2017-01-13 12:50:50 -08:00
Christopher Jeffrey
7c021cf842
utils: rename locker to lock for consistency. 2017-01-11 21:20:26 -08:00
Christopher Jeffrey
76ff5f814f
chainentry: no network pointer. 2017-01-11 19:43:57 -08:00
Christopher Jeffrey
9efece17d1
bloom: more fixes. 2017-01-11 14:28:09 -08:00
Christopher Jeffrey
a6c1e8c339
chain: minor. 2017-01-10 18:01:29 -08:00
Christopher Jeffrey
d338f62078
protocol: constants changes. 2017-01-10 04:57:41 -08:00
Christopher Jeffrey
4c557744a2
refactor: address, amount, uri, errors. 2017-01-09 23:07:02 -08:00
Christopher Jeffrey
f58e748263
network: add minimum chainworks. 2017-01-08 23:10:19 -08:00
Christopher Jeffrey
cd4a0cc964
network: remove segnet3 support. 2017-01-08 22:38:41 -08:00
Christopher Jeffrey
74c177d623
refactor: more fixes. 2017-01-06 10:40:16 -08:00
Christopher Jeffrey
75430cae8b
refactor: more moving. 2017-01-06 10:18:21 -08:00
Christopher Jeffrey
5caf6210b9
refactor: move constants around. 2017-01-06 09:57:55 -08:00
Christopher Jeffrey
d1a4e53896
bloom/net: move bloom constants. net services, move inv types. 2017-01-06 01:57:49 -08:00
Christopher Jeffrey
eb12b0e608
net: misc. 2017-01-05 14:35:28 -08:00
Christopher Jeffrey
3ada25564e
chain: refactor orphan list. 2016-12-24 22:32:45 -08:00
Christopher Jeffrey
6d2659a31c
locker: revert to old drain behavior. 2016-12-19 03:58:34 -08:00
Christopher Jeffrey
3732260350
util: refactor locker. 2016-12-18 21:19:35 -08:00
Christopher Jeffrey
b36484c7aa
mempool: fix potential race conditions with coins. 2016-12-17 15:28:14 -08:00
Christopher Jeffrey
5fb16543f1
chain: expose coins methods. 2016-12-17 14:41:47 -08:00
Christopher Jeffrey
dcfc19408f
node: minor fixes. 2016-12-17 00:18:28 -08:00
Christopher Jeffrey
4353decc5a
mining: remove cheating. rename witness deployment to segwit. 2016-12-14 11:27:39 -08:00
Christopher Jeffrey
33a8e1e511
block/tx: sigops cost/size/weight. 2016-12-13 16:52:31 -08:00
Christopher Jeffrey
3b9e4d6c6e
refactor: use static writers everywhere. 2016-12-11 17:26:42 -08:00
Christopher Jeffrey
59645ac3ec
refactor: remove extra properties from tx and block. 2016-12-11 05:35:31 -08:00
Christopher Jeffrey
c681b75b7b
coins: minor. 2016-12-10 22:06:57 -08:00
Christopher Jeffrey
f3801fa8a7
refactor: move coins. 2016-12-10 22:00:27 -08:00
Christopher Jeffrey
5e23b284a3
coinview: fix parsing. 2016-12-10 21:46:50 -08:00
Christopher Jeffrey
b77aa9240e
coins: refactor and comments. 2016-12-10 20:43:49 -08:00
Christopher Jeffrey
b437b33760
test/bench: lint. 2016-12-10 17:13:45 -08:00
Christopher Jeffrey
1d6eb802e7
chain: minor. 2016-12-10 08:19:35 -08:00
Christopher Jeffrey
bf2e7d1486
test: fix tx tests. 2016-12-10 08:11:24 -08:00
Christopher Jeffrey
c9523d91a5
chain: refactor disconnection. 2016-12-10 06:30:04 -08:00
Christopher Jeffrey
092c1a90df
coins: undo coins fixes. 2016-12-09 17:29:33 -08:00
Christopher Jeffrey
12b3274d33
refactor: pass coin viewpoints for every function requiring inputs. 2016-12-09 07:15:35 -08:00
Christopher Jeffrey
de1f658ede
chaindb: fix getFullBlock. 2016-12-08 23:53:25 -08:00
Christopher Jeffrey
d4c2331a11
mempool/chain: move some methods around. 2016-12-08 15:51:25 -08:00
Christopher Jeffrey
c86311029c
mempool: optimize coin view. 2016-12-08 01:57:26 -08:00
Christopher Jeffrey
c9fbaae0da
chaindb: fix getCoinView. 2016-12-07 18:05:52 -08:00
Christopher Jeffrey
4e9bec4cd3
refactor: lint. 2016-12-07 17:52:53 -08:00
Christopher Jeffrey
1269aab7a5
mempool: use coin viewpoint. 2016-12-07 17:47:31 -08:00
Christopher Jeffrey
8b99b5103b
chain: refactor coinview. 2016-12-07 03:25:40 -08:00
Christopher Jeffrey
d4b8afa747
chain: pass height around. 2016-12-06 17:13:04 -08:00
Christopher Jeffrey
07a34bbfe5
chaindb: compression=true. 2016-12-05 11:36:55 -08:00
Christopher Jeffrey
b4221b7589
chaindb: switch back to buffer coin cache. 2016-12-04 19:12:13 -08:00
Christopher Jeffrey
f45ce12bec
chaindb: minor. 2016-12-04 18:09:33 -08:00
Christopher Jeffrey
72b68532e3
ldb: add db cache-size option. 2016-12-04 13:59:08 -08:00
Christopher Jeffrey
c358b6b822
chain: minor. 2016-12-04 03:16:13 -08:00
Christopher Jeffrey
11506ce246
coinview: minor. 2016-12-04 03:14:49 -08:00
Christopher Jeffrey
30526aaea4
chaindb: coin cache. 2016-12-04 02:59:20 -08:00
Christopher Jeffrey
a95aba92fb
serialization: less polymorphism. 2016-12-04 00:54:50 -08:00
Christopher Jeffrey
dbed720d20
coins: minor. 2016-12-02 01:50:43 -08:00
Christopher Jeffrey
b37b99a86e
chain: refactor input spending. 2016-12-01 23:37:57 -08:00
Christopher Jeffrey
967449b0d5
chaindb: minor. 2016-12-01 13:35:04 -08:00
Christopher Jeffrey
244af663bb
coins: comments. 2016-12-01 04:48:00 -08:00
Christopher Jeffrey
9f11875736
coins: no compressed non-zero bytes. 2016-12-01 04:11:14 -08:00