Starknet:
- Initial support of Cairo 1.0 contracts:
- New declare transaction version for declaring Cairo 1.0 contracts
- Deploy and invoke are supported for Cairo 1.0 contract
- The Cairo 1.0 ABI is not supported yet, so using
starknet invoke
requires omitting the--abi
argument
- The Cairo 1.0 ABI is not supported yet, so using
- New API:
get_compiled_class_by_class_hash
- returns the compiled class (CASM) of the given contract class
- Changes to on-chain data format. Include the Cairo1.0 declared classes and changes to the class hash of a given contract instance. See more information here
- Support for Poseidon hash (only in Cairo0 contracts)
- New syscall:
replace_class
- replaces the class of the contract calling it. This syscall can replace the proxy mechanism for upgradable contracts - Mandatory message fees for messages from L1 to L2
- version-0
INVOKE
andDECLARE
transactions will no longer be supported in Starknet Alpha v0.11.0 (this unrelated to the continued support of Cairo 0 contracts)
Cairo:
- New builtins:
- Poseidon hash function (efficient, STARK-friendly hash function)
- Keccak hash function (currently, the keccak builtin cannot be used in Starknet)