Juno versions

juno icon light

Juno is a golang Starknet node implementation by Nethermind with the aim of decentralising Starknet.

See the official Juno GitHub repository for more details.

v0.2.1 (latest)

This minor release introduces an important optimization that enhances sync performance.

  • Update gnark-crypto version:

    • Implement precomputed point multiplication results for Pedersen hash operations.

Full Changelog: v0.1.0…​v0.2.1

v0.2.0

This release adds support for Staknet v0.11.0.

WARNING: This release has breaking changes and database is not compatible with the previous version.

Added

  • Starknet v0.11.0 support:

    • Add Poseidon hash for new state commitment.

    • Add DeclareTransaction version 2.

    • Add and Store Cairo 1/Sierra class definition and hash calculations.

  • pprof option is added for profiling and monitoring.

  • Verify Class Hashes.

Changed

  • Starknet v0.11.0 support:

  • Rename the verbosity option to log-level and log-level accepts string instead of uint8. See help for details.

  • network option accepts string instead of uint8. See help for details.

  • Database table is updated to account for Starknet v0.11.0 changes.

Removed

  • Remove metrics and eth-node options since they are not used.

Fixed

  • Graceful shutdown: ensure all services have returned before exiting.

Full Changelog: v0.1.0…​v0.2.0

v0.1.0

This is Juno’s first release (compatible with Starknet v0.10.3) with the following features:

  • Starknet state construction and storage using a path-based Merkle Patricia trie.

  • Pedersen and starknet_keccak hash implementation over starknet field.

  • Feeder gateway synchronisation of Blocks, Transactions, Receipts, State Updates and Classes.

  • Block and Transaction hash verification.

  • JSON-RPC Endpoints:

    • starknet_chainId

    • starknet_blockNumber

    • starknet_blockHashAndNumber

    • starknet_getBlockWithTxHashes

    • starknet_getBlockWithTxs

    • starknet_getTransactionByHash

    • starknet_getTransactionReceipt

    • starknet_getBlockTransactionCount

    • starknet_getTransactionByBlockIdAndIndex

    • starknet_getStateUpdate