Skip to content

Releases: ArkEcosystem/core

2.3.12

24 Apr 02:28
Compare
Choose a tag to compare

Fixed

  • Use correct genesis block instead to verify snapshots (#2462 )
  • Don't pass suffix flag to bip38 and bip39 commands (#2464)

2.3.1

23 Apr 14:41
Compare
Choose a tag to compare

Fixed

  • Deserialize type > 0 with vendor field instead of skipping it (#2459)

2.3.0

23 Apr 12:58
9399a66
Compare
Choose a tag to compare

Breaking Changes

  • Removed the wallets table from the database (#2209)
    • Core 2.0 has been fully reliant on in-memory wallets since the 2.0 release. This only removes the dumping of wallets into the database as it is wasted space and doesn't serve any purpose.
    • If you have applications that rely on the database you should migrate them as soon as possible to using the API as only that data is provided in real-time.
  • Replace SQLite3 with lowdb in core-webhooks (#2124)
    • This significantly reduces the size of the package and it's dependencies.
    • This requires you to recreate your webhooks as the storage method changed.
  • Replaced core-logger-winston with core-logger-pino (#2134)
    • This significantly improves performance of logging when it occurs a lot in situations like syncing or rollbacks.
  • Rewrote core-tester-cli from scratch (#2133)
  • Merged core-debugger-cli into core-tester-cli and deprecated it (#2133)
  • Use the node.js EventEmitter from events instead of eventemitter3 (#2329)

Added

  • Implement AIP29 (#2122)
  • Search delegates by their username in core-api (#2143)
  • Implemented the ark reinstall command in core (#2192)
  • Added the --force flag to the ark update command in core (#2190)
  • Added more parameters for delegate searches in core-api (#2184)
  • Added restart flags to the ark update command in core (#2218)
  • Added the make:block command to core-tester-cli to create blocks (#2221)
  • Added the core-error-tracker-rollbar package (#2287)
  • Added the core-error-tracker-raygun package (#2288)
  • Added the core-error-tracker-airbrake package (#2289)
  • Added the core-logger-signale package (#2343)
  • Added more events for blocks and the transaction pool (#2321)
  • Return slip44 and wif via v2/node/configuration (#2388)
  • Added an asset column to the transactions table (#2236)

Fixed

  • Properly sort peers by their version (#2229)
  • Memory leak in the monitoring process of core-forger (#2341)
  • Handle dynamic round sizes with milestones (#2370)
  • Validate that a transaction recipient is on the same network (#2394)
  • Handle empty rows in mapBlocksToTransactions (#2404)
  • Prevent indexing/creating of ghost wallets (#2405)
  • Refuse transactions from senders with pending second signature registrations and do not rollback when refusing a block (#2458)

Changed

  • Increased the vendor field length to 255 bytes (#2159)
  • Replaced micromatch with nanomatch to improve performance (#2165)
  • Replaced axios with got to resolve known timeout issues with axios (#2203)
  • Switch block id to full SHA256 (#2156)

Removed

  • Removed dead fast rebuild code that hasn't been used since 2.0 release (#2210)

2.2.2

19 Mar 13:05
c104184
Compare
Choose a tag to compare

Removed

  • Remove /api/v2/delegates/{id}/voters/balances endpoint (#2265)

2.2.1

12 Mar 05:08
f271747
Compare
Choose a tag to compare

Sync package versions with npm, no changes.

2.2.0

11 Mar 13:59
ac778f8
Compare
Choose a tag to compare

Added

  • Implement a CLI with @oclif to replace commander (#2100)
  • Add sorting to voters endpoint (#2103)
  • Validate GET replies from other peers (#2102)
  • Pass query to findAllByVote method (#2142)
  • Fetch list of peers from at least a few others (#2152)

Fixed

  • Pass the base flags for programmatic calls in core-tester-cli (#2108)
  • Reduce complexity and fix wrong offset handling in core-elasticsearch (#2108)
  • Stuck at not ready to accept new block (#2139)
  • Properly sort BigNumber values (#2144)
  • Properly update wallet balances if a vote transaction is reverted (#2207)
  • Invalid transactions after a rollback because block timestamps were used as transaction timestamp (#2217)

Changed

  • Replaced lodash.sortBy/orderBy with faster implementations (#2106)
  • Improve fork handling in updatePeersOnMissingBlocks (#2125)
  • Throw an error if the peers or plugins file are missing (#2135)
  • Improve selection of peer for downloading blocks (#2137)
  • Merge core-snapshot-cli commands into core (#2149)

Removed

  • Remove unnecessary ping call in (#2123)
  • Remove broken getRandomDownloadBlocksPeer (#2121)

2.1.2

13 Feb 14:18
64f2277
Compare
Choose a tag to compare

Fixed

2.1.1

12 Feb 10:06
9a4397b
Compare
Choose a tag to compare

Fixed

  • Configuration endpoint does not show dynamic fees (#2082)
  • Return the correct supply for the legacy API (#2083)

2.1.0

11 Feb 13:54
90f4014
Compare
Choose a tag to compare

Added

  • Added a milestoneHash identifier to use for peer banning (#1837)
  • Added TypeScript declarations for core-logger (#1833)
  • Added TypeScript declarations for core-logger-winston (#1887)
  • Added TypeScript declarations for core-container (#1891)
  • Added TypeScript declarations for core-database (#1901, #1905)
  • Added TypeScript declarations for core-transaction-pool (#1906)
  • Added TypeScript declarations for core-blockchain (#1943)
  • Added TypeScript declarations for core-snapshots (#1947)
  • Added TypeScript declarations for core-api (#1948)
  • Added TypeScript declarations for crypto (#1917)
  • Added the core-jest-matchers package (#1926)
  • Added the core-interfaces package (#1924)
  • Return the transaction expiration time via API (#1927)
  • Added the ability to disable the public API cache (#1930)
  • Return the vote of a wallet via public API (#2009)
  • Upgrade script for 2.1 (#1999)
  • Installation script for deb/rpm distros (#2016)
  • Case specific errors for crypto (#2038)

Changed

  • Migrated from JavaScript to TypeScript (#1625)
  • Moved the peers.json configuration into core-p2p (#1625)
  • Merged core-transaction-pool-mem into core-transaction-pool (#1625)
  • Use a faster alternative to derive an estimate (#1655)
  • Reworked crypto configuration to make it simpler (#1733)
  • Moved the dynamic fees configuration into core-transaction-pool (#1733)
  • Periodically check for new peers instead of retrying until finding some (#1738)
  • Adjusted some banning times for peers to make network recovery smoother (#1730)
  • Simplified configuration by further separating network and core (#1733)
  • Take the minFeeBroadcast value into account for fee statistics (#1873)
  • Only allow vendor fields for type 0 and 6 transactions (#1931)
  • Improved the network quorum details and feedback (#1898)
  • Only return errors when broadcast and pool fees are too low (#1940)
  • Improved performance of BIP38 (#1941)
  • Cleaned up the logic of block processing (#1953)
  • Cleaned up the logic of serialise/deserialise in crypto (#1969)
  • Replaced all ARK naming with CORE (#1970)
  • Use system paths for data and configuration (#1987)
  • Increased the maximum transaction age to 6 hours (#1996)
  • Replaced progress bars with logging to reduce noise (#2044)
  • Replaced commander.js with @oclif in core-debugger-cli (#2049)
  • Replaced commander.js with @oclif in core-snapshots-cli (#2050)
  • Replaced commander.js with @oclif in core-tester-cli (#2051)
  • Moved docker files from docker/* to docker/development/* (#2053)
  • Moved the genesis blocks from the core configuration to the network configuration in crypto (#2052)
  • Separate business-logic from data-layer logic (#2055)

Fixed

  • Resolved an issue with the resolveOptions method that would result in options being resolved for plugins that are not registered in the container (#1625)
  • Malformed condition for filtering peers (#1689)
  • Use the correct pagination schema for the v2 public API (#1717)
  • Ensure that delegate searches can handle undefined values (#1831)
  • Mark semantically invalid versions as invalid overall (#1836)
  • Ordering of delegates via public API (#1731)
  • Handle webhooks that have no conditions (#1869)
  • Validate the network byte on transactions (#1853)
  • Use correct schemas for address, public key and username validation in the public API (#1954)
  • Populate the last block of all delegates (#1919)
  • Return the transaction forging timestamp instead of signing timestamp (#1957)
  • Mark cold wallets as not found in the legacy API (#1955)
  • A malformed condition that resulted in wrong peer lists (#1939)
  • Properly verify block slot timestamps (#1985)
  • Return fixed peer states for v1 and v2 API responses (#2027)
  • Validate IP ranges to detect loopbacks (#2045)
  • https://github.com/ArkEcosystem/security-vulnerabilities/blob/master/core/core-sv-010.md (#2046)
  • Check if the blockchain state storage is available before performing fork checks (#2047)
  • Gracefully handle a corrupted cached peers.json file (#2061)
  • Always sort transactions by sequence and the requested field to make API sorting deterministic (#2058)
  • Disallow multiple registrations for same delegate (#2080)

Removed

  • Removed the transactionsFromIds P2P endpoint (#1911)
  • Removed the validator and rules fron @arkecosystem/crypto (#2021)
  • Ended support for the legacy multisignatures from the previous LISK fork (#2057)

2.0.19