Skip to content

Releases: NomicFoundation/solx

0.1.3

15 Jan 00:12
347a13b

Choose a tag to compare

📝 Changelog

✨ Features

  • feat: update to solc v0.8.33 (#179)
  • feat: update LLVM to EraVM-free v21.1 repository (#174)
  • feat: minimize the share of GPL-licensed code (#156)
  • feat: emit a metadata tag if unsafe asm is present (#158)
  • feat: inline EVM assembly main function into __entry (#170)
  • feat: add optnone and noinline attrs for -O0 mode (#168)

🐛 Fixes

  • fix: improve the handling of empty input (#144)
  • fix: pull the LLVM fix for CGP sign extension (#147)
  • fix: add all source directories to allow-path (#151)
  • fix: the fuzzer-discovered case with srem overflow (#173)
  • fix: do not allow EVM versions before cancun (#182)

📦 Refactoring

  • feat: migrate the compiler tester to this monorepo (#153)
  • feat: migrates the LLVM builder to this monorepo (#145)
  • feat: support REVM tracing to stdout (#166)
  • feat: full Hardhat and Foundry spreadsheet reports (#175)
  • fix: the order of benchmark data from solx-tester (#160)
  • fix: clone the LLVM IR module before emitting assembly (#163)
  • fix: some deps that are still pointing to main (#162)
  • fix: replace raw reqwest downloader with a recoverable workflow (#181)

🚧 Infrastructure

  • fix: the benchmark report layouts (#172)
  • fix: broken documentation links and references (#177)
  • fix: EVM platform lowercase and bug report link (#180)
  • ci: add WTFAcademy/WTF-gas-optimization to the benchmarks (#169)
  • ci: simplified benchmark runs against main (#178)
  • ci: fix deploy-docs.yaml permissions (#183)
  • ci: replace remaining matter-labs runners (#184)
  • ci: skip disabled projects for hardhat table (#148)
  • ci: support tester workflows (#157)
  • ci: replace Matter Labs runners with Nomic runners (#171)
  • ci: update repository references to NomicFoundation/solx (#167)

0.1.2

18 Sep 09:34
c452934

Choose a tag to compare

📝 Changelog

✨ Features

  • feat: add an env var for dumping standard JSON input (#123)
  • feat: add a metadata size hint for LLVM (#126)
  • feat: support escaped Yul object identifiers (#129)

🐛 Fixes

  • fix: emit empty contracts required by Hardhat v3 (#133)
  • fix: do not call LLVMIsELF during linking (#134)
  • fix: don't rematerialize CALLDATALOAD when it redefines a VR (#137)
  • fix: unsafe memory asm detection in dependencies (#139)

📦 Other Changes

  • ci: add a16z/cicada to tested projects (#112)
  • ci: add common Foundry benchmarks (#124)
  • ci: add more Foundry projects for benchmarking (#120)
  • ci: update forge-benchmarks.toml to the latest version (#127)
  • ci: fix the Hardhat workflow (#128)
  • ci: add Hardhat v3 sample to tested projects (#135)
  • ci: unify Hardhat markdown tables reporting (#142)
  • chore: migrate era-compiler-* to this monorepo (#131)

0.1.1

30 Jul 21:58
baf0e59

Choose a tag to compare

📝 Changelog

✨ Features

  • feat: temporarily disable Yul optimizations (#88)
  • feat: move the spill area handling to solx (#106)
  • feat: support pipeline profiling (#114)
  • feat: add a special attribute to LLVM IR entry functions (#116)
  • feat: support CODECOPYing constant byte arrays (#103)
  • feat: include numerous LLVM optimizations (#119)

🐛 Fixes

  • fix: make EVMLA block predecessors ordered again (#101)
  • fix: add a placeholder object for gasEstimates (#111)

📦 Other Changes

  • ci: achieve multi-iteration gas reports (#98)
  • ci: reduce number of run iterations for benchmarks to 20 (#99)
  • chore: unhardcode remaining file extensions that mimic solc (#102)
  • chore: support hardhat projects tests with solx (#110)

0.1.0

09 Jul 11:24
5894d1e

Choose a tag to compare

📝 Changelog

✨ Features

  • feat: provide linux and macos installation script (#81)
  • feat: make stack never too deep again (#77)
  • feat: support env-vars for solx-specific parameters (#90)

🐛 Fixes

  • fix: side effects for block and transaction variables (#93)
  • fix: runtime bytecode size limit check and -Oz mode (#97)

📚 Documentation

  • docs: update installation and usage guides (#82)
  • docs: minor versioning and spelling update (#96)

📦 Other Changes

  • ci: update auto-changelog generation (#76)
  • ci: use forge benchmarks config
  • ci: fix USE_SOLX variable setup in foundry benchmarks (#79)

0.1.0-alpha.4

04 Jun 13:13
7e872e5

Choose a tag to compare

What's Changed

Features

  • feat: support the EVM-style deploy-time linking
  • feat: implement placeholders in bytecode hex representation
  • feat: strict selection of standard JSON output data (#65)
  • feat: add remaining output data CLI parameters (#69)
  • feat: remove unnecessary re-serialization of EVM assembly (#72)
  • feat: add e2e/CLI tests for stdin input (#73)
  • feat: do not copy Yul into the lexer (#74)

Fixes

  • fix: Yul object naming assumptions and keywords (#64)
  • fix: stdin input support for all languages (#63)
  • fix: object ordering in deploy time linking (#68)
  • fix: turn off size optimization fallback by default (#70)

Other

  • chore: fix changelog for releases (#53)
  • chore: use default gh changelog for releases (#54)
  • docs: add the solc building step (#62)
  • ci: update linux amd64 gnu runners (#66)
  • ci: run forge tests with solx (#36)
  • ci: mark only official tag releases as latest (#75)

Full Changelog: 0.1.0-alpha.3...0.1.0-alpha.4

0.1.0-alpha.3

06 May 17:16
37d0368

Choose a tag to compare

What's Changed

  • fix: add placeholders for unsupported output by @hedgar2017 in #47
  • docs: tooling cannot manage solx executables yet by @hedgar2017 in #50
  • chore: set the LLVM branch back to main by @hedgar2017 in #51
  • docs: update README.md to remove dead links in installation instructions. by @arose00 in #52
  • ci: fix release condition and permissions typo by @antonbaliasnikov in #49

New Contributors

Full Changelog: 0.1.0-alpha.2...0.1.0-alpha.3

0.1.0-alpha.1

28 Mar 03:49
d5a98e5

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: https://github.com/matter-labs/solx/commits/0.1.0-alpha.1

0.1.0-alpha.2

02 May 19:33
900d6d0

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: 0.1.0-alpha.1...0.1.0-alpha.2