⚠️ This release contains breaking changes ⚠️
Database
This release adds support for starknet_getStateUpdate
. Unfortunately the data required to serve this data is not present in existing pathfinder databases. This means that in order to support this query for all blocks, you will need to re-sync your node. If you do not do this, then this query won't succeed for blocks that your node has already downloaded.
We will provide updated snapshots in order to speed up this re-sync process.
JSON-RPC API
The JSON-RPC API has been updated to conform to the first formal StarkNet JSON-RPC specification. Our readme contains all the relevant information and links to the new API.
The specific changes, additions and removals are listed in the relevant sections below.
pending
support
Pathfinder supports querying the pending
StarkNet state. See our readme for specifics on what this is.
The breaking change is two-fold:
- Previously, pathfinder simply proxied
pending
queries to the gateway. This is fundamentally against how pathfinder is supposed to operate as no validation or verification of the result was possible. Instead, pathfinder now periodically polls thepending
data and verifies it locally in-so-far as possible. pending
support is disabled by default and can be enabled with--poll-pending=true
option
Sqlite-WAL
We've had the --sqlite-wal=true|false
option available for a while now. In this release we've changed the default from false
to true
. The only reason to keep this set to false
should be if you are using network storage. Enabling this option improves our database's read and write concurrency.
added
- JSON-RPC API
starknet_getBlockWithTxHashes
starknet_getBlockWithTxs
starknet_getStateUpdate
starknet_getTransactionByBlockIdAndIndex
starknet_getBlockTransactionCount
starknet_getNonce
starknet_blockHashAndNumber
starknet_pendingTransactions
starknet_getEvents
- docker-compose by @sven-hash #487
- Support
pending
locally (see our readme for more info)
changed
- JSON-RPC API
starknet_getStorageAt
starknet_getClassHashAt
starknet_getClassAt
starknet_call
starknet_estimateFee
starknet_addDeployTransaction
(now accepts optionalabi
field)starknet_addDeclareTransaction
(now accepts optionalabi
field)
removed
- JSON-RPC API
starknet_getBlockByHash
starknet_getBlockByNumber
starknet_getTransactionByBlockHashAndIndex
starknet_getTransactionByBlockNumberAndIndex
starknet_getCode
starknet_getBlockTransactionCountByHash
starknet_getBlockTransactionCountByNumber
- proxying
pending
queries to the gateway
fixed
- rare database locked error when spawning python processes
- broken pipe exceptions from python processes
New Contributors
- @sven-hash made their first contribution in #487
Full Changelog: v0.2.6-alpha...v0.3.0-alpha