Uniswap v3 Deploy Hardhat Plugin не работает

Я выполнил шаги по развертыванию в https://www.youtube.com/watch?v=cZ7QMmm7hJc для настройки Uniswap v3 на основе Hardhat.

При создании нового проекта:

      npm init
npm add --save-dev hardhat
npx hardhat - select create an empty config file
npm install --save-dev @nomiclabs/hardhat-ethers

// add: require("uniswap-v3-deploy-plugin"); to hardhat.config.js
// add: require("@nomiclabs/hardhat-ethers"); to hardhat.config.js

Первая проблема, с которой я столкнулся, заключалась в том, что мне пришлось понизить версию Node до версии 16.3.1.

npx hardhat - я вижу "deploy-uniswap" в ДОСТУПНЫХ ЗАДАЧАХ

npx hardhat deploy-uniswap приводит к неприятной ошибке, полной байт-кода и некоторых дополнительных деталей:

      ...3000706000a", code=INVALID_ARGUMENT, version=contracts/5.5.0)
    at Logger.makeError (C:\DEV\uniswap-example2\node_modules\@ethersproject\logger\src.ts\index.ts:225:28)
    at Logger.throwError (C:\DEV\uniswap-example2\node_modules\@ethersproject\logger\src.ts\index.ts:237:20)
    at Logger.throwArgumentError (C:\DEV\uniswap-example2\node_modules\@ethersproject\logger\src.ts\index.ts:241:21)
    at new ContractFactory (C:\DEV\uniswap-example2\node_modules\@ethersproject\contracts\src.ts\index.ts:1162:20)
    at UniswapV3Deployer.deployContract (C:\DEV\uniswap-example2\node_modules\uniswap-v3-deploy-plugin\src\deployer\UniswapV3Deployer.ts:139:21)
    at UniswapV3Deployer.deployPositionDescriptor (C:\DEV\uniswap-example2\node_modules\uniswap-v3-deploy-plugin\src\deployer\UniswapV3Deployer.ts:112:24)
    at Function.deploy (C:\DEV\uniswap-example2\node_modules\uniswap-v3-deploy-plugin\src\deployer\UniswapV3Deployer.ts:27:47)
    at processTicksAndRejections (node:internal/process/task_queues:96:5)
    at runNextTicks (node:internal/process/task_queues:65:3)
    at listOnTimeout (node:internal/timers:526:9) {
  reason: 'invalid bytecode',
  code: 'INVALID_ARGUMENT',
  argument: 'bytecode',
  value: '0x60c06040523480156100105760008...

Кажется, я не могу найти никакой другой информации по этому поводу.

2 ответа

Есть некоторые критические изменения в uniswap/v3-peripheryи я решил это, переопределив зависимость в package.json:

      "overrides": {
  "@uniswap/v3-periphery": "1.0.1"
}

Подробности о переопределении здесь.

Попробуйте с:

      "dependencies": {
  "@openzeppelin/contracts": "4.4.2",
  "@openzeppelin/contracts-upgradeable": "4.4.2",
  "@uniswap/v3-core": "1.0.0",
  "@uniswap/v3-periphery": "1.0.1",
  "bignumber.js": "9.0.2",
  "dotenv": "11.0.0",
  "uniswap-v3-deploy-plugin": "0.1.0"
}
Другие вопросы по тегам