Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Bump @openzeppelin/contracts from 3.4.2 to 4.8.2 #2588

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

dependabot[bot]
Copy link
Contributor

@dependabot dependabot bot commented on behalf of github Mar 3, 2023

Bumps @openzeppelin/contracts from 3.4.2 to 4.8.2.

Release notes

Sourced from @​openzeppelin/contracts's releases.

v4.8.2

Note This release contains a fix for GHSA-878m-3g6q-594q.

  • ERC721Consecutive: Fixed a bug when _mintConsecutive is used for batches of size 1 that could lead to balance overflow. Refer to the breaking changes section in the changelog for a note on the behavior of ERC721._beforeTokenTransfer.

Breaking changes

  • ERC721: The internal function _beforeTokenTransfer no longer updates balances, which it previously did when batchSize was greater than 1. This change has no consequence unless a custom ERC721 extension is explicitly invoking _beforeTokenTransfer. Balance updates in extensions must now be done explicitly using __unsafe_increaseBalance, with a name that indicates that there is an invariant that has to be manually verified.

v4.8.1

  • ERC4626: Use staticcall instead of call when fetching underlying ERC-20 decimals. (#3943)

v4.8.0

Note Don't miss the section on Breaking changes at the end.

  • TimelockController: Added a new admin constructor parameter that is assigned the admin role instead of the deployer account. (#3722)
  • Initializable: add internal functions _getInitializedVersion and _isInitializing (#3598)
  • ERC165Checker: add supportsERC165InterfaceUnchecked for consulting individual interfaces without the full ERC165 protocol. (#3339)
  • Address: optimize functionCall by calling functionCallWithValue directly. (#3468)
  • Address: optimize functionCall functions by checking contract size only if there is no returned data. (#3469)
  • Governor: make the relay function payable, and add support for EOA payments. (#3730)
  • GovernorCompatibilityBravo: remove unused using statements. (#3506)
  • ERC20: optimize _transfer, _mint and _burn by using unchecked arithmetic when possible. (#3513)
  • ERC20Votes, ERC721Votes: optimize getPastVotes for looking up recent checkpoints. (#3673)
  • ERC20FlashMint: add an internal _flashFee function for overriding. (#3551)
  • ERC4626: use the same decimals() as the underlying asset by default (if available). (#3639)
  • ERC4626: add internal _initialConvertToShares and _initialConvertToAssets functions to customize empty vaults behavior. (#3639)
  • ERC721: optimize transfers by making approval clearing implicit instead of emitting an event. (#3481)
  • ERC721: optimize burn by making approval clearing implicit instead of emitting an event. (#3538)
  • ERC721: Fix balance accounting when a custom _beforeTokenTransfer hook results in a transfer of the token under consideration. (#3611)
  • ERC721: use unchecked arithmetic for balance updates. (#3524)
  • ERC721Consecutive: Implementation of EIP-2309 that allows batch minting of ERC721 tokens during construction. (#3311)
  • ReentrancyGuard: Reduce code size impact of the modifier by using internal functions. (#3515)
  • SafeCast: optimize downcasting of signed integers. (#3565)
  • ECDSA: Remove redundant check on the v value. (#3591)
  • VestingWallet: add releasable getters. (#3580)
  • VestingWallet: remove unused library Math.sol. (#3605)
  • VestingWallet: make constructor payable. (#3665)
  • Create2: optimize address computation by using assembly instead of abi.encodePacked. (#3600)
  • Clones: optimized the assembly to use only the scratch space during deployments, and optimized predictDeterministicAddress to use fewer operations. (#3640)
  • Checkpoints: Use procedural generation to support multiple key/value lengths. (#3589)
  • Checkpoints: Add new lookup mechanisms. (#3589)
  • Arrays: Add unsafeAccess functions that allow reading and writing to an element in a storage array bypassing Solidity's "out-of-bounds" check. (#3589)
  • Strings: optimize toString. (#3573)
  • Ownable2Step: extension of Ownable that makes the ownership transfers a two step process. (#3620)
  • Math and SignedMath: optimize function max by using > instead of >=. (#3679)
  • Math: Add log2, log10 and log256. (#3670)
  • Arbitrum: Update the vendored arbitrum contracts to match the nitro upgrade. (#3692)

... (truncated)

Changelog

Sourced from @​openzeppelin/contracts's changelog.

4.8.2 (2023-03-02)

  • ERC721Consecutive: Fixed a bug when _mintConsecutive is used for batches of size 1 that could lead to balance overflow. Refer to the breaking changes section in the changelog for a note on the behavior of ERC721._beforeTokenTransfer.

Breaking changes

  • ERC721: The internal function _beforeTokenTransfer no longer updates balances, which it previously did when batchSize was greater than 1. This change has no consequence unless a custom ERC721 extension is explicitly invoking _beforeTokenTransfer. Balance updates in extensions must now be done explicitly using __unsafe_increaseBalance, with a name that indicates that there is an invariant that has to be manually verified.

4.8.1 (2023-01-12)

  • ERC4626: Use staticcall instead of call when fetching underlying ERC-20 decimals. (#3943)

4.8.0 (2022-11-08)

  • TimelockController: Added a new admin constructor parameter that is assigned the admin role instead of the deployer account. (#3722)
  • Initializable: add internal functions _getInitializedVersion and _isInitializing (#3598)
  • ERC165Checker: add supportsERC165InterfaceUnchecked for consulting individual interfaces without the full ERC165 protocol. (#3339)
  • Address: optimize functionCall by calling functionCallWithValue directly. (#3468)
  • Address: optimize functionCall functions by checking contract size only if there is no returned data. (#3469)
  • Governor: make the relay function payable, and add support for EOA payments. (#3730)
  • GovernorCompatibilityBravo: remove unused using statements. (#3506)
  • ERC20: optimize _transfer, _mint and _burn by using unchecked arithmetic when possible. (#3513)
  • ERC20Votes, ERC721Votes: optimize getPastVotes for looking up recent checkpoints. (#3673)
  • ERC20FlashMint: add an internal _flashFee function for overriding. (#3551)
  • ERC4626: use the same decimals() as the underlying asset by default (if available). (#3639)
  • ERC4626: add internal _initialConvertToShares and _initialConvertToAssets functions to customize empty vaults behavior. (#3639)
  • ERC721: optimize transfers by making approval clearing implicit instead of emitting an event. (#3481)
  • ERC721: optimize burn by making approval clearing implicit instead of emitting an event. (#3538)
  • ERC721: Fix balance accounting when a custom _beforeTokenTransfer hook results in a transfer of the token under consideration. (#3611)
  • ERC721: use unchecked arithmetic for balance updates. (#3524)
  • ERC721Consecutive: Implementation of EIP-2309 that allows batch minting of ERC721 tokens during construction. (#3311)
  • ReentrancyGuard: Reduce code size impact of the modifier by using internal functions. (#3515)
  • SafeCast: optimize downcasting of signed integers. (#3565)
  • ECDSA: Remove redundant check on the v value. (#3591)
  • VestingWallet: add releasable getters. (#3580)
  • VestingWallet: remove unused library Math.sol. (#3605)
  • VestingWallet: make constructor payable. (#3665)
  • Create2: optimize address computation by using assembly instead of abi.encodePacked. (#3600)
  • Clones: optimized the assembly to use only the scratch space during deployments, and optimized predictDeterministicAddress to use fewer operations. (#3640)
  • Checkpoints: Use procedural generation to support multiple key/value lengths. (#3589)
  • Checkpoints: Add new lookup mechanisms. (#3589)
  • Arrays: Add unsafeAccess functions that allow reading and writing to an element in a storage array bypassing Solidity's "out-of-bounds" check. (#3589)
  • Strings: optimize toString. (#3573)
  • Ownable2Step: extension of Ownable that makes the ownership transfers a two step process. (#3620)
  • Math and SignedMath: optimize function max by using > instead of >=. (#3679)
  • Math: Add log2, log10 and log256. (#3670)
  • Arbitrum: Update the vendored arbitrum contracts to match the nitro upgrade. (#3692)

Breaking changes

... (truncated)

Commits
  • d00acef 4.8.2
  • ab9cc4c Ignore reentrancy inexecuteBatch and update Slither config (#3955)
  • 43aa7ff Update forge-std submodule to v1.2.0 (#3885)
  • 167bf67 Fix ERC721Consecutive balance update on batch size 1
  • 82d47ca Add Subgraphs to docs sidebar
  • 357022c Update Tally screenshots (#4030)
  • 9b610d3 Add warning for supportsERC165InterfaceUnchecked edge case (#4017)
  • c018c9c Remove outdated note about virtual view functions (#4014)
  • d13316e Add ERC*Pausable warning for public pausing mechanism (#4007)
  • 3ab2e11 Show if event parameter is indexed in docs (#3958)
  • Additional commits viewable in compare view

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 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.2 to 4.8.2.
- [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.2...v4.8.2)

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

Signed-off-by: dependabot[bot] <[email protected]>
@dependabot dependabot bot added dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code labels Mar 3, 2023
@cla-bot cla-bot bot added the cla-signed label Mar 3, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
cla-signed dependencies Pull requests that update a dependency file javascript Pull requests that update Javascript code
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants