This repository has been archived by the owner on Dec 15, 2023. It is now read-only.
Releases: 0xSpaceShard/starknet-devnet
Releases Β· 0xSpaceShard/starknet-devnet
v0.5.1
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
- Update context to spaceshard in config.yml by @ivpavici in #446
- Change shard labs to spaceshard links by @ivpavici in #447
- Changed hh-plugin links to spaceshard by @ivpavici in #449
- Create LICENSE by @ivpavici in #451
- Drop support for deploy tx by @FabijanC in #394
- Override hashing by @FabijanC in #452
- Change testing parallelization on CircleCI by @FabijanC in #453
- Abort blocks by @mikiw in #421
Full Changelog: v0.5.0...v0.5.1
v0.5.0
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 withcairo-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)
- 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
- Fix function calling by @FabijanC in #426
- Support custom compiler by @FabijanC in #428
- docs: devnet upgrade by @ivpavici in #430
- Update cairo-lang to 0.11.0.2; web3 to 0.6.0 by @FabijanC in #437
- Fix continuation token showing after no events are left in get_events by @tomek0123456789 in #433
- Update
cairo_rs_py_patch
to be compatible withcairo-lang 0.11
by @fmoletta in #439 - Fix internal error on get_full_contract by @mikiw in #442
- Fix forked get full contract by @FabijanC in #445
New Contributors
- @bigherc18 made their first contribution in #410
- @tomek0123456789 made their first contribution in #433
Changelog since last stable release: v0.4.6...v0.5.0
v0.5.0a2
v0.5.0a1
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
- Introduce new CLI option
Full Changelog: v0.5.0a0...v0.5.0a1
v0.5.0a0
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)
- Supporting declare v2 transactions
- 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
- Now
- Transactions with max_fee set to zero are no longer supported by default
- Support them with
starknet-devnet --allow-max-fee-zero
- Support them with
- 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
- @bigherc18 made their first contribution in #410
Full Changelog: v0.4.6...v0.5.0a0
v0.4.6
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
- Fix rpc get_events endpoint by @THenry14 in #395
- Fix getEvents for pending by @FabijanC in #399
- Support querying states at old blocks (gateway) by @FabijanC in #400
- Starkscan compatibility by @mikiw in #397
- Support querying states at old blocks with JSON-RPC by @FabijanC in #402
- Bump
crypto-cpp-py
, add note about test failures on macOS by @cptartur in #403 - Revert to poetry 1.2 by @FabijanC in #406
Full Changelog: v0.4.5...v0.4.6
v0.4.5
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
andlatest
- Old blocks not queryable, but should be in the future
- Old behavior (new block on each tx) unchanged and still default
- If you start Devnet with
- JSON-RPC request and response validation
- Togglable with
--disable-rpc-request-validation
and--disable-rpc-response-validation
- Togglable with
- 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
- Fix: typos by @omahs in #383
- Mint tx v1 by @FabijanC in #384
- Clean
cairo_rs_py_patch.py
by @fmoletta in #375 - Get events filter bugfix by @mikiw in #386
- L1 to L2 LogMessageToL2 event problem by @mikiw in #391
- Add RPC schema validation by @cptartur in #387
- Introduce pending block by @FabijanC in #389
New Contributors
Full Changelog: v0.4.4...v0.4.5
v0.4.4
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
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:
Development related changes
- New CI/CD workflow -
test_py_min_rust
Merged PRs
Full Changelog: v0.4.2...v0.4.3
v0.4.2
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
- Add import sorter by @drknzz in #353
- Add
fork_status
endpoint by @ptisserand in #354 - Stop supplying contract_address RPC Deploy by @drknzz in #355
- Add automatic docs deployment by @FabijanC in #357
- Support specifying chain ID by @mikiw in #358
- Update to cairo-lang 0.10.3 by @FabijanC in #360
- Update OZ account to 0.5.1 by @FabijanC in #362
New Contributors
- @ptisserand made their first contribution in #354
Full Changelog: v0.4.1...v0.4.2