Skip to content

Releases: NethermindEth/juno

v0.14.3

08 Apr 10:35
b468df7
Compare
Choose a tag to compare

This release focuses on RPC stability, accuracy improvements, and full support for JSON-RPC 0.8.1.

Breaking Changes

⚠️ New Versioned Constants Map

Modified custom versioned constants handling: If you use custom versioned constants, you'll need to update your configuration to match the new structure.

Now, instead of needing to specify a version file directly, specify a .json file which holds each version to override. For example:

{
    "0.13.2": "<path to versioned constant file>",
    "0.13.2.1": "<path to versioned constant file>"
}

The node will use the default versioned constants for unspecified versions.

⚠️ New RPC v0.8.1

Support for JSON-RPC 0.8.1 introduced an incompatible change: WebSocket subscription_ids are now strings instead of integers.

Added

  • Flexible Feeder Gateway Timeouts: Introduced a new --gw-timeouts flag to improve resilience when fetching data from the feeder gateway. It allows fine-grained control over timeout behavior in case of retries:
    • Single value (e.g., 5s): Starts with this timeout and increases it with each retry.
    • Comma-separated list (e.g., 5s,10s,20s): Uses each value in order on subsequent retries.
    • Trailing comma (e.g., 5s,): Reuses the same timeout value for every retry without dynamic backoff.
      This makes it easier to tune the node's behavior in high-latency or unstable network conditions.
  • Enhanced versioned constants: CUSTOM_VERSIONED_CONSTANTS now stores a map of custom files, fetching from this map first before falling back to blockifier for versions not in the map.
  • JSON-RPC 0.8.1 support (spec link)

Fixed

  • Event filtering now correctly handles processed events when starting from a pending state
  • Storage proof generation properly returns BLOCK_NOT_FOUND in specific edge cases (RPC v0.8.0)
  • Empty storage keys in getStorageProof requests no longer cause errors (RPC v0.8.0)
  • Improved L1 interaction with more reliable finalized block retrieval
  • Fixed a race condition in starknet_getStorageProof where new head blocks ingested during execution could lead to incorrect results
  • Corrected pending header setup to prevent inaccurate fee estimates in starknet_estimateFee
  • Fixed incorrect gas estimation in starknet_estimateFee when resource_bounds.l2_gas was set (RPC v0.6.0/v0.7.0)

Full Changelog: v0.14.2...v0.14.3

v0.14.3-rc2

07 Apr 12:45
ba76165
Compare
Choose a tag to compare
v0.14.3-rc2 Pre-release
Pre-release

This release focuses on RPC accuracy improvements and smarter handling of feeder gateway request timeouts.

