Skip to content

Commit

Permalink
fix all lint errors (#19)
Browse files Browse the repository at this point in the history
* add js standard as linter

* partially fix top level js files in linter

* patially fix second level js files in linter

* partially fix third level js files in linter

* partially fix top level test files in linter

* partially fix second level test files in linter

* partially fix third level test files in linter

* fix a bunch of test linter errors with some globals

* fix a bunch of buffer linter errors

* fix more buffer linter errors

* more buffer fixes

* more automatic linter fixes - mostly remove semicolons

* lint error

* lint errors top level js

* lint

* !== and ===

* lint

* lint

* lint

* lint

* lint

* lint

* lint

* lint

* lint

* lint
  • Loading branch information
ryanxcharles committed Jan 26, 2019
1 parent eb493c7 commit 8c63608
Show file tree
Hide file tree
Showing 102 changed files with 15,643 additions and 15,413 deletions.
97 changes: 48 additions & 49 deletions benchmark/script.js
@@ -1,85 +1,84 @@
'use strict';
'use strict'

var benchmark = require('benchmark');
var bitcore = require('..');
var async = require('async');
var blockData = require('./block-357238.json');
var benchmark = require('benchmark')
var bitcore = require('..')
var async = require('async')
var blockData = require('./block-357238.json')

var maxTime = 30;
var maxTime = 30

console.log('Benchmarking Script');
console.log('---------------------------------------');
console.log('Benchmarking Script')
console.log('---------------------------------------')

async.series([
function(next) {

var c = 0;
var scripts = [];
var block = bitcore.Block.fromString(blockData);
function (next) {
var c = 0
var scripts = []
var block = bitcore.Block.fromString(blockData)
for (var i = 0; i < block.transactions.length; i++) {
var tx = block.transactions[i];
var tx = block.transactions[i]
for (var j = 0; j < tx.inputs.length; j++) {
var input = tx.inputs[j];
var input = tx.inputs[j]
if (input.script) {
scripts.push(input.script);
scripts.push(input.script)
}
}
for (var k = 0; k < tx.outputs.length; k++) {
var output = tx.outputs[k];
var output = tx.outputs[k]
if (output.script) {
scripts.push(output.script);
scripts.push(output.script)
}
}
}

function isPublicKeyOut() {
function isPublicKeyOut () {
if (c >= scripts.length) {
c = 0;
c = 0
}
scripts[c].isPublicKeyOut();
c++;
scripts[c].isPublicKeyOut()
c++
}

function isPublicKeyHashIn() {
function isPublicKeyHashIn () {
if (c >= scripts.length) {
c = 0;
c = 0
}
scripts[c].isPublicKeyHashIn();
c++;
scripts[c].isPublicKeyHashIn()
c++
}

function toAddress() {
function toAddress () {
if (c >= scripts.length) {
c = 0;
c = 0
}
scripts[c].toAddress();
c++;
scripts[c].toAddress()
c++
}

function getAddressInfo() {
function getAddressInfo () {
if (c >= scripts.length) {
c = 0;
c = 0
}
scripts[c].getAddressInfo();
c++;
scripts[c].getAddressInfo()
c++
}

var suite = new benchmark.Suite();
suite.add('isPublicKeyHashIn', isPublicKeyHashIn, {maxTime: maxTime});
suite.add('isPublicKeyOut', isPublicKeyOut, {maxTime: maxTime});
suite.add('toAddress', toAddress, {maxTime: maxTime});
suite.add('getAddressInfo', getAddressInfo, {maxTime: maxTime});
var suite = new benchmark.Suite()
suite.add('isPublicKeyHashIn', isPublicKeyHashIn, {maxTime: maxTime})
suite.add('isPublicKeyOut', isPublicKeyOut, {maxTime: maxTime})
suite.add('toAddress', toAddress, {maxTime: maxTime})
suite.add('getAddressInfo', getAddressInfo, {maxTime: maxTime})
suite
.on('cycle', function(event) {
console.log(String(event.target));
.on('cycle', function (event) {
console.log(String(event.target))
})
.on('complete', function() {
console.log('Done');
console.log('----------------------------------------------------------------------');
next();
.on('complete', function () {
console.log('Done')
console.log('----------------------------------------------------------------------')
next()
})
.run();
.run()
}
], function(err) {
console.log('Finished');
});
], function (err) {
console.log('Finished', err)
})
156 changes: 73 additions & 83 deletions benchmark/serialization.js
@@ -1,122 +1,112 @@
'use strict';
'use strict'

var benchmark = require('benchmark');
var bitcore = require('..');
var bitcoinjs = require('bitcoinjs-lib');
var bcoin = require('bcoin');
var async = require('async');
var fullnode = require('fullnode');
var blockData = require('./block-357238.json');
var benchmark = require('benchmark')
var bitcore = require('..')
var bitcoinjs = require('bitcoinjs-lib')
var bcoin = require('bcoin')
var async = require('async')
var fullnode = require('fullnode')
var blockData = require('./block-357238.json')

var maxTime = 20;
var maxTime = 20

console.log('Benchmarking Block/Transaction Serialization');
console.log('---------------------------------------');
console.log('Benchmarking Block/Transaction Serialization')
console.log('---------------------------------------')

async.series([
function(next) {

var buffers = [];
var hashBuffers = [];
console.log('Generating Random Test Data...');
function (next) {
var buffers = []
var hashBuffers = []
console.log('Generating Random Test Data...')
for (var i = 0; i < 100; i++) {

// uint64le
var br = new bitcore.encoding.BufferWriter();
var num = Math.round(Math.random() * 10000000000000);
br.writeUInt64LEBN(new bitcore.crypto.BN(num));
buffers.push(br.toBuffer());
var br = new bitcore.encoding.BufferWriter()
var num = Math.round(Math.random() * 10000000000000)
br.writeUInt64LEBN(new bitcore.crypto.BN(num))
buffers.push(br.toBuffer())

// hashes
var data = bitcore.crypto.Hash.sha256sha256(new Buffer(32));
hashBuffers.push(data);
var data = bitcore.crypto.Hash.sha256sha256(Buffer.alloc(32))
hashBuffers.push(data)
}

var c = 0;
var bn;
var c = 0

function readUInt64LEBN() {
function readUInt64LEBN () {
if (c >= buffers.length) {
c = 0;
c = 0
}
var buf = buffers[c];
var br = new bitcore.encoding.BufferReader(buf);
bn = br.readUInt64LEBN();
c++;
var buf = buffers[c]
var br = new bitcore.encoding.BufferReader(buf)
br.readUInt64LEBN()
c++
}

var reversed;

function readReverse() {
function readReverse () {
if (c >= hashBuffers.length) {
c = 0;
c = 0
}
var buf = hashBuffers[c];
var br = new bitcore.encoding.BufferReader(buf);
reversed = br.readReverse();
c++;
var buf = hashBuffers[c]
var br = new bitcore.encoding.BufferReader(buf)
br.readReverse()
c++
}

console.log('Starting benchmark...');
console.log('Starting benchmark...')

var suite = new benchmark.Suite();
suite.add('bufferReader.readUInt64LEBN()', readUInt64LEBN, {maxTime: maxTime});
suite.add('bufferReader.readReverse()', readReverse, {maxTime: maxTime});
var suite = new benchmark.Suite()
suite.add('bufferReader.readUInt64LEBN()', readUInt64LEBN, {maxTime: maxTime})
suite.add('bufferReader.readReverse()', readReverse, {maxTime: maxTime})
suite
.on('cycle', function(event) {
console.log(String(event.target));
.on('cycle', function (event) {
console.log(String(event.target))
})
.on('complete', function() {
console.log('Done');
console.log('----------------------------------------------------------------------');
next();
.on('complete', function () {
console.log('Done')
console.log('----------------------------------------------------------------------')
next()
})
.run();
.run()
},
function(next) {

var block1;
var block2;
var block3;

function bitcoreTest() {
block1 = bitcore.Block.fromString(blockData);
function (next) {
function bitcoreTest () {
bitcore.Block.fromString(blockData)
}

function bitcoinJSTest() {
block2 = bitcoinjs.Block.fromHex(blockData);
function bitcoinJSTest () {
bitcoinjs.Block.fromHex(blockData)
}

var parser = new bcoin.protocol.parser();
var parser = new bcoin.protocol.parser() //eslint-disable-line

function bcoinTest() {
var raw = bcoin.utils.toArray(blockData, 'hex');
var data = parser.parseBlock(raw);
block3 = new bcoin.block(data, 'block');
function bcoinTest () {
var raw = bcoin.utils.toArray(blockData, 'hex')
var data = parser.parseBlock(raw)
new bcoin.block(data, 'block') //eslint-disable-line
}

var blockDataMessage = '0000000000000000' + blockData; // add mock leading magic and size
var blockDataMessage = '0000000000000000' + blockData // add mock leading magic and size

function fullnodeTest() {
fullnode.Block().fromHex(blockDataMessage);
function fullnodeTest () {
fullnode.Block().fromHex(blockDataMessage)
}

var suite = new benchmark.Suite();
suite.add('bitcore', bitcoreTest, {maxTime: maxTime});
suite.add('bitcoinjs', bitcoinJSTest, {maxTime: maxTime});
suite.add('bcoin', bcoinTest, {maxTime: maxTime});
suite.add('fullnode', fullnodeTest, {maxTime: maxTime});
var suite = new benchmark.Suite()
suite.add('bitcore', bitcoreTest, {maxTime: maxTime})
suite.add('bitcoinjs', bitcoinJSTest, {maxTime: maxTime})
suite.add('bcoin', bcoinTest, {maxTime: maxTime})
suite.add('fullnode', fullnodeTest, {maxTime: maxTime})
suite
.on('cycle', function(event) {
console.log(String(event.target));
.on('cycle', function (event) {
console.log(String(event.target))
})
.on('complete', function() {
console.log('Fastest is ' + this.filter('fastest').pluck('name'));
console.log('----------------------------------------------------------------------');
next();
.on('complete', function () {
console.log('Fastest is ' + this.filter('fastest').pluck('name'))
console.log('----------------------------------------------------------------------')
next()
})
.run();
.run()
}
], function(err) {
console.log('Finished');
});
], function (err) { //eslint-disable-line
console.log('Finished')
})
4 changes: 2 additions & 2 deletions bsv.min.js

Large diffs are not rendered by default.

2 changes: 1 addition & 1 deletion docs/examples.md
Expand Up @@ -9,7 +9,7 @@ var address = privateKey.toAddress();

## Generate a address from a SHA256 hash
```javascript
var value = new Buffer('correct horse battery staple');
var value = Buffer.from('correct horse battery staple');
var hash = bitcore.crypto.Hash.sha256(value);
var bn = bitcore.crypto.BN.fromBuffer(hash);

Expand Down
4 changes: 2 additions & 2 deletions docs/script.md
Expand Up @@ -83,7 +83,7 @@ var script = Script()
.add('OP_IF') // add an opcode by name
.prepend(114) // add OP_2SWAP by code
.add(Opcode.OP_NOT) // add an opcode object
.add(new Buffer('bacacafe', 'hex')) // add a data buffer (will append the size of the push operation first)
.add(Buffer.from('bacacafe', 'hex')) // add a data buffer (will append the size of the push operation first)

assert(script.toString() === 'OP_2SWAP OP_IF OP_NOT 4 0xbacacafe');
```
Expand All @@ -92,7 +92,7 @@ assert(script.toString() === 'OP_2SWAP OP_IF OP_NOT 4 0xbacacafe');
`Script` has an easy interface to parse raw scripts from the network or bitcoind, and to extract useful information. An illustrative example (for more options check the API reference)
```javascript
var raw_script = new Buffer('5221022df8750480ad5b26950b25c7ba79d3e37d75f640f8e5d9bcd5b150a0f85014da2103e3818b65bcc73a7d64064106a859cc1a5a728c4345ff0b641209fba0d90de6e921021f2f6e1e50cb6a953935c3601284925decd3fd21bc445712576873fb8c6ebc1853ae', 'hex');
var raw_script = Buffer.from('5221022df8750480ad5b26950b25c7ba79d3e37d75f640f8e5d9bcd5b150a0f85014da2103e3818b65bcc73a7d64064106a859cc1a5a728c4345ff0b641209fba0d90de6e921021f2f6e1e50cb6a953935c3601284925decd3fd21bc445712576873fb8c6ebc1853ae', 'hex');
var s = new Script(raw_script);
console.log(s.toString());
// 'OP_2 33 0x022df8750480ad5b26950b25c7ba79d3e37d75f640f8e5d9bcd5b150a0f85014da 33 0x03e3818b65bcc73a7d64064106a859cc1a5a728c4345ff0b641209fba0d90de6e9 33 0x021f2f6e1e50cb6a953935c3601284925decd3fd21bc445712576873fb8c6ebc18 OP_3 OP_CHECKMULTISIG'
Expand Down

0 comments on commit 8c63608

Please sign in to comment.