chainbridge-solidity
chainbridge-solidity copied to clipboard
Bump @openzeppelin/contracts from 4.5.0 to 4.8.2
Bumps @openzeppelin/contracts from 4.5.0 to 4.8.2.
Release notes
Sourced from @openzeppelin/contracts
's releases.
v4.8.2
Note This release contains a fix for https://github.com/OpenZeppelin/openzeppelin-contracts/security/advisories/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 ofERC721._beforeTokenTransfer
.Breaking changes
ERC721
: The internal function_beforeTokenTransfer
no longer updates balances, which it previously did whenbatchSize
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 newadmin
constructor parameter that is assigned the admin role instead of the deployer account. (#3722)Initializable
: add internal functions_getInitializedVersion
and_isInitializing
(#3598)ERC165Checker
: addsupportsERC165InterfaceUnchecked
for consulting individual interfaces without the full ERC165 protocol. (#3339)Address
: optimizefunctionCall
by callingfunctionCallWithValue
directly. (#3468)Address
: optimizefunctionCall
functions by checking contract size only if there is no returned data. (#3469)Governor
: make therelay
function payable, and add support for EOA payments. (#3730)GovernorCompatibilityBravo
: remove unusedusing
statements. (#3506)ERC20
: optimize_transfer
,_mint
and_burn
by usingunchecked
arithmetic when possible. (#3513)ERC20Votes
,ERC721Votes
: optimizegetPastVotes
for looking up recent checkpoints. (#3673)ERC20FlashMint
: add an internal_flashFee
function for overriding. (#3551)ERC4626
: use the samedecimals()
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 thev
value. (#3591)VestingWallet
: addreleasable
getters. (#3580)VestingWallet
: remove unused libraryMath.sol
. (#3605)VestingWallet
: make constructor payable. (#3665)Create2
: optimize address computation by using assembly instead ofabi.encodePacked
. (#3600)Clones
: optimized the assembly to use only the scratch space during deployments, and optimizedpredictDeterministicAddress
to use fewer operations. (#3640)Checkpoints
: Use procedural generation to support multiple key/value lengths. (#3589)Checkpoints
: Add new lookup mechanisms. (#3589)Arrays
: AddunsafeAccess
functions that allow reading and writing to an element in a storage array bypassing Solidity's "out-of-bounds" check. (#3589)Strings
: optimizetoString
. (#3573)Ownable2Step
: extension ofOwnable
that makes the ownership transfers a two step process. (#3620)Math
andSignedMath
: optimize functionmax
by using>
instead of>=
. (#3679)Math
: Addlog2
,log10
andlog256
. (#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 ofERC721._beforeTokenTransfer
.Breaking changes
ERC721
: The internal function_beforeTokenTransfer
no longer updates balances, which it previously did whenbatchSize
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 newadmin
constructor parameter that is assigned the admin role instead of the deployer account. (#3722)Initializable
: add internal functions_getInitializedVersion
and_isInitializing
(#3598)ERC165Checker
: addsupportsERC165InterfaceUnchecked
for consulting individual interfaces without the full ERC165 protocol. (#3339)Address
: optimizefunctionCall
by callingfunctionCallWithValue
directly. (#3468)Address
: optimizefunctionCall
functions by checking contract size only if there is no returned data. (#3469)Governor
: make therelay
function payable, and add support for EOA payments. (#3730)GovernorCompatibilityBravo
: remove unusedusing
statements. (#3506)ERC20
: optimize_transfer
,_mint
and_burn
by usingunchecked
arithmetic when possible. (#3513)ERC20Votes
,ERC721Votes
: optimizegetPastVotes
for looking up recent checkpoints. (#3673)ERC20FlashMint
: add an internal_flashFee
function for overriding. (#3551)ERC4626
: use the samedecimals()
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 thev
value. (#3591)VestingWallet
: addreleasable
getters. (#3580)VestingWallet
: remove unused libraryMath.sol
. (#3605)VestingWallet
: make constructor payable. (#3665)Create2
: optimize address computation by using assembly instead ofabi.encodePacked
. (#3600)Clones
: optimized the assembly to use only the scratch space during deployments, and optimizedpredictDeterministicAddress
to use fewer operations. (#3640)Checkpoints
: Use procedural generation to support multiple key/value lengths. (#3589)Checkpoints
: Add new lookup mechanisms. (#3589)Arrays
: AddunsafeAccess
functions that allow reading and writing to an element in a storage array bypassing Solidity's "out-of-bounds" check. (#3589)Strings
: optimizetoString
. (#3573)Ownable2Step
: extension ofOwnable
that makes the ownership transfers a two step process. (#3620)Math
andSignedMath
: optimize functionmax
by using>
instead of>=
. (#3679)Math
: Addlog2
,log10
andlog256
. (#3670)- Arbitrum: Update the vendored arbitrum contracts to match the nitro upgrade. (#3692)
Breaking changes
... (truncated)
Commits
d00acef
4.8.2ab9cc4c
Ignore reentrancy inexecuteBatch
and update Slither config (#3955)43aa7ff
Updateforge-std
submodule tov1.2.0
(#3885)167bf67
Fix ERC721Consecutive balance update on batch size 182d47ca
Add Subgraphs to docs sidebar357022c
Update Tally screenshots (#4030)9b610d3
Add warning forsupportsERC165InterfaceUnchecked
edge case (#4017)c018c9c
Remove outdated note about virtual view functions (#4014)d13316e
AddERC*Pausable
warning for public pausing mechanism (#4007)3ab2e11
Show if event parameter is indexed in docs (#3958)- Additional commits viewable in compare view
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)