Skip to content
This repository has been archived by the owner on Dec 15, 2023. It is now read-only.

Releases: 0xSpaceShard/starknet-devnet

v0.5.1

27 Apr 09:36
Compare
Choose a tag to compare

Usage related changes

  • Introduced block abortion (docs)
  • Dropped support for the deprecated deploy transaction (deployment only feasible through UDC)
    • Not deemed a breaking change, rather an enhancement to make Devnet more similar to the official testnets
  • Moved docs and code repo from Shard-Labs to 0xSpaceShard
    • PyPI and Docker Hub unchanged
  • Improved performance of Cairo 1 hashing (Poseidon)
  • Default Cairo 1 recompiler (x86 compatible) allowing libfuncs experimental_v0.1.0
  • Updated license (MIT)

Development related changes

  • Added poseidon-py dependency
  • Updated crypto-cpp-py dependency
  • Improved executor and parallelization on CircleCI

Merged PRs

Full Changelog: v0.5.0...v0.5.1

v0.5.0

14 Apr 14:30
Compare
Choose a tag to compare

Changes since last pre-release (v0.5.0a2)

  • Fix continuation token showing after no events are left in get_events by @tomek0123456789 in #433
  • Update cairo_rs_py_patch to be compatible with cairo-lang 0.11 by @fmoletta in #439
  • Internal error on get_full_contract by @mikiw in #442
  • Fix forked get full contract by @FabijanC in #445

Changelog since last pre-release: v0.5.0a2...v0.5.0

Changes since last stable release (v0.4.6)

New Contributors

Changelog since last stable release: v0.4.6...v0.5.0

v0.5.0a2

05 Apr 11:40
Compare
Choose a tag to compare
v0.5.0a2 Pre-release
Pre-release

Usage related changes

Full Changelog: v0.5.0a1...v0.5.0a2

v0.5.0a1

29 Mar 08:56
Compare
Choose a tag to compare
v0.5.0a1 Pre-release
Pre-release

Usage related changes

  • Fix function calling in #426
    • Smart contract v0 function calls no longer return Internal Server Error (500)
  • Support custom compiler in #428
    • Introduce new CLI option --cairo-compiler-manifest <PATH>
    • For handling declare v2 transactions on non-x86 machines, supply your own cairo 1.0 compiler on Devnet startup
    • Supports compiling using whichever compiler version the user needs

Full Changelog: v0.5.0a0...v0.5.0a1

v0.5.0a0

23 Mar 18:59
Compare
Choose a tag to compare
v0.5.0a0 Pre-release
Pre-release

Usage related changes

  • 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

Development related changes

  • Python 3.8 no longer in circleci workflow
  • Introduced common parent class of predeployed contracts

Merged PRs

  • Invoke transaction with max fee=0 are not supported by default by @ptisserand in #392
  • Unification of create_block_on_demand() to create_block() by @mikiw in #404
  • Improve validation of block hash and transaction hash by @mikiw in #409
  • Change "StarkNet" to "Starknet" by @Hug0x0 in #411
  • Make number of retries in forking configurable by @bigherc18 in #410
  • increase/set time block creation by @mikiw in #416
  • Refactor predeployed contract wrapper classes by @bigherc18 in #414
  • Fix get block and get traces in fork mode by @mikiw in #419
  • Adapt to starknet 0.11.0 by @FabijanC in #415

New Contributors

Full Changelog: v0.4.6...v0.5.0a0

v0.4.6

22 Feb 13:09
e978f40
Compare
Choose a tag to compare

Usage related changes

  • Support querying states at old blocks
    • Call a contract at an old block by specifying the block number/hash
  • Fix Starkscan compatibility
    • Predeployed contracts are included in the genesis block (accounts, UDC, fee token contract, ...)
    • Predeclaration and predeployment of contracts is assigned tx hashes (successive values 0x1, 0x2, ...)
  • Fix getEvents of JSON-RPC API

Development related changes

  • Update crypto-cpp-py (1.2.0)

Merged PRs

Full Changelog: v0.4.5...v0.4.6

v0.4.5

09 Feb 12:40
Compare
Choose a tag to compare

Usage related changes

  • 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 behavior (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)

Development related changes

  • Refactor and update integration with cairo-rs-py
  • Refactor block and state creation and storing
  • Introduce a prefunded chargeable superuser account (e.g. for signing minting txs)

Merged PRs

New Contributors

Full Changelog: v0.4.4...v0.4.5

v0.4.4

12 Jan 09:27
Compare
Choose a tag to compare

Usage related changes

  • 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

What's Changed

Full Changelog: v0.4.3...v0.4.4

v0.4.3

23 Dec 15:31
Compare
Choose a tag to compare

Usage related changes

  • 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

Development related changes

  • New CI/CD workflow - test_py_min_rust

Merged PRs

Full Changelog: v0.4.2...v0.4.3

v0.4.2

06 Dec 09:45
Compare
Choose a tag to compare

Usage related changes

  • 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

Development related changes

  • Automatically deploy docs
  • Add import sorter
  • JSON-RPC typing fix

Merged PRs

New Contributors

Full Changelog: v0.4.1...v0.4.2