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

2.1 #2069

Closed
wants to merge 164 commits into
base: master
from

Conversation

Projects
None yet
@faustbrian
Copy link
Collaborator

faustbrian commented Feb 7, 2019

Merge next-release into master

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

supaiku0 and others added some commits Feb 1, 2019

refactor(core-debugger-cli): replace commander.js with @oclif (#2049)
* refactor(core-debugger-cli): replace commander.js with @oclif

* chore: remove empty dev dependencies

* chore: update yarn.lock

* chore(core-debugger-cli): add @oclif/config dependency

* chore(core-debugger-cli): remove commander.js dependency
feat(crypto): implement error classes (#2038)
* feat(crypto): implement error classes

* refactor(crypto): add more information to the error messages

* test(crypto): adjust test assertions and fixtures

* test(crypto): assert the type of error and message for bip38 fixtures

* refactor(crypto): rename ExtendableError to CryptoError

* refactor(crypto): remove redundant invalid prefixes from errors

* Update CHANGELOG.md

* Update CHANGELOG.md
refactor: move genesisBlock to network config and remove extraneous c…
…onfig (#2052)

* refactor: move genesisBlock to network config and remove extraneous config

* fix(core-container): adjust validation schema and stubs

* fix(crypto): expose the genesisBlock

* fix(crypto): add the correct genesisBlock

* chore: remove the genesisBlock.json during the upgrade

* test(crypto): add genesisBlock to fields and fix import paths
@ArkEcosystemBot

This comment has been minimized.

Copy link
Member

ArkEcosystemBot commented Feb 7, 2019

@supaiku0 @air1one - 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 7, 2019

Codecov Report

Merging #2069 into master will increase coverage by 17.22%.
The diff coverage is 81.42%.

Impacted file tree graph

@@             Coverage Diff             @@
##           master    #2069       +/-   ##
===========================================
+ Coverage   56.54%   73.76%   +17.22%     
===========================================
  Files         444      367       -77     
  Lines        7987     8257      +270     
  Branches     1031     1208      +177     
===========================================
+ Hits         4516     6091     +1575     
+ Misses       3023     2132      -891     
+ Partials      448       34      -414
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/votes/routes.ts 100% <ø> (ø)
packages/core-api/src/versions/2/votes/schema.ts 100% <ø> (ø)
...ges/core-api/src/versions/2/transactions/routes.ts 100% <ø> (ø)
... and 809 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...048e61b. Read the comment docs.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment