Skip to content

Releases: paradigmxyz/solar

0.1.4

29 May 19:07
7d4c0db
Compare
Choose a tag to compare

Release Notes

Minor bug fixes and lexer/parser performance improvements.

Bug Fixes

  • Windows eol lexing (#340)
  • [parser] Allow EVM builtins to be present in yul paths (#336)
  • [sema] Don't warn 3628 if no interface functions (#330)
  • Try absolute paths in file resolver too (#323)

Dependencies

  • [deps] Weekly cargo update (#333)
  • [lexer] Rewrite prefixed literal lexing (#325)
  • [deps] Weekly cargo update (#320)
  • [deps] Weekly cargo update (#311)

Documentation

  • Remove outdated section in CONTRIBUTING.md

Features

  • [sema] Implement receive function checks (#321)
  • [sema] Display more types, add Ty::display (#328)
  • Add span in FunctionHeader (#318)
  • [ast] Add spans to blocks (#314)
  • Typecheck for external type clashes (#312)

Miscellaneous Tasks

  • [lexer] Cursor cleanup (#338)
  • [benches] Add Optimism
  • [benches] Add Solady
  • [meta] Fix deny.toml

Other

  • Remove concurrency from bench

Performance

  • [lexer] Use slice::Iter instead of Chars in Cursor (#339)
  • [lexer] Use memchr in block_comment (#337)
  • [lexer] Add eat_until (#324)

Install solar 0.1.4

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/paradigmxyz/solar/releases/download/v0.1.4/solar-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/paradigmxyz/solar/releases/download/v0.1.4/solar-installer.ps1 | iex"

Download solar 0.1.4

File Platform Checksum
solar-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
solar-x86_64-apple-darwin.tar.gz Intel macOS checksum
solar-x86_64-pc-windows-msvc.zip x64 Windows checksum
solar-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
solar-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
solar-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

0.1.3

10 May 00:00
1887ab5
Compare
Choose a tag to compare

Release Notes

Bug Fixes

  • [parser] Clear docs if not consumed immediatly (#309)
  • [sema] Declare selfdestruct builtin (#297)
  • [sema] Correct variable declaration scopes (#300)
  • [parser] Named call arguments are allowed to be empty (#283)
  • Invalid underscores check (#281)
  • [parser] Typo in concatenated string literals
  • [parser] Align number parsing with solc (#272)
  • [parser] Correct token precedence (#271)
  • [parser] Ignore comments in lookahead (#267)
  • [ast] BinOpToken::Caret is BinOpKind::BitXor (#262)
  • [parser] Remove RawTokenKind::UnknownPrefix (#260)
  • [parser] Don't panic when parsing hex rationals (#256)

Dependencies

  • [deps] Weekly cargo update (#306)
  • [deps] Weekly cargo update (#286)
  • [deps] Weekly cargo update (#278)
  • Add update=none to submodules (#270)
  • [deps] Weekly cargo update (#257)
  • [deps] Bump breaking deps (#253)

Documentation

  • [meta] Update RELEASE_CHECKLIST.md
  • Fix newtype_index! generated doc comments (#288)
  • Update library usage in README
  • Update release checklist

Features

  • Update solidity to 0.8.30 (#307)
  • [ast] Add helpers to Delimiter (#296)
  • Allow constructing DiagId with a string (#295)
  • Warn when payable fallback function found but no receive function (#170)
  • --no-warnings (#293)
  • Literal checks (#287)
  • [parser] Accept non-checksummed addresses, to be validated later (#285)
  • [ast] Store concatenated string literals (#266)
  • [ast] Add span to CallArgs (#265)
  • Pretty printing utilities (#264)
  • Add CompilerStage::ParsedAndImported (#259)
  • [parser] Use impl Into (#258)

Miscellaneous Tasks

  • [meta] Update dist
  • [lexer] Add tokens.capacity log
  • Use astral-sh/cargo-dist fork (#292)
  • Shorter Debug impls (#291)
  • Rust 1.86 (#290)
  • Update hint fns (#289)
  • [benches] Add seaport (#282)
  • Add linguist-vendored
  • [benches] Add tree-sitter (#280)
  • Misc map cleanups (#277)
  • [benches] Update and plot data (#274)
  • Add some more non_exhaustive (#261)
  • Tweak tracing events (#255)
  • Sync sourcemap from upstream (#254)
  • Add 'fetchRecurseSubmodules = false' to solidity submodule
  • Revert extra changelog

Performance

  • [lexer] Deal with bytes instead of chars in Cursor (#279)
  • Add and default to using mimalloc (#276)
  • [lexer] Filter out comments again (#269)
  • [lexer] Double tokens capacity estimate (#268)

Testing

  • Add a test for global storage param (#299)
  • Add another try catch resolve test (#298)

Install solar 0.1.3

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/paradigmxyz/solar/releases/download/v0.1.3/solar-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/paradigmxyz/solar/releases/download/v0.1.3/solar-installer.ps1 | iex"

Download solar 0.1.3

File Platform Checksum
solar-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
solar-x86_64-apple-darwin.tar.gz Intel macOS checksum
solar-x86_64-pc-windows-msvc.zip x64 Windows checksum
solar-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
solar-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
solar-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum

v0.1.2

07 Apr 16:31
v0.1.2
5852b7e
Compare
Choose a tag to compare

Install solar 0.1.2

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/paradigmxyz/solar/releases/download/v0.1.2/solar-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy Bypass -c "irm https://github.com/paradigmxyz/solar/releases/download/v0.1.2/solar-installer.ps1 | iex"

Download solar 0.1.2

File Platform Checksum
solar-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
solar-x86_64-apple-darwin.tar.gz Intel macOS checksum
solar-x86_64-pc-windows-msvc.zip x64 Windows checksum
solar-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
solar-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum

0.1.1

05 Jan 23:44
b23d974
Compare
Choose a tag to compare

Release Notes

Notable and breaking changes (!):

  • The parser now fully supports doc-comments in any position (#154). This was the last major feature needed to support the full Solidity grammar, as implemented in solc. The parser and AST are now considered feature-complete.
  • Fixed some bugs in the parser
  • Implemented some more syntax checks and validations

Library

  • (!) Return ControlFlow from AST visitor methods (#115)
  • (!) Remove Pos trait (#137)
  • (!) Re-export solar_ast::ast::* internal module (#141)
  • Unify CLI and Session options (#176)
    • Session::builder's individual config option methods have been removed in favor of using Args directly.
  • Install rayon pool in Session::enter (#123)
    • Add Session::enter_parallel (#183)
    • The session is now parallel by default; enter will behave the same, use enter_parallel to be able to make use of rayon inside of the closure.

Install solar 0.1.1

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/paradigmxyz/solar/releases/download/v0.1.1/solar-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy ByPass -c "irm https://github.com/paradigmxyz/solar/releases/download/v0.1.1/solar-installer.ps1 | iex"

Download solar 0.1.1

File Platform Checksum
solar-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
solar-x86_64-apple-darwin.tar.gz Intel macOS checksum
solar-x86_64-pc-windows-msvc.zip x64 Windows checksum
solar-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
solar-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum

What's Changed

New Contributors

Read more

0.1.0

08 Nov 04:41
fff9d9f
Compare
Choose a tag to compare

Release Notes

Initial release. See the announcement blog post: https://www.paradigm.xyz/2024/11/solar

Install solar 0.1.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/paradigmxyz/solar/releases/download/v0.1.0/solar-installer.sh | sh

Install prebuilt binaries via powershell script

powershell -ExecutionPolicy ByPass -c "irm https://github.com/paradigmxyz/solar/releases/download/v0.1.0/solar-installer.ps1 | iex"

Download solar 0.1.0

File Platform Checksum
solar-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
solar-x86_64-apple-darwin.tar.gz Intel macOS checksum
solar-x86_64-pc-windows-msvc.zip x64 Windows checksum
solar-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
solar-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum