Skip to content

Commit

Permalink
Merge remote-tracking branch 'ArkEcosystem/core/2.3' into blockid
Browse files Browse the repository at this point in the history
* ArkEcosystem/core/2.3:
  chore: move core-graphql to the deprecated folder (#2169)
  refactor(crypto): benchmarks (#2167)
  refactor: replace micromatch with nanomatch and remove heavy deps (#2165)
  feat(crypto): increase vendor field length to 255 bytes (#2159)
  feat(core-api): search delegates by usernames (#2143)
  feat(core-logger-pino): initial implementation (#2134)
  perf(crypto): integrate bcrypto (#2158)
  feat(core): ask for process restarts after updating (#2155)
  refactor(core): replace pm2 with process manager (#2154)
  refactor(core): require the user to take action for updates (#2153)
  feat(core-p2p): Fetch list of peers from at least a few others (#2152)
  refactor(core): more robust check for ensureDefaults (#2151)
  fix(core): ensure file and defaults before reading
  fix(core): return correct suffix for core:restart command (#2150)
  fix(core-database): properly sort BigNumber values (#2144)
  feat(core): configuration and channel support for the CLI (#2145)
  feat(core): merge core-snapshot-cli commands into core (#2149)
  fix(core-api): pass query to findAllByVote method (#2142)
  feat(core-p2p): Validate GET replies from other peers (#2102)
  chore(release): 2.2.0-beta.7 (#2141)
  fix(core-blockchain): stuck at not ready to accept new block (#2139)
  refactor(core-p2p): Improve selection of peer for downloading blocks (#2137)
  fix(core): overwrite the config path if an env variable is provided (#2140)
  fix(core): do not ignore the network flag in parseWithNetwork (#2138)
  chore(release): 2.2.0-beta.6 (#2136)
  refactor(core-container): throw an error if the peers or plugins file are missing (#2135)
  chore(release): 2.2.0-beta.5 (#2132)
  refactor(core-p2p):  reduce logging noise (#2129)
  misc(core-p2p): remove superfluous log message (#2128)
  refactor(core-p2p): Improve fork handling in updatePeersOnMissingBlocks (#2125)
  • Loading branch information
vasild committed Feb 27, 2019
2 parents fce548c + 358c312 commit 8758d01
Show file tree
Hide file tree
Showing 274 changed files with 3,114 additions and 3,055 deletions.
62 changes: 20 additions & 42 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -47,16 +47,14 @@ jobs:
- ./packages/core-error-tracker-sentry/node_modules
- ./packages/core-event-emitter/node_modules
- ./packages/core-forger/node_modules
- ./packages/core-graphql/node_modules
- ./packages/core-http-utils/node_modules
- ./packages/core-interfaces/node_modules
- ./packages/core-jest-matchers/node_modules
- ./packages/core-json-rpc/node_modules
- ./packages/core-logger/node_modules
- ./packages/core-logger-winston/node_modules
- ./packages/core-logger-pino/node_modules
- ./packages/core-p2p/node_modules
- ./packages/core-snapshots/node_modules
- ./packages/core-snapshots-cli/node_modules
- ./packages/core-test-utils/node_modules
- ./packages/core-tester-cli/node_modules
- ./packages/core-transaction-pool/node_modules
Expand Down Expand Up @@ -155,16 +153,14 @@ jobs:
- ./packages/core-error-tracker-sentry/node_modules
- ./packages/core-event-emitter/node_modules
- ./packages/core-forger/node_modules
- ./packages/core-graphql/node_modules
- ./packages/core-http-utils/node_modules
- ./packages/core-interfaces/node_modules
- ./packages/core-jest-matchers/node_modules
- ./packages/core-json-rpc/node_modules
- ./packages/core-logger/node_modules
- ./packages/core-logger-winston/node_modules
- ./packages/core-logger-pino/node_modules
- ./packages/core-p2p/node_modules
- ./packages/core-snapshots/node_modules
- ./packages/core-snapshots-cli/node_modules
- ./packages/core-test-utils/node_modules
- ./packages/core-tester-cli/node_modules
- ./packages/core-transaction-pool/node_modules
Expand Down Expand Up @@ -263,16 +259,14 @@ jobs:
- ./packages/core-error-tracker-sentry/node_modules
- ./packages/core-event-emitter/node_modules
- ./packages/core-forger/node_modules
- ./packages/core-graphql/node_modules
- ./packages/core-http-utils/node_modules
- ./packages/core-interfaces/node_modules
- ./packages/core-jest-matchers/node_modules
- ./packages/core-json-rpc/node_modules
- ./packages/core-logger/node_modules
- ./packages/core-logger-winston/node_modules
- ./packages/core-logger-pino/node_modules
- ./packages/core-p2p/node_modules
- ./packages/core-snapshots/node_modules
- ./packages/core-snapshots-cli/node_modules
- ./packages/core-test-utils/node_modules
- ./packages/core-tester-cli/node_modules
- ./packages/core-transaction-pool/node_modules
Expand All @@ -294,11 +288,6 @@ jobs:
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-forger && yarn test:coverage
- run:
name: core-graphql
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-graphql && yarn test:coverage
- run:
name: core-http-utils
command: >-
Expand All @@ -320,15 +309,20 @@ jobs:
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-logger && yarn test:coverage
- run:
name: core-logger-winston
name: core-logger-pino
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-logger-winston && yarn test:coverage
~/core/packages/core-logger-pino && yarn test:coverage
- run:
name: core-p2p
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-p2p && yarn test:coverage
- run:
name: core-snapshots
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-snapshots && yarn test:coverage
- run:
name: Last 1000 lines of test output
when: on_fail
Expand Down Expand Up @@ -386,16 +380,14 @@ jobs:
- ./packages/core-error-tracker-sentry/node_modules
- ./packages/core-event-emitter/node_modules
- ./packages/core-forger/node_modules
- ./packages/core-graphql/node_modules
- ./packages/core-http-utils/node_modules
- ./packages/core-interfaces/node_modules
- ./packages/core-jest-matchers/node_modules
- ./packages/core-json-rpc/node_modules
- ./packages/core-logger/node_modules
- ./packages/core-logger-winston/node_modules
- ./packages/core-logger-pino/node_modules
- ./packages/core-p2p/node_modules
- ./packages/core-snapshots/node_modules
- ./packages/core-snapshots-cli/node_modules
- ./packages/core-test-utils/node_modules
- ./packages/core-tester-cli/node_modules
- ./packages/core-transaction-pool/node_modules
Expand All @@ -407,11 +399,6 @@ jobs:
- run:
name: Create .core/database directory
command: mkdir -p $HOME/.core/database
- run:
name: core-snapshots
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-snapshots && yarn test:coverage
- run:
name: core-test-utils
command: >-
Expand Down Expand Up @@ -504,16 +491,14 @@ jobs:
- ./packages/core-error-tracker-sentry/node_modules
- ./packages/core-event-emitter/node_modules
- ./packages/core-forger/node_modules
- ./packages/core-graphql/node_modules
- ./packages/core-http-utils/node_modules
- ./packages/core-interfaces/node_modules
- ./packages/core-jest-matchers/node_modules
- ./packages/core-json-rpc/node_modules
- ./packages/core-logger/node_modules
- ./packages/core-logger-winston/node_modules
- ./packages/core-logger-pino/node_modules
- ./packages/core-p2p/node_modules
- ./packages/core-snapshots/node_modules
- ./packages/core-snapshots-cli/node_modules
- ./packages/core-test-utils/node_modules
- ./packages/core-tester-cli/node_modules
- ./packages/core-transaction-pool/node_modules
Expand All @@ -535,11 +520,6 @@ jobs:
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-forger && yarn test:coverage
- run:
name: core-graphql
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-graphql && yarn test:coverage
- run:
name: core-http-utils
command: >-
Expand All @@ -561,15 +541,20 @@ jobs:
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-logger && yarn test:coverage
- run:
name: core-logger-winston
name: core-logger-pino
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-logger-winston && yarn test:coverage
~/core/packages/core-logger-pino && yarn test:coverage
- run:
name: core-p2p
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-p2p && yarn test:coverage
- run:
name: core-snapshots
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-snapshots && yarn test:coverage
- run:
name: Last 1000 lines of test output
when: on_fail
Expand Down Expand Up @@ -627,16 +612,14 @@ jobs:
- ./packages/core-error-tracker-sentry/node_modules
- ./packages/core-event-emitter/node_modules
- ./packages/core-forger/node_modules
- ./packages/core-graphql/node_modules
- ./packages/core-http-utils/node_modules
- ./packages/core-interfaces/node_modules
- ./packages/core-jest-matchers/node_modules
- ./packages/core-json-rpc/node_modules
- ./packages/core-logger/node_modules
- ./packages/core-logger-winston/node_modules
- ./packages/core-logger-pino/node_modules
- ./packages/core-p2p/node_modules
- ./packages/core-snapshots/node_modules
- ./packages/core-snapshots-cli/node_modules
- ./packages/core-test-utils/node_modules
- ./packages/core-tester-cli/node_modules
- ./packages/core-transaction-pool/node_modules
Expand All @@ -648,11 +631,6 @@ jobs:
- run:
name: Create .core/database directory
command: mkdir -p $HOME/.core/database
- run:
name: core-snapshots
command: >-
cd ~/core/.circleci && ./rebuild-db.sh && cd
~/core/packages/core-snapshots && yarn test:coverage
- run:
name: core-test-utils
command: >-
Expand Down
25 changes: 25 additions & 0 deletions benchmark/block/create.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
const {
models
} = require('@arkecosystem/crypto')

const dataEmpty = require('../helpers').getJSONFixture('block/deserialized/no-transactions');
const dataFull = require('../helpers').getJSONFixture('block/deserialized/transactions');
const serializedEmpty = require('../helpers').getFixture('block/serialized/no-transactions.txt');
const serializedFull = require('../helpers').getFixture('block/serialized/transactions.txt');

exports['fromData (0)'] = () => {
return new models.Block(dataEmpty);
};

exports['fromData (150)'] = () => {
return new models.Block(dataFull);
};

exports['fromHex (0)'] = () => {
return new models.Block(serializedEmpty);
};

exports['fromHex (150)'] = () => {
return new models.Block(serializedFull);
};

49 changes: 49 additions & 0 deletions benchmark/crypto/hash-algorithms.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
const {
HashAlgorithms,
Transaction
} = require('@arkecosystem/crypto')
const createHash = require("create-hash");
const nodeSha256 = (bytes) => createHash("sha256").update(bytes).digest()

const data = require('../helpers').getJSONFixture('transaction/deserialized/0');
const transactionBytes = Transaction.toBytes(data);

exports['bcrypto.sha256'] = () => {
HashAlgorithms.sha256(transactionBytes);
};

exports['node.sha256'] = () => {
nodeSha256(transactionBytes);
};

exports['bcrypto.sha1'] = () => {
HashAlgorithms.sha1(transactionBytes);
};

exports['node.sha1'] = () => {
createHash("sha1").update(transactionBytes).digest();
};

exports['bcrypto.ripemd160'] = () => {
HashAlgorithms.ripemd160(transactionBytes);
};

exports['node.ripemd160'] = () => {
createHash("ripemd160").update(transactionBytes).digest();
};

exports['bcrypto.hash160'] = () => {
HashAlgorithms.hash160(transactionBytes);
};

exports['node.hash160'] = () => {
createHash("ripemd160").update(nodeSha256(transactionBytes)).digest();
};

exports['bcrypto.hash256'] = () => {
HashAlgorithms.hash256(transactionBytes);
};

exports['node.hash256'] = () => {
nodeSha256(nodeSha256(transactionBytes));
};
6 changes: 5 additions & 1 deletion benchmark/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -4,12 +4,16 @@ const { configManager } = require("@arkecosystem/crypto");
configManager.setFromPreset("mainnet");

benchmarker('core', [
{ name: 'new Block()', scenarios: require('./block/create') },
{ name: 'Block.serialize (0 transactions)', scenarios: require('./block/serialize') },
{ name: 'Block.serialize (150 transactions)', scenarios: require('./block/serializeFull') },

{ name: 'Block.deserialize (0 transactions)', scenarios: require('./block/deserialize/0') },
{ name: 'Block.deserialize (150 transactions)', scenarios: require('./block/deserialize/150') },

{ name: 'new Transaction (Type 0)', scenarios: require('./transaction/create/0') },
{ name: 'Transaction.serialize (Type 0)', scenarios: require('./transaction/serialize/0') },
{ name: 'Transaction.deserialize (Type 0)', scenarios: require('./transaction/deserialize/0') },

{ name: 'HashAlgorithms', scenarios: require('./crypto/hash-algorithms') },

], { hideSummary: true });
19 changes: 19 additions & 0 deletions benchmark/transaction/create/0.js
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
const {
Transaction
} = require('@arkecosystem/crypto')

const data = require('../../helpers').getJSONFixture('transaction/deserialized/0');
const serializedHex = require('../../helpers').getFixture('transaction/serialized/0.txt');
const serializedBytes = Buffer.from(serializedHex, "hex");

exports['fromData'] = () => {
return Transaction.fromData(data);
};

exports['fromHex'] = () => {
return Transaction.fromHex(serializedHex);
};

exports['fromBytes'] = () => {
return Transaction.fromBytes(serializedBytes);
};
4 changes: 2 additions & 2 deletions benchmark/transaction/deserialize/methods.js
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
const {
Transaction
TransactionDeserializer
} = require('@arkecosystem/crypto')

exports.deserialize = data => {
return Transaction.fromHex(data)
return TransactionDeserializer.deserialize(data)
}
4 changes: 2 additions & 2 deletions benchmark/transaction/serialize/0.js
Original file line number Diff line number Diff line change
@@ -1,9 +1,9 @@
const {
Transaction
TransactionSerializer
} = require('@arkecosystem/crypto')

const data = require('../../helpers').getJSONFixture('transaction/deserialized/0');

exports['core'] = () => {
return Transaction.fromData(data);
return TransactionSerializer.getBytes(data);
};
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ export const setUp = async () => {
process.env.CORE_GRAPHQL_ENABLED = "true";

await setUpContainer({
exclude: ["@arkecosystem/core-api", "@arkecosystem/core-forger", "@arkecosystem/core-graphql"],
exclude: ["@arkecosystem/core-api", "@arkecosystem/core-forger"],
});

const { plugin } = require("../../src");
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "@arkecosystem/core-graphql",
"description": "GraphQL Integration for Ark Core",
"version": "2.2.0-beta.4",
"version": "2.2.0-beta.7",
"contributors": [
"Lúcio Rubens <lucio@ark.io>"
],
Expand Down Expand Up @@ -31,10 +31,10 @@
"updates": "../../node_modules/npm-check-updates/bin/npm-check-updates -a"
},
"dependencies": {
"@arkecosystem/core-container": "^2.2.0-beta.4",
"@arkecosystem/core-http-utils": "^2.2.0-beta.4",
"@arkecosystem/core-interfaces": "^2.2.0-beta.4",
"@arkecosystem/crypto": "^2.2.0-beta.4",
"@arkecosystem/core-container": "^2.2.0-beta.7",
"@arkecosystem/core-http-utils": "^2.2.0-beta.7",
"@arkecosystem/core-interfaces": "^2.2.0-beta.7",
"@arkecosystem/crypto": "^2.2.0-beta.7",
"apollo-server-hapi": "^2.4.0",
"dayjs-ext": "^2.2.0",
"graphql-tools-types": "^1.2.1"
Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@ export const plugin: Container.PluginDescriptor = {
alias: "graphql",
async register(container: Container.IContainer, options) {
if (!options.enabled) {
container.resolvePlugin<Logger.ILogger>("logger").info("GraphQL API is disabled :grey_exclamation:");
container.resolvePlugin<Logger.ILogger>("logger").info("GraphQL API is disabled");
return;
}

Expand Down
File renamed without changes.
File renamed without changes.
File renamed without changes.
File renamed without changes.
Loading

0 comments on commit 8758d01

Please sign in to comment.