Releases: eqlabs/pathfinder
v0.16.5
This is a hotfix release fixing multiple JSON-RPC API issues.
Please upgrade if you're running Pathfinder <= 0.16.4.
Fixed
starknet_estimateFeeis failing for Braavos DEPLOY_ACCOUNT transactions involving a new Sierra 1.7.0 class.starknet_unsubscribedoes not accept subscription IDs as strings.starknet_traceBlockTransactionsfails for blocks <= 2687.
v0.17.0-beta.1
Added
-
Pathfinder now supports syncing from Starknet 0.14.0. Support is still incomplete, execution and compilation of new classes will likely fail for new classes until a further upgrade.
-
Pathfinder now supports storing only the latest state of the blockchain history. This can be configured with the '--storage.blockchain-history' CLI option.
-
Accepted values are:
- "archive" (default) – Full history of the blockchain is stored.
- "N" – An integer specifying the number of historical blocks to store, in addition to the latest block (N + 1 blocks will be stored).
-
Affected JSON-RPC methods are:
starknet_callstarknet_estimateFeestarknet_estimateMessageFeestarknet_getBlockTransactionCountstarknet_getBlockWithTxHashesstarknet_getBlockWithTxsstarknet_getBlockWithReceiptsstarknet_getClassstarknet_getClassAtstarknet_getClassHashAtstarknet_getEventsstarknet_getNoncestarknet_getStateUpdatestarknet_getStorageAtstarknet_getStorageProofstarknet_getTransactionByBlockIdAndIndexstarknet_simulateTransactionsstarknet_traceBlockTransactions
-
With pruning enabled, affected JSON-RPC method requests will only succeed if the requested block is within the last N + 1 blocks.
-
The choice between
archiveandprunedmode is made once, when creating the database. Once chosen, it cannot be changed without creating a new database. -
It is possible to change the number of blocks stored in pruned mode between runs, using the same CLI option with a different value for N.
-
Note that the number of blocks stored is relative to:
a. The latest L1 checkpoint if it exists and the latest L2 block is ahead of it
b. The latest L2 block if it is behind the latest L1 checkpoint or no L1 checkpoints have been received by the node (practically unreachable)
-
-
starknet_getTransactionStatusnow returns RECEIVED even when the gateway cannot find the transaction, provided the transaction was successfully sent by the responding node within the last 5 minutes.
Fixed
starknet_unsubscribedoes not accept subscription IDs as strings.
Changed
--rpc.get-events-max-uncached-event-filters-to-loadCLI option has been replaced withrpc.get-events-event-filter-block-range-limit. The new option serves the same purpose of preventing queries from taking too long, but it should be clearer in its intent.
v0.16.4
This is a hotfix release fixing multiple JSON-RPC API issues.
Please upgrade if you're running Pathfinder <= 0.16.3.
Fixed
starknet_simulateTransactionsreturns an error instead of the trace of the reverted transaction if the L2 gas cap is insufficient.starknet_traceTransactionandstarknet_traceBlockTransactionsreturns an internal error with no details upon encountering a transaction execution error.starknet_getEventsreturns an incomplete set of events for some queries over a block range larger than 106k blocks.
v0.16.3
This is a hotfix release fixing a migration issue potentially leading to missing events in starknet_getEvents response, and JSON-RPC API issues. We're now supporting version 0.8.1 of the JSON-RPC specification on our v0_8 routes.
subscription_ids are now represented as strings.
Please upgrade if you're running Pathfinder <= 0.16.2.
Thanks to @apoorvsadana for his contribution!
Added
- The JSON-RPC 0.8.0 API can now be accessed under
/ws/rpc/v0_8as well if Websockets are enabled. This is equivalent to the/rpc/v0_8path and is provided only as a convenience feature.
Fixed
starknet_subscribeEventssubscriptions stop sending notifications.- Broken aggregate bloom filter migration has been updated to work properly. If you migrated from a database running in archived mode, please re-download our latest snapshot and re-run the migrations.
starknet_getStateUpdatehasnew_rootandold_rootswapped.
Changed
- JSON-RPC 0.8
subscription_idis now a string. - Pathfinder now supports the JSON-RPC 0.8.1 specification. In this new version, the Websocket
subscription_idtype has been changed tostring.
v0.16.2
This is a hotfix release, adding support for the upcoming Starknet 0.13.5 version plus fixing JSON-RPC API issues and L1 sync problems. Please upgrade if you're running Pathfinder 0.16.0 or 0.16.1.
Thanks to @varun-doshi for his first contribution.
Added
- Support for custom versioned constants for multiple Starknet versions.
- Support for Starknet 0.13.5.
Fixed
starknet_estimateFeereturns an internal error for v3 transactions with L2 gasmax_price_per_unitset to zero.starknet_getCompiledCasmreturns CASM wrapped in acasmproperty.starknet_traceBlockTransactionsfails on Starknet 0.13.4 when a fallback to fetching from the feeder gateway is required.- Websocket subscriptions to the
latestblock do not send notifications for the current latest block. starknet_subscribeEventssubscriptions send matching events only from thelatestblock, not as soon as those show up inpending.- Pathfinder stops receiving L1 state updates.
v0.16.1
This is a hotfix release. Please upgrade if you're running Pathfinder 0.16.0.
Fixed
- Pathfinder does not return
transaction_hashinstarknet_getBlockWithTxnsresponse. - Custom networks cannot be configured for pre-0.13.4 Starknet versions,
v0.16.0
This is a major release of Pathfinder with significant changes -- the most prominent being adding support for Starknet 0.13.4 and JSON-RPC 0.8.0-rc3.
Our documentation has moved from the README to https://eqlabs.github.io/pathfinder.
Huge thanks to @TropicolX for contributing our new documentation site.
Added
- Support for Starknet 0.13.4.
- Support for the JSON-RPC 0.8.0-rc3 API, including Websocket subscriptions.
- Graceful shutdown upon SIGINT and SIGTERM with a default grace period of 10 seconds, configurable via
--shutdown.grace-period.
Removed
storage_commitmentandclass_commitmentfields from thepathfinder_subscribe_newHeadsmethod response.
Fixed
pathfinder_getProof,pathfinder_getClassProofreturnProofMissing(10001) when Pathfinder is inarchivemode and queried block's tries are empty.starknet_syncingreturnsu64::MAXas the starting block number when starting from scratch.
Changed
- Use aggregate Bloom filters for
starknet_getEventsto improve performance.
v0.15.3
This is a minor bugfix release. We suggest upgrading if you're running Pathfinder <= 0.15.2.
Changed
- Cairo 0 class definition size is now capped at 4 MiB.
v0.15.2
This is a hotfix release that fixes a serious issue in how Pathfinder 0.15.1 handles L2 reorgs. Please upgrade if you're running Pathfinder 0.15.1. Pathfinder v0.14.x are not affected by the reorg issue.
Fixed
- Pathfinder fails to properly do a reorg due to a SQL statement referring a table that does not exist.
--rpc.get-events-max-uncached-bloom-filters-to-loadsetting is ineffective.
v0.15.1
This is a hotfix release. Please upgrade if you're running Pathfinder 0.15.0.
Huge thanks to @xJonathanLEI for fixing the JSON-RPC 0.7 issue introduced in 0.15.0.
Fixed
starknet_getBlockWithReceiptsreturnstransaction_hashwithin thetransactionobject making the response not strictly spec compliant. Fixed on the JSON-RPC 0.8 interface.- JSON-RPC 0.7 methods returning block headers are including the
l2_gasproperty.
Changed
- Pathfinder is now compiled with arithmetic overflow checks enabled in release mode to mitigate potential issues.