Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feature(networks): Adding deployment on zkSync #13078

Merged
merged 59 commits into from
Feb 14, 2024
Merged

feature(networks): Adding deployment on zkSync #13078

merged 59 commits into from
Feb 14, 2024

Conversation

julien51
Copy link
Member

@julien51 julien51 commented Dec 6, 2023

Description

This is work in progress to add support for zkSync!
Since zksync is not perfectly EVM compatible, we have to follow the steps shown there https://era.zksync.io/docs/tools/hardhat/migrating-to-zksync.html

replaces #13217

Checklist:

  • 1 PR, 1 purpose: my Pull Request applies to a single purpose
  • I have commented my code, particularly in hard-to-understand areas
  • I have updated the docs to reflect my changes if applicable
  • I have added tests (and stories for frontend components) that prove my fix is effective or that my feature works
  • I have performed a self-review of my own code
  • If my code involves visual changes, I am adding applicable screenshots to this thread

Release Note Draft Snippet

@cla-bot cla-bot bot added the cla-signed label Dec 6, 2023
@julien51
Copy link
Member Author

julien51 commented Dec 6, 2023

To test things locally, please do the following:

  1. Clone the repo git clone https://github.com/unlock-protocol/unlock.git
  2. Checkout this branch git checkout -b zksync-support
  3. Install deps: yarn
  4. Build required packages: yarn build
  5. cd governance
  6. yarn run hardhat deploy --unlock-version 12 --public-lock-version 13 --network zksync

You should then see the following error:

TypeError: Class extends value undefined is not a constructor or null
    at Object.<anonymous> (/Users/julien/tmp/unlock/node_modules/zksync2-js/build/src/types.js:46:51)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Function.Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/Users/julien/tmp/unlock/node_modules/zksync2-js/build/src/utils.js:19:17)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1310:10)

@julien51 julien51 requested a review from clemsos December 6, 2023 21:58
@clemsos
Copy link
Member

clemsos commented Dec 7, 2023

To test things locally, please do the following:

  1. Clone the repo git clone https://github.com/unlock-protocol/unlock.git
  2. Checkout this branch git checkout -b zksync-support
  3. Install deps: yarn
  4. Build required packages: yarn build
  5. cd governance
  6. yarn run hardhat deploy --unlock-version 12 --public-lock-version 13 --network zksync

You should then see the following error:

TypeError: Class extends value undefined is not a constructor or null
    at Object.<anonymous> (/Users/julien/tmp/unlock/node_modules/zksync2-js/build/src/types.js:46:51)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Function.Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/Users/julien/tmp/unlock/node_modules/zksync2-js/build/src/utils.js:19:17)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1310:10)

the issue is with the require('@matterlabs/hardhat-zksync-deploy'). Is that lib mandatory?

@MexicanAce
Copy link

@julien51 It looks like you're using the plugins built for Ethers v6. Please update ./governance/package.json to be the following:

{
  "name": "@unlock-protocol/governance",
  "description": "Scripts for the management of the Unlock Protocol",
  "private": true,
  "dependencies": {
    "@nomicfoundation/hardhat-network-helpers": "1.0.9",
    "@nomiclabs/hardhat-ethers": "2.2.3",
    "@nomiclabs/hardhat-etherscan": "3.1.7",
    "@openzeppelin/test-helpers": "0.5.16",
    "@safe-global/safe-core-sdk": "3.3.5",
    "@safe-global/safe-ethers-lib": "1.9.3",
    "@safe-global/safe-service-client": "2.0.3",
    "@unlock-protocol/contracts": "workspace:./packages/contracts",
    "@unlock-protocol/eslint-config": "workspace:./packages/eslint-config",
    "@unlock-protocol/hardhat-helpers": "workspace:^",
    "@unlock-protocol/hardhat-plugin": "workspace:^",
    "@unlock-protocol/networks": "workspace:./packages/networks",
    "eslint": "8.54.0",
    "fs-extra": "11.1.1",
    "hardhat": "2.19.2",
    "solhint": "4.0.0",
    "zksync-web3": "^0.14.3"
  },
  "scripts": {
    "test": "hardhat test",
    "ci": "yarn lint && yarn test",
    "lint:contracts": "solhint 'contracts/**/*.sol'",
    "lint:code": "eslint --resolve-plugins-relative-to ../packages/eslint-config .",
    "lint": "yarn lint:contracts && yarn lint:code"
  },
  "devDependencies": {
    "@matterlabs/hardhat-zksync-deploy": "^0.6.5",
    "@matterlabs/hardhat-zksync-solc": "^0.4.2"
  }
}

