This is a major release of Pathfinder with significant changes:
- Significant improvement in sync performance (making re-sync or catching up significantly faster).
- Pathfinder now requires a Websocket connection to an Ethereum node (
wss://
URL). - JSON-RPC 0.4.0 and 0.5.0 API support has been removed.
- Preliminary support for the JSON-RPC 0.8.0-rc1 API version has been added. Due to some missing under-the-hood changes not all features are currently supported (for example, L2 gas related fields have invalid values but are present in responses).
Upgrading to 0.15.0 from a previous release will perform a quick database migration. Reverting to Pathfinder <0.15.0 will require a backup of the database before the migration has been completed.
Huge thanks to first-time contributors @odesenfans, @apoorvsadana, @whichqua and @mcdee.
Added
- Pathfinder now fetches data concurrently from the feeder gateway when catching up. The
--gateway.fetch-concurrency
CLI option can be used to limit how many blocks are fetched concurrently (the default is 8). --disable-version-update-check
CLI option has been added to disable the periodic checking for a new version.- Add
pathfinder_getClassProof
endpoint to retrieve the Merkle proof of any class hash in the class trie. - add
process_start_time_seconds
metric showing the unix timestamp when the process started. --log-output-json
CLI option has been added to output the Pathfinder log in line-delimited JSON.- Preliminary support has been added for the new JSON-RPC 0.8.0-rc1 specification.
Changed
- Ethereum RPC API now requires Websocket endpoints (prev. HTTP). If an HTTP url is provided instead, Pathfinder will attempt to connect vía Websocket protocol at that same url.
- JSON-RPC API version 0.4 and 0.5 support have been removed.
- JSON-RPC API version 0.7 is now served by default on the
/
path.
Fixed
starknet_getBlockWithTxs
works with empty blocks`