Skip to content

Releases: equilibriumco/pathfinder

v0.22.2

07 Apr 11:20
Immutable release. Only release title and notes can be modified.

Choose a tag to compare

Release Highlights

Pathfinder 0.22.2 upgrades the blockifier and related dependencies to the latest version.

Changed

  • The blockifier and starknet_api crates have been upgraded to 0.18.0-rc.1.

Added

  • Blockifier libfunc list used for compilation verification is now defaulting to audited and configurable with the new --blockifier.libfunc-list CLI option.

v0.22.1

31 Mar 10:56
935b974

Choose a tag to compare

Release Highlights

Pathfinder 0.22.1 adds support for JSON-RPC 0.10.2 and compressed gateway requests.

Fixed

  • The running Bloom filter for block events is now correctly rebuilt after unexpected shutdowns when blockchain pruning is enabled.
  • Preconfirmed classes are not downloaded because get_class_by_hash for pending is now mapped to latest.

Changed

  • The proof field in broadcasted invoke v3 transactions is now a base64-encoded byte blob (Vec<u8>) instead of base64-encoded packed u32 values (Vec<u32>). This reflects the upstream change to use compressed proofs.
  • The blockifier crate has been upgraded to 0.18.0-rc.1 (and its dependencies to match that).
  • HTTP request bodies for add_invoke_transaction are compressed with gzip if the transaction contains a nonempty proof. Compression can be disabled in custom networks using the gateway.compress-requests CLI flag.

v0.22.0

19 Mar 16:19
v0.22.0
c2f3d41

Choose a tag to compare

Release Highlights

Pathfinder 0.22.0 adds support for Starknet 0.14.2 and JSON-RPC 0.10.1.

⚠️ Please note that this release involves a database migration step. Please make sure that you create a backup of your database before upgrading because otherwise rolling back to the previous release won't be possible.

Fixed

  • The pre-latest block (introduced in Starknet 0.14.0) is now reported with PRE_CONFIRMED finality
    status instead of ACCEPTED_ON_L2. This aligns with the changes to block hash and commitment
    calculation in Starknet 0.14.2, where the pre-latest block can no longer be treated as fully
    accepted on L2. Affected RPC methods:
    • starknet_getTransactionReceipt
    • starknet_getTransactionStatus
    • starknet_subscribeEvents
    • starknet_subscribeNewTransactionReceipts
    • starknet_subscribeNewTransactions
    • starknet_subscribeTransactionStatus

Changed

  • The v10 JSON-RPC endpoint now supports final JSON-RPC v0.10.1 spec.
  • blockifier has been upgraded to 0.18.0-dev.1, ensuring correctness of execution results on Starknet 0.14.2.
  • Pathfinder requires a Websocket connection to an Ethereum node. Previously we've converted http:// URLs to ws://  - this conversion has been removed, so anyone still using HTTP URLs to their Ethereum node should change it in their configuration.

v0.22.0-beta.3

11 Mar 10:12
v0.22.0-beta.3
737cfb8

Choose a tag to compare

v0.22.0-beta.3 Pre-release
Pre-release

Release highlights

This is a pre-release version of Pathfinder adding JSON-RPC version 0.10.1-rc.3 support.

⚠️ This release is for testing purposes only. Please do not upgrade your node in a production environment. ⚠️

Fixed

  • starknet_traceBlockTransactions parameter trace_flags is not optional (as required by the spec).
  • Starknet 0.14.2 blocks are now using the correct versioned constants.

Changed

  • The --ethereum.url option now requires a WebSocket URL (ws:// or wss://). HTTP/HTTPS URLs are no longer automatically converted to WebSocket and will result in an error.
  • The Pathfinder binary now has two subcommands:
    • node - runs the Pathfinder node as before, serving JSON-RPC and syncing with the network.
      This is the default subcommand and will run if no subcommand is passed.
    • compile - compile a Sierra class (passed via stdin) to CASM (output to stdout).

Added

  • Forwarding gateway HTTP error 413 when handling starknet_addDeclareTransaction, starknet_addDeployAccountTransaction and starknet_addInvokeTransaction.
  • Two new CLI options for the node subcommand:
    • compiler.max-memory-usage-mib - maximum memory usage for the compiler process, in MiB.
    • compiler.max-cpu-time-secs - maximum (active) CPU time for the compiler process, in seconds.
  • Pathfinder is now polling for DNS changes for the feeder gateway and gateway host name. By default the host names are resolved every 60s and the HTTP client connection pool is re-created to force reconnecting to the new address. The interval is configurable with the new --gateway.check-for-dns-updates-interval CLI option.
  • starknet_getStorageAt now returns the last update block (in addition to storage value) if the INCLUDE_LAST_UPDATE_BLOCK flag was set in its input.
  • starknet_getStateUpdate now supports an address filter.

v0.22.0-beta.2

16 Feb 16:16
v0.22.0-beta.2
e233242

Choose a tag to compare

v0.22.0-beta.2 Pre-release
Pre-release

Release highlights

This is a pre-release version of Pathfinder fixing some JSON-RPC version 0.10.1-rc.2 incompatibilities.

⚠️ This release is for testing purposes only. Please do not upgrade your node in a production environment. ⚠️

Fixed

  • JSON-RPC serialization of INITIAL_READS is not compliant with the specification. Pathfinder returns storage_key properties for storage reads instead of the key property required by the spec.
  • starknet_addInvokeTransaction is not forwarding proof_facts property to the Starknet gateway.

v0.22.0-beta.1

30 Jan 13:02
v0.22.0-beta.1
c8de882

Choose a tag to compare

v0.22.0-beta.1 Pre-release
Pre-release

Release highlights

This is a pre-release version of Pathfinder adding preliminary support for JSON-RPC version 0.10.1-rc.2 and client-side proofs.

⚠️ This release is for testing purposes only. Please do not upgrade your node in a production environment. ⚠️

❗ This release includes a database migration. ❗ The migration step is pretty much instantaneous, but will prevent older Pathfinder releases from starting up with the upgraded database. If you expect to roll back to a previous version, consider backing up your database before upgrading.

Added

  • Added support for the "return initial reads" feature introduced in JSON-RPC version 0.10.1:

    • Added RETURN_INITIAL_READS flag to starknet_simulateTransactions input simulation flags.
      Only supported if JSON-RPC version is 0.10.0 or higher.
    • Added a trace_flags field to starknet_traceBlockTransactions input. Currently the only available flag is RETURN_INITIAL_READS.
      Only supported if JSON-RPC version is V10 or higher.
  • Preliminary support for JSON-RPC 0.10.1 proof_facts and proof transaction properties.

Changed

  • starknet_simulateTransactions now has a different response format based on whether or not the RETURN_INITIAL_READS flag was set in the input:

    1. If the flag was not set, the response is identical to previous RPC versions (an array of transaction simulations).
    2. If the flag was set, the response is an object with two fields:
      • "simulated_transactions" - an array of transaction simulations (previous RPC version output).
      • "initial_reads" - an INITIAL_READS object, containing an aggregate of all initial reads for the simulated transactions.
  • starknet_traceBlockTransactions now has a different response format based on whether or not the RETURN_INITIAL_READS flag was set in the input:

    1. If the flag was not set, the response is identical to previous RPC versions (an array of transaction traces).
    2. If the flag was set, the response is an object with two fields:
      • "traces" - an array of transaction traces (previous RPC version output).
      • "initial_reads" - an INITIAL_READS object, containing an aggregate of all initial reads for the traced transactions.
  • starknet_getEvents and starknet_subscribeEvents now supports having multiple addresses (represented as an array) in the filter.

v0.21.5

12 Jan 17:00
v0.21.5
76de638

Choose a tag to compare

Release highlights

This is a hotfix release that fixes a bug in our HTTP client that has been triggered when gzip compression was enabled on the feeder gateway.

Added

  • Support for deflate-compressed responses from the feeder gateway.

Fixed

  • Pathfinder stops syncing on networks where response compression has been enabled on the feeder gateway.

v0.21.4

08 Jan 13:29
v0.21.4
38019f3

Choose a tag to compare

Release highlights

This is a hotfix release with some execution fixes (to fix the exact same issue Starknet mainnet was experiencing) and adding support for gzip-compressed HTTP responses to the feeder gateway client.

Added

  • Support for gzip-compressed responses from the feeder gateway.
  • The new --rpc.native-execution-force-use-for-incompatible-classes CLI option can be used to force use of native execution even for pre-1.7.0 Sierra classes (where fee calculation is known to be inaccurate). Use this flag at your own risk.

Changed

  • blockifier has been upgraded to 0.16.0-rc.3.

v0.21.3

03 Dec 15:16
v0.21.3
f707411

Choose a tag to compare

Release highlights

This is a hotfix release with some execution fixes, a new JSON-RPC call metric to measure latencies, and JSON-RPC bug fixes.

Added

  • The new histogram metric rpc_method_calls_duration_milliseconds has been added to expose JSON-RPC method call latency data.

Changed

  • blockifier has been upgraded to 0.16.0-rc.2.
  • Pathfinder no longer returns event_commitment and transaction_commitment values for Starknet blocks older than Starknet version 0.13.2.

Fixed

  • starknet_traceTransaction times out for some transactions because fetching transaction traces from the feeder gateway fails due to some unknown fields in the response.

v0.21.2

27 Nov 09:01
v0.21.2
4055a99

Choose a tag to compare

Release Highlights

This is a hotfix release adding support for the final JSON-RPC 0.10.0 specification.

Changed

  • Pathfinder now serves the JSON-RPC 0.10.0 API on the v0_10 routes.
  • The size of the block trace cache is now configurable by the new --rpc.block-trace-cache-size CLI argument.