@idea404
Copy link

idea404 commented Dec 7, 2023

Hi, alternatively you can avoid this error and proceed with contract compilation by adding Ethers 6 (yarn add ethers) to the project. I ran a simplified version of this repository and it worked with the following package.json:

{
  "name": "@unlock-protocol/governance",
  "description": "Scripts for the management of the Unlock Protocol",
  "private": true,
  "dependencies": {
    "@nomicfoundation/hardhat-network-helpers": "1.0.9",
    "@nomiclabs/hardhat-ethers": "2.2.3",
    "@nomiclabs/hardhat-etherscan": "3.1.7",
    "@nomiclabs/hardhat-waffle": "^2.0.6",
    "@openzeppelin/hardhat-upgrades": "^2.5.0",
    "@openzeppelin/test-helpers": "0.5.16",
    "@safe-global/safe-core-sdk": "3.3.5",
    "@safe-global/safe-ethers-lib": "1.9.3",
    "@safe-global/safe-service-client": "2.0.3",
    "@unlock-protocol/contracts": "workspace:./packages/contracts",
    "@unlock-protocol/eslint-config": "workspace:./packages/eslint-config",
    "@unlock-protocol/hardhat-helpers": "workspace:^",
    "@unlock-protocol/hardhat-plugin": "workspace:^",
    "@unlock-protocol/networks": "workspace:./packages/networks",
    "eslint": "8.54.0",
    "ethers": "^6.9.0",
    "fs-extra": "11.1.1",
    "hardhat": "2.19.2",
    "solhint": "4.0.0",
    "zksync2-js": "0.4.0"
  },
  "scripts": {
    "test": "hardhat test",
    "ci": "yarn lint && yarn test",
    "lint:contracts": "solhint 'contracts/**/*.sol'",
    "lint:code": "eslint --resolve-plugins-relative-to ../packages/eslint-config .",
    "lint": "yarn lint:contracts && yarn lint:code"
  },
  "devDependencies": {
    "@matterlabs/hardhat-zksync-deploy": "1.0.1",
    "@matterlabs/hardhat-zksync-solc": "1.0.3",
    "@nomicfoundation/hardhat-ethers": "^3.0.0",
    "@nomicfoundation/hardhat-verify": "^1.1.0"
  }
}

Here's an issue explaining this subject a little further: matter-labs/hardhat-zksync#547

@julien51
Copy link
Member Author

julien51 commented Dec 8, 2023

Thanks @idea404 and @MexicanAce ! I will try both.
We still have not migrated to ethers6 on the rest of the monorepo... so there is a question about whether this will be an issue!

@julien51
Copy link
Member Author

julien51 commented Dec 8, 2023

yeah, as worried using @idea404 's approach creates issues :(

TypeError: Cannot read properties of undefined (reading 'from')
    at Object.<anonymous> (/Users/julien/repos/unlock/governance/scripts/lock/create.js:9:40)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1310:10)
    at Module.load (node:internal/modules/cjs/loader:1119:32)
    at Function.Module._load (node:internal/modules/cjs/loader:960:12)
    at Module.require (node:internal/modules/cjs/loader:1143:19)
    at require (node:internal/modules/cjs/helpers:110:18)
    at Object.<anonymous> (/Users/julien/repos/unlock/governance/scripts/deployments/index.js:5:20)
    at Module._compile (node:internal/modules/cjs/loader:1256:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1310:10)

