Skip to content

Releases: eqlabs/pathfinder

v0.13.2

25 Jun 06:03
v0.13.2
df7e348
Compare
Choose a tag to compare

This is a hotfix release fixing some JSON-RPC API issues.

Fixed

  • starknet_getTransactionReceipt responses are missing the payload property in MSG_TO_L1 objects on the JSON-RPC 0.7 interface.
  • starknet_traceTransaction and starknet_traceBlockTransactions returns L2 to L1 messages from inner calls duplicated.

v0.13.1

19 Jun 08:55
v0.13.1
050bd61
Compare
Choose a tag to compare

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 and revert_reason properties are missing

v0.13.0

18 Jun 13:35
v0.13.0
f6baf79
Compare
Choose a tag to compare

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 and starknet_getBlockWithTxs returns the pending block with a status property that's not in the JSON-RPC specification. This has been fixed for the JSON-RPC 0.7 API endpoint.
  • starknet_traceBlockTransactions and starknet_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 and pathfinder_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

23 Apr 12:24
d6333df
Compare
Choose a tag to compare

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

10 Apr 10:50
v0.11.6
abd17ec
Compare
Choose a tag to compare

This release fixes an execution engine bug. When checking if max_fee of the transaction is greater or equal to the actual fee the comparison has been incorrect in some cases.

Changed

  • blockifier has been upgraded to version 0.6.0-rc.2.

v0.11.5

02 Apr 08:29
v0.11.5
128fa02
Compare
Choose a tag to compare

This release fixes an execution engine bug.

The fix causes some differences in transaction traces produced for Starknet 0.13.1 transactions involving events from nested contract calls.

Changed

  • blockifier has been upgraded to version 0.6.0-rc.1.

v0.11.4

28 Mar 10:20
Compare
Choose a tag to compare

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 and starknet_simulateTransactions can return fee estimates below the minimum fee expected by the sequencer for trivial transactions.

v0.11.3

14 Mar 07:58
e82f5a2
Compare
Choose a tag to compare

This release fixes a race condition in starknet_estimateFee and starknet_simulateTransactions sometimes using CALLDATA L1 DA mode instead of BLOB.

Fixed

  • starknet_estimateFee and starknet_simulateTransactions always uses CALLDATA L1 DA mode if there is no pending block.
  • starknet_getTransactionStatus reports gateway errors as TxnNotFound. 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

07 Mar 11:28
8add479
Compare
Choose a tag to compare

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

01 Mar 11:56
9c77bab
Compare
Choose a tag to compare

Contains a single, important bugfix. You should upgrade asap if you're using v0.11.0.

Fixes

  • starknet_estimateFee and starknet_simulateTransaction calls fail when SKIP_VALIDATE is not set.