Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update Solc version from 0.8.18 to 0.8.24 #1510

Closed
jaybuidl opened this issue Feb 18, 2024 · 2 comments · Fixed by #1567
Closed

Update Solc version from 0.8.18 to 0.8.24 #1510

jaybuidl opened this issue Feb 18, 2024 · 2 comments · Fixed by #1567

Comments

@jaybuidl
Copy link
Member

jaybuidl commented Feb 18, 2024

Notable changes

v0.8.18

  • Use named parameters in mappings
// before
mapping(address => uint256) public balanceOf;

// after
mapping(address userAddress => uint256 balance) public balanceOf;

v0.8.19:

v0.8.20:

  • Defaults to EVM version Shanghai
  • PUSH0 support: make that the target chain supports it, Arbitrum and Gnosis chain now support it.
    • Run cast call -r <RPC_URL> --create 0x5f, if it returns 0x then it supports it, otherwise it returns an error.

v0.8.21

  • Immutable variables initialization is now optional
  • Qualified access to foreign events now allows emitting events defined in other contracts not inherited from.

v0.8.22

  • Ugly unchecked increments in for loops no longer necessary to save gas
  • Events can now be defined at file-level, outside a contract

v0.8.23

  • Nothing at language level

v0.8.24

  • Support for Cancun features, not enabled by default
  • Notable Cancun features
    • EIP-1153: Transient storage TSTORE and TLOAD opcodes, not in Solidity yet.
    • EIP-4844: Blob transactions, adds blobhash() and block. blobbasefee.
    • EIP-6780 SELFDESTRUCT limitations: it doesn't clear storage and contract code anymore unless the contract was created in the same transaction.
@Anmol-Dhiman
Copy link
Contributor

v0.8.25

  • Defaults to EVM version Cancun.
  • MCOPY instead of MLOAD/MSTORE while copying byte arrays.
  • Emit transient storage warning only for the first occurrence of tstore.

@Anmol-Dhiman
Copy link
Contributor

Hardhat doesn't support v0.8.25 yet. resource

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

2 participants