Because of this:

const defaultParams = {
  expirationDuration: ethers.BigNumber.from(60 * 60 * 24 * 30), // 30 days
  keyPrice: ethers.utils.parseEther('0.01'), // in wei
  maxNumberOfKeys: 100,
  lockName: 'Unlock-Protocol Lock',
}

@julien51
Copy link
Member Author

julien51 commented Dec 8, 2023

With @MexicanAce 's approach I am able to go what looks like a bit further! More soon!

@julien51
Copy link
Member Author

julien51 commented Dec 8, 2023

We have a bunch of warnings when compiling:

┌──────────────────────────────────────────────────────────────────────────────────────────────────┐
│ Warning: It looks like you are using '<address payable>.send/transfer(<X>)' without providing    │
│ the gas amount. Such calls will fail depending on the pubdata costs.                             │
│ This might be a false positive if you are using an interface (like IERC20) instead of the        │
│ native Solidity `send/transfer`.                                                                 │
│ Please use 'payable(<address>).call{value: <X>}("")' instead, but be careful with the reentrancy │
│ attack. `send` and `transfer` send limited amount of gas that prevents reentrancy, whereas       │
│ `<address>.call{value: <X>}` sends all gas to the callee. Learn more on                          │
│ https://docs.soliditylang.org/en/latest/security-considerations.html#reentrancy                  │
└──────────────────────────────────────────────────────────────────────────────────────────────────┘
--> contracts/past-versions/UnlockV12.sol

But more worrying is that I am getting an error:

An unexpected error occurred:

ValidationsCacheNotFound [Error]: Validations cache not found. Recompile with `hardhat compile --force`
    at readValidations (/Users/julien/repos/unlock/node_modules/@openzeppelin/hardhat-upgrades/src/utils/validations.ts:57:13)
    at getDeployData (/Users/julien/repos/unlock/node_modules/@openzeppelin/hardhat-upgrades/src/utils/deploy-impl.ts:46:23)
    at deployProxyImpl (/Users/julien/repos/unlock/node_modules/@openzeppelin/hardhat-upgrades/src/utils/deploy-impl.ts:72:22)
    at Proxy.deployProxy (/Users/julien/repos/unlock/node_modules/@openzeppelin/hardhat-upgrades/src/deploy-proxy.ts:45:28)
    at main (/Users/julien/repos/unlock/governance/scripts/deployments/unlock.js:24:18)
    at SimpleTaskDefinition.action (/Users/julien/repos/unlock/governance/tasks/deploy.js:104:12)
    at Environment._runTaskDefinition (/Users/julien/repos/unlock/governance/node_modules/hardhat/src/internal/core/runtime-environment.ts:358:14)
    at Environment.run (/Users/julien/repos/unlock/governance/node_modules/hardhat/src/internal/core/runtime-environment.ts:191:14)
    at main (/Users/julien/repos/unlock/governance/scripts/deployments/index.js:47:21)
    at SimpleTaskDefinition.action (/Users/julien/repos/unlock/governance/tasks/deploy.js:73:7)

and yarn run hardhat compile --force --network zksync does not seem to help.
Based on this issue it looks like this is not related to zksync directly but to hardhat missing caches to perform validations. Any idea on how to bypass that @clemsos

@clemsos
Copy link
Member

clemsos commented Dec 8, 2023

maybe try yarn hardhat clean then re compile ? Sometimes that could be a cache issue as we compile some of the contracts on the fly during deployment. We have to copy the sol file into the folder for the OZ upgrades plugin to work, so we do copy a sol file then recompile programmatically. Maybe there is a need to add the --network zksync flag there too ?

This syntax should work

await run('compile', { network: 'zksync'})

Also you need to rebuild the helper lib afterwards with yarn workspace @unlock-protocol/helpers build

@julien51
Copy link
Member Author

