Skip to content

Releases: matter-labs/era-compiler-solidity

prerelease-73371e0-add-to-linked-struct

19 Dec 14:26
73371e0
Compare
Choose a tag to compare
Pre-release
add deps data to the linked field

prerelease-2e34089-full-factory-deps-list

19 Dec 11:08
2e34089
Compare
Choose a tag to compare
feat: add full lists of factory dependencies

1.5.8

10 Dec 19:30
64c410b
Compare
Choose a tag to compare

Added

  • JSON interface for the EraVM linker
  • Missing libraries output in standard JSON mode
  • Transient storage layout to combined JSON output
  • A warning about forceEVMLA and codegen options in standard JSON mode
  • Documentation for remaining CLI endpoints and EraVM extensions

Changed

  • Moved the solc client to another crate at era-solc
  • Prohibited the usage of the upstream solc compiler
  • The CLI library from deprecated structopt to clap
  • All dependencies are now resolved by the LLVM linker, improving compilation times
  • The disassembler now only works with files with hexadecimal strings
  • Updated to Rust v1.82.0

Fixed

  • Cleared return data after calling CREATE/CREATE2
  • Calls to precompile 0x04 are not replaced with memcopy anymore
  • Standard JSON input parsing if outputSelection arrays are unset
  • Missing bytecode for files with multiple contracts in combined JSON mode

prerelease-a5f21db-restore-the-evm-object

06 Dec 14:42
a5f21db
Compare
Choose a tag to compare
fix: do not prune the evm object

prerelease-cad69d4-linker-factory-deps-fixed

06 Dec 02:39
cad69d4
Compare
Choose a tag to compare
docs: remaining CLI endpoints (#219)

1.5.7

31 Oct 16:02
07030c4
Compare
Choose a tag to compare

Added

  • Supported transient storage layout that is returned by solc
  • The --codegen option to make codegen settings more unified
  • Increased the code coverage of the interface to nearly 100%
  • The zksolc documentation as a part of this repository
  • More LLVM optimizations

Changed

  • Moved suppressed messages inside settings in standard JSON input
  • Moved EraVM artifacts to contract.eravm in standard JSON output

Fixed

  • Different bytecode for compile-time and post-compile-time library linking

Deprecated

  • Suppressed messages at the root of standard JSON input
  • EraVM artifacts returned via contract.evm in standard JSON output
  • --force-evmla flag in favor of --codegen
  • --disable-solc-optimizer flag, as we are not using the solc optimizer anymore

1.5.6

16 Oct 00:54
86db4c5
Compare
Choose a tag to compare

Fixed

  • An error about solc discovery when it is not present in ${PATH}

1.5.5

15 Oct 09:33
2cbcbea
Compare
Choose a tag to compare

Added

  • The solc v0.8.28 support
  • More optimizations

Fixed

  • The compilation pipeline that was not run without output parameters
  • Broken --output-dir output paths for non-Solidity contracts
  • solc that was not picked up from ${PATH} in standard JSON mode
  • solc exit code check which is now before the output parsing
  • Several issues with fragile parsing of --llvm-options

1.5.4

24 Sep 10:19
6519ed7
Compare
Choose a tag to compare

Added

  • The support for IPFS metadata hash type
  • The support for deploy-time library linking
  • The EraVM disassembler
  • The solc v0.8.27 support
  • More optimizations

1.5.3

27 Aug 05:56
055ec47
Compare
Choose a tag to compare

Added

  • More LLVM optimizations

Changed

  • Migrated to the LLVM-based assembler and linker
  • Updated to Rust v1.80.1

Fixed

  • The complex bitwise operations misoptimization