Solidity v0.8.14 is here! - Fixes two important bugs and includes more minor bug fixes and improvements

Solidity v0.8.14 fixes two important bugs.

The first one is related to ABI-encoding nested arrays directly from calldata. You can find more information in the blog post.

The second bug is triggered in certain inheritance structures and can cause a memory pointer to be interpreted as a calldata pointer or vice-versa. We also have a dedicated blog post about this bug.

:open_book:: Solidity 0.8.14 Release Announcement | Solidity Blog
:floppy_disk:: Release Version 0.8.14 · ethereum/solidity · GitHub

:warning: Unfortunately, the npm wrapper package of this version is corrupted. Using the new soljson.js with solc-js 0.8.13 will work, but the 0.8.14 npm release (now marked as deprecated) is missing a file and due to that does not work properly. We released 0.8.14-fixed in case you need a working npm package as dependency. Note however, that npm will not pick it up automatically.

:bug: Size Check Bug in Nested Calldata Array ABI-Reencoding

The first bug is related to ABI-encoding nested arrays directly from calldata. You might be affected if you pass a nested array directly to another external function call or use abi.encode on it. We assigned the bug a severity of “very low”.

:beetle: Bug Concerning Data Location during Inheritance

The second bug is triggered in certain inheritance structures and can cause a memory pointer to be interpreted as a calldata pointer or vice-versa. We assigned the bug a severity of “very low”.

Spread the word in your communities! :heartbeat: