Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
68 commits
Select commit Hold shift + click to select a range
12c86d5
refactor(crypto): split testnet config into network, milestones and fees
Dec 15, 2018
8a0ef76
refactor(crypto): split devnet config into network, milestones and fees
Dec 15, 2018
9c3d8f7
refactor(crypto): split mainnet config into network, milestones and fees
Dec 15, 2018
c40af39
fix(crypto): export configuration folders
Dec 15, 2018
c7d3bd3
refactor: map milestones and dynamic fees to the configuration
Dec 15, 2018
b2d4374
test(crypto): adjust network imports
Dec 15, 2018
62bcbff
test(core-config): adjust tests to new config structure
Dec 15, 2018
f62fceb
refactor(core-container): load configuration from new folder
Dec 15, 2018
bb78d72
style(core-p2p): prettier format
Dec 15, 2018
6449006
feat(core-config): add get and set methods
Dec 15, 2018
41195e3
fix(core-transaction-pool): get dynamic fee config from the crypto co…
Dec 15, 2018
b8e2b3e
refactor(crypto): use lodash get/set for the config to allow nested v…
Dec 15, 2018
77636c0
refactor(core-utils): get network from crypto config
Dec 15, 2018
90676f9
fix(core-json-rpc): do not overwrite the core-config values
Dec 15, 2018
e24bb05
fix(core-container): use the name of the network object
Dec 15, 2018
829185a
refactor(core-config): expose the crypto config was network
Dec 15, 2018
89be107
test: skip a few config tests for the moment
Dec 15, 2018
3896b33
test(core-deployer): re-enable tests
Dec 15, 2018
bb9ade9
test(core-config): re-enable tests
Dec 15, 2018
a4d6d82
test(core): re-enable tests
Dec 15, 2018
25123fc
refactor(crypto): rename getConstants to getMilestone
Dec 15, 2018
c097709
refactor(core-config): validate the full config with Joi
Dec 15, 2018
285aa9f
feat(crypto): add getFromPreset method
Dec 15, 2018
101c542
refactor: expose milestones and dynamic fee config
Dec 15, 2018
6c01289
test: replace constants with milestones
Dec 15, 2018
e4927b5
Merge branch 'develop' into feat/milestones
Dec 15, 2018
da31ef1
test(crypto): expect constants to be build
Dec 15, 2018
32da931
refactor(crypto): rename constants to milestones
Dec 15, 2018
dfc6255
Merge branch 'develop' into feat/milestones
faustbrian Dec 15, 2018
ac757ef
Merge branch 'develop' into feat/milestones
faustbrian Dec 16, 2018
eba965a
refactor(crypto): clean up some old constants code
Dec 16, 2018
3e77336
refactor: exit if any errors during the config setup
Dec 16, 2018
13827f0
refactor(core-container): load milestones via remote loader
Dec 16, 2018
c7a1be1
refactor: move the remote loader to core-config
Dec 16, 2018
ecc1ace
test(core-config): use correct stub paths
Dec 16, 2018
971ac0e
refactor: merge core-config into core-container
Dec 16, 2018
f44b438
test(core-utils): adjust config mocks to core-container
Dec 16, 2018
e18453a
fix: bad method calls
Dec 16, 2018
68a1d80
chore: add missing files
Dec 16, 2018
8359460
refactor(core-container): move mapping logic from file loader to conf…
Dec 16, 2018
f60b5b4
refactor: expose app config through getters
Dec 16, 2018
4df8344
fix: retrieve config values via getter
Dec 16, 2018
53455a2
fix: retrieve config values via getter
Dec 16, 2018
792fabd
fix: retrieve config values via getter
Dec 16, 2018
65924d1
refactor: handle network and core config separately
Dec 17, 2018
f96c532
misc: remove debug log
Dec 17, 2018
b78b0ee
fix: adjust test stubs and allow unknown config files
Dec 17, 2018
9c4b369
misc(core-container): disable peers_backup schema for now
Dec 17, 2018
f6a536b
fix(core-container): check for a custom dynamic fees file if using ne…
Dec 17, 2018
f96fdfc
Merge branch 'develop' into feat/milestones
faustbrian Dec 17, 2018
64214b4
refactor: move exceptions into their own configuration file
Dec 17, 2018
5eca040
fix(crypto): export the correct constants
Dec 17, 2018
cded9da
test(core-container): adjust config stubs
Dec 17, 2018
7375533
refactor(core): remove default values for the token and network
Dec 17, 2018
527e7d6
refactor(core-p2p): add new network configuration endpoints
Dec 17, 2018
cac0bec
refactor(core-p2p): return the default dynamicFees file via…
Dec 17, 2018
9b8539d
fix(core-container): adjust exceptions schema
Dec 17, 2018
a13645b
fix: map exceptions to crypto config manager
Dec 17, 2018
cd34e05
test(crypto): expect exceptions to be available
Dec 17, 2018
3b48760
refactor: simplify the crypto configuration
Dec 17, 2018
7f835fc
chore(crypto): remove unused bitcoin network
Dec 17, 2018
3d869d4
refactor: move dynamic fees into the transaction pool
Dec 17, 2018
1b48558
fix: move dynamic fee calculation to matcher
spkjp Dec 17, 2018
8df3d9a
chore: remove dynamicFeeManager
spkjp Dec 17, 2018
9d8ea7a
refactor: make TRANSACTION_TYPES an enum
spkjp Dec 17, 2018
ea15d05
test: fix
spkjp Dec 17, 2018
937403a
test: call config.init
spkjp Dec 17, 2018
5b73b09
Merge branch 'develop' into feat/milestones
spkjp Dec 17, 2018
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
162 changes: 74 additions & 88 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,6 @@ jobs:
- ./packages/core/node_modules
- ./packages/core-api/node_modules
- ./packages/core-blockchain/node_modules
- ./packages/core-config/node_modules
- ./packages/core-container/node_modules
- ./packages/core-database/node_modules
- ./packages/core-database-postgres/node_modules
Expand Down Expand Up @@ -66,23 +65,26 @@ jobs:
name: Create .ark/database directory
command: mkdir -p $HOME/.ark/database
- run:
name: core-utils
command: 'cd ~/ark-core/packages/core-utils && yarn test:coverage'
name: core-vote-report
command: 'cd ~/ark-core/packages/core-vote-report && yarn test:coverage'
- run:
name: core-test-utils
command: 'cd ~/ark-core/packages/core-test-utils && yarn test:coverage'
name: core-tester-cli
command: 'cd ~/ark-core/packages/core-tester-cli && yarn test:coverage'
- run:
name: core-p2p
command: 'cd ~/ark-core/packages/core-p2p && yarn test:coverage'
name: core-snapshots
command: 'cd ~/ark-core/packages/core-snapshots && yarn test:coverage'
- run:
name: core-http-utils
command: 'cd ~/ark-core/packages/core-http-utils && yarn test:coverage'
name: core-logger
command: 'cd ~/ark-core/packages/core-logger && yarn test:coverage'
- run:
name: core-event-emitter
command: 'cd ~/ark-core/packages/core-event-emitter && yarn test:coverage'
name: core-forger
command: 'cd ~/ark-core/packages/core-forger && yarn test:coverage'
- run:
name: core-config
command: 'cd ~/ark-core/packages/core-config && yarn test:coverage'
name: core-debugger-cli
command: 'cd ~/ark-core/packages/core-debugger-cli && yarn test:coverage'
- run:
name: core-container
command: 'cd ~/ark-core/packages/core-container && yarn test:coverage'
- run:
name: core
command: 'cd ~/ark-core/packages/core && yarn test:coverage'
Expand Down Expand Up @@ -128,7 +130,6 @@ jobs:
- ./packages/core/node_modules
- ./packages/core-api/node_modules
- ./packages/core-blockchain/node_modules
- ./packages/core-config/node_modules
- ./packages/core-container/node_modules
- ./packages/core-database/node_modules
- ./packages/core-database-postgres/node_modules
Expand Down Expand Up @@ -159,23 +160,26 @@ jobs:
name: Create .ark/database directory
command: mkdir -p $HOME/.ark/database
- run:
name: core-utils
command: 'cd ~/ark-core/packages/core-utils && yarn test:coverage'
name: core-vote-report
command: 'cd ~/ark-core/packages/core-vote-report && yarn test:coverage'
- run:
name: core-test-utils
command: 'cd ~/ark-core/packages/core-test-utils && yarn test:coverage'
name: core-tester-cli
command: 'cd ~/ark-core/packages/core-tester-cli && yarn test:coverage'
- run:
name: core-p2p
command: 'cd ~/ark-core/packages/core-p2p && yarn test:coverage'
name: core-snapshots
command: 'cd ~/ark-core/packages/core-snapshots && yarn test:coverage'
- run:
name: core-http-utils
command: 'cd ~/ark-core/packages/core-http-utils && yarn test:coverage'
name: core-logger
command: 'cd ~/ark-core/packages/core-logger && yarn test:coverage'
- run:
name: core-event-emitter
command: 'cd ~/ark-core/packages/core-event-emitter && yarn test:coverage'
name: core-forger
command: 'cd ~/ark-core/packages/core-forger && yarn test:coverage'
- run:
name: core-config
command: 'cd ~/ark-core/packages/core-config && yarn test:coverage'
name: core-debugger-cli
command: 'cd ~/ark-core/packages/core-debugger-cli && yarn test:coverage'
- run:
name: core-container
command: 'cd ~/ark-core/packages/core-container && yarn test:coverage'
- run:
name: core
command: 'cd ~/ark-core/packages/core && yarn test:coverage'
Expand Down Expand Up @@ -221,7 +225,6 @@ jobs:
- ./packages/core/node_modules
- ./packages/core-api/node_modules
- ./packages/core-blockchain/node_modules
- ./packages/core-config/node_modules
- ./packages/core-container/node_modules
- ./packages/core-database/node_modules
- ./packages/core-database-postgres/node_modules
Expand Down Expand Up @@ -302,7 +305,6 @@ jobs:
- ./packages/core/node_modules
- ./packages/core-api/node_modules
- ./packages/core-blockchain/node_modules
- ./packages/core-config/node_modules
- ./packages/core-container/node_modules
- ./packages/core-database/node_modules
- ./packages/core-database-postgres/node_modules
Expand Down Expand Up @@ -333,26 +335,23 @@ jobs:
name: Create .ark/database directory
command: mkdir -p $HOME/.ark/database
- run:
name: core-vote-report
command: 'cd ~/ark-core/packages/core-vote-report && yarn test:coverage'
- run:
name: core-tester-cli
command: 'cd ~/ark-core/packages/core-tester-cli && yarn test:coverage'
name: core-webhooks
command: 'cd ~/ark-core/packages/core-webhooks && yarn test:coverage'
- run:
name: core-snapshots
command: 'cd ~/ark-core/packages/core-snapshots && yarn test:coverage'
name: core-transaction-pool
command: 'cd ~/ark-core/packages/core-transaction-pool && yarn test:coverage'
- run:
name: core-logger
command: 'cd ~/ark-core/packages/core-logger && yarn test:coverage'
name: core-logger-winston
command: 'cd ~/ark-core/packages/core-logger-winston && yarn test:coverage'
- run:
name: core-forger
command: 'cd ~/ark-core/packages/core-forger && yarn test:coverage'
name: core-graphql
command: 'cd ~/ark-core/packages/core-graphql && yarn test:coverage'
- run:
name: core-debugger-cli
command: 'cd ~/ark-core/packages/core-debugger-cli && yarn test:coverage'
name: core-deployer
command: 'cd ~/ark-core/packages/core-deployer && yarn test:coverage'
- run:
name: core-container
command: 'cd ~/ark-core/packages/core-container && yarn test:coverage'
name: core-database
command: 'cd ~/ark-core/packages/core-database && yarn test:coverage'
- run:
name: core-api
command: 'cd ~/ark-core/packages/core-api && yarn test:coverage'
Expand Down Expand Up @@ -398,7 +397,6 @@ jobs:
- ./packages/core/node_modules
- ./packages/core-api/node_modules
- ./packages/core-blockchain/node_modules
- ./packages/core-config/node_modules
- ./packages/core-container/node_modules
- ./packages/core-database/node_modules
- ./packages/core-database-postgres/node_modules
Expand Down Expand Up @@ -429,23 +427,20 @@ jobs:
name: Create .ark/database directory
command: mkdir -p $HOME/.ark/database
- run:
name: core-webhooks
command: 'cd ~/ark-core/packages/core-webhooks && yarn test:coverage'
- run:
name: core-transaction-pool
command: 'cd ~/ark-core/packages/core-transaction-pool && yarn test:coverage'
name: core-utils
command: 'cd ~/ark-core/packages/core-utils && yarn test:coverage'
- run:
name: core-logger-winston
command: 'cd ~/ark-core/packages/core-logger-winston && yarn test:coverage'
name: core-test-utils
command: 'cd ~/ark-core/packages/core-test-utils && yarn test:coverage'
- run:
name: core-graphql
command: 'cd ~/ark-core/packages/core-graphql && yarn test:coverage'
name: core-p2p
command: 'cd ~/ark-core/packages/core-p2p && yarn test:coverage'
- run:
name: core-deployer
command: 'cd ~/ark-core/packages/core-deployer && yarn test:coverage'
name: core-http-utils
command: 'cd ~/ark-core/packages/core-http-utils && yarn test:coverage'
- run:
name: core-database
command: 'cd ~/ark-core/packages/core-database && yarn test:coverage'
name: core-event-emitter
command: 'cd ~/ark-core/packages/core-event-emitter && yarn test:coverage'
- run:
name: core-blockchain
command: 'cd ~/ark-core/packages/core-blockchain && yarn test:coverage'
Expand Down Expand Up @@ -491,7 +486,6 @@ jobs:
- ./packages/core/node_modules
- ./packages/core-api/node_modules
- ./packages/core-blockchain/node_modules
- ./packages/core-config/node_modules
- ./packages/core-container/node_modules
- ./packages/core-database/node_modules
- ./packages/core-database-postgres/node_modules
Expand Down Expand Up @@ -572,7 +566,6 @@ jobs:
- ./packages/core/node_modules
- ./packages/core-api/node_modules
- ./packages/core-blockchain/node_modules
- ./packages/core-config/node_modules
- ./packages/core-container/node_modules
- ./packages/core-database/node_modules
- ./packages/core-database-postgres/node_modules
Expand Down Expand Up @@ -603,26 +596,23 @@ jobs:
name: Create .ark/database directory
command: mkdir -p $HOME/.ark/database
- run:
name: core-vote-report
command: 'cd ~/ark-core/packages/core-vote-report && yarn test:coverage'
- run:
name: core-tester-cli
command: 'cd ~/ark-core/packages/core-tester-cli && yarn test:coverage'
name: core-webhooks
command: 'cd ~/ark-core/packages/core-webhooks && yarn test:coverage'
- run:
name: core-snapshots
command: 'cd ~/ark-core/packages/core-snapshots && yarn test:coverage'
name: core-transaction-pool
command: 'cd ~/ark-core/packages/core-transaction-pool && yarn test:coverage'
- run:
name: core-logger
command: 'cd ~/ark-core/packages/core-logger && yarn test:coverage'
name: core-logger-winston
command: 'cd ~/ark-core/packages/core-logger-winston && yarn test:coverage'
- run:
name: core-forger
command: 'cd ~/ark-core/packages/core-forger && yarn test:coverage'
name: core-graphql
command: 'cd ~/ark-core/packages/core-graphql && yarn test:coverage'
- run:
name: core-debugger-cli
command: 'cd ~/ark-core/packages/core-debugger-cli && yarn test:coverage'
name: core-deployer
command: 'cd ~/ark-core/packages/core-deployer && yarn test:coverage'
- run:
name: core-container
command: 'cd ~/ark-core/packages/core-container && yarn test:coverage'
name: core-database
command: 'cd ~/ark-core/packages/core-database && yarn test:coverage'
- run:
name: core-api
command: 'cd ~/ark-core/packages/core-api && yarn test:coverage'
Expand Down Expand Up @@ -668,7 +658,6 @@ jobs:
- ./packages/core/node_modules
- ./packages/core-api/node_modules
- ./packages/core-blockchain/node_modules
- ./packages/core-config/node_modules
- ./packages/core-container/node_modules
- ./packages/core-database/node_modules
- ./packages/core-database-postgres/node_modules
Expand Down Expand Up @@ -699,23 +688,20 @@ jobs:
name: Create .ark/database directory
command: mkdir -p $HOME/.ark/database
- run:
name: core-webhooks
command: 'cd ~/ark-core/packages/core-webhooks && yarn test:coverage'
- run:
name: core-transaction-pool
command: 'cd ~/ark-core/packages/core-transaction-pool && yarn test:coverage'
name: core-utils
command: 'cd ~/ark-core/packages/core-utils && yarn test:coverage'
- run:
name: core-logger-winston
command: 'cd ~/ark-core/packages/core-logger-winston && yarn test:coverage'
name: core-test-utils
command: 'cd ~/ark-core/packages/core-test-utils && yarn test:coverage'
- run:
name: core-graphql
command: 'cd ~/ark-core/packages/core-graphql && yarn test:coverage'
name: core-p2p
command: 'cd ~/ark-core/packages/core-p2p && yarn test:coverage'
- run:
name: core-deployer
command: 'cd ~/ark-core/packages/core-deployer && yarn test:coverage'
name: core-http-utils
command: 'cd ~/ark-core/packages/core-http-utils && yarn test:coverage'
- run:
name: core-database
command: 'cd ~/ark-core/packages/core-database && yarn test:coverage'
name: core-event-emitter
command: 'cd ~/ark-core/packages/core-event-emitter && yarn test:coverage'
- run:
name: core-blockchain
command: 'cd ~/ark-core/packages/core-blockchain && yarn test:coverage'
Expand Down
1 change: 0 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,6 @@ This repository contains all plugins that make up the Ark Core.
| **[core](/packages/core)** | [![npm](https://badgen.now.sh/npm/v/@arkecosystem/core)](https://www.npmjs.com/package/@arkecosystem/core) | **Includes all packages** |
| [core-api](/packages/core-api) | [![npm](https://badgen.now.sh/npm/v/@arkecosystem/core-api)](https://www.npmjs.com/package/@arkecosystem/core-api) | Public REST API |
| [core-blockchain](/packages/core-blockchain) | [![npm](https://badgen.now.sh/npm/v/@arkecosystem/core-blockchain)](https://www.npmjs.com/package/@arkecosystem/core-blockchain) | Blockchain Managment |
| [core-config](/packages/core-config) | [![npm](https://badgen.now.sh/npm/v/@arkecosystem/core-config)](https://www.npmjs.com/package/@arkecosystem/core-config) | Configuration Loader |
| [core-container](/packages/core-container) | [![npm](https://badgen.now.sh/npm/v/@arkecosystem/core-container)](https://www.npmjs.com/package/@arkecosystem/core-container) | Container Managment |
| [core-database](/packages/core-database) | [![npm](https://badgen.now.sh/npm/v/@arkecosystem/core-database)](https://www.npmjs.com/package/@arkecosystem/core-database) | Database Interface |
| [core-database-postgres](/packages/core-database-postgres) | [![npm](https://badgen.now.sh/npm/v/@arkecosystem/core-database-postgres)](https://www.npmjs.com/package/@arkecosystem/core-database-postgres) | Database Implementation - PostgreSQL |
Expand Down
1 change: 0 additions & 1 deletion greenkeeper.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,6 @@
"package.json",
"packages/core-api/package.json",
"packages/core-blockchain/package.json",
"packages/core-config/package.json",
"packages/core-container/package.json",
"packages/core-database-postgres/package.json",
"packages/core-database/package.json",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,8 +14,6 @@ beforeAll(async () => {

repository = new TransactionsRepository();

// Create the genesis block after the setup has finished or else it uses a potentially
// wrong network config.
genesisTransaction = genesisBlock.transactions[0];
});

Expand Down
6 changes: 3 additions & 3 deletions packages/core-api/__tests__/v1/handlers/blocks.test.ts
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
import { app } from "@arkecosystem/core-container";
import "@arkecosystem/core-test-utils";
import genesisBlock from "../../../../core-test-utils/src/config/testnet/genesisBlock.json";
import { setUp, tearDown } from "../../__support__/setup";
Expand Down Expand Up @@ -75,10 +76,9 @@ describe("API 1.0 - Blocks", () => {

expect(response.data.nethash).toBeString();

const { app: container } = require("@arkecosystem/core-container");
const config = container.resolvePlugin("config");
const config = app.getConfig();

expect(response.data.nethash).toBe(config.network.nethash);
expect(response.data.nethash).toBe(config.get("network.nethash"));
});
});

Expand Down
4 changes: 2 additions & 2 deletions packages/core-api/__tests__/v2/handlers/delegates.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -33,7 +33,7 @@ describe("API 2.0 - Delegates", () => {
const response = await utils[request]("GET", "delegates");
expect(response).toBeSuccessfulResponse();
expect(response.data.data).toBeArray();
expect(response.data.data.sort((a, b) => (a.rank < b.rank))).toEqual(response.data.data);
expect(response.data.data.sort((a, b) => a.rank < b.rank)).toEqual(response.data.data);

utils.expectDelegate(response.data.data[0]);
});
Expand All @@ -47,7 +47,7 @@ describe("API 2.0 - Delegates", () => {
const response = await utils[request]("GET", "delegates", { orderBy: "rank:desc" });
expect(response).toBeSuccessfulResponse();
expect(response.data.data).toBeArray();
expect(response.data.data.sort((a, b) => (a.rank > b.rank))).toEqual(response.data.data);
expect(response.data.data.sort((a, b) => a.rank > b.rank)).toEqual(response.data.data);

utils.expectDelegate(response.data.data[0]);
});
Expand Down
4 changes: 2 additions & 2 deletions packages/core-api/src/plugins/validation/formats/address.ts
Original file line number Diff line number Diff line change
Expand Up @@ -2,13 +2,13 @@ import { app } from "@arkecosystem/core-container";
import * as bs58check from "bs58check";

export function registerAddressFormat(ajv) {
const config = app.resolvePlugin("config");
const config = app.getConfig();

ajv.addFormat("address", {
type: "string",
validate: value => {
try {
return bs58check.decode(value)[0] === config.network.pubKeyHash;
return bs58check.decode(value)[0] === config.get("network.pubKeyHash");
} catch (e) {
return false;
}
Expand Down
2 changes: 1 addition & 1 deletion packages/core-api/src/repositories/transactions.ts
Original file line number Diff line number Diff line change
Expand Up @@ -156,7 +156,7 @@ export class TransactionsRepository extends Repository implements IRepository {
*/
public async allVotesBySender(senderPublicKey, parameters: any = {}): Promise<any> {
return this.findAll({
...{ senderPublicKey, type: constants.TRANSACTION_TYPES.VOTE },
...{ senderPublicKey, type: constants.TransactionTypes.Vote },
...parameters,
});
}
Expand Down
4 changes: 2 additions & 2 deletions packages/core-api/src/versions/1/accounts/controller.ts
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ export class AccountsController extends Controller {
public constructor() {
super();

this.config = app.resolvePlugin("config");
this.config = app.getConfig();
this.database = app.resolvePlugin("database");
this.blockchain = app.resolvePlugin("blockchain");
}
Expand Down Expand Up @@ -59,7 +59,7 @@ export class AccountsController extends Controller {
public async fee(request: Hapi.Request, h: Hapi.ResponseToolkit) {
try {
return super.respondWith({
fee: this.config.getConstants(this.blockchain.getLastHeight()).fees.staticFees.delegateRegistration,
fee: this.config.getMilestone(this.blockchain.getLastHeight()).fees.staticFees.delegateRegistration,
});
} catch (error) {
return Boom.badImplementation(error);
Expand Down
Loading