New version of starknet-devnet
(v0.2.5) has been released:
New version of starknet-devnet
(v0.2.6) has been released:
- Adapted to cairo-lang and Starknet 0.9.1
- Added path check on dumping
- Using OpenZeppelin 0.2.1 for predeployed accounts
- Accounts predeployed with
--seed
now set not to change with new Devnet releases - Token contract:
- Address set not to change with new Devnet releases
- Token symbol changed to ETH
- Supported non-decimal float as
amount
of minting (e.g.1e21
or1000.0
) - Added support for
geth --dev
being used as the L1 of L1<>L2 Postman communication - Introduced the
/api
endpoint which returns a map of all URL endpoints provided by Devnet - Introduced Docker image tag
shardlabs/starknet-devnet:<VERSION>-seed0
which predeploys accounts with--seed 0
New version of starknet-devnet
(v0.2.7) has been released:
- Flushing stdout
- Introduced endpoint for fetching fee token info (
GET /fee_token
) - Fixed balance checking and minting after loading dumped Devnet
- RPC updates:
- Fixed declare and deploy parameters (hexing ints)
- Supported RPC write API (invoke, deploy, declare)
New version of starknet-devnet
(v0.2.8) has been released:
- Fixed fee estimation weights - should result in estimations more similar to those on alpha-goerli
- Fixed
block_hash
property ofget_transaction_status
response to be hex string - Fixed
get_transaction_trace
for declare transactions - Block improvements:
- Fixed response of
get_block_number
cairo syscall - Now shipping with a genesis block (block number 0)
- Introduced an endpoint for generating an empty block:
POST /create_block
- Fixed response of
- Slightly improved performance (replaced unnecessary async with sync methods)
New version of starknet-devnet
(v0.2.9) has been released:
- Fixed handling of running requests exchanging big payloads, e.g. get_code
- Fixed off-by-one offset in
get_block_number
syscall response
New version of starknet-devnet
(v0.2.10) has been released:
- Fixed dump/load and restart functionalities.
- Now waiting for dump to finish (letting it run in parallel was causing potential read-write race conditions)
- Improved CLI parameter handling
New version of starknet-devnet
(v0.2.11) has been released:
- Now supporting JSON-RPC API v0.1.0
- except methods
starknet_protocolVersion
,starknet_getEvents
andstarknet_getNonce
- except methods
- Updated predeployed accounts implementation to OpenZeppelin v0.3.1 (previously was OpenZeppelin v0.2.1)
- Now every commit to master is available as a Docker image:
shardlabs/starknet-devnet:<COMMIT_HASH>
- last commit also available as
shardlabs/starknet-devnet:next
New version of starknet-devnet
(v0.3.0) has been released:
- Partially adapted to Starknet / cairo-lang 0.10.0:
- Dropped support for Python 3.7
- Tested with Starknet CLI account:
- Predeployed OZ accounts not guaranteed to work
- Block state root not calculated
- Transactions with version 1 not guaranteed to work
- API changes:
- Supported:
get_nonce
andsimulate_transaction
- Not yet supported:
estimate_message_fee
- Supported:
- RPC method
starknet_getStateUpdate
not guaranteed to work
-
--lite-mode
only affects block hash calculation (uses numbering instead of actual hash) - Removed
result
frominvoke
response. - Introduced modifying server timeout with
--timeout
parameter (can help with big contracts or slower machines)
New version of starknet-devnet
(v0.3.1) has been released:
- The predeployed/prefunded accounts adapted to the new tx version 1:
- Using OZ 0.4.0b with a minor modification to allow tx simulation
- Logging from dockerized Devnet enabled by default
- By using
PYTHONUNBUFFERED=1
as the default, no need to provide it manually
- By using
- Fixed account replication seed being displayed as None
- Allowing fee estimation for tx versions 0 and 1
- Fixed state root being empty
- JSON-RPC fixes:
- Fixed call return value
- Allowing requests without
params
where possible - Improved error handling; error codes more in line with specification
New version of starknet-devnet (v0.3.2) has been released:
- Lite mode fix for transaction hashes
- Support estimate_message_fee
- Fix positional args for addInvokeTransaction (JSON-RPC)
New version of starknet-devnet (v0.3.3) has been released:
- Increase of performance
- improved deploy (~150% gain)
- change of deepcopy in ContractClass (~300% gain)
- New flag --hide-predeployed-accounts added
NEW VERSION of starknet-devnet
(v0.3.4) has been released:
- Support for Starknet 0.10.1
- Predeployed accounts can now use a custom implementation; specified via
--account-class
(docs) - Docs now available at Hello from StarkNet Devnet | StarkNet Devnet
- RPC updates:
- Support for
starknet_getEvents
- Updated
starknet_getNonce
andstarknet_addInvokeTransaction
RPC methods
- Support for
NEW VERSION of starknet-devnet
(v0.3.5) has been released:
- Predeploy universal deployer contract (UDC): docs
- Update predeployed account default implementation (OZ 0.5.0)
- Fix error format:
- Use the same scheme as alpha network (status_code → code)
- Fix
get_transaction_trace
response for rejected txs
- Correctly store accounts deployed with DeployAccount tx
- L1_HANDLER txs stored correctly
- RPC improvements:
- Adapt to JSON-RPC v0.2.0
- Adapt to tx v1
- Allow block ID to be
pending
(same behavior aslatest
)
wow it is so good my friend
What unique contribution(s) STARKNET is bringing to crypto community that’s necessitated it’s existence?
New breaking version of starknet-devnet
(v0.4.0) has been released:
- Introduce forking (docs):
starknet-devnet --fork-network <NAME|URL> --fork-block <NUMBER>
- The fork uses testnet ID for all networks (should be configurable in the future)
- Internal contracts now at the same addresses as on mainnet/testnet:
- UDC:
0x41a78e741e5af2fec34b695679bc6891742439f7afb8484ecd7766661ad02bf
- Fee token contract:
0x49d36570d4e46f48e99674bd3fcc84644ddd6b96f7c741b1562b82f9e004dc7
- Breaking change
- UDC:
- Lite mode no longer uses sequential deployment tx hashing
- Performed slower deployment than regular mode
- Suggestion: reconsider if your use-case benefits from lite mode
- Fix missing L2 to L1 messages
- Fix state dumping on exit
- JSON-RPC:
- Support v0.2.1
- Fee estimation for declare txs
-
getEvents
: fix continuation token when no events
Regarding the forking mechanism.
I’d be interested in understanding more how it works.
When providing the official URL such as:
https://alpha4.starknet.io
It does not pull the entire StarkNet state but rather every time I perform a call/transaction a “static call” will be made to the provided endpoint.
So if I run my unit tests, I’ll be spamming the living s*it out of the sequencer endpoint, no?
So to ensure that everything runs as quick as possible I would want to query my local pathfinder node instead of one of the official endpoints, right?
New version of starknet-devnet
(v0.4.1) has been released:
- Use StarkNet / cairo-lang 0.10.2:
- Add
/estimate_fee_bulk
support
- Add
- JSON-RPC: fix pending block behavior
@FeedTheFed What do you say about @TotalPizza’s concern?
…I mean thinking about it a bit more, spamming is not necessarily the issue. That’s something starkware has to deal with anyway. The issue for devs is probably more that using forking with goerli takes too long.
Also I should probably make use of the feature more thoroughly before commenting more on it