Skip to content

v0.21.0

Compare
Choose a tag to compare
@spsjvc spsjvc released this 15 Oct 14:24
· 3 commits to main since this release
fc7f8f4

What's Changed

Custom Parent Chains

This release adds in functionality to use custom parent chains which are not supported by default. Added by @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 with the RollupCreator and TokenBridgeCreator contract addresses filled in:

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

Other

  • Updated createRollupFetchTransactionHash to allow fromBlock override (@spsjvc in #213)
  • Updated long-range log query handling (@chrstph-dvx in #208)
    • Long-range log queries will be split into several in case the RPC has a limit (will take longer but won't fail with an error)

Full Changelog: v0.20.1...v0.21.0