@clemsos I tried both things (clean and recompile), but also "forcing" the network when compiling... with no luck and I still have the same error.

@MexicanAce
Copy link

MexicanAce commented Dec 15, 2023

@julien51 I'm unsure about the cache issue, as I can't replicate that locally. I will suggest updating the following files to support NPM packages with Ethers v5:

package.json

  "dependencies": {
    "zksync-ethers": "^5.0.0"
  },
  "devDependencies": {
    "@matterlabs/hardhat-zksync-deploy": "^0.6.5",
    "@matterlabs/hardhat-zksync-solc": "^0.4.2",
    "@matterlabs/hardhat-zksync-upgradable": "^0.1.3",
    "@matterlabs/hardhat-zksync-verify": "^0.1.8"
  }

hardhat.config.js

require('@matterlabs/hardhat-zksync-deploy')
require('@matterlabs/hardhat-zksync-solc')
require('@matterlabs/hardhat-zksync-upgradable')
require('@matterlabs/hardhat-zksync-verify')

After this, you will probably start running into the next problem of incompatibility of using the deployProxy function with zkSync. To fix this, you'll need to use the hre.zkUpgrades.deployProxy function from the @matterlabs/hardhat-zksync-upgradable NPM package (where hre comes from import * as hre from 'hardhat';)

You might also run into an issue where the --script path-to-deployment-script.js is required (and not optional). This would require to always specify the script to deploy with deploy-zksync.

@julien51
Copy link
Member Author

julien51 commented Jan 5, 2024

@MexicanAce In the meantime, we have upgraded to ethers6 in the right part of our monorepo. That said, unfortunately I still have the caching issue.

Successfully compiled 1 Solidity file
An unexpected error occurred:

ValidationsCacheNotFound [Error]: Validations cache not found. Recompile with `hardhat compile --force`
    at readValidations (/Users/julien/repos/unlock/governance/node_modules/@openzeppelin/hardhat-upgrades/src/utils/validations.ts:57:13)
    at getDeployData (/Users/julien/repos/unlock/governance/node_modules/@openzeppelin/hardhat-upgrades/src/utils/deploy-impl.ts:45:23)
    at deployProxyImpl (/Users/julien/repos/unlock/governance/node_modules/@openzeppelin/hardhat-upgrades/src/utils/deploy-impl.ts:71:22)
    at Proxy.deployProxy (/Users/julien/repos/unlock/governance/node_modules/@openzeppelin/hardhat-upgrades/src/deploy-proxy.ts:48:28)
    at main (/Users/julien/repos/unlock/governance/scripts/deployments/unlock.js:25:18)
    at SimpleTaskDefinition.action (/Users/julien/repos/unlock/governance/tasks/deploy.js:104:12)
    at Environment._runTaskDefinition (/Users/julien/repos/unlock/governance/node_modules/hardhat/src/internal/core/runtime-environment.ts:358:14)
    at Environment.run (/Users/julien/repos/unlock/governance/node_modules/hardhat/src/internal/core/runtime-environment.ts:191:14)
    at main (/Users/julien/repos/unlock/governance/scripts/deployments/index.js:47:21)
    at SimpleTaskDefinition.action (/Users/julien/repos/unlock/governance/tasks/deploy.js:73:7)

To reproduce, you can checkout the branch from this PR zksync-support, and yarn and yarn build. Then cd governance and yarn run hardhat deploy --unlock-version 12 --public-lock-version 13 --network zksync

@clemsos
Copy link
Member

clemsos commented Jan 26, 2024

Hello ! I am getting this TypeError: Class extends value undefined is not a constructor or null issue with the latest @matterlabs/hardhat-zksync-upgradable (1.2.1). It works when using 1.2.0 though

TypeError: Class extends value undefined is not a constructor or null
    at Object.<anonymous> (/Users/clement/Dev/unlock/unlock/node_modules/zksync-ethers/build/src/types.js:46:51)
    at Module._compile (node:internal/modules/cjs/loader:1376:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1435:10)
    at Module.load (node:internal/modules/cjs/loader:1207:32)
    at Function.Module._load (node:internal/modules/cjs/loader:1023:12)
    at Module.require (node:internal/modules/cjs/loader:1235:19)
    at require (node:internal/modules/helpers:176:18)
    at Object.<anonymous> (/Users/clement/Dev/unlock/unlock/node_modules/zksync-ethers/build/src/utils.js:19:17)
    at Module._compile (node:internal/modules/cjs/loader:1376:14)
    at Object.Module._extensions..js (node:internal/modules/cjs/loader:1435:10)

@clemsos
Copy link
Member

clemsos commented Jan 26, 2024

I have a second issue similar to this one zkSync-Community-Hub/zksync-developers#164

While importing const { Deployer } = require('@matterlabs/hardhat-zksync-deploy') to get the Deployer, the lib attempts to rewrite the hardhat tasks which throws the following

Error HH209: Redefinition of task deploy-zksync failed. Unsupported operation adding mandatory (non optional) param definitions in an overridden task.

That happens @matterlabs/hardhat-zksync-upgradable even though the @matterlabs/hardhat-zksync-deploy has not been previously imported in hardhat config

NB: I added a workaround in 3b08b5a but its hacky :P

@clemsos
Copy link
Member

clemsos commented Jan 26, 2024

The upgradeable plugin is now working but I am running into the following The code hash is not known error from the deployer contract in the last phase (when actually deploying/setting the proxy I think).

Looking at the error is seems that the data is sent to the zero address. Maybe it relates to matter-labs/hardhat-zksync#696 ?

Error: execution reverted: "The code hash is not known" (action="estimateGas", data="0x08c379a00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001a54686520636f64652068617368206973206e6f74206b6e6f776e000000000000", reason="The code hash is not known", transaction={ "data": "0x9c4d535b00000000000000000000000000000000000000000000000000000000000000000100015f69aa55883cc3a9d732e813ef169a53ea385c3510e16035e8c10c3cac000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000035df7c5c1626e81ba62ef9f1e2342c5dbc5e86ae000000000000000000000000b52e38541e709622d86142dc2d50e2ee94017a0600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000246a13358fb27523642d86367a51c2aeb137ac6c00000000000000000000000000000000000000000000000000000000", "from": "0x246A13358Fb27523642D86367a51C2aEB137Ac6C", "to": "0x0000000000000000000000000000000000008006" }, invocation=null, revert={ "args": [ "The code hash is not known" ], "name": "Error", "signature": "Error(string)" }, code=CALL_EXCEPTION, version=6.10.0)
    at makeError (/Users/clement/Dev/unlock/unlock/packages/hardhat-helpers/node_modules/ethers/src.ts/utils/errors.ts:694:21)
    at getBuiltinCallException (/Users/clement/Dev/unlock/unlock/packages/hardhat-helpers/node_modules/ethers/src.ts/abi/abi-coder.ts:118:21)
    at Function.getBuiltinCallException (/Users/clement/Dev/unlock/unlock/packages/hardhat-helpers/node_modules/ethers/src.ts/abi/abi-coder.ts:235:16)
    at Provider.getRpcError (/Users/clement/Dev/unlock/unlock/packages/hardhat-helpers/node_modules/ethers/src.ts/providers/provider-jsonrpc.ts:979:32)
    at /Users/clement/Dev/unlock/unlock/packages/hardhat-helpers/node_modules/ethers/src.ts/providers/provider-jsonrpc.ts:563:45
    at processTicksAndRejections (node:internal/process/task_queues:95:5) {
  code: 'CALL_EXCEPTION',
  action: 'estimateGas',
  data: '0x08c379a00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001a54686520636f64652068617368206973206e6f74206b6e6f776e000000000000',
  reason: 'The code hash is not known',
  transaction: {
    to: '0x0000000000000000000000000000000000008006',
    data: '0x9c4d535b00000000000000000000000000000000000000000000000000000000000000000100015f69aa55883cc3a9d732e813ef169a53ea385c3510e16035e8c10c3cac000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000c000000000000000000000000035df7c5c1626e81ba62ef9f1e2342c5dbc5e86ae000000000000000000000000b52e38541e709622d86142dc2d50e2ee94017a0600000000000000000000000000000000000000000000000000000000000000600000000000000000000000000000000000000000000000000000000000000024c4d66de8000000000000000000000000246a13358fb27523642d86367a51c2aeb137ac6c00000000000000000000000000000000000000000000000000000000',
    from: '0x246A13358Fb27523642D86367a51C2aEB137Ac6C'
  },
  invocation: null,
  revert: {
    signature: 'Error(string)',
    name: 'Error',
    args: [ 'The code hash is not known' ]
  },
  shortMessage: 'execution reverted: "The code hash is not known"',
  info: {
    error: {
      code: 3,
      message: 'execution reverted: The code hash is not known',
      data: '0x08c379a00000000000000000000000000000000000000000000000000000000000000020000000000000000000000000000000000000000000000000000000000000001a54686520636f64652068617368206973206e6f74206b6e6f776e000000000000'
    },
    payload: {
      method: 'eth_estimateGas',
      params: [Array],
      id: 17,
      jsonrpc: '2.0'
    }
  }
}

