github vyperlang/vyper v0.3.10rc1

latest releases: v0.4.1b1, v0.4.0, v0.4.0rc6...
pre-release14 months ago

v0.3.10 is a performance focused release. It adds a codesize optimization mode (#3493), adds new vyper-specific #pragma directives (#3493), uses Cancun’s MCOPY opcode for some compiler generated code (#3483), and generates selector tables which now feature O(1) performance (#3496).

Breaking changes

  • add runtime code layout to initcode (#3584)
  • drop evm versions through istanbul (#3470)
  • remove vyper signature from runtime (#3471)

Non-breaking changes and improvements

Notable fixes:

  • fix ecrecover() behavior when signature is invalid (GHSA-f5x6-7qgp-jhf3, #3586)
  • fix: order of evaluation for some builtins (#3583, #3587)
  • fix: pycryptodome for arm builds (#3485)
  • let params of internal functions be mutable (#3473)
  • typechecking of folded builtins in (#3490)
  • update tload/tstore opcodes per latest 1153 EIP spec (#3484)
  • fix: raw_call type when max_outsize=0 is set (#3572)
  • fix: implements check for indexed event arguments (#3570)

Other docs updates, chores and fixes:

  • relax restrictions on internal function signatures (#3573)
  • note on security advisory in release notes for versions 0.2.15, 0.2.16, and 0.3.0 (#3553)
  • fix: yanked version in release notes (#3545)
  • update release notes on yanked versions (#3547)
  • improve error message for conflicting methods IDs (#3491)
  • document epsilon builtin (#3552)
  • relax version pragma parsing (#3511)
  • fix: issue with finding installed packages in editable mode (#3510)
  • add note on security advisory for ecrecover in docs (#3539)
  • add asm option to cli help (#3585)
  • add message to error map for repeat range check (#3542)
  • fix: public constant arrays (#3536)

New Contributors

Full Changelog: v0.3.9...v0.3.10rc1

Don't miss a new vyper release

NewReleases is sending notifications on new releases.