Commit Graph

300 Commits

Author SHA1 Message Date
Christopher Jeffrey
bf5ea72863
webpack: fix babelification. upgrade to webpack3. 2017-06-26 17:42:18 -07:00
Christopher Jeffrey
722118df6c
external/gcs: docs. 2017-06-26 13:36:01 -07:00
Christopher Jeffrey
e02d645c07
util: optimize isUInt32 and isInt32. 2017-06-26 12:44:32 -07:00
Christopher Jeffrey
f1f112b6c6
bech32: minor. 2017-06-26 03:48:07 -07:00
Christopher Jeffrey
518484cac0
util: remove util.nextTick. 2017-06-26 03:43:09 -07:00
Christopher Jeffrey
03303d670d
nexttick-browser: minor. 2017-06-26 03:38:08 -07:00
Christopher Jeffrey
6875fc99c6
nexttick: minor. 2017-06-26 03:37:11 -07:00
Christopher Jeffrey
edb5bb73af
utils: refactor nexttick module. 2017-06-26 03:35:21 -07:00
Christopher Jeffrey
d3b24da2e1
lint: require strict mode. 2017-06-24 05:11:54 -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
3db140e119
util: improve isSafeAddition. 2017-06-17 18:39:47 -07:00
Christopher Jeffrey
be0e7e02d2
util: add isSafeAddition. 2017-06-17 18:19:12 -07:00
Christopher Jeffrey
5bf68a765f
gcs: refactor. 2017-06-17 17:41:24 -07:00
Christopher Jeffrey
9058e7d78a
gcs: rename fromData. 2017-06-16 16:08:15 -07:00
Christopher Jeffrey
3324d18f5f
gcs: replace multiplication with shifts. 2017-06-16 15:11:52 -07:00
Christopher Jeffrey
b994c278f2
utils: preliminary GCS filter support. 2017-06-16 14:35:50 -07:00
Christopher Jeffrey
182784c8e0
utils: remove usage of isBrowser. some refactoring. 2017-06-15 22:28:06 -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
0ceca23cb5
chain/mempool: store peer id and punish invalid orphans. 2017-05-19 17:02:06 -07:00
Christopher Jeffrey
d64bffdd17
bech32: sanity checks. 2017-05-13 16:23:32 -07:00
Christopher Jeffrey
c1dbac3a4a
bech32: optimize bits conversion. 2017-05-13 15:51:51 -07:00
Christopher Jeffrey
a9ea4e5531
bech32: refactor. 2017-05-13 15:13:42 -07:00
Christopher Jeffrey
83060ee964
bech32: rewrite and improve perf. 2017-05-13 13:54:11 -07:00
Christopher Jeffrey
af0ab46f21
config/validator: add some validation methods. 2017-05-13 02:39:03 -07:00
Christopher Jeffrey (JJ)
3fda5bedab Merge pull request #198 from kleetus/compat/bool-validation
RPC method compatibility with bitcoin core.
2017-05-12 13:33:36 -07:00
Sam Lanning
3e06a244dd utils: Add clarification to util.isFloat() jsdoc 2017-05-11 14:38:36 -07:00
Chris Kleeschulte
dd49ee0761
RPC method compatibility with bitcoin core.
- RPC method param semantics, unfortunately, aren't consistent in bitcoin core, therefore bcoin can't be used as a drop in replacement if bcoin "fixes the glitch".
- To avoid breaking bcoin's current api, validation of bool includes integers 0 and 1 as false and true, respectively.
- The effect of this is to allow getRawTransaction to work with older client code.
2017-04-21 13:14:33 -04:00
Christopher Jeffrey
6acef06cbc
address: implement bech32 addresses. 2017-04-12 23:13:29 -07:00
Christopher Jeffrey
b2649a6cd1
encoding: fix asserts. 2017-03-15 07:21:04 -07:00
Christopher Jeffrey
1458366441
reader: better errors. 2017-03-15 06:49:46 -07:00
Christopher Jeffrey
3ae417795f
rpc: better error codes. 2017-03-15 06:13:27 -07:00
Christopher Jeffrey
74b21b78c5
config/validator: fix lists. 2017-03-14 06:16:57 -07:00
Christopher Jeffrey
68bba8621e
rpc/mempool: implement prioritisetransaction. 2017-03-14 06:10:37 -07:00
Christopher Jeffrey
9a7b4eb6a0
validator: minor. 2017-03-14 06:10:36 -07:00
Christopher Jeffrey
023591978a
rpc: fix wit commitment for getblocktemplate. 2017-03-14 06:10:36 -07:00
Christopher Jeffrey
a266391f1b
logger: truncate log files. 2017-03-14 06:10:36 -07:00
Christopher Jeffrey
1a8a9afade
config/wallet: refactor config handling. add wallet server. 2017-03-14 06:10:35 -07:00
Christopher Jeffrey
945fa381c5
refactor: mining. 2017-03-14 06:10:34 -07:00
Christopher Jeffrey
50d47dd5a6
rpc: method refactor. getwork refactor. 2017-03-14 06:10:34 -07:00
Christopher Jeffrey
78a4f379f5
rpc: add u32 validation. rename node rpc methods. 2017-03-14 06:10:34 -07:00
Christopher Jeffrey
59e9ef277a
http: make rpc more hookable. 2017-03-14 06:10:34 -07:00
Christopher Jeffrey
a47316c264
http: refactor node websocket api. 2017-03-14 06:10:34 -07:00
Christopher Jeffrey
4c7a935484
http: better channel management. 2017-03-14 06:10:34 -07:00
Christopher Jeffrey
5cbbdbfb2f
refactor: config, plugins, and walletdb. 2017-03-14 06:10:34 -07:00
Christopher Jeffrey
eedc563903
utils: add fs. 2017-03-14 06:09:29 -07:00
Christopher Jeffrey
a81733a720
node/config: refactor config and options. 2017-03-14 06:09:29 -07:00
Christopher Jeffrey
cdbad54a8c
net: improvements. see comments.
- Improved local address handling.
- Enabled upnp discovery.
- Added retry for dns seeds.
- Improved hostlist in general.
2017-03-07 17:10:47 -08:00
Christopher Jeffrey
664cddac42
asyncobject: fire hooks before events. 2017-03-05 15:23:13 -08:00
Christopher Jeffrey
3c4bee11f2
chain: add serial asynchronous "hooks". 2017-03-05 15:06:26 -08:00
Christopher Jeffrey
4d5eaaa64a
asyncemitter: add sync emission. 2017-03-05 15:06:07 -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
d4f5f7cd66
rbt: refactor and move. 2017-03-03 18:11:41 -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
b73b2fba85
heap: minor refactor. 2017-02-26 21:53:05 -08:00
Christopher Jeffrey
70d4de39ce
miner: use a proper priority queue. 2017-02-26 12:53:41 -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
4e7df6ef87
docs: get jsdoc compiling again. 2017-02-03 22:47:26 -08:00
Christopher Jeffrey
5073c1508f
net: tor support for outgoing conns. 2017-01-24 18:25:44 -08: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
Christopher Jeffrey
e6dd78abe1
minor: lint. 2017-01-23 19:43:19 -08:00
Christopher Jeffrey
016d0da096
ip/netaddress: better ip parsing. 2017-01-23 19:36:19 -08:00
Christopher Jeffrey
4692849593
peer: abstract all deps. 2017-01-21 03:43:26 -08:00
Christopher Jeffrey
4b937de8a6
lock: remove nonsense from mutex. 2017-01-20 12:01:54 -08:00
Christopher Jeffrey
4cba97a0a8
wallet/net: ensure low FPR of bloom filters. see #118. 2017-01-18 20:53:01 -08:00
Christopher Jeffrey
ca3dea3470
writer: better failsafes. optimize. 2017-01-16 17:25:42 -08:00
Christopher Jeffrey
bcde9d59a7
ip: handle ipv4-mapped ipv6 addr missing sections properly. 2017-01-16 14:42:36 -08:00
Christopher Jeffrey
a486bd3a18
refactor: options. 2017-01-14 17:59:54 -08:00
Christopher Jeffrey
f3a393668e
map: remove __proto__ check. 2017-01-12 12:40:50 -08:00
Christopher Jeffrey
fed7d0de54
http: remove use of callbacks. 2017-01-12 02:57:24 -08:00
Christopher Jeffrey
085866d1ac
lock: fix closure calls. 2017-01-11 21:30:08 -08:00
Christopher Jeffrey
9de61172a4
refactor: use Object.create(null) for all user input keys. 2017-01-11 21:27:55 -08:00
Christopher Jeffrey
7c021cf842
utils: rename locker to lock for consistency. 2017-01-11 21:20:26 -08:00
Christopher Jeffrey
428e2a1301
uri: remove bip20 parsing. 2017-01-11 18:19:28 -08:00
Christopher Jeffrey
40ff06f11f
bloom: ensure min values. 2017-01-11 15:38:24 -08:00
Christopher Jeffrey
4da1e0b4e0
bloom: do not allow passed in buffer. 2017-01-11 14:56:46 -08:00
Christopher Jeffrey
9efece17d1
bloom: more fixes. 2017-01-11 14:28:09 -08:00
Christopher Jeffrey
65ab296d2e
bloom: cleanup instantiation. 2017-01-11 12:10:04 -08:00
Christopher Jeffrey
4c557744a2
refactor: address, amount, uri, errors. 2017-01-09 23:07:02 -08:00
Christopher Jeffrey
84fce9aad4
minor: some comments. 2017-01-09 15:20:56 -08:00
Christopher Jeffrey
fa8ec48bc5
co/utils: remove some functions and refactor. 2017-01-08 01:35:05 -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
80a1b95529
utils: map changes. 2017-01-05 14:35:29 -08:00
Christopher Jeffrey
94d4e80373
co: stop using co.wrap. 2017-01-05 14:35:29 -08:00
Christopher Jeffrey
5dc0202d56
utils: add map. 2017-01-05 14:35:28 -08:00
Christopher Jeffrey
eb12b0e608
net: misc. 2017-01-05 14:35:28 -08:00
Mokhtar Naamani
f5a00c6e6b bloom: fix minimum value of n 2017-01-03 17:37:15 +02:00
Christopher Jeffrey
933d80bb37
util: fix mkdirp error on windows. 2016-12-30 00:13:19 -08:00
Christopher Jeffrey
b5ff10e74f
tx: minor. 2016-12-30 00:05:50 -08:00
Christopher Jeffrey
74dbff2377
net: add addrman serialization. 2016-12-27 14:29:46 -08:00
Christopher Jeffrey
d26204479a
ip: fix ipv4 map check. 2016-12-27 12:32:39 -08:00
Christopher Jeffrey
583e479a80
locker: fix destroy handling. 2016-12-21 14:49:18 -08:00
Christopher Jeffrey
24e6ed7a26
net: rewrite hostlist. bitcoind-style management. 2016-12-21 13:18:03 -08:00
Christopher Jeffrey
25101f1784
net: refactor host and peer list. 2016-12-20 15:45:12 -08:00
Christopher Jeffrey
10e9ab9322
ip: more parsing safety. 2016-12-19 06:31:48 -08:00
Christopher Jeffrey
37128240b3
ip: improve parsing. 2016-12-19 06:13:42 -08:00
Christopher Jeffrey
546fccfca8
ip: speed up ipv6 parsing. 2016-12-19 04:08:35 -08:00
Christopher Jeffrey
6d2659a31c
locker: revert to old drain behavior. 2016-12-19 03:58:34 -08:00
Christopher Jeffrey
8ac673d36e
ip: less strict parsing. 2016-12-19 03:23:47 -08:00
Christopher Jeffrey
b51554d765
utils: rewrite ip module. 2016-12-19 03:10:54 -08:00
Christopher Jeffrey
1836d8b314
ip: fix parseHost for ipv6. 2016-12-19 00:43:42 -08:00
Christopher Jeffrey
3732260350
util: refactor locker. 2016-12-18 21:19:35 -08:00
Christopher Jeffrey
7606667ea5
list: comments. 2016-12-17 02:05:02 -08:00
Christopher Jeffrey
5683d708dd
browser: add dns resolution. 2016-12-16 18:05:04 -08:00
Christopher Jeffrey
4269d16fee
refactor: lint. 2016-12-16 14:49:35 -08:00
Christopher Jeffrey
761b6d6636
net: refactor host management. 2016-12-16 13:50:45 -08:00
Christopher Jeffrey
69a9b5873f
net: use linked lists. 2016-12-16 03:18:08 -08:00
Christopher Jeffrey
ee3745616e
miner: refactor extranonce. 2016-12-14 17:15:27 -08:00
Christopher Jeffrey
14c9a37cd9
packets: more serialization nonsense. 2016-12-13 02:58:49 -08:00
Christopher Jeffrey
8108ff3eb5
util: minor changes to static writer. 2016-12-12 05:38:43 -08:00
Christopher Jeffrey
dfefc7182f
serialization: more sizes. 2016-12-11 19:16:02 -08:00
Christopher Jeffrey
3b9e4d6c6e
refactor: use static writers everywhere. 2016-12-11 17:26:42 -08:00
Christopher Jeffrey
f7c9a24802
tx/coins: start using static writers more. 2016-12-11 13:44:20 -08:00
Christopher Jeffrey
1296bb2302
serialization: add size calculation and static writer. 2016-12-11 12:19:18 -08:00
Christopher Jeffrey
e754621dd4
script: toCode/fromCode. 2016-12-10 21:31:40 -08:00
Christopher Jeffrey
1e18ca772a
encoding: fix varint bns. 2016-12-08 01:17:53 -08:00
Christopher Jeffrey
72b68532e3
ldb: add db cache-size option. 2016-12-04 13:59:08 -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
ba88ffab01
encoding: fix typo for BN. 2016-12-02 21:29:47 -08:00
Christopher Jeffrey
f2a9eb6538
workers: refactor logging. 2016-12-02 18:34:29 -08:00
Christopher Jeffrey
89f478bba1
encoding: no casting. 2016-12-02 06:36:12 -08:00
Christopher Jeffrey
c190dd2aad
util: refactor encoding. 2016-12-02 04:34:38 -08:00
Christopher Jeffrey
63c42bf390
chain: new coins compression. 2016-11-29 20:36:23 -08:00
Christopher Jeffrey
d1e37582d1
block/crypto: refactor merkle trees. 2016-11-28 15:59:30 -08:00
Christopher Jeffrey
cb59675b06
refactor: rename buffer reader/writer vars. 2016-11-26 10:56:50 -08:00
Christopher Jeffrey
c033f5d465
coins: optimize. 2016-11-26 06:09:27 -08:00
Christopher Jeffrey
229be344fc
chaindb: persistent versionbits state caches. 2016-11-22 23:59:02 -08:00
Christopher Jeffrey
7f5e0cb493
writer: improve perf. 2016-11-21 20:54:30 -08:00
Christopher Jeffrey
f376289684
crypto: implement subtle api for browser. 2016-11-21 17:50:05 -08:00
Christopher Jeffrey
1827b945dd
walletdb: new client api. 2016-11-19 18:26:27 -08:00
Christopher Jeffrey
b754973511
utils/btc: rename. 2016-11-19 10:45:31 -08:00
Christopher Jeffrey
ae093d2242
amount/utils: drop utils.btc and utils.satoshi. 2016-11-19 09:59:47 -08:00
Christopher Jeffrey
9e9b657eab
utils: add amount object. 2016-11-19 08:44:24 -08:00
Christopher Jeffrey
a1ec1bfff1
modules: refactor indexes. 2016-11-19 06:36:57 -08:00
Christopher Jeffrey
0631148705
modules: more refactoring. 2016-11-19 05:29:29 -08:00
Christopher Jeffrey
729aea3b41
utils: mark circular. 2016-11-19 02:47:44 -08:00
Christopher Jeffrey
c6eabdb121
utils: minor. 2016-11-18 23:41:58 -08:00
Christopher Jeffrey
baffd161b8
modules: more browser compat. 2016-11-18 23:33:05 -08:00
Christopher Jeffrey
354cf00158
modules: fix browser compilation. 2016-11-18 23:17:29 -08:00
Christopher Jeffrey
67a00bfe50
modules: remove all conditional requires. see #105. 2016-11-18 23:05:04 -08:00
Christopher Jeffrey
215a3ad6fc
base58: optimize. 2016-11-11 20:32:41 -08:00
Christopher Jeffrey
06b35d4ab2
utils: rewrite async object. 2016-11-10 13:33:40 -08:00