Skip to content

Commit 238d17c

Browse files
authored
Merge master in next-v5.0 (#4280)
2 parents 13d5e04 + 5955d8e commit 238d17c

File tree

125 files changed

+255
-437
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

125 files changed

+255
-437
lines changed

.changeset/beige-buses-drop.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/curvy-shrimps-enjoy.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/curvy-suns-sort.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/early-oranges-raise.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/famous-rules-burn.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/five-ducks-develop.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/five-poets-mix.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/flat-deers-end.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/four-bats-sniff.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/funny-rockets-compete.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/gold-chicken-clean.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/happy-socks-travel.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/healthy-squids-stare.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/lemon-dogs-kiss.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/little-kiwis-ring.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/loud-wolves-promise.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/lovely-dragons-appear.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/modern-games-exist.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/new-ways-own.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/ninety-hornets-kick.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/perfect-insects-listen.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/pretty-hornets-play.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/proud-comics-deliver.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/short-roses-judge.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/silent-dancers-type.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/slimy-knives-hug.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/small-cars-appear.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/small-terms-sleep.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/smooth-books-wink.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
---
2+
'openzeppelin-solidity': major
3+
---
4+
5+
`ERC1155`: Remove check for address zero in `balanceOf`.

.changeset/strong-bulldogs-buy.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/tame-ladybugs-sit.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/tender-needles-dance.md

Lines changed: 0 additions & 7 deletions
This file was deleted.

.changeset/thin-dragons-report.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/thirty-swans-exercise.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/violet-frogs-hide.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/warm-masks-obey.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

.changeset/yellow-swans-cover.md

Lines changed: 0 additions & 5 deletions
This file was deleted.

CHANGELOG.md

Lines changed: 38 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,44 @@ function supportsInterface(bytes4 interfaceId) public view virtual override retu
3333
}
3434
```
3535

36+
## 4.9.0 (2023-05-23)
37+
38+
- `ReentrancyGuard`: Add a `_reentrancyGuardEntered` function to expose the guard status. ([#3714](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3714))
39+
- `ERC721Wrapper`: add a new extension of the `ERC721` 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](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3863))
40+
- `EnumerableMap`: add a `keys()` function that returns an array containing all the keys. ([#3920](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3920))
41+
- `Governor`: add a public `cancel(uint256)` function. ([#3983](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3983))
42+
- `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](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3934))
43+
- `Strings`: add `equal` method. ([#3774](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3774))
44+
- `IERC5313`: Add an interface for EIP-5313 that is now final. ([#4013](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4013))
45+
- `IERC4906`: Add an interface for ERC-4906 that is now Final. ([#4012](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4012))
46+
- `StorageSlot`: Add support for `string` and `bytes`. ([#4008](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4008))
47+
- `Votes`, `ERC20Votes`, `ERC721Votes`: support timestamp checkpointing using EIP-6372. ([#3934](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3934))
48+
- `ERC4626`: Add mitigation to the inflation attack through virtual shares and assets. ([#3979](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3979))
49+
- `Strings`: add `toString` method for signed integers. ([#3773](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3773))
50+
- `ERC20Wrapper`: Make the `underlying` variable private and add a public accessor. ([#4029](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4029))
51+
- `EIP712`: add EIP-5267 support for better domain discovery. ([#3969](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3969))
52+
- `AccessControlDefaultAdminRules`: Add an extension of `AccessControl` with additional security rules for the `DEFAULT_ADMIN_ROLE`. ([#4009](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4009))
53+
- `SignatureChecker`: Add `isValidERC1271SignatureNow` for checking a signature directly against a smart contract using ERC-1271. ([#3932](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3932))
54+
- `SafeERC20`: Add a `forceApprove` function to improve compatibility with tokens behaving like USDT. ([#4067](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4067))
55+
- `ERC1967Upgrade`: removed contract-wide `oz-upgrades-unsafe-allow delegatecall` annotation, replaced by granular annotation in `UUPSUpgradeable`. ([#3971](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3971))
56+
- `ERC20Wrapper`: self wrapping and deposit by the wrapper itself are now explicitly forbidden. ([#4100](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4100))
57+
- `ECDSA`: optimize bytes32 computation by using assembly instead of `abi.encodePacked`. ([#3853](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3853))
58+
- `ERC721URIStorage`: Emit ERC-4906 `MetadataUpdate` in `_setTokenURI`. ([#4012](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4012))
59+
- `ShortStrings`: Added a library for handling short strings in a gas efficient way, with fallback to storage for longer strings. ([#4023](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4023))
60+
- `SignatureChecker`: Allow return data length greater than 32 from EIP-1271 signers. ([#4038](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4038))
61+
- `UUPSUpgradeable`: added granular `oz-upgrades-unsafe-allow-reachable` annotation to improve upgrade safety checks on latest version of the Upgrades Plugins (starting with `@openzeppelin/[email protected]`). ([#3971](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3971))
62+
- `Initializable`: optimize `_disableInitializers` by using `!=` instead of `<`. ([#3787](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3787))
63+
- `Ownable2Step`: make `acceptOwnership` public virtual to enable usecases that require overriding it. ([#3960](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3960))
64+
- `UUPSUpgradeable.sol`: Change visibility to the functions `upgradeTo ` and `upgradeToAndCall ` from `external` to `public`. ([#3959](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3959))
65+
- `TimelockController`: Add the `CallSalt` event to emit on operation schedule. ([#4001](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4001))
66+
- Reformatted codebase with latest version of Prettier Solidity. ([#3898](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3898))
67+
- `Math`: optimize `log256` rounding check. ([#3745](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3745))
68+
- `ERC20Votes`: optimize by using unchecked arithmetic. ([#3748](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3748))
69+
- `Multicall`: annotate `multicall` function as upgrade safe to not raise a flag for its delegatecall. ([#3961](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3961))
70+
- `ERC20Pausable`, `ERC721Pausable`, `ERC1155Pausable`: Add note regarding missing public pausing functionality ([#4007](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4007))
71+
- `ECDSA`: Add a function `toDataWithIntendedValidatorHash` that encodes data with version 0x00 following EIP-191. ([#4063](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/4063))
72+
- `MerkleProof`: optimize by using unchecked arithmetic. ([#3745](https://github.com/OpenZeppelin/openzeppelin-contracts/pull/3745))
73+
3674
### Breaking changes
3775

3876
- `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`.

0 commit comments

Comments
 (0)