StarkNet Alpha 4 Release
Exciting Times Ahead
Alpha 4 was released today on Goerli. This version is the Mainnet release candidate and, if everything goes according to plan, will be deployed on Mainnet by the month’s end.
Alpha 4 follows the features-packed release of Alpha 3, which included, among other things, improvements to the Cairo compilation times, contract constructors, and much more (see the full release notes).
Important to note: this is still an Alpha version — to deploy your contract on the Mainnet deployment, please follow the new apps’ onboarding guidelines.
Although this version’s main focus is on getting ready for the Mainnet deployment, it also includes several new features:
Get this contract’s address
Contracts can now get their own address via the new syscall `get_contract_address`. We can, finally, put the selfie contract to rest.
Blocks are now identified via hash rather than Id. This follows our latest transition to transaction hashes. All APIs have been updated accordingly. We will soon release full technical documentation of the system, which will also include the specification of the block structure.
This version introduces a change to the way contract addresses are calculated. The address is a Pedersen hash on the caller address, a salt (random or chosen by the deployer), the contract code hash, and the hash of the constructor arguments, all appended by a prefix.
Hash(PREFIX, caller_address, salt, contract_hash, ctr_args_hash)
In the current version, the caller address always equals 0, but in future versions, this will enable the deployment of contracts directly from existing contracts.
Note that this scheme is very similar to CREATE2.
Token bridges are a crucial part of StarkNet infrastructure. They allow transferring funds to and from StarkNet. The bridge is not deployed at the time of publication, but it should be available in a few days — along with the full documentation of its functionality and usage. One thing important to note is that the bridge uses the L1<>L2 messaging protocol. As such, it offers short withdrawal times — once a withdrawal is included in a batch and accepted on L1, the funds are available instantly to the user on L1.
This is the first version of the token bridges, and we would love to get feedback from the ecosystem on it.