Skip to content

Releases: NethermindEth/juno

v0.12.5

02 Dec 15:15
Compare
Choose a tag to compare

This release focuses on improving performance and ensuring stability across key functionalities.

Added

  • Optimized Sync and RPC Performance: Increased the default db-cache-size to 1GiB, significantly improving synchronization speed and reducing response times for key operations. (#2244)

Changed

  • Dependency Alignment: Updated internal dependencies to maintain compatibility and streamline the build process. (#2293)

Fixed

  • Enhanced Compilation Error Handling: Improved handling of certain edge cases during contract compilation to ensure better system reliability. (#2297)

Full Changelog: v0.12.4...v0.12.5

v0.12.4

11 Nov 09:30
Compare
Choose a tag to compare

This release focuses on supporting Starknet 0.13.3.

⚠️ Important Upgrade Notice ⚠️

You must upgrade to this release before Starknet 0.13.3 is rolled out on the testnet and mainnet. Failing to do so will result in the inability to sync new (Starknet 0.13.3) blocks.

To get the schedule for upcoming Starknet updates, follow this thread: Starknet Roadmap Updates.

Added

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

Full Changelog: v0.12.3...v0.12.4

v0.12.3

18 Oct 07:54
7faba7c
Compare
Choose a tag to compare

This release focuses on enhancing performance, optimizing synchronization, and updating dependencies to ensure compatibility and reliability.

Added

  • L1 Metrics: Introduced metrics for monitoring L1 activities, providing more insight into L1 interactions. (#1678)
  • Support Plugins: Added support for plugins to extend Juno's capabilities. (#2051)
  • Add DB Revert Command: Added a command to revert the database to a previous state, enabling easy debugging and state rollback in case of issues. This includes the ability to specify a target block to revert to, making it highly useful for testing. (#2216)

Changed

  • Optimized State Reading: Improved reading efficiency for felts from the state, reducing overhead and boosting performance. (#1713)
  • Parallel Processing for Commitments: Enhanced receiptCommitment and transactionCommitmentPoseidon functions to utilize parallel processing, optimizing data handling and improving speed. (#2165)
  • Dependency Updates: Upgraded key dependencies (libp2p, prometheus/client_golang, go-ethereum) and updated Go version to v1.23.1 for better performance and security. (#2172, #2190, #2128)

Fixed

  • P2P Sync for v0.13.2 Blocks: Fixed an issue preventing synchronization with blocks from Starknet v0.13.2, ensuring smoother integration between nodes. (#2146)
  • Nil Interface Check: Fixed an issue where an interface was incorrectly identified as nil, leading to potential crashes. This improvement enhances the stability of the sync process. (#2161)
  • Traces Fixes: Addressed issues with traces, including handling of fees, state diffs, and events, ensuring more accurate data representation. (#2118)
  • Add Missing Execution Resources to Fetched Traces: Fixed missing execution resources in the fetched traces to ensure completeness of the trace data. (#2222)

Full Changelog: v0.12.2...v0.12.3

v0.12.2

03 Sep 13:36
1862240
Compare
Choose a tag to compare

This release adds support for Starknet v0.13.2.1, resolving issues with overestimating declare transactions.

Changed

  • Blockifier Update: Upgraded to 0.8.0-rc.3, addressing overestimation issues with declare class and ensuring compatibility with Starknet v0.13.2.1. (@kirugan)
  • Improved Trace Logging: Enhanced trace logging for better visibility. (@kirugan)

Fixed

  • Discovery P2P Mechanism: Removed extra "kad" substring from the discovery process. (@weiihann)

Full Changelog: v0.12.1...v0.12.2

v0.12.1

29 Aug 09:09
90d04be
Compare
Choose a tag to compare

This release introduces key features for improved monitoring and P2P communication, along with bug fixes and updates to maintain compatibility with the latest specifications.

Added

  • New /ready/sync Endpoint: Added the /ready/sync endpoint to check readiness and synchronization status. This endpoint returns 200 if the system is synced within the last six blocks and ready; otherwise, it returns 503. For more details, see #2060.
  • P2P Public Address Support: Implemented support for nodes to gossip their public IP address using the p2p-public-addr flag, enabling P2P communication over public networks. (#2011)
  • New Execution Step Count Header: Added the X-Cairo-Steps header to track execution steps, providing better monitoring and debugging capabilities. (#1989)

Changed

  • Makefile Update for Parallel Build Process: Updated the Makefile to parallelize the build process using all available CPU cores, resulting in faster builds.
  • DB Command Replacement: Introduced a new db command (juno db) for database-related operations, replacing the previous approach. It includes subcommands like:
    • juno db info: Displays blockchain information stored in the database.
    • juno db size: Shows storage information for each bucket in the database.

Fixed

  • Conformity with Specification 0.7.1: Fixed the missing execution_resources.data_availability field in starknet_getTransactionReceipt responses, ensuring compliance with spec 0.7.1. (#2078)

Updated

  • Dependency Updates: Upgraded key dependencies to the latest versions for enhanced security and functionality:
    • blockifier updated to 0.8.0-rc.2
    • starknet_api updated to 0.13.0-rc.1
    • cairo-vm updated to 1.0.1
  • Go Version Update: The Go version has been updated to v1.23.0, improving overall performance and access to new language features. (#2058)

Full Changelog: v0.12.0...v0.12.1

v0.12.0

09 Aug 13:04
Compare
Choose a tag to compare

This release focuses on supporting Starknet 0.13.2.

⚠️ Important Upgrade Notice ⚠️

You must upgrade to this release before Starknet 0.13.2 is rolled out on the testnet and mainnet. Failing to do so will result in the inability to sync new (Starknet 0.13.2) blocks.

Added

  • Support for Starknet v0.13.2: Ensuring compatibility and enhanced performance with the latest version.
  • New Flag: Introduced the --versioned-constants-file flag to load a custom versioned constants JSON file.
  • DB Size Subcommand: Added the db-size subcommand to the Juno command, allowing users to check the database size.
  • P2P Peers Storage: We now store P2P peers in a database for quick startup in P2P sync.
  • Interruptible Migrations: Heavy migrations can be interrupted by sending SIGINT (Ctrl-C).

Fixed

  • L1 RPC Subscription: Fixed the issue to avoid spam calls to the L1 RPC subscription.

Full Changelog: v0.11.9...v0.12.0

v0.11.9

05 Jun 06:34
03c1985
Compare
Choose a tag to compare

What's Changed

  • Fallback Traces for 0.13.1 Blocks: Updated the fallback to the feeder gateway for traces of <= 0.13.1 blocks, improving the consistency of older transaction traces.

Full Changelog: v0.11.8...v0.11.9

v0.11.8

21 May 11:16
37d0e4b
Compare
Choose a tag to compare

Key Updates:

  • Trace Log Level: Added a "trace" log level to capture all incoming RPC requests, providing more detailed logging than the debug level. (by @KananGiovanni, @LordGhostX in #1822 and #1868)
  • P2P Message Size Increase: Increased the possible size of P2P messages, fixing a sync issue on Sepolia at block 57928. (by @kirugan in #1869)
  • Update zstd version: Resolved memory management issues, allowing the use of zstd compression. (by @ashu26jha in #1862)
  • Deprecated Code Removal: Partially removed deprecated code related to Goerli and Goerli2 networks. (by @stefanalfbo, @pnowosie in #1791, #1808, and #1861)
  • Trie Proof Implementation: Implemented getProof and verifyProof methods on the trie. (by @rianhughes in #1852)

Full Changelog: v0.11.7...v0.11.8

v0.11.7

26 Apr 14:42
a85cae7
Compare
Choose a tag to compare

What's Changed

Full Changelog: v0.11.6...v0.11.7

v0.11.6

25 Apr 09:34
a9f794f
Compare
Choose a tag to compare

This release focuses on implementing key fixes and enhancements to streamline functionality.

What's Changed

  • Fallback to Feeder Gateway for Traces: Juno can now configure which blocks to fallback to feeder for traces, avoiding issues with tracing buggy blocks. (PR #1823 by @kirugan)
  • Default Pending-Poll-Interval: Pending poll is now enabled by default and set to 5s. (PR #1830 by @IronGauntlets)
  • Fixed Trace Handling for Pending Transactions: Fixed an issue where tracing pending transactions wasn't possible before. (PR #1833 by @kirugan)
  • Refactor RPC Handlers and Tests: Major updates to RPC handlers and RPC tests. (PR #1768 by @pnowosie)

Full Changelog: v0.11.5...v0.11.6