Closed shayzluf closed 1 year ago
Thank you for your submission! We really appreciate it. Like many open source projects, we ask that you sign our Contributor License Agreement before we can accept your contribution.
You have signed the CLA already but the status is still pending? Let us recheck it.
This PR was automatically created by Snyk using the credentials of a real user.
Snyk has created this PR to upgrade @openzeppelin/contracts from 4.8.3 to 4.9.2.
:information_source: Keep your dependencies up-to-date. This makes it easier to fix existing vulnerabilities and to more quickly identify and fix newly disclosed vulnerabilities when they affect your project.- The recommended version is **5 versions** ahead of your current version. - The recommended version was released **a month ago**, on 2023-06-16. The recommended version fixes: Severity | Issue | PriorityScore (*) | Exploit Maturity | :-------------------------:|:-------------------------|-------------------------|:------------------------- | Improper Input Validation
[SNYK-JS-OPENZEPPELINCONTRACTS-5711902](https://snyk.io/vuln/SNYK-JS-OPENZEPPELINCONTRACTS-5711902) | **479/1000**
**Why?** Has a fix available, CVSS 5.3 | No Known Exploit | Missing Authorization
[SNYK-JS-OPENZEPPELINCONTRACTS-5672116](https://snyk.io/vuln/SNYK-JS-OPENZEPPELINCONTRACTS-5672116) | **479/1000**
**Why?** Has a fix available, CVSS 5.3 | No Known Exploit (*) Note that the real score may have changed since the PR was raised.
Release notes
Package name: @openzeppelin/contracts
MerkleProof
: Fix a bug inprocessMultiProof
andprocessMultiProofCalldata
that allows proving arbitrary leaves if the tree contains a node with value 0 at depth 1.Governor
: Add a mechanism to restrict the address of the proposer using a suffix in the description.ReentrancyGuard
: Add a_reentrancyGuardEntered
function to expose the guard status. (#3714)ERC721Wrapper
: add a new extension of theERC721
token which wraps an underlying token. Deposit and withdraw guarantee that the ownership of each token is backed by a corresponding underlying token with the same identifier. (#3863)EnumerableMap
: add akeys()
function that returns an array containing all the keys. (#3920)Governor
: add a publiccancel(uint256)
function. (#3983)Governor
: Enable timestamp operation for blockchains without a stable block time. This is achieved by connecting a Governor's internal clock to match a voting token's EIP-6372 interface. (#3934)Strings
: addequal
method. (#3774)IERC5313
: Add an interface for EIP-5313 that is now final. (#4013)IERC4906
: Add an interface for ERC-4906 that is now Final. (#4012)StorageSlot
: Add support forstring
andbytes
. (#4008)Votes
,ERC20Votes
,ERC721Votes
: support timestamp checkpointing using EIP-6372. (#3934)ERC4626
: Add mitigation to the inflation attack through virtual shares and assets. (#3979)Strings
: addtoString
method for signed integers. (#3773)ERC20Wrapper
: Make theunderlying
variable private and add a public accessor. (#4029)EIP712
: add EIP-5267 support for better domain discovery. (#3969)AccessControlDefaultAdminRules
: Add an extension ofAccessControl
with additional security rules for theDEFAULT_ADMIN_ROLE
. (#4009)SignatureChecker
: AddisValidERC1271SignatureNow
for checking a signature directly against a smart contract using ERC-1271. (#3932)SafeERC20
: Add aforceApprove
function to improve compatibility with tokens behaving like USDT. (#4067)ERC1967Upgrade
: removed contract-wideoz-upgrades-unsafe-allow delegatecall
annotation, replaced by granular annotation inUUPSUpgradeable
. (#3971)ERC20Wrapper
: self wrapping and deposit by the wrapper itself are now explicitly forbidden. (#4100)ECDSA
: optimize bytes32 computation by using assembly instead ofabi.encodePacked
. (#3853)ERC721URIStorage
: Emit ERC-4906MetadataUpdate
in_setTokenURI
. (#4012)ShortStrings
: Added a library for handling short strings in a gas efficient way, with fallback to storage for longer strings. (#4023)SignatureChecker
: Allow return data length greater than 32 from EIP-1271 signers. (#4038)UUPSUpgradeable
: added granularoz-upgrades-unsafe-allow-reachable
annotation to improve upgrade safety checks on latest version of the Upgrades Plugins (starting with@ openzeppelin/upgrades-core@1.21.0
). (#3971)Initializable
: optimize_disableInitializers
by using!=
instead of<
. (#3787)Ownable2Step
: makeacceptOwnership
public virtual to enable usecases that require overriding it. (#3960)UUPSUpgradeable.sol
: Change visibility to the functionsupgradeTo
andupgradeToAndCall
fromexternal
topublic
. (#3959)TimelockController
: Add theCallSalt
event to emit on operation schedule. (#4001)Math
: optimizelog256
rounding check. (#3745)ERC20Votes
: optimize by using unchecked arithmetic. (#3748)Multicall
: annotatemulticall
function as upgrade safe to not raise a flag for its delegatecall. (#3961)ERC20Pausable
,ERC721Pausable
,ERC1155Pausable
: Add note regarding missing public pausing functionality (#4007)ECDSA
: Add a functiontoDataWithIntendedValidatorHash
that encodes data with version 0x00 following EIP-191. (#4063)MerkleProof
: optimize by using unchecked arithmetic. (#3745)Breaking changes
EIP712
: Addition of ERC5267 support requires support for user defined value types, which was released in Solidity version 0.8.8. This requires a pragma change from^0.8.0
to^0.8.8
.EIP712
: Optimization of the cache for the upgradeable version affects the wayname
andversion
are set. This is no longer done through an initializer, and is instead part of the implementation's constructor. As a consequence, all proxies using the same implementation will necessarily share the samename
andversion
. Additionally, an implementation upgrade risks changing the EIP712 domain unless the samename
andversion
are used when deploying the new implementation contract.Deprecations
ERC20Permit
: Added the fileIERC20Permit.sol
andERC20Permit.sol
and deprecateddraft-IERC20Permit.sol
anddraft-ERC20Permit.sol
since EIP-2612 is no longer a Draft. Developers are encouraged to update their imports. (#3793)Timers
: TheTimers
library is now deprecated and will be removed in the next major release. (#4062)ERC777
: TheERC777
token standard is no longer supported by OpenZeppelin. Our implementation is now deprecated and will be removed in the next major release. The corresponding standard interfaces remain available. (#4066)ERC1820Implementer
: TheERC1820
pseudo-introspection mechanism is no longer supported by OpenZeppelin. Our implementation is now deprecated and will be removed in the next major release. The corresponding standard interfaces remain available. (#4066)AccessControlDefaultAdminRules
: Clean up pending admin schedule on renounce. (#4243)GovernorCompatibilityBravo
: Fix encoding of proposal data when signatures are missing.TransparentUpgradeableProxy
: Fix transparency in case of selector clash with non-decodable calldata or payable mutability. (#4154)**Note:** *You are seeing this because you or someone else with access to this repository has authorized Snyk to open upgrade PRs.* For more information: 🧐 [View latest project report](https://app.snyk.io/org/shayzluf/project/e04e747a-27eb-4713-940e-70e18c6ac866?utm_source=github&utm_medium=referral&page=upgrade-pr) 🛠 [Adjust upgrade PR settings](https://app.snyk.io/org/shayzluf/project/e04e747a-27eb-4713-940e-70e18c6ac866/settings/integration?utm_source=github&utm_medium=referral&page=upgrade-pr) 🔕 [Ignore this dependency or unsubscribe from future upgrade PRs](https://app.snyk.io/org/shayzluf/project/e04e747a-27eb-4713-940e-70e18c6ac866/settings/integration?pkg=@openzeppelin/contracts&utm_source=github&utm_medium=referral&page=upgrade-pr#auto-dep-upgrades)