Skip to content

Conversation

@dependabot
Copy link

@dependabot dependabot bot commented on behalf of github Oct 18, 2024

Bumps @openzeppelin/contracts from 3.4.1 to 5.1.0.

Release notes

Sourced from @​openzeppelin/contracts's releases.

v5.1.0

Breaking changes

  • ERC1967Utils: Removed duplicate declaration of the Upgraded, AdminChanged and BeaconUpgraded events. These events are still available through the IERC1967 interface located under the contracts/interfaces/ directory. Minimum pragma version is now 0.8.21.
  • Governor, GovernorCountingSimple: The _countVote virtual function now returns an uint256 with the total votes casted. This change allows for more flexibility for partial and fractional voting. Upgrading users may get a compilation error that can be fixed by adding a return statement to the _countVote function.

Custom error changes

This version comes with changes to the custom error identifiers. Contracts previously depending on the following errors should be replaced accordingly:

  • Replace Address.FailedInnerCall with Errors.FailedCall
  • Replace Address.AddressInsufficientBalance with Errors.InsufficientBalance
  • Replace Clones.Create2InsufficientBalance with Errors.InsufficientBalance
  • Replace Clones.ERC1167FailedCreateClone with Errors.FailedDeployment
  • Replace Clones.Create2FailedDeployment with Errors.FailedDeployment
  • SafeERC20: Replace Address.AddressEmptyCode with SafeERC20FailedOperation if there is no code at the token's address.
  • SafeERC20: Replace generic Error(string) with SafeERC20FailedOperation if the returned data can't be decoded as bool.
  • SafeERC20: Replace generic SafeERC20FailedOperation with the revert message from the contract call if it fails.

Changes by category

General

  • AccessManager, VestingWallet, TimelockController and ERC2771Forwarder: Added a public initializer function in their corresponding upgradeable variants. (#5008)

Access

  • AccessControlEnumerable: Add a getRoleMembers method to return all accounts that have role. (#4546)
  • AccessManager: Allow the onlyAuthorized modifier to restrict functions added to the manager. (#5014)

Finance

  • VestingWalletCliff: Add an extension of the VestingWallet contract with an added cliff. (#4870)

Governance

  • GovernorCountingFractional: Add a governor counting module that allows distributing voting power amongst 3 options (For, Against, Abstain). (#5045)
  • Votes: Set _moveDelegateVotes visibility to internal instead of private. (#5007)

Proxy

  • Clones: Add version of clone and cloneDeterministic that support sending value at creation. (#4936)
  • TransparentUpgradeableProxy: Make internal _proxyAdmin() getter have view visibility. (#4688)
  • ProxyAdmin: Fixed documentation for UPGRADE_INTERFACE_VERSION getter. (#5031)

Tokens

  • ERC1363: Add implementation of the token payable standard allowing execution of contract code after transfers and approvals. (#4631)
  • ERC20TemporaryApproval: Add an ERC-20 extension that implements temporary approval using transient storage, based on ERC7674 (draft). (#5071)
  • SafeERC20: Add "relaxed" function for interacting with ERC-1363 functions in a way that is compatible with EOAs. (#4631)

... (truncated)

Changelog

Sourced from @​openzeppelin/contracts's changelog.

5.1.0 (2024-10-17)

Breaking changes

  • ERC1967Utils: Removed duplicate declaration of the Upgraded, AdminChanged and BeaconUpgraded events. These events are still available through the IERC1967 interface located under the contracts/interfaces/ directory. Minimum pragma version is now 0.8.21.
  • Governor, GovernorCountingSimple: The _countVote virtual function now returns an uint256 with the total votes casted. This change allows for more flexibility for partial and fractional voting. Upgrading users may get a compilation error that can be fixed by adding a return statement to the _countVote function.

Custom error changes

This version comes with changes to the custom error identifiers. Contracts previously depending on the following errors should be replaced accordingly:

  • Replace Address.FailedInnerCall with Errors.FailedCall
  • Replace Address.AddressInsufficientBalance with Errors.InsufficientBalance
  • Replace Clones.Create2InsufficientBalance with Errors.InsufficientBalance
  • Replace Clones.ERC1167FailedCreateClone with Errors.FailedDeployment
  • Replace Clones.Create2FailedDeployment with Errors.FailedDeployment
  • SafeERC20: Replace Address.AddressEmptyCode with SafeERC20FailedOperation if there is no code at the token's address.
  • SafeERC20: Replace generic Error(string) with SafeERC20FailedOperation if the returned data can't be decoded as bool.
  • SafeERC20: Replace generic SafeERC20FailedOperation with the revert message from the contract call if it fails.

Changes by category

General

  • AccessManager, VestingWallet, TimelockController and ERC2771Forwarder: Added a public initializer function in their corresponding upgradeable variants. (#5008)

Access

  • AccessControlEnumerable: Add a getRoleMembers method to return all accounts that have role. (#4546)
  • AccessManager: Allow the onlyAuthorized modifier to restrict functions added to the manager. (#5014)

Finance

  • VestingWalletCliff: Add an extension of the VestingWallet contract with an added cliff. (#4870)

Governance

  • GovernorCountingFractional: Add a governor counting module that allows distributing voting power amongst 3 options (For, Against, Abstain). (#5045)
  • Votes: Set _moveDelegateVotes visibility to internal instead of private. (#5007)

Proxy

  • Clones: Add version of clone and cloneDeterministic that support sending value at creation. (#4936)
  • TransparentUpgradeableProxy: Make internal _proxyAdmin() getter have view visibility. (#4688)
  • ProxyAdmin: Fixed documentation for UPGRADE_INTERFACE_VERSION getter. (#5031)

Tokens

  • ERC1363: Add implementation of the token payable standard allowing execution of contract code after transfers and approvals. (#4631)
  • ERC20TemporaryApproval: Add an ERC-20 extension that implements temporary approval using transient storage, based on ERC7674 (draft). (#5071)

... (truncated)

Commits
Maintainer changes

This version was pushed to npm by ernestognw, a new releaser for @​openzeppelin/contracts since your current version.


Dependabot compatibility score

Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.


Dependabot commands and options

You can trigger Dependabot actions by commenting on this PR:

  • @dependabot rebase will rebase this PR
  • @dependabot recreate will recreate this PR, overwriting any edits that have been made to it
  • @dependabot merge will merge this PR after your CI passes on it
  • @dependabot squash and merge will squash and merge this PR after your CI passes on it
  • @dependabot cancel merge will cancel a previously requested merge and block automerging
  • @dependabot reopen will reopen this PR if it is closed
  • @dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
  • @dependabot show <dependency name> ignore conditions will show all of the ignore conditions of the specified dependency
  • @dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
  • @dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)

Bumps [@openzeppelin/contracts](https://github.com/OpenZeppelin/openzeppelin-contracts) from 3.4.1 to 5.1.0.
- [Release notes](https://github.com/OpenZeppelin/openzeppelin-contracts/releases)
- [Changelog](https://github.com/OpenZeppelin/openzeppelin-contracts/blob/master/CHANGELOG.md)
- [Commits](OpenZeppelin/openzeppelin-contracts@v3.4.1...v5.1.0)

---
updated-dependencies:
- dependency-name: "@openzeppelin/contracts"
  dependency-type: direct:development
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added the dependencies Pull requests that update a dependency file label Oct 18, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

dependencies Pull requests that update a dependency file

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant