Skip to content

v0.20.0-beta.0

Pre-release
Pre-release
Compare
Choose a tag to compare
@spsjvc spsjvc released this 10 Sep 13:24
· 52 commits to main since this release
b455803

What's Changed

  • Added the option to use custom parent chains (@spsjvc in #181)

Register a custom parent chain by calling registerCustomParentChain with the custom parent chain object as the argument. The object needs to be a viem Chain object with the RollupCreator and TokenBridgeCreator contract addresses filled out:

registerCustomParentChain({
  id: 123,
  name: `My Chain`,
  network: `my-chain`,
  nativeCurrency: { 
    name: 'Ether', 
    symbol: 'ETH', 
    decimals: 18
  },
  rpcUrls: {
    public: { 
      http: ['http://localhost:3000'] },
      default: { http: ['http://localhost:3000'] 
    },
  },
  // the following contract addresses have to be provided
  contracts: {
    rollupCreator: { address: '0x1000000000000000000000000000000000000000' },
    tokenBridgeCreator: { address: '0x2000000000000000000000000000000000000000' },
  },
})

Note that if you're using a custom parent chain, defaults for certain functions can't be provided, so you'll have to specify those values:

  • createRollupPrepareDeploymentParamsConfig
    • params.confirmPeriodBlocks will be required
    • params.sequencerInboxMaxTimeVariation will be required
  • createRollupPrepareTransactionRequest and createRollup
    • params.maxDataSize will be required
  • prepareNodeConfig
    • parentChainIsArbitrum will be required