Member-only story
Solidity 0.8.18 Cancels UFO Preparations
Upcoming features of Solidity 0.8.18
Solidity 0.8.17 was released two months ago, and there is an ongoing effort to release the 0.8.18 version.
The Exit Code
The new version of a popular blockchain language, among others, improves the compiler error reporting. Currently, for uncaught exceptions Solidity compiler returns value 1. It will change to the value 2, making it easier to wire the compiler into tool chains.
But why 2, and not 3 or 9000?
According to Linuxtopia error code 2 stands for:
Misuse of shell builtins (according to Bash documentation)
Alexis explains it further by saying that:
By long-standing convention, unix programs return exit status 2 when called incorrectly (unknown options, wrong number of arguments, etc.).
For example, diff -N, grep -Y or diff a b c will all result in $? being set to 2. This is and has been the practice since the early days of Unix in the 1970s.
It means that basically if there will be an uncaught exception Solidity will assume it is due to a missue.
Makes sense I guess ☺