Releases: NomicFoundation/solx
Releases · NomicFoundation/solx
0.1.3
📝 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
mainfunction 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
📝 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
📝 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
0.1.0
📝 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
📦 Other Changes
0.1.0-alpha.4
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
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
What's Changed
- feat: prototype of a Solidity-to-EVM compiler statically linked with solc by @hedgar2017 in #1
- feat: support new features by @hedgar2017 in #5
- ci: fix ccache regen, release and sanitizers workflows by @antonbaliasnikov in #4
- chore: add era-solidity and llvm as submodules by @antonbaliasnikov in #7
- feat: make the version endpoint on pair with the CLI by @hedgar2017 in #8
- feat: rebuild solx if static library deps are changed by @hedgar2017 in #9
- chore: set the license to GPL-3.0 by @hedgar2017 in #10
- feat: use the default callback from the updated solc API by @hedgar2017 in #6
- feat: add error handling for libsolc path arguments by @hedgar2017 in #11
- feat: add the solc version to --version output by @hedgar2017 in #12
- fix: TODOs and disabled tests by @hedgar2017 in #13
- feat: EVM dependencies by @hedgar2017 in #15
- chore: cumulative PR for compatibility with Foundry by @hedgar2017 in #16
- fix: show contract path in --recursive-process by @hedgar2017 in #17
- chore: add acknowledgement for solc by @popzxc in #18
- feat: Update README.md by @popzxc in #20
- chore: optimize output selection by @hedgar2017 in #19
- fix: sets the stack limit back to 64 MB by @hedgar2017 in #22
- feat: Add current status to README.md by @akiramenai in #21
New Contributors
- @akiramenai made their first contribution in #21
Full Changelog: https://github.com/matter-labs/solx/commits/0.1.0-alpha.1
0.1.0-alpha.2
What's Changed
- fix: Update recommended build links by @popzxc in #24
- fix: release links by @popzxc in #25
- chore: update the logo by @hedgar2017 in #26
- chore: update deps by @hedgar2017 in #23
- chore: update README.md by @hedgar2017 in #27
- feat: add the Book of SolX by @hedgar2017 in #29
- feat: add minimal EVM deploy code for LLVM IR by @hedgar2017 in #28
- chore: change licenses of solc-independent crates to MIT/Apache by @hedgar2017 in #31
- feat: make IPFS hash and CBOR equivalent again by @hedgar2017 in #32
- fix: LLVM IR standard JSON by @hedgar2017 in #33
- chore: use codecov token for coverage results by @antonbaliasnikov in #34
- fix: reduce Yul object identifier to their last segment by @hedgar2017 in #35
- ci: deploy docs after successful release by workflow call by @antonbaliasnikov in #38
- feat(evm): bytecode metadata by @hedgar2017 in #37
- docs: added cd to
mdBookby @PatrickAlphaC in #40 - feat: add the --no-import-callback flag by @hedgar2017 in #41
- fix(evm): do not emit unreachable in entry function by @hedgar2017 in #39
- fix: solc solidity_compiler foreign function signature by @hedgar2017 in #43
- ci: add special workflow for license consent by @antonbaliasnikov in #44
- feat: update to LLVM 19 by @hedgar2017 in #42
- chore: release v0.1.0-alpha.2 by @hedgar2017 in #46
New Contributors
- @PatrickAlphaC made their first contribution in #40
Full Changelog: 0.1.0-alpha.1...0.1.0-alpha.2