{Solidity}
Solidity is evolving rapidly
We aim for a regular (non-breaking) release every month, with approximately one breaking release per year. You can follow the implementation status of new features in the Solidity GitHub project.
Contribute to Solidity
Solidity continues to improve with help from our global community. Check out these ways to get involved and contribute to the Solidity project.
Reporting issues and vulnerabilities
To report an issue, please use the GitHub issues tracker. To report a vulnerability, please check out the instructions in the SECURITY.md.
Translating the documentation
Translations help developers from all corners of the world to be able to read the documentation and learn Solidity.
Fixing and responding to issues
Fixing and responding to issues, especially those tagged as “good first issue”, is a great way to get started for external contributors.
Contributing to language design
We welcome Solidity power users, auditors, security experts and tooling developers to get involved in the Solidity language design process. Join the Solidity forum, where existing properties of the language and proposals for new language features can be discussed.
Stay Updated
Stay always up-to-date by following the Solidity blog.
You can see the upcoming changes for the next breaking release by switching from the default branch (develop
) to the breaking branch
. You can actively shape Solidity by providing your input and participating in the language design in the Solidity forumand participating in the yearly Solidity developer surveys.
Latest from the blog
Announcing the Winners of the Underhanded Solidity Contest 2024
Posted by Vishwa Mehta & USC Judges on October 14, 2024
If you have been waiting for the results of the Underhanded Solidity Contest 2024, the countdown is over! But before we share our insights from this year and declare the results, let's recap the most important aspects of the USC: In essence, the Underhanded Solidity Contest is about writing seemingly innocent code that has malicious mechanisms or hidden backdoors. It is aimed at: Raising awareness about smart contract security Uncovering language design faults Battle-testing newly introduced language features and restrictions Highlighting anti-patterns in smart contact development Establishing...
Read moreSolidity 0.8.28 Release Announcement
Posted by Solidity Team on October 9, 2024
We are excited to announce the release of the Solidity Compiler v0.8.28. This latest version of the compiler brings full support for transient storage state variables of value types, improvements that will speed up compilation via IR and significantly lower memory usage, some bugfixes, and more! Notable Features Support for Transient Storage Value Type State Variables The previous release of the compiler (v0.8.27) introduced support for transient storage variables into the parser (see Additional Notes). This meant that the compiler could accept the syntax...
Read moreSolidity 0.8.27 Release Announcement
Posted by Solidity Team on September 4, 2024
We are excited to announce the release of the Solidity Compiler v0.8.27. This newest version of the compiler brings support for custom errors in require to the legacy pipeline, optimizer improvements such as caching of optimized IR that will speed up compilation via IR, several bugfixes, and more! Notable Features Legacy Support for require with Custom Errors Custom errors in Solidity provide a convenient and gas-efficient way to explain to the user why an operation failed. Support for using errors with the require function...
Read morePlayground
Try Solidity for yourself in this simple compiler. For a more fully featured browser-based IDE, try using Remix.
Compiler result
Compiler version:
(0 bytes)
Deployment costs: gas
Bytecode
Assembly