Releases: hirosystems/chainhook
v1.6.2
chore(release): publish v1.6.2 (#604)
v1.6.1
v1.6.0
1.6.0 (2024-05-09)
Features
Bug Fixes
- add stacks event position to ts client (#575) (3c48eeb)
- add starting stacks height for prometheus metrics (#567) (6a8c086)
- make bitcoin payload serialization deserializable (#569) (5f20a86)
- set
Interrupted
status for streaming predicates that fail (#574) (11bde53), closes #523 - shut down observer on bitcoin block download failure (#573) (f3530b7), closes #572
v1.5.1
v1.5.0
1.5.0 (2024-04-06)
Features
- add brc-20 schemas for ordhook (#551) (1e25a8f)
- detect http / rpc errors as early as possible (e515116)
- rm blocks (f35498d)
- use stacks.rocksdb for predicate scan (#514) (0baae10), closes #513 #485
Bug Fixes
- build error (03b3938)
- log errors on block download failure; implement max retries (#503) (3bfb0e1)
- metrics: update latest ingested block on reorg (#515) (823713a)
- order and filter blocks used to seed forking block pool (#534) (a2865b7)
- revisit 7+ blocks reorg handling (#553) (184fd07)
- seed forking handler with unconfirmed blocks to improve startup stability (#505) (b77aca2), closes #487
- skip db consolidation if no new dataset was downloaded (#513) (b1469a6)
- update scan status for non-triggering predicates (#511) (32cdfee), closes #498
v1.4.1
v1.4.0
1.4.0 (2024-03-27)
Features
- detect http / rpc errors as early as possible (ad78669)
- use stacks.rocksdb for predicate scan (#514) (a4f1663), closes #513 #485
Bug Fixes
- enable debug logs in release mode (#537) (fb49e28)
- improve error handling, and more! (#524) (86b5c78), closes #498 #521 #404 /github.com/hirosystems/chainhook/issues/517#issuecomment-1992135101 #517 #506 #510 #519
- log errors on block download failure; implement max retries (#503) (0fc38cb)
- metrics: update latest ingested block on reorg (#515) (8f728f7)
- order and filter blocks used to seed forking block pool (#534) (a11bc1c)
- seed forking handler with unconfirmed blocks to improve startup stability (#505) (485394e), closes #487
- skip db consolidation if no new dataset was downloaded (#513) (983a165)
- update scan status for non-triggering predicates (#511) (9073f42), closes #498
v1.3.1
1.3.1 (2024-02-14)
Thanks for using Chainhook! See our README for instructions on installing the latest version. Thank you to @janniks who contributed to this release, and to @aulneau who opened an issue that was fixed in this release.
If you're running a Chainhook node (i.e. chainhook service start ...
), be sure to check out this note with some additional directions for enabling a fix.
Bug Fixes 🐛
fix: correctly determine PoX vs PoB block commitments (#499)
This fix changes some logic when parsing block data to correctly identify when a Stacks Block Commit is a PoX or PoB block commitment.
fix: add event index to transaction events (#495)
This PR adds the previously missing position
field to a Stacks transaction event:
"transactions": [
{
"metadata": {
...
"receipt": {
...
"events": [
"position": { // new field
"index": 0
},
...
]
}
}
}
]
Because of this, all event position will have a value of:
"position": {
"index": 0
}
To rebuild the database with this data filled in:
- Upgrade to the latest version of Chainhook
- Delete the
stacks.rocksdb
folder inside theworking_dir
set in yourChainhook.toml
- Rerun Chainhook
This will rebuild your Stacks database from scratch.
v1.3.0
1.3.0 (2024-02-08)
Thanks for using Chainhook! See our README for instructions on installing the latest version. This release is mostly comprised of fixes that will add some stability when using Chainhook as a service or when scanning predicates. Thank you to @ryanwaits and @Xarek-Wizard who opened issues that were fixed in this release!
✨ New Features ✨
feat: optionally serve Prometheus metrics (#473)
This feature adds the option to serve Prometheus metrics for the Chainhook service. This may be helpful for those of you who are running a long-standing Chainhook service; a Prometheus scraper can be set up to gain insights into the health of your Chainhook node. This will be particularly helpful for us to have early detection of any service degradation in the Hiro Platform's hosted Chainhook service.
The feature can be used by specifying the --prometheus-port XXXX
option in the CLI, or by adding the following to your config:
[monitoring]
prometheus_monitoring_port = 1111
Chainhook will behave as usual with this flag ommitted - metrics can still be retrieved via the observer's /ping
endpoint, but they will not be formatted for ingestion by a Prometheus client.
Bug Fixes 🐛
fix: validate predicate start_block
and end_block
(#489)
Last week, we discovered a bug that could potentially cause Chainhook to use a massive amount of memory, which could crash a running node. This bug had to do with how we handle the start_block
and end_block
being set in a predicate, so we revamped the logic for this whole section of code:
start_block
is now optional in a predicate and will have a default of0
if omitted- we now require
end_block
to be greater thanstart_block
- we now require the difference between
end_block
andstart_block
to be no more than1_000_000
. This is longer than both the Stacks and Bitcoin chains, so hopefully this isn't too limiting for our users 😅 - BONUS FEATURE: we now allow a future
start_block
. If you set a predicate to have astart_block
that is beyond the chain tip of the network, the predicate will be registered to Chainhook and will start being evaluated once the chain tip catches up