Added

  • Flexible Feeder Gateway Timeouts: The --gw-timeouts flag now offers flexible configuration for request timeouts. You can specify timeouts in three ways:
    • Single value (e.g., 5s): After each failed request, the timeout will increase dynamically.
    • Comma-separated list (e.g., "5s,10s,20s"): Each timeout value in the list will be used sequentially after failures.
    • Single value with a trailing comma (e.g., 5s,): A fixed timeout will be used for all requests without dynamic adjustments. (#2691)

Fixed

  • Incorrect gas estimation when l2_gas is set: Fixed a bug where starknet_estimateFee returned wrong gas_consumed if resource_bounds.l2_gas wasn't 0. Affected RPC v6 and v7 (#2703).

Full Changelog: v0.14.3-rc1...v0.14.3-rc2

v0.14.3-rc1

01 Apr 05:04
Compare
Choose a tag to compare
v0.14.3-rc1 Pre-release
Pre-release

This release includes important RPC bug fixes that improve data consistency and fee estimation.

Fixed

  • A race condition in starknet_getStorageProof where a new head block ingested during execution could cause incorrect results
  • Incorrect pending header setup causing bad fee estimates in starknet_estimateFee

Full Changelog: v0.14.3-rc0...v0.14.3-rc1

v0.14.3-rc0

22 Mar 13:35
Compare
Choose a tag to compare
v0.14.3-rc0 Pre-release
Pre-release

This release focuses on RPC stability improvements and bug fixes.

⚠️ Breaking Changes ⚠️

  • Modified custom versioned constants handling: If you use custom versioned constants, you'll need to update your configuration to match the new structure.

Changed

  • Enhanced versioned constants: CUSTOM_VERSIONED_CONSTANTS now stores a map of custom files, fetching from this map first before falling back to blockifier for versions not in the map.
  • Updated to Go 1.24
  • HTTP timeout defaults for better connection handling

Fixed

  • Event filtering now correctly handles processed events when starting from pending state
  • Storage proof generation properly returns BLOCK_NOT_FOUND in specific edge cases (RPC v8)
  • Empty storage keys in getStorageProof requests no longer cause errors (RPC v8)
  • Improved L1 interaction with more reliable finalized block retrieval

Full Changelog: v0.14.2...v0.14.3-rc0

v0.14.2

17 Mar 12:52
adf229e
Compare
Choose a tag to compare

This release restores backward compatibility for RPC v0.6 and v0.7 by reverting the change to the revert_error message in the starknet_call response when an entry point is not found.

Fixed

  • RPC v0.6 / v0.7: Restored the previous error message for missing entry points in starknet_call (#2650) by @AnkushinDaniil

Full Changelog: v0.14.1...v0.14.2

v0.14.1

14 Mar 14:56
1c29310
Compare
Choose a tag to compare

This release addresses an issue with traceBlockTransactions failing due to class caching issues triggered by specific RPC call sequences.

Fixed

  • RPC v0.6: Issue with pending blocks in TransactionReceiptByHash method (#2642) by @hudem1
  • Tracing: Fixed class cache poisoning causing failures in traceBlockTransactions (#2644) by @infrmtcs

Full Changelog: v0.14.0...v0.14.1

v0.14.0

12 Mar 14:12
2ebe3e0
Compare
Choose a tag to compare

New release to support Starknet v0.13.5.

The changes from the previous release (v0.13.3) to this are small but still very important. We decided to name it v0.14.0 instead of v0.13.4 to give a clear vision that the previous release wouldn't support the latest version of Starknet.

⚠️ Important Upgrade Notice ⚠️
You must upgrade to this release before Starknet 0.13.5 is rolled out on the testnets and mainnet.

Added

  • Support for Starknet v0.13.5: Ensuring compatibility with the latest Starknet version.

Fixed

  • Transaction status subscription hanging: Resolved an issue where the subscription for the starknet_subscribeTransactionStatus method could get stuck.

Full Changelog: v0.13.3...v0.14.0

v0.13.3

10 Mar 08:42
19cf1c4
Compare
Choose a tag to compare

This release includes several important fixes to improve RPC stability and transaction handling.

Fixed

  • Fixed fee estimation issues:
    • Resolved failures due to absence of L1 data gas
    • Corrected VM versioned constants selection for accurate fee calculation
    • Fixed extremely large gas_consumed values in starknet_estimateFee and starknet_simulate responses
  • Fixed transaction trace format to match specifications across all RPC versions
  • Resolved JSON marshalling errors in starknet_call for RPC v6-7 that caused empty responses
  • Added proper ENTRYPOINT_NOT_FOUND error handling for starknet_call

Full Changelog: v0.13.2...v0.13.3

v0.13.2

27 Feb 07:42
e354149
Compare
Choose a tag to compare

This hot fix release focuses on resolving issues with starknet_getBlockWithTxs in RPC v0.7 and v0.6, where some transactions returned an empty response.

Fixed

  • RPC v6 and v7: Fixed an issue where starknet_getBlockWithTxs sometimes returned an empty response for certain transactions, causing errors.
    by @hudem1 in #2575
  • RPC v0.8: No longer support adding transactions with versions lower than v3.
    by @AnkushinDaniil in #2544

Full Changelog: v0.13.1...v0.13.2

v0.13.1

25 Feb 15:05
7239e37
Compare
Choose a tag to compare

This release restores backward compatibility for RPC v0.7 by reintroducing transaction_hash in starknet_getBlockWithReceipts, along with several minor improvements.

Fixed

  • Restored transaction_hash in starknet_getBlockWithReceipts for v0_7 compatibility (#2528)

Full Changelog: v0.13.0...v0.13.1