I am trying to deploy the OpenZeppelin Upgrades as described in several tutorials, including your own (https://docs.openzeppelin.com/upgrades-plugins/1.x/hardhat-upgrades):
// scripts/create-box.js
const { ethers, upgrades } = require("hardhat");
async function main() {
const Box = await ethers.getContractFactory("Box");
const box = await upgrades.deployProxy(Box, [42]);
await box.waitForDeployment();
console.log("Box deployed to:", await box.getAddress());
}
main();
and receive the following message:
hardhat run scripts/1.deploy_box.ts
Compiled 1 Solidity file successfully (evm target: paris).
D:\Code\Proxies\solproxy\node_modules@openzeppelin\hardhat-upgrades\src\utils\ethers.ts:7
return contractFactory.attach(address) as Contract; // Needed because ethers attach returns a BaseContract.
^
TypeError: contractFactory.attach is not a function
at attach (D:\Code\Proxies\solproxy\node_modules@openzeppelin\hardhat-upgrades\src\utils\ethers.ts:7:26)
at getContractInstance (D:\Code\Proxies\solproxy\node_modules@openzeppelin\hardhat-upgrades\src\utils\contract-instance.ts:28:26)
at Proxy.deployProxy (D:\Code\Proxies\solproxy\node_modules@openzeppelin\hardhat-upgrades\src\deploy-proxy.ts:87:31)
at async main (D:\Code\Proxies\solproxy\scripts\1.deploy_box.ts:5:15)
==================================
Can anybody point out a working example/tutorial, which would compile and deploy with the latest libraries and tools?