Skip to content

v3.2.0

Compare
Choose a tag to compare
@spsjvc spsjvc released this 05 Feb 10:55
· 167 commits to main since this release
48f5723

What's Changed

This release introduces support for L3s, along with a couple other useful features and improvements. 🎉

L3 Support

Added by @brtkx, @douglance and @spsjvc in #379.

AssetBridger, InboxTools

  • Updated type of l1Network property from L1Network to L1Network | L2Network, as the referenced parent chain can be an L2Network in case of an L3

Constants

  • Added ARB_MINIMUM_BLOCK_TIME_IN_SECONDS which represents the minimum block time for an Arbitrum chain

L2Network

  • Added blockTime: number to make more consistent with L1Network
    • Represents the minimum block time for the chain
    • When registering a custom Arbitrum chain, use the ARB_MINIMUM_BLOCK_TIME_IN_SECONDS constant
  • Added partnerChainIDs: number[] to make more consistent with L1Network
    • Represents the ids of the children chains (chains that settle to this chain)
    • When registering a custom L3 Arbitrum chain, you can leave this empty
    • When registering a custom L2 Arbitrum chain, you can leave this empty, unless there's a custom L3 that settles to this chain

Registering a custom L3 works the same way as registering a custom L2:

const myL3Network: L2Network = { ... }
addCustomNetwork({ customL2Network: myL3Network })

L2ToL1Message

  • Updated waitUntilReadyToExecute to return status instead of void (@DZGoldman in #381, #386)
  • Updated getOutboxProof to use NodeInterface.l2BlockRangeForL1 if available (@brtkx in #404)
    • Should make looking up proofs significantly faster

Misc

New Contributors

Full Changelog: v3.1.13...v3.2.0