We've published the release candidate for the next version of OpenZeppelin Contracts. There are a ton of changes and additions!
This begins the Open Review Period for the release, during which we ask the community to review these changes and let us know your feedback. We are of course particularly interested in security issues and we invite everyone to participate in our bug bounty with rewards of up to USD $25,000 and a special POAP for submitting a valid issue. This period will extend for about 3 weeks, until June 27th.
Take a look at the changelog for the full list, but here are some of our highlights:
ERC4626: Our implementation of the Tokenized Vault Standard.
More math: sqrt
for integer square roots, and mulDiv
for overflow-safe multiply-and-divide.
Merkle proof efficiency: Improved gas costs by encouraging calldata use instead of memory, as well as multi proofs for simultaneously proving multiple members of a tree.
This prerelease can by installed with:
npm install @openzeppelin/contracts@next
The package for upgradeable contracts will be released in the coming days.