Releases: OpenZeppelin/openzeppelin-upgrades
@openzeppelin/[email protected]
- Fix manifest error when connecting to an Anvil dev network. (#950)
@openzeppelin/[email protected]
@openzeppelin/[email protected]
- Update Defender SDK, support
txOverrides
option with Defender. (#951)
@openzeppelin/[email protected]
- CLI: Fix ambiguous name error when passing in fully qualified contract names. (#944)
@openzeppelin/[email protected]
@openzeppelin/[email protected]
This is a major version of the Hardhat Upgrades plugin that contains breaking changes. Please review the changes below.
This version deploys proxy contracts from OpenZeppelin Contracts 5.0, and no longer supports deploying proxy contracts from OpenZeppelin Contracts 4.x. However, it still supports importing and/or managing existing proxies that were deployed from previous versions.
If you are using Hardhat Verify, this plugin now requires Hardhat Verify 2.0.0 or higher.
Summary
- Deploy proxies from OpenZeppelin Contracts 5.0. (#919)
- Support
initialOwner
option when deploying a transparent proxy or beacon. If not set, the externally owned account used during deployment will be the default owner for the transparent proxy's admin or the beacon, respectively. - Update optional peer dependency on
@nomicfoundation/hardhat-verify
to v2.0.0 or higher. (#937)- Note: Fully verifying proxies is only supported with Etherscan at the moment. The Hardhat Upgrades plugin does not currently assist with Sourcify verification for proxies.
Breaking changes
deployProxy
,deployBeacon
,deployBeaconProxy
: Deploys proxy contracts from OpenZeppelin Contracts 5.0.deployProxy
:- Deploying a transparent proxy automatically causes a new proxy admin contract to be deployed along with the proxy.
- New transparent proxy deployments no longer use an existing proxy admin, even if one was previously recorded in the network file.
- New proxy admins are no longer recorded in the network file.
deployProxyAdmin
: Removed, since proxy admins are deployed automatically by transparent proxies.admin.changeProxyAdmin
: Not supported with admins or proxies from OpenZeppelin Contracts 5.0. Only supported for previously deployed admins and proxies from OpenZeppelin Contracts 4.x or below.admin.transferProxyAdminOwnership
: This function no longer uses the proxy admin from the network file. It now requires aproxyAddress
argument to be passed in.@nomicfoundation/hardhat-verify
v1.x and@nomicfoundation/hardhat-toolbox
v3.x are no longer supported with this plugin. If you are using these packages, update them to@nomicfoundation/hardhat-verify
v2.x and@nomicfoundation/hardhat-toolbox
v4.x.
@openzeppelin/[email protected]
- Add
defender.getDeployApprovalProcess
anddefender.getUpgradeApprovalProcess
functions. (#934) - Deprecate
defender.getDefaultApprovalProcess
function. This function is equivalent todefender.getUpgradeApprovalProcess
.
Note: OpenZeppelin Defender deployments is in beta and its functionality is subject to change.
@openzeppelin/[email protected]
Disclaimer
This is an alpha release of a new major version which contains breaking changes. Additional breaking changes may be introduced leading up to the full release.
Documentation
API documentation for this alpha release can be found here.
Summary
- Deploy proxies from OpenZeppelin Contracts 5.0.
- Support
initialOwner
option when deploying a transparent proxy or beacon. If not set, the externally owned account used during deployment will be the default owner for the transparent proxy's admin or the beacon, respectively.
Breaking changes
deployProxy
,deployBeacon
,deployBeaconProxy
: Deploys proxy contracts from OpenZeppelin Contracts 5.0.deployProxy
:- Deploying a transparent proxy automatically causes a new proxy admin contract to be deployed along with the proxy.
- New transparent proxy deployments no longer use an existing proxy admin, even if one was previously recorded in the network file.
- New proxy admins are no longer recorded in the network file.
deployProxyAdmin
: Removed, since proxy admins are deployed automatically by transparent proxies.admin.changeProxyAdmin
: Not supported with admins or proxies from OpenZeppelin Contracts 5.0. Only supported for previously deployed admins and proxies from OpenZeppelin Contracts 4.x or below.admin.transferProxyAdminOwnership
: This function no longer uses the proxy admin from the network file. It now requires aproxyAddress
argument to be passed in.
@openzeppelin/[email protected]
- Fix Hardhat compile errors when contracts have overloaded functions or standalone NatSpec documentation. (#918)
@openzeppelin/[email protected]
- Fix
upgradeProxy
in Hardhat from an implementation that has a fallback function and is not using OpenZeppelin Contracts 5.0. (#926)