Skip to content

Releases: starkware-libs/cairo-lang

v0.12.3a2

15 Nov 16:24
Compare
Choose a tag to compare
v0.12.3a2 Pre-release
Pre-release

Starknet

  • Performance optimizations in the gateway, the computation of the Patricia storage root and block hash
  • Support secp256r1 syscalls in the Starknet OS. Thanks to Braavos for adapting the secp256k1 code to secp256r1!
  • Restriction for __validate__ and the constructor of DeployAccount transactions:
    • Restrict access to sequencer_address in the get_execution_info syscall - return zero values
    • Restrict access to some syscalls:
      • Cairo contracts: get_block_hash
      • CairoZero contracts: get_sequencer_address

CairoZero

  • Move structs that are common to secp256k1 and secp256r1 to a separate file

v0.12.3a1

05 Nov 10:23
Compare
Choose a tag to compare
v0.12.3a1 Pre-release
Pre-release

Starknet

  • Performance optimizations in the gateway, the computation of the Patricia storage root and block hash
  • Support secp256r1 syscalls in the Starknet OS. Thanks to Braavos for adapting the secp256k1 code to secp256r1!
  • Restriction for __validate__ and the constructor of DeployAccount transactions:
    • Restrict access to sequencer_address in the get_execution_info syscall - return zero values
    • Restrict access to some syscalls:
      • Cairo contracts: get_block_hash
      • CairoZero contracts: get_sequencer_address

CairoZero

  • Move structs that are common to secp256k1 and secp256r1 to a separate file

v0.12.3a0

24 Oct 05:34
Compare
Choose a tag to compare
v0.12.3a0 Pre-release
Pre-release

Starknet

  • Performance optimizations in the gateway and the computation of the Patricia storage root
  • Support secp256r1 syscalls in the Starknet OS. Thanks to Braavos for adapting the secp256k1 code to secp256r1!
  • Restriction for __validate__ and the constructor of DeployAccount transactions:
    • Restrict access to block_number, block_timestamp and sequencer_address in the get_execution_info syscall - return zero values
    • Restrict access to some syscalls:
      • Cairo contracts: get_block_hash
      • CairoZero contracts: get_block_number, get_block_timestamp, get_sequencer_address

CairoZero

  • Move structs that are common to secp256k1 and secp256r1 to a separate file

v0.12.2

21 Aug 12:36
Compare
Choose a tag to compare

Starknet

  • Add sequencer signature on block hash and state diff, using the following API (see here):
    • get_signature - returns the signature on the data
    • get_public_key - returns the public key used to sign blocks
  • Increase the maximum number of steps in a single transaction from 1M to 3M
  • Add 0x prefix in the API responses for state roots
  • Add an optional parameter to get_state_update API - includeBlock which adds block information to the response (see here)
  • An improvement to the max throughput

v0.12.2a0

15 Aug 14:37
Compare
Choose a tag to compare
v0.12.2a0 Pre-release
Pre-release

Starknet

  • Add sequencer signature on block hash and state diff, using the following API (see here):
    • get_signature - returns the signature on the data
    • get_public_key - returns the public key used to sign blocks
  • Increase the maximum number of steps in a single transaction from 1M to 3M
  • Add 0x prefix in the API responses for state roots
  • Add an optional parameter to get_state_update API - includeBlock which adds block information to the response (see here)
  • An improvement to the max throughput

v0.12.1

07 Aug 10:58
Compare
Choose a tag to compare

Starknet

  • Take fee for reverted transactions. At this phase, the Starknet OS doesn't prove that the transactions failed. This will change once the move to Sierra is complete
  • Early rejection of transactions that (1) do not pass validate (2) have an old nonce or (3) do not pay enough fee
    • See here for more information
  • Support of keccak and Secp256k1
  • Fixed a bug where transactions that changed the ETH balance of a user were charged twice for it (once because of reducing the fee and once because of the transaction itself)

v0.12.1a0

19 Jul 15:50
Compare
Choose a tag to compare
v0.12.1a0 Pre-release
Pre-release

Starknet

  • Take fee for reverted transactions. At this phase, the Starknet OS doesn't prove that the transactions failed. This will change once the move to Sierra is complete
  • Early rejection of transactions that (1) do not pass validate (2) have an old nonce or (3) do not pay enough fee
    • See here for more information
  • Support of keccak and Secp256k1
  • Fixed a bug where transactions that changed the ETH balance of a user were charged twice for it (once because of reducing the fee and once because of the transaction itself)

v0.12.0

04 Jul 10:29
Compare
Choose a tag to compare

Starknet

  • Use the rust blockifier and LambdaClass's Cairo VM to accelerate the sequencer's time to handle transactions
  • Support version 2.0.0 of the Cairo compiler
  • Replace the PENDING status of transactions to ACCEPTED_ON_L2 - once a transaction is in that status it means that it will be included in a block (this applies to transactions - blocks still have the PENDING status)
  • Add an experimental get_block_hash syscall (we plan to review how useful this syscall is, so treat it as experimental. We recommend using it only in upgradable contracts)
  • Change HTTP error code from 500 to 400 on API errors

v0.12.0a0

28 Jun 11:45
Compare
Choose a tag to compare
v0.12.0a0 Pre-release
Pre-release

Starknet

  • Use the rust blockifier and LambdaClass's Cairo VM to accelerate the sequencer's time to handle transactions
  • Support version 2.0.0 of the Cairo compiler
  • Replace the PENDING status of transactions to ACCEPTED_ON_L2 - once a transaction is in that status it means that it will be included in a block (this applies to transactions - blocks still have the PENDING status)
  • Add an experimental get_block_hash syscall (we plan to review how useful this syscall is, so treat it as experimental. We recommend using it only in upgradable contracts)

v0.11.2

29 May 10:57
Compare
Choose a tag to compare

Starknet:

  • Allow the use of Cairo 1.0 on Starknet mainnet
  • Update Sierra->Casm compiler version to 1.1.0. Note that contracts that were compiled with v1.0.0 cannot be declared in this version. However, if they were already declared, they can still be used, and more instances can be deployed