provider/src/types.ts Outdated Show resolved Hide resolved
@julien51
Copy link
Member Author

hooooo! Are we getting there?

@clemsos clemsos marked this pull request as ready for review February 6, 2024 10:07
@clemsos
Copy link
Member

clemsos commented Feb 6, 2024

last issue is the verification of the template here https://explorer.zksync.io/address/0x73a6EC7A82303A569415e070AD64b23AF8FF098e#contract

Seems some metadata issue (relates to matter-labs/hardhat-zksync#285 )

@@ -0,0 +1,289 @@
{
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we can skip that one since we don't want to have too many tests nets?

@@ -12,6 +12,13 @@ const {
parseForkUrl,
} = require('@unlock-protocol/hardhat-helpers')

// zksync
if (process.env.ZK_SYNC) {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

did you find another trick to avoid using that env var?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

not really for the hardhat config. We can not access hardhat run time or --network flag during initialization of the hardhat runtime environment so we'll have to stick with this workaround for now.

Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can you please add a comment so we know why in the future?

@@ -15,3 +15,5 @@ export * from './linea'
export * from './sepolia'
export * from './zkevm'
export * from './scroll'
export * from './zksync'
export * from './zksyncSepolia'
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Let's not add it 🙏

Copy link
Member Author

@julien51 julien51 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few changes/cleanup bvut then it should be good!

id: 324,
isTestNetwork: false,
maxFreeClaimCost: 1,
multisig: 'TK',
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pleaase update :)

publicLockVersionToDeploy: 13,
publicProvider: 'https://mainnet.era.zksync.io',
startBlock: 0,
subgraph: {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

please update

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

deploying on graph studio with new ARB safe #12867

@@ -0,0 +1,84 @@
import { NetworkConfig } from '@unlock-protocol/types'
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

skip!

@@ -3,1637 +3,1618 @@
// do not modify directly!
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We really need to fix this so it does not pollute every PR

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes thats annoying

@clemsos clemsos self-requested a review February 8, 2024 10:27
@clemsos
Copy link
Member

clemsos commented Feb 12, 2024

ok subgraph added !

@@ -64,3 +72,12 @@ module.exports = {
enabled: true,
},
}

if (process.env.ZK_SYNC) {
Copy link
Member Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Possible to do a single if (process.env.ZK_SYNC) with the includes above, for cleanliness?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yes done

@clemsos clemsos merged commit 73eeb62 into master Feb 14, 2024
13 checks passed
@clemsos clemsos deleted the zksync-support branch February 14, 2024 07:32
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants