New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Release 2.1.0 #2077

Merged
merged 182 commits into from Feb 11, 2019

Conversation

Projects
None yet
@faustbrian
Copy link
Collaborator

faustbrian commented Feb 10, 2019

Merge develop into master for the 2.1.0 milestone.

faustbrian and others added some commits Dec 13, 2018

refactor: migrate to typescript (#1625)
- refactor(core): migrate to typescript
- refactor(core-api): migrate to typescript
- refactor(core-blockchain): migrate to typescript
- refactor(core-config): migrate to typescript
- refactor(core-container): migrate to typescript
- refactor(core-database): migrate to typescript
- refactor(core-database-postgres): migrate to typescript
- refactor(core-debugger-cli): migrate to typescript
- refactor(core-deployer): migrate to typescript
- refactor(core-elasticsearch): migrate to typescript
- refactor(core-error-tracker-bugsnag): migrate to typescript
- refactor(core-error-tracker-sentry): migrate to typescript
- refactor(core-event-emitter): migrate to typescript
- refactor(core-forger): migrate to typescript
- refactor(core-graphql): migrate to typescript
- refactor(core-http-utils): migrate to typescript
- refactor(core-json-rpc): migrate to typescript
- refactor(core-logger): migrate to typescript
- refactor(core-logger-winston): migrate to typescript
- refactor(core-p2p): migrate to typescript
- refactor(core-snapshots): migrate to typescript
- refactor(core-snapshots-cli): migrate to typescript
- refactor(core-test-utils): migrate to typescript
- refactor(core-tester-cli): migrate to typescript
- refactor(core-transaction-pool): migrate to typescript
- refactor(core-utils): migrate to typescript
- refactor(core-vote-report): migrate to typescript
- refactor(core-webhooks): migrate to typescript
- refactor(crypto): migrate to typescript
- refactor(core-transaction-pool): merge core-transaction-pool-mem
- fix(core-container): only resolve options for plugins that are registered
- refactor(core-p2p): merge the peers.json configuration into the defaults
- test(crypto): add delegate model constructor tests
- test(crypto): add delegate model passphrase encryption and decryption tests
- feat(core): add --launch-mode flag for seeds
- test: resolve some issues with beforeEach/afterEach data resets
- chore: change how tests are ran on CircleCI to avoid misconfigurations
- chore: setup node 11 for CircleCI
fix(core-p2p): malformed condition for filtering peers (#1689)
Currently we would leave in the list all peers that:
"are not me or have invalid port or have invalid version"
the intention must have been:
"are not me and have valid port and have valid version".
perf(core-api): use a faster alternative to derive an estimate (#1655)
* perf(core-api): use a faster alternative to derive an estimate

When we use OFFSET and LIMIT in SQL we want to assess the total number
of rows that would have been returned if OFFSET and LIMIT were omitted.

Instead of doing a separate query with COUNT(*), parse the output
of EXPLAIN SELECT ... and fetch the number of rows from there.
fix(core-database): delegate ordering (#1731)
* fix(core-database): delegate ordering

* tests(core-database): change tests to include orderBy param

* tests(core-api): change tests to include orderBy param
fix(core-p2p): prevent the list of peers to become too short (#1713)
* fix: prevent the list of peers to go become too short

* Reschedule a call to updateNetworkStatusIfNotEnoughPeers() at the end
  of updateNetworkStatus(), even if successful.

* Add peers from config.peers.list if the list is too short

* Remove loop by recursion in updateNetworkStatus()

* Remove loop by recursion in discoverPeers() and cycle through the
  peers in deterministic fashion after shuffling them. The previous
  implementation would pick one random peer and if unsuccessful, then
  pick random peer and retry, but this way we could end up retrying with
  the same peer over and over again. For example if 70% of the peers
  result in failure and 30% not, we could loop a lot of times over the
      bad portion of the peers.

* Replay 575ba01 and 776e06f

575ba01 fix: use __filterPeers to populate seed peers
776e06f refactor: rename to populateSeedPeers

* fix(test): the return value from monitor.getPeers() is an array

* fix(test): properly handle the return value of getPeers()
refactor(core-p2p): replace the network update timeout with a period …
…check (#1738)

* refactor(core-p2p): replace the network update timeout with a period check

* refactor(core-p2p): only sett the last network timeout if it is not set or expired

* chore(core-p2p): remove pTimeout dependency

* refactor: change name and make sure the next network update is scheduled
chore: update @babel/core and @babel/preset-env (#1740)
* chore(package): update @babel/core to version 7.2.2

* chore(package): update @babel/preset-env to version 7.2.0

* chore(package): update lockfile yarn.lock

* chore: update yarn.lock
fix(core-blockchain): discard blocks containing forged tx and stop pr…
…ocess queue on fork (#1732)

* refactor: remove misleading log output

* refactor: move block exception check

* fix: reset queue at the beginning of fork recovery

* refactor: drop process queue after disregarding unchained block

* fix: update blocks from current round after recovery

* fix: check if received block contains forged transactions

* refactor: only fork when downloaded block cannot be chained with last accepted block

* refactor: only check forged transactions if it is a chained block

* test: fix

* fix(core-p2p): call updateNetworkStatusIfNotEnoughPeers in the correct context (#1737)

* refactor(core-p2p): replace the network update timeout with a period check (#1738)

* refactor(core-p2p): replace the network update timeout with a period check

* refactor(core-p2p): only sett the last network timeout if it is not set or expired

* chore(core-p2p): remove pTimeout dependency

* refactor: change name and make sure the next network update is scheduled

* chore(package): update better-sqlite3 to version 5.2.0 (#1739)

* test(core-utils): increase coverage (#1742)

* test(core-debugger-cli): increase coverage (#1743)

* chore: update @babel/core and @babel/preset-env (#1740)

* chore(package): update @babel/core to version 7.2.2

* chore(package): update @babel/preset-env to version 7.2.0

* chore(package): update lockfile yarn.lock

* chore: update yarn.lock

* test(crypto): increase identity coverage (#1744)

* test(crypto): increase handler coverage (#1745)

* test(crypto): increase handler coverage (#1746)

* test(crypto): increase multi signature/payment coverage (#1747)

* docs: changelog and readme formatting (#1824)

* refactor: rename resetQueue

* fix: only care about missing blocks when process queue is empty

* refactor: reword log message

* refactor: move fork into function

* fix: accept internal blocks even if in fork state

* fix: dont show peer tracker after init

* refactor: remove useless forked flag

faustbrian and others added some commits Feb 6, 2019

@ArkEcosystemBot

This comment has been minimized.

Copy link
Member

ArkEcosystemBot commented Feb 10, 2019

@air1one @supaiku0 - please review this in the next few days. Be sure to explicitly select labels so I know what's going on.

If no reviewer appears after a week, a reminder will be sent out.

@codecov-io

This comment has been minimized.

Copy link

codecov-io commented Feb 10, 2019

Codecov Report

Merging #2077 into master will increase coverage by 21.99%.
The diff coverage is 81.81%.

Impacted file tree graph

@@             Coverage Diff             @@
##           master    #2077       +/-   ##
===========================================
+ Coverage   56.54%   78.54%   +21.99%     
===========================================
  Files         444      331      -113     
  Lines        7987     7740      -247     
  Branches     1031     1091       +60     
===========================================
+ Hits         4516     6079     +1563     
+ Misses       3023     1630     -1393     
+ Partials      448       31      -417
Impacted Files Coverage Δ
...kages/core-api/src/versions/2/peers/transformer.ts 77.77% <ø> (ø)
...core-api/src/versions/2/transactions/controller.ts 75.86% <ø> (ø)
...c/versions/2/shared/transformers/fee-statistics.ts 50% <ø> (ø)
...ackages/core-api/src/versions/2/node/controller.ts 73.91% <ø> (ø)
...ckages/core-api/src/versions/2/peers/controller.ts 63.88% <ø> (ø)
...es/core-api/src/versions/2/transactions/methods.ts 95% <ø> (ø)
packages/core-api/src/versions/2/utils.ts 87.5% <ø> (ø)
packages/core-api/src/versions/2/blocks/schema.ts 100% <ø> (ø)
packages/core-api/src/versions/2/votes/routes.ts 100% <ø> (ø)
packages/core-api/src/versions/2/votes/schema.ts 100% <ø> (ø)
... and 769 more

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 8a62f55...8399caa. Read the comment docs.

@supaiku0 supaiku0 self-requested a review Feb 11, 2019

@faustbrian faustbrian merged commit 90f4014 into master Feb 11, 2019

6 checks passed

ci/circleci: test-node10-0 Your tests passed on CircleCI!
Details
ci/circleci: test-node10-1 Your tests passed on CircleCI!
Details
ci/circleci: test-node10-2 Your tests passed on CircleCI!
Details
ci/circleci: test-node11-0 Your tests passed on CircleCI!
Details
ci/circleci: test-node11-1 Your tests passed on CircleCI!
Details
ci/circleci: test-node11-2 Your tests passed on CircleCI!
Details
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment