Releases: eqlabs/pathfinder
v0.10.4
Fixes
starknet_getEventsincorrectly evaluates empty sub-lists in key filters for pending events.- The RPC error
UNEXPECTED_ERRORis an object not a string
v0.10.3
This release is intended for use with starknet v0.13.
This release builds on-top of pathfinder v0.10.3-rc1 so for a full a changelog from v0.10.2 you should also see the release notes from v0.10.3-rc0 and v0.10.3-rc1.
Added
- RPC request parsing failures now include the error reason when its an invalid JSON-RPC request (invalid request params already include the error reason).
Can I roll this version back?
I upgraded by accident, can I undo? Yes, you can safely rollback to pathfinder v0.10.2.
v0.10.2-apikey
This release adds a new configuration option gateway-api-key to v0.10.2.
The unusual release tag is caused by v0.10.3 still being a release candidate.
Added
gateway-api-key API_KEYconfiguration option. If enabled, each time a request is sent to the Starknet gateway or the feeder gateway aX-Throttling-Bypass: API_KEYheader will be set.
v0.10.3-rc1
This pre-release adds a new configuration option gateway-api-key to v0.10.3-rc0.
Limitations of the previous pre-release still apply: only use this on networks running starknet v0.13 i.e. integration and testnet (!! not mainnet !!).
The docker image is only available as eqlabs/pathfinder:v0.10.3-rc1 (and not via latest).
Can I roll this version back?
I upgraded by accident, can I undo? Yes, you can safely rollback to pathfinder v0.10.2.
v0.10.3-rc0
This is a pre-release intended to provide compatibility with pricing on starknet v0.13. In other words, only use this on networks running starknet v0.13 i.e. integration and testnet (!! not mainnet !!).
The docker image is only available as eqlabs/pathfinder:v0.10.3-rc0 (and not via latest).
Can I roll this version back?
I upgraded by accident, can I undo? Yes, you can safely rollback to pathfinder v0.10.2.
v0.10.2
This release contains various RPC fixes (in particular for the new v0.6), performance improvements.
Added
- Added
x-request-idheader to RPC responses. If the request does not have the header set then an ID is generated. This can be used to identify a specific caller's request/response within the node's logs. Duplicate IDs are possible since they can be set by the caller, so we recommend making your's identifiable with a prefix or using a GUID. - Improved tracing for RPC requests. These are all logged on
tracelevel under thepathfinder_rpcmodule. Additional information can also be obtained fromtower_httpmodule. These can be enabled by appendingpathfinder_rpc=trace,tower_http=tracetoRUST_LOGenvironment variable.- Request payload is now logged before execution begins.
- Logs now include
x-request-idheader value which can be used to correlate with client requests/responses. - Batch logs also include the index within a batch.
- RPC parsing errors now expose the failure reason as part of the errors
datafield.
Fixed
- v0.5
starknet_simulateTransactionsreturns internal error instead ofContractErrorfor reverted transactions. - v0.6
starknet_getTransactionReceiptEXECUTION_RESOURCESfields are hex-strings instead of integerssegment_arena_builtinresource is missing- v3 transaction price unit type is
STRKinstead ofFRI
- v0.6
starknet_estimateFee,starknet_simulateTransactions- v3 transaction hashes are computed incorrectly when using the "query" flag, causing validation errors
unitfield is missing from fee estimation results
- v0.6
starknet_addDeployAccountTransaction- the gateway doest not properly return address information for v3 transactions, we now compute the address ourselves
starknet_getEvents- query strategy selection for some events involving a filter on very common keys is slow
- Execution performance for calls involving the
pendingblocks is much better for trivial calls (likebalanceOf).
Changed
- JSON-RPC v0.6 now serves
0.6.0forstarknet_specVersion.
v0.10.1
This release fixes a few bugs with our implementation of the Starknet JSON-RPC 0.6 specification and fixes some issues with how pathfinder returns execution errors.
Fixed
- Execution errors are opaque and don't always include the root cause.
- Pathfinder uses incorrect fee token gas price for
gas_consumedcalculation for v3 transactions. starknet_traceTransactionsometimes returns an "Invalid order number for L2-to-L1 message" error.starknet_getTransactionByHashandstarknet_getTransactionByBlockIdAndIndexreturn v3 transactions mapped to v1.
Changed
- JSON-RPC v0.6 support has been updated to v0.6.0-rc5 of the specification.
v0.10.0
⚠️ ⚠️ ⚠️ Breaking changes ⚠️ ⚠️ ⚠️
This release changes the JSON-RPC API version served on the / path to 0.5.1 and removes support for some command-line arguments. Please make sure you read the rest of the release notes if you're upgrading.
A database schema upgrade is also done upon first starting pathfinder. Downgrading to an earlier version will require a backup of your database before the upgrade.
Added
- Support for RPC v0.6.0-rc4 via the
/rpc/v0_6endpoint. Note that this does not include the/rpc/v0.6endpoint as the underscore is now the standard across node implementations. - Configuration options to selectively enable/disable parts of the node. This can be useful to run tests or benchmarks with isolated components e.g. test RPC methods without the sync process updating the database.
rpc.enableconfiguration option to enable/disable the RPC server. Defaults to enabled.sync.enableconfiguration option to enable/disable the sync process. Defaults to enabled.
- Support for Sepolia testnet via
--network sepolia-testnet - Support for Sepolia integration via
--network sepolia-integration - Support for Starknet 0.13.0.
Changed
- Default RPC version is now v0.5 (was v0.4). This can be manually configured to any version.
- Goerli testnet network selection is now
--network goerli-testnet, removed--network testnet - Goerli integration network selection is now
--network goerli-integration, removed--network integration - Reworked
newHeadssubscription output to more accurately represent header data.
Removed
- Support for
testnet2 - Support for RPC v0.3
--poll-pendingconfiguration option. This is now always enabled and set to 2s.--python-subprocessesconfiguration option. This is superseded by--rpc.execution-concurrency.
v0.9.7
Fixed
get_block_hashsyscall returns0x0for the latest available block (current - 10) when executingstarknet_trace*methods
v0.9.6
Fixes a bug introduced in pathfinder v0.9.5 by the
- RPC errors now only include the root cause if white-listed as non-sensitive
change. Some errors were not white-listed which meant that important error data was not communicated back to the caller in certain cases. As an example, reverted transactions in RPC v0.4 only showed as Internal error.
Fixed
- RPC v0.5 incorrectly has a status field in pending
starknet_getBlockWithXXXresponses. - Error details for many execution-related issues were not properly sent back to the JSON client
- Reverted transactions are logged as WARN instead of DEBUG.