Skip to content

Releases: HathorNetwork/hathor-core

v0.49.0

07 Jul 17:35
v0.49.0
d39fd0d
Compare
Choose a tag to compare

This release introduces the first implementation (not enabled by default) of the initialization speed up (which averages to halving the time after the first initialization when using rocksdb indexes). Additionally there's a new UTXO API.

Known issues

  • There is a bug (that was fixed in v0.49.2) that prevents a wallet from loading when using --x-rocksdb-indexes

Features

  • api: add UTXO search API #425
  • api: add first_block_height to the returned transaction data #420
  • cli: add experimental db export/import commands #413
  • indexes: add RocksDBDepsIndex stored in disk #358
  • indexes: add UTXO index #423
  • init: speed up initialization #392
  • storage: add an alternative fast topological iterator #410

Chores

  • ci: fix docker image pre-build for testing #403
  • ci: update base runners and small tweaks #427
  • ci: update rocksdb bindings to work with latest release #429
  • ci: update some CI actions and make docker build more robust #424
  • dependencies: update dependencies #404

Fixes

  • simulator: ignore additional arguments on overriden verify_pow #414

v0.48.0

09 May 18:35
v0.48.0
d9d1d85
Compare
Choose a tag to compare

This is a small release, there's a useful new API feature and some other internal features and chores.

Features

  • indexes: add manual tips-index initialization #395
  • storage: add fast topological iterator #393
  • api: add support to push tx with data script outputs #399

Chores

  • docker: improve image generation and testing #390
  • p2p: update latest checkpoints #391
  • tests: mark flaky tests #400

v0.47.2

30 Mar 18:08
v0.47.2
ae175f9
Compare
Choose a tag to compare

This release contains mostly fixes and chores, mostly about updating the libraries that we use and keeping the CI running.

Fixes

  • resources: add correct handling of non-positive count param #382

Chores

  • ci: temporarily remove macOS from test matrix #383
  • ci: update package manager's repo before install #380
  • ci: use rocksdb bindings compatible with latest release #385
  • dependencies: update depedencies and refactor accordingly #370
  • docker: also install git and pkg-config on setup step #386
  • docker: fix alpine runtime caused by latest rocksdb version #389
  • docs: Add in-disk indexes with RocksDB design #375
  • p2p: update latest checkpoints #377

v0.47.1

01 Feb 17:41
v0.47.1
3581f70
Compare
Choose a tag to compare

This release introduces an in-disk implementation of most indexes, which lays the groundwork for instant startup, this includes the refactoring of the internal parts related to the indexes. The release also has some other small improvements. We skipped 0.47.0 because it had the new in-disk indexes on by default which was causing nodes to take longer to sync on our tests.

Features

  • indexes: add RocksDBAddressIndex stored in disk #254
  • indexes: add RocksDBHeightIndex stored in disk #355
  • indexes: add RocksDBMempoolIndex stored in disk #356
  • indexes: add RocksDBTokensIndex stored in disk #353
  • logs: show settings location on startup #367
  • p2p: remove peers that were disconnected and cant be reconnected anymore #365

Fixes

  • indexes: make RocksDB indexes opt-in #372

Chores

  • ci: dynamic matrix for reduced private fork build time #362
  • code: more protobuf cleanup #347
  • indexes: Move all indexes to MemoryIndexesManager #348
  • indexes: Split indexes.py in multiple files #351
  • indexes: remove parent-blocks-index #363
  • indexes: simplify concrete managers #360
  • p2p: update latest checkpoints #371

v0.46.0

29 Dec 20:43
v0.46.0
9fe53b5
Compare
Choose a tag to compare

This release introduces the testnet-golf, which is mostly identical to testnet-foxtrot but with a cleanup. And also drops support for Python 3.6 (which we haven't built official images for several months now).

Features

  • db: testnet-golf and prevent mixing networks #342

Chores

  • ci: increase timeout for tests #335
  • p2p: add/update checkpoints #330 #334 #341
  • env: drop support for Python 3.6 #339
  • db: remove deprecated db_clean #340
  • storage: remove protobuf and old rocksdb storage #336 #344

Fixes

  • storage: TransactionCacheStorage.remove_transaction not forwarded #338

v0.45.0

22 Oct 06:05
befc4d9
Compare
Choose a tag to compare

Please note the Upgrade Guide attached in this release.

Fixes

  • init: error when loading the database in some cases #322
  • tx: add soft-voided marker #324

Chore

  • logs: improve logging #323
  • testing: add flaky marker #327

v0.43.0

30 Sep 19:23
b8bd242
Compare
Choose a tag to compare

This release adds support for pushing NFT transactions to the network.

Features

  • resource(push_tx): allow push tx of NFT creation transactions #311

Chores

  • docs: improve README updating packages for compiling on ubuntu 20.04 #317
  • sync-v2: add new checkpoints #315

v0.42.1

23 Sep 21:41
43d0d26
Compare
Choose a tag to compare

This release only has a few minor changes regarding logging and error handling.

Fixes

  • api: better log for push_tx error #309
  • api: invalid hash format validation #310

v0.42.0

10 Sep 19:21
a224d72
Compare
Choose a tag to compare

Along the lines of the last release there are some fixes and a few features for helping with testing sync-v2.

Fixes

  • logs: warn when a submitted block's parent is not a tip #293
  • stratum: error handling tried to decode a bad input #294

Features

  • cli: param to enable sync-v2 and disable sync-v1 #299
  • sync-v2: improved sync version negotiation #302

Chores

  • refactor: last preparations for sync-v2 #292
  • repo: create CODEOWNERS #298

v0.41.0

06 Aug 18:30
5758718
Compare
Choose a tag to compare

Although there are only minor new features, this release contains a significant refactor that warrants a version bump.

Refactors

  • sync-v2: introduce all structures needed without any sync-v2 #236
  • util: use hathor.util.Random instances instead of global random #270

Features

  • cli: Add --unsafe-mode argument to run_node #278
  • debug: add APIs to allow forcing exceptions/prints/etc #277

Fixes

  • tests: assertConsensusEqual() must convert conflict_with to a set for comparison #282
  • tx-resource: token_data value for an authority input should have the authority mask #285
  • util: Convert UnicodeDecodeError into JSONDecodeError in json_loadb #281

Chores

  • docker: enable support for sentry on CI-built images #276
  • docs: improve README #284
  • tests: Mark a few tests as flaky #287