StarkNet 0.10 support
This release enables support for StarkNet 0.10. This version is compatible with both StarkNet 0.9.1 and 0.10 and we urge you to update before StarkNet 0.10 is released.
Previous versions of pathfinder will no longer be able to sync on blocks from StarkNet version 0.10 and onwards.
JSON-RPC changes
We have attempted to keep changes to the JSON-RPC API minimal in order to stay aligned with the JSON-RPC specification version 0.1.0. However, this was not 100% possible as StarkNet 0.10 adds new features incompatible with the specification.
This situation will be improved once version 0.2.0 of the JSON-RPC specification is released.
The changes and impacts are detailed below.
L1 Handler
transaction
StarkNet 0.10 introduces a new transaction type; L1 Handler
-- we have added this to our transaction enum list where applicable. We have taken the new type from the release candidate of the JSON-RPC specification v0.2.0 which you can see here.
starknet_call
and starknet_estimateFee
Our internal version of the starknet-vm is still lagging behind on v0.9.1. This means that newer StarkNet transactions (version 1) are unlikely to work when calling starknet_call
and starknet_estimateFee
. We will address this in an upcoming release.
Prometheus metrics support
We now provide Prometheus metrics! These are available via the route <monitoring-address>/metrics
when the monitoring API is enabled.
Monitoring can be enabled by specifying the --monitor-address
.
Currently metrics comprise the rpc_method_calls_total
counters, where label key method
should be used to point to the counter for a particular RPC method, for example: rpc_method_calls_total{method="starknet_getBlockWithTxs"}
.
Added
- Support for
StarkNet 0.10
- Support for Prometheus metrics
Fixed
- Potential DoS loop when gateway responses are not parseable (e.g. due to a major StarkNet update :P).
- JSON-RPC
starknet_getEvents
does not use snake case forfrom_block
andto_block
. This was incorrectly usingfromBlock
andtoBlock
-- these are still allowed in order to not break anyone using the old form. This compatibility may be removed in a future breaking release. - various readme documentation fixes
- document monitoring API
- update starknet discord link (previous one was no longer valid)
- improve docker instructions to use the same UID/GID
Full Changelog: v0.3.1...v0.3.2
Acknowledgements
@fracek for the first attempt at introducing metrics to the project.