Skip to content
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 from
Closed

2.1 #2069

wants to merge 164 commits into from

Commits on Dec 13, 2018

  1. 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
    faustbrian committed Dec 13, 2018
    Configuration menu
    Copy the full SHA
    fad5a25 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    452f96b View commit details
    Browse the repository at this point in the history

Commits on Dec 14, 2018

  1. fix(core-api): pagination schema (#1717)

    spkjp authored and faustbrian committed Dec 14, 2018
    Configuration menu
    Copy the full SHA
    9f320c4 View commit details
    Browse the repository at this point in the history
  2. 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".
    vasild authored and faustbrian committed Dec 14, 2018
    Configuration menu
    Copy the full SHA
    0c23196 View commit details
    Browse the repository at this point in the history
  3. 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.
    vasild authored and faustbrian committed Dec 14, 2018
    Configuration menu
    Copy the full SHA
    8fc955a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d3815ac View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    fb7e703 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    6284457 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    5d7e891 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    904bfba View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    03aef7f View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    c419ef7 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    3487fed View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    08558a3 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    109a4d3 View commit details
    Browse the repository at this point in the history
  14. 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
    dated authored and faustbrian committed Dec 14, 2018
    Configuration menu
    Copy the full SHA
    2bb00da View commit details
    Browse the repository at this point in the history

Commits on Dec 15, 2018

  1. 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 575ba010 and 776e06ff
    
    575ba010 fix: use __filterPeers to populate seed peers
    776e06ff refactor: rename to populateSeedPeers
    
    * fix(test): the return value from monitor.getPeers() is an array
    
    * fix(test): properly handle the return value of getPeers()
    vasild authored and faustbrian committed Dec 15, 2018
    Configuration menu
    Copy the full SHA
    9502585 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    9c545bc View commit details
    Browse the repository at this point in the history
  3. 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
    faustbrian authored and spkjp committed Dec 15, 2018
    Configuration menu
    Copy the full SHA
    e42f4c7 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    3b43057 View commit details
    Browse the repository at this point in the history

Commits on Dec 16, 2018

  1. Configuration menu
    Copy the full SHA
    c551622 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    55bf003 View commit details
    Browse the repository at this point in the history
  3. 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
    faustbrian committed Dec 16, 2018
    Configuration menu
    Copy the full SHA
    5d9c769 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    e9a7e4c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    375770c View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    61e8bc1 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    4980c07 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    e39e781 View commit details
    Browse the repository at this point in the history

Commits on Dec 17, 2018

  1. Configuration menu
    Copy the full SHA
    db6590e View commit details
    Browse the repository at this point in the history
  2. 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
    spkjp committed Dec 17, 2018
    Configuration menu
    Copy the full SHA
    35dbb99 View commit details
    Browse the repository at this point in the history
  3. refactor: split config into network, milestones, exceptions and dynam…

    …ic-fees (#1733)
    
    * refactor(crypto): split testnet config into network, milestones and fees
    * refactor: simplify the crypto configuration
    * refactor: move dynamic fees into the transaction pool
    * refactor: make TRANSACTION_TYPES an enum
    faustbrian committed Dec 17, 2018
    Configuration menu
    Copy the full SHA
    9a76d4c View commit details
    Browse the repository at this point in the history

Commits on Dec 18, 2018

  1. feat(core-p2p): milestone hash (#1837)

    * fix: only clear process queue
    
    * feat: check peer milestone hash
    
    * test: fix
    spkjp authored and faustbrian committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    3674423 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aff9c15 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    8c9b323 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    be16f1d View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    83ad5b5 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    7c6100d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    7d4d126 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    f082137 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    967d014 View commit details
    Browse the repository at this point in the history
  10. fix(core-p2p): config getter (#1845)

    spkjp authored and faustbrian committed Dec 18, 2018
    Configuration menu
    Copy the full SHA
    07380e9 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    bc2a79b View commit details
    Browse the repository at this point in the history

Commits on Dec 19, 2018

  1. fix(core-p2p): parse headers milestone hash (#1851)

    * fix: missing peer milestoneHash filter
    
    * fix: milestonehash != milestoneHash
    
    * refactor: make fields public
    spkjp authored and faustbrian committed Dec 19, 2018
    Configuration menu
    Copy the full SHA
    cb444cf View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    24efce7 View commit details
    Browse the repository at this point in the history
  3. fix(core-p2p): wrong config object in /config (#1854)

    * refactor: move shared fields to super class
    
    * fix: pass correct config object
    
    * refactor: remove no longer needed super calls
    spkjp authored and faustbrian committed Dec 19, 2018
    Configuration menu
    Copy the full SHA
    a1d4077 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d68943d View commit details
    Browse the repository at this point in the history
  5. feat: allow searching wallets by several addresses at once (#1852)

    * test(core-api): searching wallets using several addresses
    
    * feat: allow searching wallets by several addresses
    
    * test(core-database): searching wallets using several addresses
    
    * test(core-database): refactor `filterRows` utility tests
    
    * test(core-database): test the `in` filter of `filterRows` utility
    
    * test(core-database): search wallets by several addresses
    
    * feat(core-database): allow searching wallets by several addresses
    j-a-m-l authored and faustbrian committed Dec 19, 2018
    Configuration menu
    Copy the full SHA
    b172743 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ef2d321 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    bf990b8 View commit details
    Browse the repository at this point in the history
  8. chore: setup dependency update command (#1865)

    * chore: setup dependency update command
    
    * chore: update yarn.lock
    
    * test(core-api): less error prone wallet search
    faustbrian committed Dec 19, 2018
    Configuration menu
    Copy the full SHA
    d147c7b View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    d202f2c View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    066d1a7 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    9d06e55 View commit details
    Browse the repository at this point in the history

Commits on Dec 20, 2018

  1. Configuration menu
    Copy the full SHA
    30ab06d View commit details
    Browse the repository at this point in the history
  2. feat(core-api): allow searching by several addresses on `/api/transac…

    …tions/search` (#1872)
    
    * test(core-api): improve transactions repository search test
    
    * refactor(core-api): rename the file of `buildFilterQuery` utility
    
    * test(core-api): invalid `senderId` should return 0 results
    
    * improvement(core-api): return 0 results directly when `senderId` is incorrect
    
    * chore(core-api): add `lodash.partition` as dependency
    
    * test(core-api): test `in` filters of `buildFilterQuery`
    
    * feat(core-api): allow queries with the `in` operator
    
    * test(core-api): searching transactions by `addresses` on the repository
    
    * feat(core-api): allow searching transactions by `addresses` on the repository
    
    * docs(core-api): document the `search` method of the transaction repository
    
    * test(core-api): the `addresses` parameter on `/api/transaction/search`
    
    * feat(core-api): allow the `addresses` parameter on `/api/transaction/search`
    j-a-m-l authored and faustbrian committed Dec 20, 2018
    Configuration menu
    Copy the full SHA
    f545b3f View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    017e0bd View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    8dffbb7 View commit details
    Browse the repository at this point in the history
  5. feat(core-database): enable delegate ordering by 'rank' (#1890)

    * feat(core-database): enable delegate ordering by 'rank'
    
    * test(core-api): expect validity of each returned delegate
    dated authored and faustbrian committed Dec 20, 2018
    2 Configuration menu
    Copy the full SHA
    8c2e8e8 View commit details
    Browse the repository at this point in the history

Commits on Dec 21, 2018

  1. Configuration menu
    Copy the full SHA
    9a19547 View commit details
    Browse the repository at this point in the history
  2. fix(core-transaction-pool): check against transaction network byte if…

    … set (#1853)
    
    * fix: reject transaction if network byte is set and does not match pubkeyhash
    * test: add tx network byte tests
    * fix: use Joi.lazy to read from configManager
    * fix: read current network config in transaction builder
    spkjp authored and faustbrian committed Dec 21, 2018
    Configuration menu
    Copy the full SHA
    22e04af View commit details
    Browse the repository at this point in the history
  3. refactor: export core-container types (#1891)

    * refactor: export core-container types
    
    * refactor: use core-container/logger types in core-forger
    
    * refactor: use core-container/logger types in core-database
    
    * refactor: use core-container/logger types in core-database-postgres
    
    * refactor: use core-container/logger types in core-tracker-sentry
    
    * refactor: use core-container/logger types in core-tracker-bugsnag
    
    * refactor: use core-container/logger types in core-graphql
    
    * refactor: use core-container/logger types in core-elasticsearch
    
    * refactor: use core-container/logger types in core-api
    
    * refactor: use core-container/logger types in core-json-rpc
    
    * refactor: use core-container/logger types in core-p2p
    
    * refactor: use core-container/logger types in core-snapshots
    
    * refactor: use core-container/logger types in core-snapshots-cli
    
    * refactor: use core-container/logger types in core-transaction-pool
    
    * refactor: use core-container/logger types in core-vote-report
    
    * refactor: use core-container/logger types in core-webhooks
    
    * refactor: use core-container/logger types in core-blockchain
    
    * fix: guard.test failing due to eager resolving of logger
    paroxysm authored and faustbrian committed Dec 21, 2018
    Configuration menu
    Copy the full SHA
    26374df View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    7df0e8c View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    3a96db4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    64e290c View commit details
    Browse the repository at this point in the history

Commits on Dec 24, 2018

  1. refactor: export core-database typedefs (#1901)

    * refactor: Export core-database typedefs
    
    * refactor: Use core-database typdefs in core-database-postgres
    
    * fix: failing tests
    paroxysm authored and faustbrian committed Dec 24, 2018
    Configuration menu
    Copy the full SHA
    6466030 View commit details
    Browse the repository at this point in the history

Commits on Dec 25, 2018

  1. refactor: Export core-database typedefs (#1905)

    * refactor: Export core-database typedefs
    
    * refactor: Use core-database typdefs in core-database-postgres
    
    * fix: failing tests
    
    * refactor: Export core-database-postgres typedefs
    refactor: Remove un-used SPV.connection property
    refactor: Remove ConnectionInterface.connection property. This available in the 'options' object that's passed via constructor.
    refactor: Use inline-initialization instead of constructor initialization for concise code, unless we're accessing constructor parameters.
    
    * refactor: Use core-database-postgres typedefs in other modules
    refactor: more inline-initialization vs constructor
    refactor: Removed some redundant vars in core-api Repositories, use inherited references instead.
    paroxysm authored and faustbrian committed Dec 25, 2018
    Configuration menu
    Copy the full SHA
    c5a235b View commit details
    Browse the repository at this point in the history

Commits on Dec 26, 2018

  1. Configuration menu
    Copy the full SHA
    f8c4796 View commit details
    Browse the repository at this point in the history

Commits on Dec 27, 2018

  1. Configuration menu
    Copy the full SHA
    9900caa View commit details
    Browse the repository at this point in the history

Commits on Dec 30, 2018

  1. Configuration menu
    Copy the full SHA
    6967e5b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d7d74bc View commit details
    Browse the repository at this point in the history

Commits on Dec 31, 2018

  1. Configuration menu
    Copy the full SHA
    d7bb3b6 View commit details
    Browse the repository at this point in the history

Commits on Jan 3, 2019

  1. Configuration menu
    Copy the full SHA
    b26ab9c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    18120a3 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    276b4e2 View commit details
    Browse the repository at this point in the history
  4. feat(core-interfaces): initial implementation (#1924)

    * feature: add base core-interfaces package/module
    
    * feature: add core-logger interface
    
    * feature: add core-container interfaces
    
    * feature: add core-blockchain interfaces to core-interfaces
    
    * feature: add core-transactionpool interfaces to core-interfaces
    feature: add the shared utility class 'Config'
    
    * refactor: start using core-interfaces types in the other modules.
    
    * fix: test compilation in core
    
    * refactor: change refs of core-logger 'AbstractLogger' to 'Logger.Logger' of core-interfaces
    
    * feature: add core-eventemitter type to core-interfaces
    
    * refactor: use core-interface's EventEmitter to provide type-safety
    
    * refactor: have BlockchainImpl implement core-interfaces Blockchain.Blockchain interface.
    refactor: Use core-interface's Blockchain.Blockchain to provide type safety
    
    * refactor: use types in core-blockchain tests
    
    * feature: add interfaces in core-interface for core-p2p
    refactor: Use P2P types around the modules.
    
    * fix: failing tests by pulling the compiled types in tests. Because of the way we instantiate objects when exporting them, it can cause issues when we import that module before starting up the container. So the constructor may try to resolve from a container which hasn't been setup yet.
    
    * refactor: rename core-interfaces to prefix an 'I'
    fix: shared.Config class having buggy 'init' method
    
    * refactor: remove 'core-logger' dependency from modules that don't need the concrete implementation.
    
    * refactor: missed renaming PeerImpl
    
    * refactor: remove explicit core-transaction-pool unless you need concrete types
    paroxysm authored and faustbrian committed Jan 3, 2019
    Configuration menu
    Copy the full SHA
    dfa3881 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    13bc930 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    06ab743 View commit details
    Browse the repository at this point in the history
  7. refactor(crypto): only allow vendor fields for type 0 & type 6 (#1931)

    * refactor(crypto): only allow vendor fields for type 1 & type 6
    
    * fix(crypto): make canHaveVendorField public
    
    * refactor(crypto): add return type to canHaveVendorField
    
    * fix(crypto): allow vendor fields for timelock transfers
    
    * fix(crypto): add vendor field to timelock transfer extension
    
    * chore(crypto): add vote with vendor field exception
    faustbrian committed Jan 3, 2019
    Configuration menu
    Copy the full SHA
    86a4a2f View commit details
    Browse the repository at this point in the history
  8. refactor(core-p2p): network state quorum calculation (#1898)

    * refactor: network state
    
    * refactor: add quorum details, split into methods
    
    * refactor: simplify
    
    * chore: add comments
    
    * refactor: elasticity peers
    
    * refactor: move overHeight to quorumDetails
    
    * refactor: take multiple overheight block headers into account
    
    * refactor: rename
    
    * refactor: use more static typing
    
    * refactor: introduce NetworkStateStatus
    
    * misc: export types
    
    * refactor: update forger tests, add core-p2p dependency
    
    * refactor: add unknown status
    
    * refactor: tweak toJson
    
    * fix: handle NaN
    
    * style: rephrase
    
    * fix: network state parsing
    
    * refactor: count ignored peers for quorum
    
    * refactor(core-p2p): use isFinite instead of isNaN
    
    * chore: call sort in .circleci generateConfig
    spkjp authored and faustbrian committed Jan 3, 2019
    Configuration menu
    Copy the full SHA
    c25967f View commit details
    Browse the repository at this point in the history
  9. fix(core-transaction-pool): only return error when min fee is too lo…

    …w for broadcast and accept (#1940)
    spkjp authored and faustbrian committed Jan 3, 2019
    Configuration menu
    Copy the full SHA
    7d240d9 View commit details
    Browse the repository at this point in the history

Commits on Jan 4, 2019

  1. perf(crypto): native bip38 (#1941)

    spkjp authored and faustbrian committed Jan 4, 2019
    Configuration menu
    Copy the full SHA
    02467f3 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    7597399 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    12a6aa7 View commit details
    Browse the repository at this point in the history

Commits on Jan 5, 2019

  1. refactor(core-blockchain): reset wakeup timeout (#1946)

    * refactor: add setWakeUp and resetWakeUp functions
    
    * refactor: export StateStorage class
    
    * refactor: rename checkLaterTimeout
    
    * refactor: call resetWakeup after chaining block
    
    * fix: interfaces
    spkjp authored and faustbrian committed Jan 5, 2019
    Configuration menu
    Copy the full SHA
    e5d9abd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    72b1a0b View commit details
    Browse the repository at this point in the history

Commits on Jan 7, 2019

  1. Configuration menu
    Copy the full SHA
    9d223c8 View commit details
    Browse the repository at this point in the history

Commits on Jan 8, 2019

  1. Configuration menu
    Copy the full SHA
    d0634da View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    69421d7 View commit details
    Browse the repository at this point in the history
  3. fix(core-api): use correct schemas (#1954)

    * fix(core-api): use correct schemas
    
    * fix(core-api): allow uppercase characters in identifiers
    faustbrian authored and spkjp committed Jan 8, 2019
    Configuration menu
    Copy the full SHA
    80e35a9 View commit details
    Browse the repository at this point in the history

Commits on Jan 9, 2019

  1. test: modify transactions after signing in the transaction guard (#1956)

    * chore: update unitnet network, was missing tx to send coins to wallets
    
    * chore: add 'blocks'  to unitnet fixtures
    
    * chore: update generators to batch generate with multiple passphrases
    
    * test: use unitnet network + add 'modify tx after sign' tests to guard
    air1one authored and faustbrian committed Jan 9, 2019
    Configuration menu
    Copy the full SHA
    a6e98f0 View commit details
    Browse the repository at this point in the history
  2. fix(core-api): return the database timestamp instead of deserialised (

    …#1957)
    
    * fix(core-api): return the database timestamp instead of deserialised
    
    * fix(core-api): query transaction timestamps
    
    * fix(core-api): query transaction timestamp for legacy and wallet methods
    
    * fix(core-api): use deserialised timestamp if the model has none
    faustbrian authored and spkjp committed Jan 9, 2019
    Configuration menu
    Copy the full SHA
    dfa2ac0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    9b26df4 View commit details
    Browse the repository at this point in the history

Commits on Jan 10, 2019

  1. Configuration menu
    Copy the full SHA
    7dcb256 View commit details
    Browse the repository at this point in the history
  2. refactor(core-blockchain): block processing (#1953)

    * refactor: move isChained to utils
    
    * refactor: simplify downloadBlocks
    
    * refactor: rename queueBlock to handleIncomingBlock
    
    * refactor: enqueue blocks
    
    * refactor: remove useless try catch
    
    * refactor: rename module
    
    * refactor: move generator validation to core-blockchain
    
    * fix: missing return true
    
    * refactor: introduce BlockProcessor class, split processing logic into small Handler classes
    
    * refactor: re-add fork and tx pool calls
    
    * fix: get logger from container
    
    * fix: small regressions
    
    * test: fix failing tests
    
    * misc: implement interface again
    spkjp authored and faustbrian committed Jan 10, 2019
    Configuration menu
    Copy the full SHA
    39b6aa8 View commit details
    Browse the repository at this point in the history
  3. fix(core-p2p): malformed condition for filtering peers (#1939)

    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".
    
    This change was first done in 0c23196 and was later reverted in
    109a4d3 with a scarce explanation: "it randomly causes issues". It is
    not clear what those issues were.
    
    However the current code is strikingly and obviously wrong - it would
    add peers that have invalid port, for example.
    
    So, fix the wrong code and followup by fixing any issues that arise, but
    not by resurrecting the wrong code.
    vasild authored and faustbrian committed Jan 10, 2019
    Configuration menu
    Copy the full SHA
    a8aa729 View commit details
    Browse the repository at this point in the history

Commits on Jan 11, 2019

  1. 1 Configuration menu
    Copy the full SHA
    1c254aa View commit details
    Browse the repository at this point in the history

Commits on Jan 14, 2019

  1. Configuration menu
    Copy the full SHA
    252a16a View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    de13e61 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    b69c92f View commit details
    Browse the repository at this point in the history

Commits on Jan 15, 2019

  1. Configuration menu
    Copy the full SHA
    7ff52c8 View commit details
    Browse the repository at this point in the history
  2. refactor(crypto): split de/serialization, more static typing, cleanup (

    …#1969)
    
    * refactor: add transaction data interface
    
    * refactor: transaction deserializer
    
    * fix: parse signatures
    
    * fix: deserialization
    
    * refactor: transaction serializer
    
    * refactor: export cleanup
    
    * refactor: more Transaction class cleanup
    
    * refactor: BlockDeserializer
    
    * refactor: remove genesis block workarounds
    
    * refactor: BlockSerializer
    
    * refactor: remove obsolete code, fix ts errors
    
    * fix: genesis id
    
    * refactor: some more Block class cleanup
    
    * refactor: Delegate model, more types
    
    * refactor: Wallet model
    
    * refactor: add more types
    
    * fix: wrong property
    
    * refator: use Block interfaces
    
    * refactor: simplify getId
    
    * chore: remove unused files
    
    * refactor: exports
    
    * refactor: identities
    
    * refactor: wallet
    
    * refactor: message
    
    * refactor: use identities instead of duplicating logic
    
    * refactor: use HashAlgorithms
    
    * refactor: fee manager and slots
    
    * fix: missing type
    
    * refactor: add managers
    
    * refactor: transaction handlers
    
    * refactor: make apply and revert protected
    
    * refactor: transaction builder
    
    * refactor: misc
    
    * fix: builder generics
    
    * refactor: add transaction asset interface
    
    * fix: failing test
    
    * fix: forger tests
    
    * fix: builder tests
    
    * fix: database tests
    
    * fix: fee manager test
    
    * fix: delegat tests
    
    * fix: block header only deserialization
    
    * refactor: remove lodash cloneDeepWith dependency
    
    * fix: block header once more
    
    * refactor: move isException check to crypto
    spkjp authored and faustbrian committed Jan 15, 2019
    Configuration menu
    Copy the full SHA
    5aa2731 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ce45f61 View commit details
    Browse the repository at this point in the history
  4. perf(core-blockchain): optimize StateStorage.getCommonBlocks() (#1981)

    Avoid a pattern like
    
      for each element in array1 do: check if it exists in array2 (linearly)
      aka
      for each element in array1 do: for each element in array2 ...
    
    because its complexity is O(array1.length * array2.length). It can be
    easily reduced to O(array1.length) if the check for existence is made
    O(1) (hash lookup).
    vasild authored and spkjp committed Jan 15, 2019
    Configuration menu
    Copy the full SHA
    1b42c18 View commit details
    Browse the repository at this point in the history
  5. perf(core-p2p): optimize Peer.getPeers() (#1983)

    From O(M * N) to O(M + N).
    vasild authored and faustbrian committed Jan 15, 2019
    Configuration menu
    Copy the full SHA
    7808755 View commit details
    Browse the repository at this point in the history

Commits on Jan 16, 2019

  1. Configuration menu
    Copy the full SHA
    dcfa2c7 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    5df5ba2 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    795c077 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    a7e7cb6 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    9f7e0f4 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    491852e View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    a1609a2 View commit details
    Browse the repository at this point in the history
  8. fix(core-database-postgres): off-by-one error in getBlocks() (#1982)

    The getBlocks() function takes offset,limit arguments, presumably with
    the intention of returning maximum `limit` number of elements, starting
    from `offset`. However it would return `limit + 1` elements. E.g. if
    given offset=5,limit=2 it would return three elements: 5,6,7 instead of
    the expected two 5,6.
    
    As a side effect of this, the `if (blocks.length !== limit)` check
    inside getBlocks() would never be true and we would always retrieve the
    blocks from the database, even if they are present in the "state".
    
    The callers of getBlocks() were adapted to this wretched behavior and
    did ask for `limit - 1`, knowing they would get one more. Adjust that,
    now that it is not needed.
    
    Also, rename a confusingly named variable `blocksToRemove` which
    actually does not contain the blocks to be removed (!).
    vasild authored and faustbrian committed Jan 16, 2019
    Configuration menu
    Copy the full SHA
    52e7fe8 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    5a703df View commit details
    Browse the repository at this point in the history

Commits on Jan 17, 2019

  1. test: fix coverage by registering current package plugin manually (#1995

    )
    
    * chore: add utils function to register manually a plugin
    
    * test: setup core-api plugin manually
    
    * test: setup core-blockchain plugin manually
    
    * chore: core-database require from src instead of dist
    
    * test: setup core-database-postgres plugin manually
    
    * test: setup core-graphql plugin manually
    
    * test: setup core-json-rpc plugin manually
    
    * test: setup core-p2p plugin manually
    
    * test: setup core-transaction-pool plugin manually
    air1one authored and faustbrian committed Jan 17, 2019
    Configuration menu
    Copy the full SHA
    8cb6716 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    24d43fe View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c3ad02d View commit details
    Browse the repository at this point in the history

Commits on Jan 18, 2019

  1. chore: bump @types/node-forge (#1998)

    spkjp authored and faustbrian committed Jan 18, 2019
    Configuration menu
    Copy the full SHA
    de97a29 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    aa0718e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ea4f775 View commit details
    Browse the repository at this point in the history

Commits on Jan 21, 2019

  1. test(crypto): increase model coverage (#2005)

    * refactor: remove redundant code + move isDirty on revertBlock
    
    * test: add tests for crypto model/wallet revert block and audit
    
    * test: add tests for canApply / apply/revertTransaction... and audit
    
    * test: add tests to crypto models/delegate forge
    
    * test: add tests to crypto models/block
    
    * test: fix restoring mocks
    
    * test: add block verify tests
    air1one authored and faustbrian committed Jan 21, 2019
    Configuration menu
    Copy the full SHA
    ec5cd33 View commit details
    Browse the repository at this point in the history
  2. chore(crypto): add devnet blocks and transactions exceptions (#2002)

    Multiple blocks were forged by a delegate within a single slot.
    vasild authored and spkjp committed Jan 21, 2019
    Configuration menu
    Copy the full SHA
    5dd3121 View commit details
    Browse the repository at this point in the history

Commits on Jan 22, 2019

  1. refactor: update storage paths (#2007)

    * fix: allow config without data argument
    
    * refactor: add namespace to env paths
    
    * refactor: utils export
    
    * refactor: dump and restore peers from new cache location
    
    * fix: tests
    
    * fix: use localConfig
    
    * chore: move transaction pool db to cache directory
    
    * fix: log path
    
    * chore: remove obsolete schema
    spkjp authored and faustbrian committed Jan 22, 2019
    Configuration menu
    Copy the full SHA
    00a9f86 View commit details
    Browse the repository at this point in the history
  2. feat(core-api): return wallet vote on v2 endpoints (#2009)

    * feat: return wallet vote on v2 endpoints
    
    * test: expect vote with wallet responses
    alexbarnsley authored and faustbrian committed Jan 22, 2019
    Configuration menu
    Copy the full SHA
    7d6125c View commit details
    Browse the repository at this point in the history
  3. test(crypto): transaction validators (#2008)

    * refactor: transaction builders add init values + getStruct fields
    
    * refactor: add more joi validators to bignumber
    
    * refactor: update crypto transaction validators
    
    * test: crypto transaction validators tests
    air1one authored and faustbrian committed Jan 22, 2019
    Configuration menu
    Copy the full SHA
    23b978c View commit details
    Browse the repository at this point in the history

Commits on Jan 23, 2019

  1. Configuration menu
    Copy the full SHA
    cc1c249 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    938d79b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    5980c33 View commit details
    Browse the repository at this point in the history
  4. chore: update changelog

    faustbrian committed Jan 23, 2019
    Configuration menu
    Copy the full SHA
    0bad276 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    5c687f4 View commit details
    Browse the repository at this point in the history

Commits on Jan 24, 2019

  1. test(crypto): ser/deserialization on blocks and transaction (#2018)

    * refactor: move fixtures up in crypto test directory
    
    * fix: incoherencies between ser and deserialization
    
    * refactor: transaction builders
    
    * test: ser/deserialize blocks and transactions
    
    * test: crypto validation engine
    
    * refactor: no need to override sign method
    
    * test: fix failing tests
    air1one authored and faustbrian committed Jan 24, 2019
    Configuration menu
    Copy the full SHA
    2a185a9 View commit details
    Browse the repository at this point in the history

Commits on Jan 25, 2019

  1. test(crypto): add missing tests to get coverage to 100% (#2019)

    * test: add bip38 and crypto tests
    
    * test: add tests to crypto / hdwallet / slots
    
    * syntax: fixed error message in multi-payment builder
    
    * test: add tests to builders
    
    * test: add tests to transaction ser/deserializers
    
    * test: add tests to crypto handlers
    
    * test: add tests to crypto managers
    
    * test: add tests for crypto utils / sort-transactions
    air1one authored and faustbrian committed Jan 25, 2019
    Configuration menu
    Copy the full SHA
    5db86e1 View commit details
    Browse the repository at this point in the history

Commits on Jan 27, 2019

  1. Configuration menu
    Copy the full SHA
    9a264b4 View commit details
    Browse the repository at this point in the history

Commits on Jan 28, 2019

  1. Configuration menu
    Copy the full SHA
    ec643fe View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    36f96dd View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c4d9879 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    eea3a76 View commit details
    Browse the repository at this point in the history
  5. refactor(crypto): remove validation rules and validator (#2021)

    * refactor(crypto): remove validation rules and validator
    
    * test(crypto): increase bignumber extension coverage
    
    * test(crypto): skip multi payment handler due to new rules
    faustbrian authored and spkjp committed Jan 28, 2019
    Configuration menu
    Copy the full SHA
    4b59073 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    77653d7 View commit details
    Browse the repository at this point in the history

Commits on Jan 29, 2019

  1. Configuration menu
    Copy the full SHA
    75962f3 View commit details
    Browse the repository at this point in the history
  2. test(core-transaction-pool): 100% coverage (#2030)

    * fix: condition senderWallet.balance === 0 didn't work with bignum
    
    * test: add tests to transaction-pool connection
    
    * test: add tests to transaction-pool guard
    
    * test: update generated tx to make it different than others
    
    * refactor: delegate test generator to allow setting username
    
    * test: add tests for transaction-pool
    
    * test: add storage and dynamic-fee tests (transaction-pool)
    
    * test: add validate tests to guard (unsupported tx types)
    air1one authored and faustbrian committed Jan 29, 2019
    Configuration menu
    Copy the full SHA
    9b54de8 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    50568a4 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    13f2ecc View commit details
    Browse the repository at this point in the history
  5. fix(core-api): return fixed states for the v1 and v2 API peer lists (#…

    …2027)
    
    * fix(core-api): return fixed states for the v1 and v2 API peer lists
    
    * fix: remove core-p2p dependency
    faustbrian authored and spkjp committed Jan 29, 2019
    Configuration menu
    Copy the full SHA
    6949148 View commit details
    Browse the repository at this point in the history

Commits on Jan 30, 2019

  1. Configuration menu
    Copy the full SHA
    fb0491a View commit details
    Browse the repository at this point in the history

Commits on Jan 31, 2019

  1. fix: add devnet tx exceptions (#2043)

    spkjp authored and faustbrian committed Jan 31, 2019
    Configuration menu
    Copy the full SHA
    c922325 View commit details
    Browse the repository at this point in the history
  2. refactor: remove progress tracker and further reduce log noise (#2044)

    * refactor: remove progress tracker and further reduce log noise
    
    * Update blockchain.ts
    
    * Update driver.ts
    faustbrian authored and spkjp committed Jan 31, 2019
    Configuration menu
    Copy the full SHA
    b10a948 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    fd1bb45 View commit details
    Browse the repository at this point in the history

Commits on Feb 1, 2019

  1. Configuration menu
    Copy the full SHA
    1ec1ee9 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4bc439a View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d1e65c0 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    0652c09 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    d77b15a View commit details
    Browse the repository at this point in the history
  6. 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
    faustbrian authored and spkjp committed Feb 1, 2019
    Configuration menu
    Copy the full SHA
    ef563b7 View commit details
    Browse the repository at this point in the history
  7. 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
    faustbrian authored and spkjp committed Feb 1, 2019
    Configuration menu
    Copy the full SHA
    b5bcfe9 View commit details
    Browse the repository at this point in the history

Commits on Feb 2, 2019

  1. Configuration menu
    Copy the full SHA
    c2c99e6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    27e4aa6 View commit details
    Browse the repository at this point in the history
  3. 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
    faustbrian authored and spkjp committed Feb 2, 2019
    Configuration menu
    Copy the full SHA
    9828c96 View commit details
    Browse the repository at this point in the history

Commits on Feb 3, 2019

  1. Configuration menu
    Copy the full SHA
    8a3a45b View commit details
    Browse the repository at this point in the history

Commits on Feb 4, 2019

  1. fix(crypto): disable multisig (#2057)

    spkjp authored and faustbrian committed Feb 4, 2019
    Configuration menu
    Copy the full SHA
    aac0e96 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    8e9049e View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    76eda8f View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5a3e765 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    0dd9062 View commit details
    Browse the repository at this point in the history

Commits on Feb 7, 2019

  1. Merge branch 'master' into next-release

    Brian Faust committed Feb 7, 2019
    Configuration menu
    Copy the full SHA
    048e61b View commit details
    Browse the repository at this point in the history