Starknet Devnet

New version of starknet-devnet (v0.4.2) has been released:

  • Adapt to cairo-lang/StarkNet 0.10.3
    • Keep support for deploy txs - will remove in the next breaking version
  • Update predeployed account version to OZ 0.5.1
  • Support specifying chain ID (defaults to TESTNET):
    • starknet-devnet --chain-id [MAINNET | TESTNET | TESTNET2]
  • Add endpoint for forking info:
    • GET /fork_status
    • Returns {"url": ..., "block": ...} if forking
    • Returns {} if not forking
16 Likes

New version of starknet-devnet (v0.4.3) is out:

  • Introduce the option to run with the Rust implementation of Cairo VM (docs)

  • Mock L1-L2 communication without running an L1 instance:

    • POST /postman/send_message_to_l2 - docs
    • POST /postman/consume_message_from_l2 - docs
10 Likes

NEW PATCH VERSION of starknet-devnet (v0.4.4) has been released:

  • Removed the slowdown introduced with v0.4.3
    • Fixed the monkeypatch of pedersen C++ implementation
    • Not related to Cairo VM selected (Python / Rust)
  • Fixed the response of /postman/send_message_to_l2 to represent tx hash as hex string
8 Likes

NEW VERSION of starknet-devnet (v0.4.5) has been released:

  • Introduced blocks-on-demand
    • If you start Devnet with --blocks-on-demand, new txs are stored in a pending block
    • POST /create_block_on_demand
      • Turns pending block to latest
      • Starts a new pending block
      • Latest block contains all transactions since last block creation
    • Target block can be selected via block IDs pending and latest
      • Old blocks not queryable, but should be in the future
    • Old mode (new block on each tx) unchanged and still default
  • JSON-RPC request and response validation
    • Togglable with --disable-rpc-request-validation and --disable-rpc-response-validation
  • JSON-RPC starknet_getEvents partially fixed
  • Minting now uses tx v1 (when lite: true not specified)
  • Updated L1-L2 messaging contracts
    • Compatible with the current StarkNet version (fee added)
3 Likes

NEW starknet-devnet is out (v0.4.6):

  • Support querying states at old blocks
    • Call a contract at an old block by specifying the block number/hash
  • Fix Starkscan compatibility
  • Fix getEvents of JSON-RPC API
3 Likes

NEW pre-release of starknet-devnet is out (v0.5.0a0):

  • No longer supporting Python 3.8 (requirement of cairo-lang)
  • Adapted to Starknet 0.11 (cairo-lang 0.11.0.1):
    • Supporting declare v2 transactions
      • Recompiling cairo 1.0 classes with compiler v1.0.0-alpha.6
      • Supporting only x86 architecture (e.g. arm/m1 not supported)
    • Supporting class replacement (replace_class)
    • Enforcing L1->L2 message fees
    • Updated get_class_by_hash
      • Returning sierra for cairo 1 and old contrat class for cairo 0 classes
    • Supporting get_compiled_class_by_class_hash
    • JSON-RPC support not modified (still using v0.2.1)
  • Temporarily suspended Rust VM support
  • Number of retries in forking is now configurable:
    • starknet-devnet --fork-retries <N>
  • /create_block endpoint is unified with /create_block_on_demand
    • Now /create_block returns only block hash
  • Transactions with max_fee set to zero are no longer supported by default
    • Support them with starknet-devnet --allow-max-fee-zero
  • Improved hash validation (blocks and transactions)
  • Time manipulation no longer requires manual block creation
  • Getting blocks and traces fixed in forked mode
1 Like

New starknet-devnet pre-release is out (v0.5.0a1) with bugfixes and support for custom recompilation of cairo 1.0 contracts. Read more in Release v0.5.0a1 ยท Shard-Labs/starknet-devnet ยท GitHub

New starknet-devnet pre-release (v0.5.0a2) with cairo-lang 0.11.0.2 and web3 0.6.0 is out. Read more in Release v0.5.0a2 ยท Shard-Labs/starknet-devnet ยท GitHub

NEW STABLE RELEASE of starknet-devnet (v0.5.0) is out:

  • Since the last pre-release:
    • Rust VM is supported again: docs
    • Fixed starknet_getEvents JSON-RPC API
    • Fixed get_full_contract of gateway API
  • More info and full changelog since the last stable release is in the release notes

NEW VERSION of starknet-devnet is out (v0.5.1):

NEW VERSION of starknet-devnet (v0.5.2) is out:

NEW VERSION of starknet-devnet (v0.5.3) is out:

  • Adapted to cairo-lang/Starknet v0.11.2
  • Improved Cairo 1 support
  • Updated JSON-RPC API
  • Bugfixes
  • Improved documentation

Read more in the release notes

NEW VERSION of starknet-devnet (v0.5.4) is out:

  • JSON-RPC updates (bugfixes + supported simulateTransaction)
  • Improved logging (--verbose flag)
  • Customizable compiler args (--compiler-args)
    Read more in the release notes

New starknet-devnet pre-release is out (v0.5.5a0):

  • Adapted to Starknet 0.12.0a0
  • Changed the default compiler args used in Cairo 1 (and Cairo 2) declaration
  • Bugfix in JSON-RPC API
  • Read more in the release notes

NEW DEVNET (PRE)RELEASE

As announced, a new Devnet pre-relase is out (breaking - 0.6.0a0):

New release of starknet-devnet (v0.6.0) is out

  • Adapted to Starknet 0.12.1
  • Properly bouncing back invalid transactions instead of reverting them (invalid nonce / invalid max_fee / failed validation)
  • Release notes

Announcing that Devnet in Rust is now past the MVP stage - supporting all RPC methods!
Check it out!
There are still a lot of features missing from the old devnet, but we will get there!

Next steps: support RPC 4.0 spec and dump-reload feature!

NEW RELEASE of Pythonic Devnet is out (v0.6.1):

New pythonic starknet-devnet (v0.6.2) is out:

Devnet in Rust update

  • Program available as a Docker image; more info in the docs
  • JSON-RPC API updated to v0.4.0