Releases: eqlabs/pathfinder
v0.13.2
This is a hotfix release fixing some JSON-RPC API issues.
Fixed
starknet_getTransactionReceipt
responses are missing thepayload
property inMSG_TO_L1
objects on the JSON-RPC 0.7 interface.starknet_traceTransaction
andstarknet_traceBlockTransactions
returns L2 to L1 messages from inner calls duplicated.
v0.13.1
This release fixes serialization problems with response objects of starknet_getTransactionReceipt
calls.
Fixed
starknet_getTransactionReceipt
responses are not compliant with the JSON-RPC specification:- L1 handler receipts throw an internal error
execution_status
andrevert_reason
properties are missing
v0.13.0
This release adds new features to our Websocket API:
- The
pathfinder_subscribe
method can now be used to subscribe to new events and transaction status updates. For more information on the new subscription types please check our OpenRPC API specifications. - Starknet JSON-RPC API methods are now accessible via Websocket connections. To support multiple versions of the JSON-RPC API we've added new, versioned Websocket API endpoints.
We've also implemented further improvements to how we store transaction data in our storage implementation, leading to requiring approximately 80 GiB less disk space for an up-to-date mainnet database.
Running this release will perform a few database migration steps upon first startup, which may take a significant amount of time (up to multiple hours for a mainnet database, depending on the hardware you're running on). Reverting to pathfinder 0.12.0 will require a backup of the database before the migration has been completed.
Fixed
starknet_getBlockWithTxHashes
andstarknet_getBlockWithTxs
returns the pending block with astatus
property that's not in the JSON-RPC specification. This has been fixed for the JSON-RPC 0.7 API endpoint.starknet_traceBlockTransactions
andstarknet_traceTransaction
now falls back to fetching the trace from the feeder gateway for all blocks before Starknet 0.13.1.1.
Added
/ready/synced
endpoint to check if the JSON RPC API is ready and also check if the node is synced. Useful for Docker nodes which only want to be available after syncing.- Websocket endpoints now serve all JSON-RPC methods, not just
pathfinder_subscribe
andpathfinder_unsubscribe
. Version-specific endpoints have been added for the 0.6 and 0.7 JSON-RPC API and the Pathfinder extension API. - Websocket endpoint for subscribing to events and transaction status changes.
Changed
- Improved compactness of transaction and nonce data, resulting in noticeable storage savings.
v0.12.0
This release dramatically reduces the storage requirements of pathfinder.
This has been achieved by adding support for pruning state trie data, and improving the compactness of transaction and state diff data in storage.
Storage improvements
The following numbers are for a mainnet database at block 635 054
v0.11.6 | v0.12.0 (archive) | v0.12.0 (pruned) |
---|---|---|
770 GB | 615 GB | 170 GB |
State trie pruning
Pathfinder has always stored the state trie data for every block ever. This has lead to enormous storage bloat, where the state trie data comprises roughly 80% of total storage in previous pathfinder versions. This can be reduced to just 5% by enabling state pruning.
With this release you can now configure it to store only the latest k
blocks, dramatically cutting the storage usage. As an example, storing only the latest block gives a reduction of 75% of total storage used compared to the previous pathfinder version.
Note that pruning and archive are incompatible. You will need to resync if you wish to run a pruned node - however we will provide snapshots for both variants, at least for mainnet.
The state trie is required to verify the state diffs and to provide storage proofs. You can read more about how and when to configure pruning here.
Added
- Support for pruning state trie data
Changed
- Improved compactness of transaction and state diff data in storage
Removed
- Goerli support
v0.11.6
v0.11.5
v0.11.4
This release adds support for the class declaration cost changes introduced in Starknet v0.13.1.1.
If you do not upgrade, you should expect incorrect fee estimations and traces once Starknet v0.13.1.1 releases. Other RPC queries and sync will still work as expected.
Added
- Support for fee changes in Starknet v0.13.1.1.
Fixed
starknet_estimateFee
andstarknet_simulateTransactions
can return fee estimates below the minimum fee expected by the sequencer for trivial transactions.
v0.11.3
This release fixes a race condition in starknet_estimateFee
and starknet_simulateTransactions
sometimes using CALLDATA L1 DA mode instead of BLOB.
Fixed
starknet_estimateFee
andstarknet_simulateTransactions
always uses CALLDATA L1 DA mode if there is no pending block.starknet_getTransactionStatus
reports gateway errors asTxnNotFound
. These are now reported as internal errors.starknet_addXXX
requests to the gateway use the configured gateway timeout, often causing these to timeout while waiting for
a gateway response. These instead now use a much longer timeout.
v0.11.2
Important bugfix for starknet_getEvents
. No other changes.
Fixed
starknet_getEvents
does not return a continuation token if not all events from the last block fit into the result page.
v0.11.1
Contains a single, important bugfix. You should upgrade asap if you're using v0.11.0.
Fixes
starknet_estimateFee
andstarknet_simulateTransaction
calls fail whenSKIP_VALIDATE
is not set.