diff --git a/packages/horizon/ignition/modules/core/GraphPayments.ts b/packages/horizon/ignition/modules/core/GraphPayments.ts index 43fcf5b55..e57ea950f 100644 --- a/packages/horizon/ignition/modules/core/GraphPayments.ts +++ b/packages/horizon/ignition/modules/core/GraphPayments.ts @@ -7,8 +7,8 @@ import GraphPaymentsArtifact from '../../../build/contracts/contracts/payments/G // TODO: transfer ownership of ProxyAdmin??? export default buildModule('GraphPayments', (m) => { - const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) - const { GraphPaymentsProxyAdmin, GraphPaymentsProxy, HorizonRegistered } = m.useModule(HorizonProxiesModule) + const { Controller } = m.useModule(GraphPeripheryModule) + const { GraphPaymentsProxyAdmin, GraphPaymentsProxy } = m.useModule(HorizonProxiesModule) const protocolPaymentCut = m.getParameter('protocolPaymentCut') @@ -17,7 +17,7 @@ export default buildModule('GraphPayments', (m) => { GraphPaymentsArtifact, [Controller, protocolPaymentCut], { - after: [PeripheryRegistered, HorizonRegistered], + after: [GraphPeripheryModule, HorizonProxiesModule], }, ) diff --git a/packages/horizon/ignition/modules/core/HorizonProxies.ts b/packages/horizon/ignition/modules/core/HorizonProxies.ts index 8656571af..88c47f8db 100644 --- a/packages/horizon/ignition/modules/core/HorizonProxies.ts +++ b/packages/horizon/ignition/modules/core/HorizonProxies.ts @@ -5,7 +5,6 @@ import { ethers } from 'ethers' import GraphPeripheryModule from '../periphery' import GraphProxyAdminModule from '../periphery/GraphProxyAdmin' -import DummyArtifact from '../../../build/contracts/contracts/mocks/Dummy.sol/Dummy.json' import GraphProxyArtifact from '@graphprotocol/contracts/build/contracts/contracts/upgrades/GraphProxy.sol/GraphProxy.json' const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000' @@ -13,30 +12,20 @@ const ZERO_ADDRESS = '0x0000000000000000000000000000000000000000' // HorizonStaking, GraphPayments and PaymentsEscrow use GraphDirectory but they also in the directory. // So we need to deploy their proxies, register them in the controller before being able to deploy the implementations export default buildModule('HorizonProxies', (m) => { - const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) + const { Controller } = m.useModule(GraphPeripheryModule) const { GraphProxyAdmin } = m.useModule(GraphProxyAdminModule) // Deploy HorizonStaking proxy without an implementation - const HorizonStakingProxy = m.contract('GraphProxy', GraphProxyArtifact, [ZERO_ADDRESS, GraphProxyAdmin], { after: [PeripheryRegistered], id: 'GraphProxy_HorizonStaking' }) + const HorizonStakingProxy = m.contract('GraphProxy', GraphProxyArtifact, [ZERO_ADDRESS, GraphProxyAdmin], { after: [], id: 'GraphProxy_HorizonStaking' }) // Deploy proxies for payments contracts using OZ TransparentUpgradeableProxy const { Proxy: GraphPaymentsProxy, ProxyAdmin: GraphPaymentsProxyAdmin } = deployWithOZProxy(m, 'GraphPayments') const { Proxy: PaymentsEscrowProxy, ProxyAdmin: PaymentsEscrowProxyAdmin } = deployWithOZProxy(m, 'PaymentsEscrow') // Register the proxies in the controller - const setProxyHorizonStaking = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('Staking')), HorizonStakingProxy], { id: 'setContractProxy_HorizonStaking' }) - const setProxyGraphPayments = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphPayments')), GraphPaymentsProxy], { id: 'setContractProxy_GraphPayments' }) - const setProxyPaymentsEscrow = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('PaymentsEscrow')), PaymentsEscrowProxy], { id: 'setContractProxy_PaymentsEscrow' }) - - // Deploy dummy contract to signal that all periphery contracts are registered - const HorizonRegistered = m.contract('Dummy', DummyArtifact, [], { - id: 'RegisteredDummy', - after: [ - setProxyHorizonStaking, - setProxyGraphPayments, - setProxyPaymentsEscrow, - ], - }) - - return { HorizonStakingProxy, GraphPaymentsProxy, PaymentsEscrowProxy, HorizonRegistered, GraphPaymentsProxyAdmin, PaymentsEscrowProxyAdmin } + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('Staking')), HorizonStakingProxy], { id: 'setContractProxy_HorizonStaking' }) + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphPayments')), GraphPaymentsProxy], { id: 'setContractProxy_GraphPayments' }) + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('PaymentsEscrow')), PaymentsEscrowProxy], { id: 'setContractProxy_PaymentsEscrow' }) + + return { HorizonStakingProxy, GraphPaymentsProxy, PaymentsEscrowProxy, GraphPaymentsProxyAdmin, PaymentsEscrowProxyAdmin } }) diff --git a/packages/horizon/ignition/modules/core/HorizonStaking.ts b/packages/horizon/ignition/modules/core/HorizonStaking.ts index c412af887..f10ddf016 100644 --- a/packages/horizon/ignition/modules/core/HorizonStaking.ts +++ b/packages/horizon/ignition/modules/core/HorizonStaking.ts @@ -7,8 +7,8 @@ import HorizonStakingExtensionModule from './HorizonStakingExtension' import HorizonStakingArtifact from '../../../build/contracts/contracts/staking/HorizonStaking.sol/HorizonStaking.json' export default buildModule('HorizonStaking', (m) => { - const { Controller, GraphProxyAdmin, PeripheryRegistered } = m.useModule(GraphPeripheryModule) - const { HorizonStakingProxy, HorizonRegistered } = m.useModule(HorizonProxiesModule) + const { Controller, GraphProxyAdmin } = m.useModule(GraphPeripheryModule) + const { HorizonStakingProxy } = m.useModule(HorizonProxiesModule) const { HorizonStakingExtension } = m.useModule(HorizonStakingExtensionModule) const subgraphServiceAddress = m.getParameter('subgraphServiceAddress') @@ -22,7 +22,7 @@ export default buildModule('HorizonStaking', (m) => { subgraphServiceAddress, ], { - after: [PeripheryRegistered, HorizonRegistered], + after: [GraphPeripheryModule, HorizonProxiesModule], }, ) diff --git a/packages/horizon/ignition/modules/core/HorizonStakingExtension.ts b/packages/horizon/ignition/modules/core/HorizonStakingExtension.ts index f1da04286..62dbd33be 100644 --- a/packages/horizon/ignition/modules/core/HorizonStakingExtension.ts +++ b/packages/horizon/ignition/modules/core/HorizonStakingExtension.ts @@ -7,8 +7,7 @@ import ExponentialRebatesArtifact from '../../../build/contracts/contracts/staki import HorizonStakingExtensionArtifact from '../../../build/contracts/contracts/staking/HorizonStakingExtension.sol/HorizonStakingExtension.json' export default buildModule('HorizonStakingExtension', (m) => { - const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) - const { HorizonRegistered } = m.useModule(HorizonProxiesModule) + const { Controller } = m.useModule(GraphPeripheryModule) const subgraphServiceAddress = m.getParameter('subgraphServiceAddress') @@ -19,7 +18,7 @@ export default buildModule('HorizonStakingExtension', (m) => { libraries: { ExponentialRebates: ExponentialRebates, }, - after: [PeripheryRegistered, HorizonRegistered], + after: [GraphPeripheryModule, HorizonProxiesModule], }) return { HorizonStakingExtension } diff --git a/packages/horizon/ignition/modules/core/PaymentsEscrow.ts b/packages/horizon/ignition/modules/core/PaymentsEscrow.ts index 7c7948a7e..541a0f14d 100644 --- a/packages/horizon/ignition/modules/core/PaymentsEscrow.ts +++ b/packages/horizon/ignition/modules/core/PaymentsEscrow.ts @@ -7,8 +7,8 @@ import PaymentsEscrowArtifact from '../../../build/contracts/contracts/payments/ // TODO: transfer ownership of ProxyAdmin??? export default buildModule('PaymentsEscrow', (m) => { - const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) - const { PaymentsEscrowProxyAdmin, PaymentsEscrowProxy, HorizonRegistered } = m.useModule(HorizonProxiesModule) + const { Controller } = m.useModule(GraphPeripheryModule) + const { PaymentsEscrowProxyAdmin, PaymentsEscrowProxy } = m.useModule(HorizonProxiesModule) const withdrawEscrowThawingPeriod = m.getParameter('withdrawEscrowThawingPeriod') @@ -17,7 +17,7 @@ export default buildModule('PaymentsEscrow', (m) => { PaymentsEscrowArtifact, [Controller, withdrawEscrowThawingPeriod], { - after: [PeripheryRegistered, HorizonRegistered], + after: [GraphPeripheryModule, HorizonProxiesModule], }, ) diff --git a/packages/horizon/ignition/modules/core/TAPCollector.ts b/packages/horizon/ignition/modules/core/TAPCollector.ts index 2e8be4bfb..95d7a56df 100644 --- a/packages/horizon/ignition/modules/core/TAPCollector.ts +++ b/packages/horizon/ignition/modules/core/TAPCollector.ts @@ -6,14 +6,18 @@ import HorizonProxiesModule from './HorizonProxies' import TAPCollectorArtifact from '../../../build/contracts/contracts/payments/collectors/TAPCollector.sol/TAPCollector.json' export default buildModule('TAPCollector', (m) => { - const { Controller, PeripheryRegistered } = m.useModule(GraphPeripheryModule) - const { HorizonRegistered } = m.useModule(HorizonProxiesModule) + const { Controller } = m.useModule(GraphPeripheryModule) const name = m.getParameter('eip712Name') const version = m.getParameter('eip712Version') const revokeSignerThawingPeriod = m.getParameter('revokeSignerThawingPeriod') - const TAPCollector = m.contract('TAPCollector', TAPCollectorArtifact, [name, version, Controller, revokeSignerThawingPeriod], { after: [PeripheryRegistered, HorizonRegistered] }) + const TAPCollector = m.contract( + 'TAPCollector', + TAPCollectorArtifact, + [name, version, Controller, revokeSignerThawingPeriod], + { after: [GraphPeripheryModule, HorizonProxiesModule] }, + ) return { TAPCollector } }) diff --git a/packages/horizon/ignition/modules/periphery.ts b/packages/horizon/ignition/modules/periphery.ts index 2c358c74f..baab7add7 100644 --- a/packages/horizon/ignition/modules/periphery.ts +++ b/packages/horizon/ignition/modules/periphery.ts @@ -10,8 +10,6 @@ import GraphTokenGatewayModule from './periphery/GraphTokenGateway' import GraphTokenModule from './periphery/GraphToken' import RewardsManagerModule from './periphery/RewardsManager' -import DummyArtifact from '../../build/contracts/contracts/mocks/Dummy.sol/Dummy.json' - export default buildModule('GraphHorizon_Periphery', (m) => { const { BridgeEscrow } = m.useModule(BridgeEscrowModule) const { Controller } = m.useModule(ControllerModule) @@ -23,25 +21,13 @@ export default buildModule('GraphHorizon_Periphery', (m) => { const { Curation } = m.useModule(CurationModule) // Register contracts in the Controller - const setProxyEpochManager = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('EpochManager')), EpochManager], { id: 'setContractProxy_EpochManager' }) - const setProxyRewardsManager = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('RewardsManager')), RewardsManager], { id: 'setContractProxy_RewardsManager' }) - const setProxyGraphToken = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphToken')), GraphToken], { id: 'setContractProxy_GraphToken' }) - const setProxyGraphTokenGateway = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphTokenGateway')), GraphTokenGateway], { id: 'setContractProxy_GraphTokenGateway' }) + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('EpochManager')), EpochManager], { id: 'setContractProxy_EpochManager' }) + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('RewardsManager')), RewardsManager], { id: 'setContractProxy_RewardsManager' }) + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphToken')), GraphToken], { id: 'setContractProxy_GraphToken' }) + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphTokenGateway')), GraphTokenGateway], { id: 'setContractProxy_GraphTokenGateway' }) // eslint-disable-next-line no-secrets/no-secrets - const setProxyGraphProxyAdmin = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphProxyAdmin')), GraphProxyAdmin], { id: 'setContractProxy_GraphProxyAdmin' }) - const setProxyCuration = m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('Curation')), Curation], { id: 'setContractProxy_Curation' }) - - // Deploy dummy contract to signal that all periphery contracts are registered - const PeripheryRegistered = m.contract('Dummy', DummyArtifact, [], { - after: [ - setProxyEpochManager, - setProxyRewardsManager, - setProxyGraphToken, - setProxyGraphTokenGateway, - setProxyGraphProxyAdmin, - setProxyCuration, - ], - }) + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('GraphProxyAdmin')), GraphProxyAdmin], { id: 'setContractProxy_GraphProxyAdmin' }) + m.call(Controller, 'setContractProxy', [ethers.keccak256(ethers.toUtf8Bytes('Curation')), Curation], { id: 'setContractProxy_Curation' }) return { BridgeEscrow, @@ -52,6 +38,5 @@ export default buildModule('GraphHorizon_Periphery', (m) => { GraphToken, GraphTokenGateway, RewardsManager, - PeripheryRegistered, } }) diff --git a/packages/horizon/package.json b/packages/horizon/package.json index ba3ff93c9..b46eb8167 100644 --- a/packages/horizon/package.json +++ b/packages/horizon/package.json @@ -23,12 +23,12 @@ "@nomicfoundation/hardhat-chai-matchers": "^2.0.0", "@nomicfoundation/hardhat-ethers": "^3.0.8", "@nomicfoundation/hardhat-foundry": "^1.1.1", - "@nomicfoundation/hardhat-ignition": "^0.15.8", - "@nomicfoundation/hardhat-ignition-ethers": "^0.15.8", + "@nomicfoundation/hardhat-ignition": "^0.15.9", + "@nomicfoundation/hardhat-ignition-ethers": "^0.15.9", "@nomicfoundation/hardhat-network-helpers": "^1.0.0", "@nomicfoundation/hardhat-toolbox": "^4.0.0", "@nomicfoundation/hardhat-verify": "^2.0.10", - "@nomicfoundation/ignition-core": "^0.15.8", + "@nomicfoundation/ignition-core": "^0.15.9", "@openzeppelin/contracts": "^5.0.2", "@openzeppelin/contracts-upgradeable": "^5.0.2", "@typechain/ethers-v6": "^0.5.0", @@ -40,7 +40,7 @@ "eslint": "^8.56.0", "eslint-graph-config": "workspace:^0.0.1", "ethers": "^6.13.4", - "hardhat": "^2.22.0", + "hardhat": "^2.22.18", "hardhat-contract-sizer": "^2.10.0", "hardhat-gas-reporter": "^1.0.8", "hardhat-graph-protocol": "workspace:^0.0.1", diff --git a/packages/horizon/scripts/deploy.ts b/packages/horizon/scripts/deploy.ts index 4af1f769e..ce9365fe8 100644 --- a/packages/horizon/scripts/deploy.ts +++ b/packages/horizon/scripts/deploy.ts @@ -9,6 +9,7 @@ async function main() { // Deploy Horizon await ignition.deploy(HorizonModule, { + displayUi: true, parameters: HorizonConfig, }) } diff --git a/packages/subgraph-service/package.json b/packages/subgraph-service/package.json index 9ca8f3481..d021abf7e 100644 --- a/packages/subgraph-service/package.json +++ b/packages/subgraph-service/package.json @@ -24,12 +24,12 @@ "@nomicfoundation/hardhat-chai-matchers": "^2.0.0", "@nomicfoundation/hardhat-ethers": "^3.0.8", "@nomicfoundation/hardhat-foundry": "^1.1.1", - "@nomicfoundation/hardhat-ignition": "^0.15.8", - "@nomicfoundation/hardhat-ignition-ethers": "^0.15.8", + "@nomicfoundation/hardhat-ignition": "^0.15.9", + "@nomicfoundation/hardhat-ignition-ethers": "^0.15.9", "@nomicfoundation/hardhat-network-helpers": "^1.0.0", "@nomicfoundation/hardhat-toolbox": "^4.0.0", "@nomicfoundation/hardhat-verify": "^2.0.10", - "@nomicfoundation/ignition-core": "^0.15.8", + "@nomicfoundation/ignition-core": "^0.15.9", "@openzeppelin/contracts": "^5.0.2", "@openzeppelin/contracts-upgradeable": "^5.0.2", "@typechain/ethers-v6": "^0.5.0", @@ -40,8 +40,8 @@ "chai": "^4.2.0", "eslint": "^8.56.0", "eslint-graph-config": "workspace:^0.0.1", - "ethers": "^6.13.2", - "hardhat": "^2.20.1", + "ethers": "^6.13.4", + "hardhat": "^2.22.18", "hardhat-contract-sizer": "^2.10.0", "hardhat-gas-reporter": "^1.0.8", "hardhat-graph-protocol": "workspace:^0.0.1", diff --git a/packages/subgraph-service/scripts/deploy.ts b/packages/subgraph-service/scripts/deploy.ts index ee774861c..8d00dd226 100644 --- a/packages/subgraph-service/scripts/deploy.ts +++ b/packages/subgraph-service/scripts/deploy.ts @@ -23,15 +23,19 @@ async function main() { const SubgraphServiceConfig = removeNFromBigInts(require('../ignition/configs/subgraph-service.hardhat.json5')) // Deploy proxies - const { DisputeManagerProxy, DisputeManagerProxyAdmin, SubgraphServiceProxy, SubgraphServiceProxyAdmin } = await ignition.deploy(SubgraphServiceProxiesModule) + const { DisputeManagerProxy, DisputeManagerProxyAdmin, SubgraphServiceProxy, SubgraphServiceProxyAdmin } = await ignition.deploy(SubgraphServiceProxiesModule, { + displayUi: true, + }) // Deploy Horizon const { Controller, TAPCollector, Curation } = await ignition.deploy(HorizonModule, { + displayUi: true, parameters: patchSubgraphServiceAddress(HorizonConfig, SubgraphServiceProxy.target as string), }) // Deploy DisputeManager implementation await ignition.deploy(DisputeManagerModule, { + displayUi: true, parameters: deepMerge(SubgraphServiceConfig, { DisputeManager: { controllerAddress: Controller.target as string, @@ -43,6 +47,7 @@ async function main() { // Deploy SubgraphService implementation await ignition.deploy(SubgraphServiceModule, { + displayUi: true, parameters: deepMerge(SubgraphServiceConfig, { SubgraphService: { controllerAddress: Controller.target as string, diff --git a/yarn.lock b/yarn.lock index 927c703e1..6a076a81e 100644 --- a/yarn.lock +++ b/yarn.lock @@ -2933,12 +2933,12 @@ __metadata: "@nomicfoundation/hardhat-chai-matchers": "npm:^2.0.0" "@nomicfoundation/hardhat-ethers": "npm:^3.0.8" "@nomicfoundation/hardhat-foundry": "npm:^1.1.1" - "@nomicfoundation/hardhat-ignition": "npm:^0.15.8" - "@nomicfoundation/hardhat-ignition-ethers": "npm:^0.15.8" + "@nomicfoundation/hardhat-ignition": "npm:^0.15.9" + "@nomicfoundation/hardhat-ignition-ethers": "npm:^0.15.9" "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0" "@nomicfoundation/hardhat-toolbox": "npm:^4.0.0" "@nomicfoundation/hardhat-verify": "npm:^2.0.10" - "@nomicfoundation/ignition-core": "npm:^0.15.8" + "@nomicfoundation/ignition-core": "npm:^0.15.9" "@openzeppelin/contracts": "npm:^5.0.2" "@openzeppelin/contracts-upgradeable": "npm:^5.0.2" "@typechain/ethers-v6": "npm:^0.5.0" @@ -2950,7 +2950,7 @@ __metadata: eslint: "npm:^8.56.0" eslint-graph-config: "workspace:^0.0.1" ethers: "npm:^6.13.4" - hardhat: "npm:^2.22.0" + hardhat: "npm:^2.22.18" hardhat-contract-sizer: "npm:^2.10.0" hardhat-gas-reporter: "npm:^1.0.8" hardhat-graph-protocol: "workspace:^0.0.1" @@ -3028,12 +3028,12 @@ __metadata: "@nomicfoundation/hardhat-chai-matchers": "npm:^2.0.0" "@nomicfoundation/hardhat-ethers": "npm:^3.0.8" "@nomicfoundation/hardhat-foundry": "npm:^1.1.1" - "@nomicfoundation/hardhat-ignition": "npm:^0.15.8" - "@nomicfoundation/hardhat-ignition-ethers": "npm:^0.15.8" + "@nomicfoundation/hardhat-ignition": "npm:^0.15.9" + "@nomicfoundation/hardhat-ignition-ethers": "npm:^0.15.9" "@nomicfoundation/hardhat-network-helpers": "npm:^1.0.0" "@nomicfoundation/hardhat-toolbox": "npm:^4.0.0" "@nomicfoundation/hardhat-verify": "npm:^2.0.10" - "@nomicfoundation/ignition-core": "npm:^0.15.8" + "@nomicfoundation/ignition-core": "npm:^0.15.9" "@openzeppelin/contracts": "npm:^5.0.2" "@openzeppelin/contracts-upgradeable": "npm:^5.0.2" "@typechain/ethers-v6": "npm:^0.5.0" @@ -3044,8 +3044,8 @@ __metadata: chai: "npm:^4.2.0" eslint: "npm:^8.56.0" eslint-graph-config: "workspace:^0.0.1" - ethers: "npm:^6.13.2" - hardhat: "npm:^2.20.1" + ethers: "npm:^6.13.4" + hardhat: "npm:^2.22.18" hardhat-contract-sizer: "npm:^2.10.0" hardhat-gas-reporter: "npm:^1.0.8" hardhat-graph-protocol: "workspace:^0.0.1" @@ -4227,6 +4227,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/edr-darwin-arm64@npm:0.7.0": + version: 0.7.0 + resolution: "@nomicfoundation/edr-darwin-arm64@npm:0.7.0" + checksum: 7a643fe1c2a1e907699e0b2469672f9d88510c399bd6ef893e480b601189da6daf654e73537bb811f160a397a28ce1b4fe0e36ba763919ac7ee0922a62d09d51 + languageName: node + linkType: hard + "@nomicfoundation/edr-darwin-x64@npm:0.3.8": version: 0.3.8 resolution: "@nomicfoundation/edr-darwin-x64@npm:0.3.8" @@ -4241,6 +4248,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/edr-darwin-x64@npm:0.7.0": + version: 0.7.0 + resolution: "@nomicfoundation/edr-darwin-x64@npm:0.7.0" + checksum: c33a0320fc4f4e27ef6718a678cfc6ff9fe5b03d3fc604cb503a7291e5f9999da1b4e45ebeff77e24031c4dd53e6defecb3a0d475c9f51d60ea6f48e78f74d8e + languageName: node + linkType: hard + "@nomicfoundation/edr-linux-arm64-gnu@npm:0.3.8": version: 0.3.8 resolution: "@nomicfoundation/edr-linux-arm64-gnu@npm:0.3.8" @@ -4255,6 +4269,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/edr-linux-arm64-gnu@npm:0.7.0": + version: 0.7.0 + resolution: "@nomicfoundation/edr-linux-arm64-gnu@npm:0.7.0" + checksum: 8347524cecca3a41ecb6e05581f386ccc6d7e831d4080eca5723724c4307c30ee787a944c70028360cb280a7f61d4967c152ff7b319ccfe08eadf1583a15d018 + languageName: node + linkType: hard + "@nomicfoundation/edr-linux-arm64-musl@npm:0.3.8": version: 0.3.8 resolution: "@nomicfoundation/edr-linux-arm64-musl@npm:0.3.8" @@ -4269,6 +4290,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/edr-linux-arm64-musl@npm:0.7.0": + version: 0.7.0 + resolution: "@nomicfoundation/edr-linux-arm64-musl@npm:0.7.0" + checksum: ace6d7691058250341dc0d0a2915c2020cc563ab70627f816e06abca7f0181e93941e5099d4a7ca0e6f8f225caff8be2c6563ad7ab8eeaf9124cb2cc53b9d9ac + languageName: node + linkType: hard + "@nomicfoundation/edr-linux-x64-gnu@npm:0.3.8": version: 0.3.8 resolution: "@nomicfoundation/edr-linux-x64-gnu@npm:0.3.8" @@ -4283,6 +4311,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/edr-linux-x64-gnu@npm:0.7.0": + version: 0.7.0 + resolution: "@nomicfoundation/edr-linux-x64-gnu@npm:0.7.0" + checksum: 11a0eb76a628772ec28fe000b3014e83081f216b0f89568eb42f46c1d3d6ee10015d897857f372087e95651aeeea5cf525c161070f2068bd5e4cf3ccdd4b0201 + languageName: node + linkType: hard + "@nomicfoundation/edr-linux-x64-musl@npm:0.3.8": version: 0.3.8 resolution: "@nomicfoundation/edr-linux-x64-musl@npm:0.3.8" @@ -4297,6 +4332,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/edr-linux-x64-musl@npm:0.7.0": + version: 0.7.0 + resolution: "@nomicfoundation/edr-linux-x64-musl@npm:0.7.0" + checksum: 5559718b3ec00b9f6c9a6cfa6c60540b8f277728482db46183aa907d60f169bc7c8908551b5790c8bad2b0d618ade5ede15b94bdd209660cf1ce707b1fe99fd6 + languageName: node + linkType: hard + "@nomicfoundation/edr-win32-x64-msvc@npm:0.3.8": version: 0.3.8 resolution: "@nomicfoundation/edr-win32-x64-msvc@npm:0.3.8" @@ -4311,6 +4353,13 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/edr-win32-x64-msvc@npm:0.7.0": + version: 0.7.0 + resolution: "@nomicfoundation/edr-win32-x64-msvc@npm:0.7.0" + checksum: 19c10fa99245397556bf70971cc7d68544dc4a63ec7cc087fd09b2541729ec57d03166592837394b0fad903fbb20b1428ec67eed29926227155aa5630a249306 + languageName: node + linkType: hard + "@nomicfoundation/edr@npm:^0.3.7": version: 0.3.8 resolution: "@nomicfoundation/edr@npm:0.3.8" @@ -4341,6 +4390,21 @@ __metadata: languageName: node linkType: hard +"@nomicfoundation/edr@npm:^0.7.0": + version: 0.7.0 + resolution: "@nomicfoundation/edr@npm:0.7.0" + dependencies: + "@nomicfoundation/edr-darwin-arm64": "npm:0.7.0" + "@nomicfoundation/edr-darwin-x64": "npm:0.7.0" + "@nomicfoundation/edr-linux-arm64-gnu": "npm:0.7.0" + "@nomicfoundation/edr-linux-arm64-musl": "npm:0.7.0" + "@nomicfoundation/edr-linux-x64-gnu": "npm:0.7.0" + "@nomicfoundation/edr-linux-x64-musl": "npm:0.7.0" + "@nomicfoundation/edr-win32-x64-msvc": "npm:0.7.0" + checksum: 7dc0ae7533a9b57bfdee5275e08d160ff01cba1496cc7341a2782706b40f43e5c448ea0790b47dd1cf2712fa08295f271329109ed2313d9c7ff074ca3ae303e0 + languageName: node + linkType: hard + "@nomicfoundation/ethereumjs-block@npm:4.2.2": version: 4.2.2 resolution: "@nomicfoundation/ethereumjs-block@npm:4.2.2" @@ -4746,25 +4810,25 @@ __metadata: languageName: node linkType: hard -"@nomicfoundation/hardhat-ignition-ethers@npm:^0.15.8": - version: 0.15.8 - resolution: "@nomicfoundation/hardhat-ignition-ethers@npm:0.15.8" +"@nomicfoundation/hardhat-ignition-ethers@npm:^0.15.9": + version: 0.15.9 + resolution: "@nomicfoundation/hardhat-ignition-ethers@npm:0.15.9" peerDependencies: "@nomicfoundation/hardhat-ethers": ^3.0.4 - "@nomicfoundation/hardhat-ignition": ^0.15.8 - "@nomicfoundation/ignition-core": ^0.15.8 + "@nomicfoundation/hardhat-ignition": ^0.15.9 + "@nomicfoundation/ignition-core": ^0.15.9 ethers: ^6.7.0 hardhat: ^2.18.0 - checksum: 480825fa20d24031b330f96ff667137b8fdb67db0efea8cb3ccd5919c3f93e2c567de6956278e36c399311fd61beef20fae6e7700f52beaa813002cbee482efa + checksum: 3e5ebe4b0eeea2ddefeaac3ef8db474399cf9688547ef8e39780cb7af3bbb4fb2db9e73ec665f071bb7203cb667e7a9587c86b94c8bdd6346630a263c57b3056 languageName: node linkType: hard -"@nomicfoundation/hardhat-ignition@npm:^0.15.8": - version: 0.15.8 - resolution: "@nomicfoundation/hardhat-ignition@npm:0.15.8" +"@nomicfoundation/hardhat-ignition@npm:^0.15.9": + version: 0.15.9 + resolution: "@nomicfoundation/hardhat-ignition@npm:0.15.9" dependencies: - "@nomicfoundation/ignition-core": "npm:^0.15.8" - "@nomicfoundation/ignition-ui": "npm:^0.15.8" + "@nomicfoundation/ignition-core": "npm:^0.15.9" + "@nomicfoundation/ignition-ui": "npm:^0.15.9" chalk: "npm:^4.0.0" debug: "npm:^4.3.2" fs-extra: "npm:^10.0.0" @@ -4773,7 +4837,7 @@ __metadata: peerDependencies: "@nomicfoundation/hardhat-verify": ^2.0.1 hardhat: ^2.18.0 - checksum: 59b82470ff5b38451c0bd7b19015eeee2f3db801addd8d67e0b28d6cb5ae3f578dfc998d184cb9c71895f6106bbb53c9cdf28df1cb14917df76cf3db82e87c32 + checksum: b8d6b3f92a0183d6d3bb7b3f9919860ba001dc8d0995d74ad1a324110b93d4dfbdbfb685e8a4a3bec6da5870750325d63ebe014653a7248366adac02ff142841 languageName: node linkType: hard @@ -4832,9 +4896,9 @@ __metadata: languageName: node linkType: hard -"@nomicfoundation/ignition-core@npm:^0.15.8": - version: 0.15.8 - resolution: "@nomicfoundation/ignition-core@npm:0.15.8" +"@nomicfoundation/ignition-core@npm:^0.15.9": + version: 0.15.9 + resolution: "@nomicfoundation/ignition-core@npm:0.15.9" dependencies: "@ethersproject/address": "npm:5.6.1" "@nomicfoundation/solidity-analyzer": "npm:^0.1.1" @@ -4845,14 +4909,14 @@ __metadata: immer: "npm:10.0.2" lodash: "npm:4.17.21" ndjson: "npm:2.0.0" - checksum: ebb16e092bd9a39e48cc269d3627430656f558c814cea435eaf06f2e7d9a059a4470d1186c2a7d108efed755ef34d88d2aa74f9d6de5bb73e570996a53a7d2ef + checksum: fe02e3f4a981ef338e3acf75cf2e05535c2aba21f4c5b5831b1430fcaa7bbb42b16bd8ac4bb0b9f036d0b9eb1aede5fa57890f0c3863c4ae173d45ac3e484ed8 languageName: node linkType: hard -"@nomicfoundation/ignition-ui@npm:^0.15.8": - version: 0.15.8 - resolution: "@nomicfoundation/ignition-ui@npm:0.15.8" - checksum: c5e7b41631824a048160b8d5400f5fb0cb05412a9d2f3896044f7cfedea4298d31a8d5b4b8be38296b5592db4fa9255355843dcb3d781bc7fa1200fb03ea8476 +"@nomicfoundation/ignition-ui@npm:^0.15.9": + version: 0.15.9 + resolution: "@nomicfoundation/ignition-ui@npm:0.15.9" + checksum: 88097576c4186bfdf365f4864463386e7a345be1f8c0b8eebe589267e782735f8cec55e1c5af6c0f0872ba111d79616422552dc7e26c643d01b1768a2b0fb129 languageName: node linkType: hard @@ -12372,33 +12436,33 @@ __metadata: languageName: node linkType: hard -"ethers@npm:^6.13.2, ethers@npm:^6.7.0": - version: 6.13.2 - resolution: "ethers@npm:6.13.2" +"ethers@npm:^6.13.4": + version: 6.13.4 + resolution: "ethers@npm:6.13.4" dependencies: "@adraffy/ens-normalize": "npm:1.10.1" "@noble/curves": "npm:1.2.0" "@noble/hashes": "npm:1.3.2" - "@types/node": "npm:18.15.13" + "@types/node": "npm:22.7.5" aes-js: "npm:4.0.0-beta.5" - tslib: "npm:2.4.0" + tslib: "npm:2.7.0" ws: "npm:8.17.1" - checksum: 5956389a180992f8b6d90bc21b2e0f28619a098513d3aeb7a350a0b7c5852d635a9d7fd4ced1af50c985dd88398716f66dfd4a2de96c5c3a67150b93543d92af + checksum: efcf9f39f841e38af68ec23cdbd745432c239c256aac4929842d1af04e55d7be0ff65e462f1cf3e93586f43f7bdcc0098fd56f2f7234f36d73e466521a5766ce languageName: node linkType: hard -"ethers@npm:^6.13.4": - version: 6.13.4 - resolution: "ethers@npm:6.13.4" +"ethers@npm:^6.7.0": + version: 6.13.2 + resolution: "ethers@npm:6.13.2" dependencies: "@adraffy/ens-normalize": "npm:1.10.1" "@noble/curves": "npm:1.2.0" "@noble/hashes": "npm:1.3.2" - "@types/node": "npm:22.7.5" + "@types/node": "npm:18.15.13" aes-js: "npm:4.0.0-beta.5" - tslib: "npm:2.7.0" + tslib: "npm:2.4.0" ws: "npm:8.17.1" - checksum: efcf9f39f841e38af68ec23cdbd745432c239c256aac4929842d1af04e55d7be0ff65e462f1cf3e93586f43f7bdcc0098fd56f2f7234f36d73e466521a5766ce + checksum: 5956389a180992f8b6d90bc21b2e0f28619a098513d3aeb7a350a0b7c5852d635a9d7fd4ced1af50c985dd88398716f66dfd4a2de96c5c3a67150b93543d92af languageName: node linkType: hard @@ -14486,13 +14550,13 @@ __metadata: languageName: node linkType: hard -"hardhat@npm:^2.20.1, hardhat@npm:^2.6.1, hardhat@npm:^2.6.4": - version: 2.22.4 - resolution: "hardhat@npm:2.22.4" +"hardhat@npm:^2.22.16": + version: 2.22.16 + resolution: "hardhat@npm:2.22.16" dependencies: "@ethersproject/abi": "npm:^5.1.2" "@metamask/eth-sig-util": "npm:^4.0.0" - "@nomicfoundation/edr": "npm:^0.3.7" + "@nomicfoundation/edr": "npm:^0.6.4" "@nomicfoundation/ethereumjs-common": "npm:4.0.4" "@nomicfoundation/ethereumjs-tx": "npm:5.0.4" "@nomicfoundation/ethereumjs-util": "npm:9.0.4" @@ -14504,31 +14568,32 @@ __metadata: aggregate-error: "npm:^3.0.0" ansi-escapes: "npm:^4.3.0" boxen: "npm:^5.1.2" - chalk: "npm:^2.4.2" - chokidar: "npm:^3.4.0" + chokidar: "npm:^4.0.0" ci-info: "npm:^2.0.0" debug: "npm:^4.1.1" enquirer: "npm:^2.3.0" env-paths: "npm:^2.2.0" ethereum-cryptography: "npm:^1.0.3" ethereumjs-abi: "npm:^0.6.8" - find-up: "npm:^2.1.0" + find-up: "npm:^5.0.0" fp-ts: "npm:1.19.3" fs-extra: "npm:^7.0.1" - glob: "npm:7.2.0" immutable: "npm:^4.0.0-rc.12" io-ts: "npm:1.10.4" + json-stream-stringify: "npm:^3.1.4" keccak: "npm:^3.0.2" lodash: "npm:^4.17.11" mnemonist: "npm:^0.38.0" mocha: "npm:^10.0.0" p-map: "npm:^4.0.0" + picocolors: "npm:^1.1.0" raw-body: "npm:^2.4.1" resolve: "npm:1.17.0" semver: "npm:^6.3.0" - solc: "npm:0.7.3" + solc: "npm:0.8.26" source-map-support: "npm:^0.5.13" stacktrace-parser: "npm:^0.1.10" + tinyglobby: "npm:^0.2.6" tsort: "npm:0.0.1" undici: "npm:^5.14.0" uuid: "npm:^8.3.2" @@ -14543,17 +14608,17 @@ __metadata: optional: true bin: hardhat: internal/cli/bootstrap.js - checksum: b9f51c40bc0d392dedb7fe866da30115a9c120b89eafe1f0afcda3cf1b379d7163e6a33a9b7a8ba78df795b477c2fd2d83ace8eb992668271b610786e320d5b7 + checksum: d193d8dbd02aba9875fc4df23c49fe8cf441afb63382c9e248c776c75aca6e081e9b7b75fb262739f20bff152f9e0e4112bb22e3609dfa63ed4469d3ea46c0ca languageName: node linkType: hard -"hardhat@npm:^2.22.0, hardhat@npm:^2.22.16": - version: 2.22.16 - resolution: "hardhat@npm:2.22.16" +"hardhat@npm:^2.22.18": + version: 2.22.18 + resolution: "hardhat@npm:2.22.18" dependencies: "@ethersproject/abi": "npm:^5.1.2" "@metamask/eth-sig-util": "npm:^4.0.0" - "@nomicfoundation/edr": "npm:^0.6.4" + "@nomicfoundation/edr": "npm:^0.7.0" "@nomicfoundation/ethereumjs-common": "npm:4.0.4" "@nomicfoundation/ethereumjs-tx": "npm:5.0.4" "@nomicfoundation/ethereumjs-util": "npm:9.0.4" @@ -14605,7 +14670,68 @@ __metadata: optional: true bin: hardhat: internal/cli/bootstrap.js - checksum: d193d8dbd02aba9875fc4df23c49fe8cf441afb63382c9e248c776c75aca6e081e9b7b75fb262739f20bff152f9e0e4112bb22e3609dfa63ed4469d3ea46c0ca + checksum: cd2fd8972b24d13a342747129e88bfe8bad45432ad88c66c743e81615e1c5db7d656c3e9748c03e517c94f6f6df717c4a14685c82c9f843c9be7c1e0a5f76c49 + languageName: node + linkType: hard + +"hardhat@npm:^2.6.1, hardhat@npm:^2.6.4": + version: 2.22.4 + resolution: "hardhat@npm:2.22.4" + dependencies: + "@ethersproject/abi": "npm:^5.1.2" + "@metamask/eth-sig-util": "npm:^4.0.0" + "@nomicfoundation/edr": "npm:^0.3.7" + "@nomicfoundation/ethereumjs-common": "npm:4.0.4" + "@nomicfoundation/ethereumjs-tx": "npm:5.0.4" + "@nomicfoundation/ethereumjs-util": "npm:9.0.4" + "@nomicfoundation/solidity-analyzer": "npm:^0.1.0" + "@sentry/node": "npm:^5.18.1" + "@types/bn.js": "npm:^5.1.0" + "@types/lru-cache": "npm:^5.1.0" + adm-zip: "npm:^0.4.16" + aggregate-error: "npm:^3.0.0" + ansi-escapes: "npm:^4.3.0" + boxen: "npm:^5.1.2" + chalk: "npm:^2.4.2" + chokidar: "npm:^3.4.0" + ci-info: "npm:^2.0.0" + debug: "npm:^4.1.1" + enquirer: "npm:^2.3.0" + env-paths: "npm:^2.2.0" + ethereum-cryptography: "npm:^1.0.3" + ethereumjs-abi: "npm:^0.6.8" + find-up: "npm:^2.1.0" + fp-ts: "npm:1.19.3" + fs-extra: "npm:^7.0.1" + glob: "npm:7.2.0" + immutable: "npm:^4.0.0-rc.12" + io-ts: "npm:1.10.4" + keccak: "npm:^3.0.2" + lodash: "npm:^4.17.11" + mnemonist: "npm:^0.38.0" + mocha: "npm:^10.0.0" + p-map: "npm:^4.0.0" + raw-body: "npm:^2.4.1" + resolve: "npm:1.17.0" + semver: "npm:^6.3.0" + solc: "npm:0.7.3" + source-map-support: "npm:^0.5.13" + stacktrace-parser: "npm:^0.1.10" + tsort: "npm:0.0.1" + undici: "npm:^5.14.0" + uuid: "npm:^8.3.2" + ws: "npm:^7.4.6" + peerDependencies: + ts-node: "*" + typescript: "*" + peerDependenciesMeta: + ts-node: + optional: true + typescript: + optional: true + bin: + hardhat: internal/cli/bootstrap.js + checksum: b9f51c40bc0d392dedb7fe866da30115a9c120b89eafe1f0afcda3cf1b379d7163e6a33a9b7a8ba78df795b477c2fd2d83ace8eb992668271b610786e320d5b7 languageName: node linkType: hard