diff --git a/.eslintrc.json b/.eslintrc.json new file mode 100644 index 00000000..77e73be9 --- /dev/null +++ b/.eslintrc.json @@ -0,0 +1,39 @@ +{ + "extends": "eslint:recommended", + "env": { + "browser": true, + "es6": true, + "node": true + }, + "parserOptions": { + "ecmaVersion": 8 + }, + "rules": { + "indent": ["error", 2, { + "SwitchCase": 1, + "CallExpression": { + "arguments": "off" + }, + "ArrayExpression": "off" + }], + "linebreak-style": ["error", "unix"], + "quotes": ["error", "single"], + "semi": ["error", "always"], + "no-console": 0, + "no-unused-vars": ["error", { + "vars": "all", + "args": "none", + "ignoreRestSiblings": false + }], + "no-func-assign": 0, + "no-cond-assign": 0, + "no-unreachable": 0, + "no-fallthrough": 0, + "no-useless-escape": 0, + "no-unsafe-finally": 0, + "no-extra-semi": 0, + "handle-callback-err": 0, + "no-buffer-constructor": 2, + "no-tabs": 2 + } +} diff --git a/.jshintrc b/.jshintrc deleted file mode 100644 index 0339c34f..00000000 --- a/.jshintrc +++ /dev/null @@ -1,51 +0,0 @@ -{ - "bitwise": false, - "esversion": 6, - "curly": false, - "eqeqeq": true, - "freeze": true, - "latedef": "nofunc", - "maxparams": 7, - "noarg": true, - "shadow": "inner", - "undef": true, - "unused": "vars", - - "boss": true, - "expr": true, - "eqnull": true, - "evil": true, - "loopfunc": true, - "proto": true, - "supernew": true, - - "-W018": true, - "-W064": true, - "-W086": true, - "-W032": true, - "-W021": true, - - "browser": true, - "browserify": true, - "node": true, - "nonstandard": true, - "typed": true, - "worker": false, - - "camelcase": false, - "indent": 2, - "maxlen": 110, - "newcap": false, - "quotmark": "single", - - "laxbreak": true, - "laxcomma": true, - - "noyield": true, - - "predef": [ - "it", - "describe", - "beforeEach" - ] -} diff --git a/bench/walletdb.js b/bench/walletdb.js index cd395a80..4fca7574 100644 --- a/bench/walletdb.js +++ b/bench/walletdb.js @@ -6,7 +6,7 @@ var crypto = require('../lib/crypto/crypto'); var WalletDB = require('../lib/wallet/walletdb'); var MTX = require('../lib/primitives/mtx'); var Outpoint = require('../lib/primitives/outpoint'); -var walletdb, runBench; +var walletdb; function dummy() { var hash = crypto.randomBytes(32).toString('hex'); @@ -20,7 +20,7 @@ walletdb = new WalletDB({ verify: false }); -runBench = co(function* runBench() { +async function runBench() { var i, j, wallet, addrs, jobs, end; var result, tx, mtx, options; @@ -115,6 +115,6 @@ runBench = co(function* runBench() { }; yield wallet.createTX(options); end(1); -}); +} runBench().then(process.exit); diff --git a/lib/blockchain/chaindb.js b/lib/blockchain/chaindb.js index 4a16209d..5ce3143d 100644 --- a/lib/blockchain/chaindb.js +++ b/lib/blockchain/chaindb.js @@ -13,7 +13,6 @@ var BufferReader = require('../utils/reader'); var StaticWriter = require('../utils/staticwriter'); var Amount = require('../btc/amount'); var encoding = require('../utils/encoding'); -var co = require('../utils/co'); var Network = require('../protocol/network'); var CoinView = require('../coins/coinview'); var Coins = require('../coins/coins'); diff --git a/lib/blockchain/chainentry.js b/lib/blockchain/chainentry.js index 0c5fb0f3..f76f092c 100644 --- a/lib/blockchain/chainentry.js +++ b/lib/blockchain/chainentry.js @@ -17,7 +17,6 @@ var BufferReader = require('../utils/reader'); var StaticWriter = require('../utils/staticwriter'); var Headers = require('../primitives/headers'); var InvItem = require('../primitives/invitem'); -var co = require('../utils/co'); /** * Represents an entry in the chain. Unlike diff --git a/lib/coins/coinview.js b/lib/coins/coinview.js index 57d2df3e..4c24deb7 100644 --- a/lib/coins/coinview.js +++ b/lib/coins/coinview.js @@ -7,7 +7,6 @@ 'use strict'; var assert = require('assert'); -var co = require('../utils/co'); var Coins = require('./coins'); var UndoCoins = require('./undocoins'); var BufferReader = require('../utils/reader'); diff --git a/lib/crypto/aes.js b/lib/crypto/aes.js index 56b9b7b2..e48ce9b7 100644 --- a/lib/crypto/aes.js +++ b/lib/crypto/aes.js @@ -415,7 +415,7 @@ AESKey.prototype.decryptBlock = function decryptBlock(input) { kp += 8; if (--r === 0) - break; + break; s0 = TD0[(t0 >>> 24) & 0xff] ^ TD1[(t3 >>> 16) & 0xff] diff --git a/lib/crypto/hmac-drbg.js b/lib/crypto/hmac-drbg.js index e084b7e6..d9949e4d 100644 --- a/lib/crypto/hmac-drbg.js +++ b/lib/crypto/hmac-drbg.js @@ -50,7 +50,6 @@ HmacDRBG.prototype.init = function init(entropy, nonce, pers) { HmacDRBG.prototype.reseed = function reseed(entropy, nonce, pers) { var seed = POOL112; - var i; assert(Buffer.isBuffer(entropy)); assert(Buffer.isBuffer(nonce)); diff --git a/lib/crypto/schnorr.js b/lib/crypto/schnorr.js index ef5dd88b..aeace3c0 100644 --- a/lib/crypto/schnorr.js +++ b/lib/crypto/schnorr.js @@ -6,15 +6,13 @@ 'use strict'; +var assert = require('assert'); var elliptic = require('elliptic'); var Signature = require('elliptic/lib/elliptic/ec/signature'); var BN = require('./bn'); var HmacDRBG = require('./hmac-drbg'); var sha256 = require('./backend').sha256; -var secp256k1 = elliptic.ec('secp256k1'); -var curve = secp256k1.curve; -var curves = elliptic.curves; -var hash = curves.secp256k1.hash; +var curve = elliptic.ec('secp256k1').curve; var POOL64 = Buffer.allocUnsafe(64); /** @@ -51,7 +49,7 @@ schnorr.hash = function _hash(msg, r) { */ schnorr.trySign = function trySign(msg, prv, k, pn) { - var r, pn, h, s; + var r, h, s; if (prv.cmpn(0) === 0) throw new Error('Bad private key.'); diff --git a/lib/hd/private.js b/lib/hd/private.js index 6001ba7b..21158bb6 100644 --- a/lib/hd/private.js +++ b/lib/hd/private.js @@ -13,7 +13,6 @@ var ec = require('../crypto/ec'); var Network = require('../protocol/network'); var StaticWriter = require('../utils/staticwriter'); var BufferReader = require('../utils/reader'); -var StaticWriter = require('../utils/staticwriter'); var base58 = require('../utils/base58'); var encoding = require('../utils/encoding'); var common = require('./common'); diff --git a/lib/http/client.js b/lib/http/client.js index 22fa3d23..767d3371 100644 --- a/lib/http/client.js +++ b/lib/http/client.js @@ -12,7 +12,6 @@ var AsyncObject = require('../utils/asyncobject'); var RPCClient = require('./rpcclient'); var Amount = require('../btc/amount'); var util = require('../utils/util'); -var co = require('../utils/co'); var request = require('./request'); /** diff --git a/lib/http/rpcbase.js b/lib/http/rpcbase.js index bbdf1b07..3a39c043 100644 --- a/lib/http/rpcbase.js +++ b/lib/http/rpcbase.js @@ -9,7 +9,6 @@ var assert = require('assert'); var EventEmitter = require('events').EventEmitter; var util = require('../utils/util'); -var co = require('../utils/co'); var Lock = require('../utils/lock'); var Logger = require('../node/logger'); diff --git a/lib/http/rpcclient.js b/lib/http/rpcclient.js index 8747e7c9..6fcd2544 100644 --- a/lib/http/rpcclient.js +++ b/lib/http/rpcclient.js @@ -9,7 +9,6 @@ var Network = require('../protocol/network'); var request = require('./request'); var util = require('../utils/util'); -var co = require('../utils/co'); /** * Bcoin RPC client. diff --git a/lib/http/server.js b/lib/http/server.js index fb07fbb4..83a24c74 100644 --- a/lib/http/server.js +++ b/lib/http/server.js @@ -10,7 +10,6 @@ var assert = require('assert'); var HTTPBase = require('./base'); var util = require('../utils/util'); -var co = require('../utils/co'); var base58 = require('../utils/base58'); var Amount = require('../btc/amount'); var Bloom = require('../utils/bloom'); diff --git a/lib/http/wallet.js b/lib/http/wallet.js index f154f32a..8011a6e1 100644 --- a/lib/http/wallet.js +++ b/lib/http/wallet.js @@ -11,7 +11,6 @@ var assert = require('assert'); var EventEmitter = require('events').EventEmitter; var Network = require('../protocol/network'); var util = require('../utils/util'); -var co = require('../utils/co'); var Client = require('./client'); /** diff --git a/lib/mempool/fees.js b/lib/mempool/fees.js index 42eff81f..345f764f 100644 --- a/lib/mempool/fees.js +++ b/lib/mempool/fees.js @@ -463,23 +463,19 @@ PolicyEstimator.VERSION = 0; */ PolicyEstimator.prototype.init = function init() { + var minFee = this.minTrackedFee; + var minPri = this.minTrackedPri; var fee = []; var priority = []; - var boundary; + var b; - for (boundary = this.minTrackedFee; - boundary <= MAX_FEERATE; - boundary *= FEE_SPACING) { - fee.push(boundary); - } + for (b = minFee; b <= MAX_FEERATE; b *= FEE_SPACING) + fee.push(b); fee.push(INF_FEERATE); - for (boundary = this.minTrackedPri; - boundary <= MAX_PRIORITY; - boundary *= PRI_SPACING) { - priority.push(boundary); - } + for (b = minPri; b <= MAX_PRIORITY; b *= PRI_SPACING) + priority.push(b); priority.push(INF_PRIORITY); diff --git a/lib/mempool/mempool.js b/lib/mempool/mempool.js index a746a19b..1bf8c242 100644 --- a/lib/mempool/mempool.js +++ b/lib/mempool/mempool.js @@ -11,12 +11,10 @@ var AsyncObject = require('../utils/asyncobject'); var common = require('../blockchain/common'); var policy = require('../protocol/policy'); var util = require('../utils/util'); -var co = require('../utils/co'); var crypto = require('../crypto/crypto'); var errors = require('../protocol/errors'); var Bloom = require('../utils/bloom'); var Address = require('../primitives/address'); -var Coin = require('../primitives/coin'); var Script = require('../script/script'); var Outpoint = require('../primitives/outpoint'); var TX = require('../primitives/tx'); diff --git a/lib/mining/miner.js b/lib/mining/miner.js index 5d725dc0..2b346baf 100644 --- a/lib/mining/miner.js +++ b/lib/mining/miner.js @@ -9,7 +9,6 @@ var assert = require('assert'); var util = require('../utils/util'); -var co = require('../utils/co'); var Heap = require('../utils/heap'); var AsyncObject = require('../utils/asyncobject'); var Amount = require('../btc/amount'); diff --git a/lib/net/pool.js b/lib/net/pool.js index 031472d9..56332b3f 100644 --- a/lib/net/pool.js +++ b/lib/net/pool.js @@ -720,7 +720,7 @@ Pool.prototype.forceSync = function forceSync() { * Send a sync to each peer. */ -Pool.prototype.sync = function* sync(force) { +Pool.prototype.sync = function sync(force) { this.resync(false); }; diff --git a/lib/net/socks.js b/lib/net/socks.js index f4446e19..1bfccc4c 100644 --- a/lib/net/socks.js +++ b/lib/net/socks.js @@ -14,7 +14,6 @@ var assert = require('assert'); var EventEmitter = require('events').EventEmitter; var net = require('net'); var util = require('../utils/util'); -var co = require('../utils/co'); var IP = require('../utils/ip'); var StaticWriter = require('../utils/staticwriter'); var BufferReader = require('../utils/reader'); diff --git a/lib/net/upnp.js b/lib/net/upnp.js index feac9577..3975983e 100644 --- a/lib/net/upnp.js +++ b/lib/net/upnp.js @@ -637,7 +637,7 @@ function parseServices(el) { for (i = 0; i < children.length; i++) { child = children[i]; - services.push(parseService(children[i])); + services.push(parseService(child)); } return services; diff --git a/lib/node/fullnode.js b/lib/node/fullnode.js index 70eb3c1a..648e7647 100644 --- a/lib/node/fullnode.js +++ b/lib/node/fullnode.js @@ -8,7 +8,6 @@ 'use strict'; var util = require('../utils/util'); -var co = require('../utils/co'); var Node = require('./node'); var Chain = require('../blockchain/chain'); var Fees = require('../mempool/fees'); diff --git a/lib/node/logger.js b/lib/node/logger.js index 37471cd0..5d61537b 100644 --- a/lib/node/logger.js +++ b/lib/node/logger.js @@ -352,7 +352,7 @@ Logger.prototype._reopen = async function reopen() { * @returns {Promise} */ -Logger.prototype.retry = function* retry() { +Logger.prototype.retry = function retry() { assert(this.timer == null); this.timer = co.setTimeout(function() { this.timer = null; diff --git a/lib/node/node.js b/lib/node/node.js index 27401759..76fe855d 100644 --- a/lib/node/node.js +++ b/lib/node/node.js @@ -10,7 +10,6 @@ var assert = require('assert'); var AsyncObject = require('../utils/asyncobject'); var util = require('../utils/util'); -var co = require('../utils/co'); var Network = require('../protocol/network'); var Logger = require('./logger'); var workerPool = require('../workers/workerpool').pool; diff --git a/lib/node/nodeclient.js b/lib/node/nodeclient.js index efc8bc58..f00d4d43 100644 --- a/lib/node/nodeclient.js +++ b/lib/node/nodeclient.js @@ -7,7 +7,6 @@ 'use strict'; var util = require('../utils/util'); -var co = require('../utils/co'); var AsyncObject = require('../utils/asyncobject'); /** diff --git a/lib/node/spvnode.js b/lib/node/spvnode.js index b39bafae..0bc0cd24 100644 --- a/lib/node/spvnode.js +++ b/lib/node/spvnode.js @@ -8,7 +8,6 @@ 'use strict'; var util = require('../utils/util'); -var co = require('../utils/co'); var Lock = require('../utils/lock'); var Node = require('./node'); var Chain = require('../blockchain/chain'); diff --git a/lib/primitives/coin.js b/lib/primitives/coin.js index e1efe1ea..543ac18a 100644 --- a/lib/primitives/coin.js +++ b/lib/primitives/coin.js @@ -9,7 +9,6 @@ var assert = require('assert'); var util = require('../utils/util'); -var Network = require('../protocol/network'); var Amount = require('../btc/amount'); var Output = require('./output'); var Script = require('../script/script'); diff --git a/lib/primitives/keyring.js b/lib/primitives/keyring.js index 63c3343c..30ca8e10 100644 --- a/lib/primitives/keyring.js +++ b/lib/primitives/keyring.js @@ -642,7 +642,7 @@ KeyRing.prototype.ownHash = function ownHash(hash) { if (this.script) { if (hash.equals(this.getScriptHash())) return true; - } + } if (this.witness) { if (hash.equals(this.getNestedHash())) diff --git a/lib/primitives/mtx.js b/lib/primitives/mtx.js index ba44e1d2..9bb891a7 100644 --- a/lib/primitives/mtx.js +++ b/lib/primitives/mtx.js @@ -9,7 +9,6 @@ var assert = require('assert'); var util = require('../utils/util'); -var co = require('../utils/co'); var Script = require('../script/script'); var TX = require('./tx'); var Input = require('./input'); diff --git a/lib/primitives/tx.js b/lib/primitives/tx.js index 6993df72..2d0ec4ee 100644 --- a/lib/primitives/tx.js +++ b/lib/primitives/tx.js @@ -10,7 +10,6 @@ var assert = require('assert'); var util = require('../utils/util'); var encoding = require('../utils/encoding'); -var co = require('../utils/co'); var crypto = require('../crypto/crypto'); var ec = require('../crypto/ec'); var Amount = require('../btc/amount'); diff --git a/lib/utils/asyncemitter.js b/lib/utils/asyncemitter.js index 7d25f952..ce63f5eb 100644 --- a/lib/utils/asyncemitter.js +++ b/lib/utils/asyncemitter.js @@ -7,7 +7,6 @@ 'use strict'; var assert = require('assert'); -var co = require('./co'); /** * Represents a promise-resolving event emitter. diff --git a/lib/utils/asyncobject.js b/lib/utils/asyncobject.js index f7c32527..bad401be 100644 --- a/lib/utils/asyncobject.js +++ b/lib/utils/asyncobject.js @@ -9,7 +9,6 @@ var assert = require('assert'); var EventEmitter = require('events').EventEmitter; var util = require('./util'); -var co = require('./co'); var Lock = require('./lock'); /** diff --git a/lib/utils/gcs.js b/lib/utils/gcs.js index 59c78279..97eb4a76 100644 --- a/lib/utils/gcs.js +++ b/lib/utils/gcs.js @@ -443,8 +443,6 @@ function BitReader(data) { } BitReader.prototype.readBit = function readBit() { - var bit; - if (this.pos >= this.stream.length) throw new Error('EOF'); diff --git a/lib/wallet/account.js b/lib/wallet/account.js index ed7b2367..03053143 100644 --- a/lib/wallet/account.js +++ b/lib/wallet/account.js @@ -7,7 +7,6 @@ 'use strict'; var util = require('../utils/util'); -var co = require('../utils/co'); var assert = require('assert'); var BufferReader = require('../utils/reader'); var StaticWriter = require('../utils/staticwriter'); diff --git a/lib/wallet/client.js b/lib/wallet/client.js index aff28dbd..ca0d8290 100644 --- a/lib/wallet/client.js +++ b/lib/wallet/client.js @@ -15,7 +15,6 @@ var Headers = require('../primitives/headers'); var Amount = require('../btc/amount'); var util = require('../utils/util'); var BufferReader = require('../utils/reader'); -var co = require('../utils/co'); var IOClient = require('socket.io-client'); /** diff --git a/lib/wallet/http.js b/lib/wallet/http.js index 323ab12b..ed2042e7 100644 --- a/lib/wallet/http.js +++ b/lib/wallet/http.js @@ -10,7 +10,6 @@ var assert = require('assert'); var HTTPBase = require('../http/base'); var util = require('../utils/util'); -var co = require('../utils/co'); var base58 = require('../utils/base58'); var MTX = require('../primitives/mtx'); var Outpoint = require('../primitives/outpoint'); diff --git a/lib/wallet/masterkey.js b/lib/wallet/masterkey.js index ee051b18..bf7c2d98 100644 --- a/lib/wallet/masterkey.js +++ b/lib/wallet/masterkey.js @@ -9,7 +9,6 @@ var assert = require('assert'); var util = require('../utils/util'); var Lock = require('../utils/lock'); -var co = require('../utils/co'); var crypto = require('../crypto/crypto'); var BufferReader = require('../utils/reader'); var StaticWriter = require('../utils/staticwriter'); diff --git a/lib/wallet/rpc.js b/lib/wallet/rpc.js index 396ec4f7..8d51f280 100644 --- a/lib/wallet/rpc.js +++ b/lib/wallet/rpc.js @@ -9,7 +9,6 @@ var assert = require('assert'); var fs = require('../utils/fs'); var util = require('../utils/util'); -var co = require('../utils/co'); var crypto = require('../crypto/crypto'); var Amount = require('../btc/amount'); var Script = require('../script/script'); @@ -722,8 +721,7 @@ RPC.prototype.importWallet = async function importWallet(args, help) { var rescan = valid.bool(1, false); var keys = []; var i, lines, line, parts; - var secret, time, label, addr; - var data, key; + var secret, data, key; if (help || args.length !== 1) throw new RPCError(errs.MISC_ERROR, 'importwallet "filename" ( rescan )'); @@ -751,10 +749,6 @@ RPC.prototype.importWallet = async function importWallet(args, help) { secret = parseSecret(parts[0], this.network); - time = +parts[1]; - label = parts[2]; - addr = parts[parts.length - 1]; - keys.push(secret); } diff --git a/lib/wallet/txdb.js b/lib/wallet/txdb.js index 75f5ce7e..baa55582 100644 --- a/lib/wallet/txdb.js +++ b/lib/wallet/txdb.js @@ -9,7 +9,6 @@ var util = require('../utils/util'); var LRU = require('../utils/lru'); -var co = require('../utils/co'); var assert = require('assert'); var BufferReader = require('../utils/reader'); var StaticWriter = require('../utils/staticwriter'); @@ -1174,7 +1173,7 @@ TXDB.prototype.erase = async function erase(wtx, block) { var height = block ? block.height : -1; var details = new Details(this, wtx, block); var i, path, account, credits; - var input, output, coin, credit; + var output, coin, credit; if (!tx.isCoinbase()) { // We need to undo every part of the @@ -1183,7 +1182,6 @@ TXDB.prototype.erase = async function erase(wtx, block) { credits = await this.getSpentCredits(tx); for (i = 0; i < tx.inputs.length; i++) { - input = tx.inputs[i]; credit = credits[i]; if (!credit) { @@ -1373,7 +1371,7 @@ TXDB.prototype.disconnect = async function disconnect(wtx, block) { var height = block.height; var details = new Details(this, wtx, block); var i, account, output, coin, credits; - var input, path, credit; + var path, credit; assert(block); @@ -1386,7 +1384,6 @@ TXDB.prototype.disconnect = async function disconnect(wtx, block) { credits = await this.getSpentCredits(tx); for (i = 0; i < tx.inputs.length; i++) { - input = tx.inputs[i]; credit = credits[i]; if (!credit) @@ -2185,7 +2182,7 @@ TXDB.prototype.getAccountCoins = async function getAccountCoins(account) { TXDB.prototype.getSpentCoins = async function getSpentCoins(tx) { var coins = []; - var i, input, credits, credit; + var i, credits, credit; if (tx.isCoinbase()) return coins; @@ -2193,7 +2190,6 @@ TXDB.prototype.getSpentCoins = async function getSpentCoins(tx) { credits = await this.getSpentCredits(tx); for (i = 0; i < tx.inputs.length; i++) { - input = tx.inputs[i]; credit = credits[i]; if (!credit) { diff --git a/lib/wallet/wallet.js b/lib/wallet/wallet.js index 8b69687b..d6c92ec1 100644 --- a/lib/wallet/wallet.js +++ b/lib/wallet/wallet.js @@ -13,7 +13,6 @@ var Network = require('../protocol/network'); var util = require('../utils/util'); var encoding = require('../utils/encoding'); var Lock = require('../utils/lock'); -var co = require('../utils/co'); var crypto = require('../crypto/crypto'); var BufferReader = require('../utils/reader'); var StaticWriter = require('../utils/staticwriter'); diff --git a/lib/wallet/walletdb.js b/lib/wallet/walletdb.js index 78fb1378..67c2204b 100644 --- a/lib/wallet/walletdb.js +++ b/lib/wallet/walletdb.js @@ -10,7 +10,6 @@ var assert = require('assert'); var AsyncObject = require('../utils/asyncobject'); var util = require('../utils/util'); -var co = require('../utils/co'); var Lock = require('../utils/lock'); var LRU = require('../utils/lru'); var encoding = require('../utils/encoding'); diff --git a/lib/wallet/walletkey.js b/lib/wallet/walletkey.js index 19510216..0ad877dc 100644 --- a/lib/wallet/walletkey.js +++ b/lib/wallet/walletkey.js @@ -10,7 +10,6 @@ var util = require('../utils/util'); var Address = require('../primitives/address'); var KeyRing = require('../primitives/keyring'); -var Script = require('../script/script'); var Path = require('./path'); /** diff --git a/package.json b/package.json index c92fed39..8535af31 100644 --- a/package.json +++ b/package.json @@ -41,9 +41,9 @@ "babel-plugin-transform-runtime": "^6.23.0", "babel-plugin-transform-regenerator": "^6.24.1", "browserify": "^14.3.0", + "eslint": "^4.1.0", "hash.js": "^1.0.3", "jsdoc": "^3.4.3", - "jshint": "^2.9.4", "level-js": "^2.2.4", "mocha": "^3.4.1", "uglify-js": "^3.0.5" @@ -62,7 +62,7 @@ "browserify": "browserify --im -o browser/bcoin.js lib/bcoin.js && browserify --im -o browser/bcoin-master.js lib/workers/master.js", "uglify": "uglifyjs -m -o browser/bcoin.min.js browser/bcoin.js && uglifyjs -m -o browser/bcoin-master.min.js browser/bcoin-master.js", "clean": "rm browser/bcoin.js browser/bcoin.min.js browser/bcoin-master.js browser/bcoin-master.min.js", - "lint": "jshint lib/ || exit 0", + "lint": "eslint lib/ || exit 0", "docs": "jsdoc -c jsdoc.json" }, "browser": { diff --git a/test/util/memwallet.js b/test/util/memwallet.js index d91a429a..425855a5 100644 --- a/test/util/memwallet.js +++ b/test/util/memwallet.js @@ -390,11 +390,11 @@ MemWallet.prototype.sign = function sign(mtx) { mtx.sign(keys); }; -MemWallet.prototype.create = co(function* create(options) { +MemWallet.prototype.create = async function create(options) { var mtx = new MTX(options); var tx; - yield this.fund(mtx, options); + await this.fund(mtx, options); assert(mtx.getFee() <= MTX.Selector.MAX_FEE, 'TX exceeds MAX_FEE.'); @@ -409,13 +409,13 @@ MemWallet.prototype.create = co(function* create(options) { throw new Error('Cannot sign tx.'); return mtx; -}); +}; -MemWallet.prototype.send = co(function* send(options) { - var mtx = yield this.create(options); +MemWallet.prototype.send = async function send(options) { + var mtx = await this.create(options); this.addTX(mtx.toTX()); return mtx; -}); +}; function Path(hash, branch, index) { this.hash = hash; diff --git a/test/util/node-context.js b/test/util/node-context.js index 80ea1ccf..be4d6923 100644 --- a/test/util/node-context.js +++ b/test/util/node-context.js @@ -81,23 +81,23 @@ NodeContext.prototype.close = function close() { return Promise.all(jobs); }; -NodeContext.prototype.connect = co(function* connect() { +NodeContext.prototype.connect = async function connect() { var i, node; for (i = 0; i < this.nodes.length; i++) { node = this.nodes[i]; - yield node.connect(); - yield co.timeout(1000); + await node.connect(); + await co.timeout(1000); } -}); +}; -NodeContext.prototype.disconnect = co(function* disconnect() { +NodeContext.prototype.disconnect = async function disconnect() { var i, node; for (i = this.nodes.length - 1; i >= 0; i--) { node = this.nodes[i]; - yield node.disconnect(); - yield co.timeout(1000); + await node.disconnect(); + await co.timeout(1000); } }); @@ -123,17 +123,17 @@ NodeContext.prototype.stopSync = function stopSync() { } }; -NodeContext.prototype.generate = co(function* generate(index, blocks) { +NodeContext.prototype.generate = async function generate(index, blocks) { var node = this.nodes[index]; var i, block; assert(node); for (i = 0; i < blocks; i++) { - block = yield node.miner.mineBlock(); - yield node.chain.add(block); + block = await node.miner.mineBlock(); + await node.chain.add(block); } -}); +}; NodeContext.prototype.height = function height(index) { var node = this.nodes[index]; @@ -143,8 +143,8 @@ NodeContext.prototype.height = function height(index) { return node.chain.height; }; -NodeContext.prototype.sync = co(function* sync() { - yield co.timeout(3000); -}); +NodeContext.prototype.sync = async function sync() { + await co.timeout(3000); +}; module.exports = NodeContext;