{Solidity:log}
Solidity Summit 2023 Recap
Posted by Solidity Team on November 30, 2023
We can't believe it's already been two weeks since we met in Istanbul, Türkiye, for the third edition of Solidity Summit! Solidity Summit 2023 was part of the Devconnect week and took place on Thursday, November 16, 2023. With roughly 300 participants, the event was well attended. The day was packed with 15+ sessions on: Solidity internals and tips & tricks Solidity tooling Smart contract testing & security best practices EVM Languages and mechanisms ... and more! The full agenda of the day can be found here. You...
Read moreBug in Deduplication of Verbatim Blocks
Posted by Solidity Team on November 8, 2023
On October 24, Ori Pomerantz reported a bug affecting the use of verbatim builtin in Yul code. After investigating, the team was able to confirm the problem and locate its origin. The bug existed in the Block Deduplicator optimizer step, wherein equivalent assembly blocks are identified and merged. verbatim assembly items surrounded by identical opcodes were incorrectly considered identical and unified. The bug existed since version 0.8.5, which introduced verbatim, and only affected pure Yul compilation with optimization enabled. Solidity code or Yul used in inline assembly blocks would...
Read moreSolidity 0.8.23 Release Announcement
Posted by Solidity Team on November 8, 2023
Today, we announce the release of the Solidity Compiler v0.8.23. This newest version of the compiler is meant to be a pure bugfix release that includes the fix for an important bug of low severity. Based on our investigations, we do not foresee real-world instances of the bug being used as an exploit or an attack vector and thus, we assess its overall severity as low. This version also introduces a small change to optimizer settings to make them more intuitive. Since v0.8.21,...
Read moreSolidity 0.8.22 Release Announcement
Posted by Solidity Team on October 25, 2023
We are excited to announce the release of the Solidity Compiler v0.8.22. This newest version of the compiler includes a range of language as well as compiler improvements such as file-level event definitions, optimizations for unchecked loop increments, support for importing EVM assembly JSON, & more. Important Note This release deprecates support for EVM versions older than Constantinople, which are becoming increasingly hard to maintain. These ancient versions have long been obsolete on the Ethereum mainnet and testnets and we suspect that they are no...
Read moreSolidity Summit 2023 Merhaba Türkiye!
Posted by Solidity Team on August 7, 2023
The Solidity Summit has returned! Following the popularity of the Solidity Summit in 2022, we are pleased to announce a live event for 2023! Solidity Summit 2023 is part of DevConnect and will take place in Istanbul, Turkey, on Wednesday, November 16, 2023. What can you expect for the Solidity Summit? The Solidity Summit is a collaborative conference that focuses on Solidity's future. It is a gathering of advanced Solidity users and other Solidity ecosystem stakeholders such as language designers, tool builders, auditors,...
Read moreSolidity 0.8.21 Release Announcement
Posted by Solidity Team on July 19, 2023
We are excited to announce the latest release of the Solidity Compiler, Solidity v0.8.21. Notable New Features Stack-to-memory mover always enabled via-IR The release addresses the issue of unoptimized code produced by the IR-based code generation pipeline being overly prone to "Stack Too Deep" errors. This is meant to help tools such as debuggers, which lose much of their effectiveness when working with optimized code. The legacy pipeline can often avoid running out of reachable stack slots even in unoptimized mode, but this comes at...
Read moreBug in Legacy Code Generation When Accessing the .selector Member on Expressions with Side Effects
Posted by Solidity Team on July 19, 2023
On June 26, 2023, a bug in the legacy code generation pipeline of the Solidity compiler was found during investigation of a security report related to the use of abi.decode with a ternary expression that has side effects, as the type argument. The legacy code generator was not evaluating complex expressions, like assignments, function calls, or conditionals, whose .selector was being accessed. This led to the side-effects of such expressions not being executed, and therefore potentially incorrect behavior of contracts compiled using the legacy pipeline. The...
Read moreFullInliner Non-Expression-Split Argument Evaluation Order Bug
Posted by Solidity Team on July 19, 2023
On July 4, 2023, Robert Chen from OtterSec discovered a bug in the Yul optimizer. The earliest affected version of the compiler is 0.6.7, which introduced the ability to modify the optimizer step sequence. Solidity version 0.8.21, released on July 19, 2023, provides a fix. We assigned the bug an overall score of "low". The bug has "high" severity in affected cases, but we deem the likelihood of it actually affecting deployed contracts as "very low". Which Contracts are Affected? The prerequisite to trigger the bug is...
Read moreSolidity 0.8.20 Release Announcement
Posted by Solidity Team on May 10, 2023
We are excited to announce the latest release of the Solidity Compiler, Solidity v0.8.20. This latest version includes a range of improvements in the via-IR pipeline and improves the list of events exposed in the contract ABI, and, most importantly, support for the Shanghai hard fork! Important Note This compiler switches the default target EVM version to Shanghai, which means that the generated bytecode will include PUSH0 opcodes. Be sure to select the appropriate EVM version in case you intend to deploy on a...
Read moreSolidity Developer Survey 2022 Results
Posted by Franziska Heintel on March 10, 2023
The 2022 Solidity Developer Survey results are in! In this post, we will be summarizing and analyzing them. First of all, a big thank you to everybody who took the time and participated and to everybody who helped us spread the word about it! This year, we received a smashing 1401 responses. That is more than a 3x in responses compared to the previous survey and we couldn't be happier with the turnout. Your input is invaluable to us and plays a crucial...
Read more