Skip to content

Releases: matter-labs/era-compiler-solidity

prerelease-c6855d5-missing-libraries-first-pass

05 Nov 16:53
c6855d5
Compare
Choose a tag to compare
feat: always emit missing libraries

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

prerelease-ffcdb9a-fix-linker-indeterminism

28 Oct 16:00
ffcdb9a
Compare
Choose a tag to compare
fix: library linking time indeterminism

prerelease-05468c1-suppresed-messages-inside-settings

22 Oct 01:08
05468c1
Compare
Choose a tag to compare
ci: check hardhat integration with each release (#171)

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

1.5.2

31 Jul 12:57
489dddb
Compare
Choose a tag to compare

Added

  • The support for multiple urls to local files in standard JSON input

Removed

  • The source code loading mechanism leading to file system errors
  • The Solidity source code part of the metadata hash preimage
  • Some duplicate fields in the metadata hash preimage

Fixed

  • Errors with imports of files not included into the initial input

1.5.1

27 Jun 19:27
bffc569
Compare
Choose a tag to compare

Added

  • Parallelization in AST and IR parsing
  • More LLVM optimizations
  • Location resolution for EraVM-specific messages in standard JSON output
  • The suppress-errors parameter to disable some compilation errors

Changed

  • All messages are now written to JSON output in standard JSON mode
  • AST and IRs are not emitted anymore if not explicitly requested
  • Empty files and contracts are pruned from standard JSON output
  • Message formats are made more compatible with original messages of solc
  • <address payable>.send/transfer(<X>) now triggers a compilation error
  • Updated to Rust v1.79.0

Removed

  • Obsolete warnings for extcodesize and ecrecover
  • EVM-specific warnings which solc has been emitting unconditionally

Fixed

  • Dependency graph inefficiency that caused excessive compilation time
  • Removed JSON stream readers which are much slower than strings and vectors
  • Missing output with non-canonical input paths in combined JSON output
  • Missing warnings with solc v0.4.x and v0.5.x due to differences in AST
  • Cryptic error on type(T).runtimeCode usage with EVM assembly codegen
  • The unknown bytecodeHash error in standard JSON mode with solc v0.5.x