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 https://github.com/OffchainLabs/arbitrum-sdk/pull/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 https://github.com/OffchainLabs/arbitrum-sdk/pull/381, https://github.com/OffchainLabs/arbitrum-sdk/pull/386)
* Updated `getOutboxProof` to use `NodeInterface.l2BlockRangeForL1` if available (brtkx in https://github.com/OffchainLabs/arbitrum-sdk/pull/404)
* Should make looking up proofs significantly faster
Misc
* Added support for Node.js v20 (douglance in https://github.com/OffchainLabs/arbitrum-sdk/pull/370)
* Fixed issue with token bridge deployment script (ImJeremyHe in https://github.com/OffchainLabs/arbitrum-sdk/pull/374)
* Updated network addresses to checksum addresses (Jason-W123 in https://github.com/OffchainLabs/arbitrum-sdk/pull/382)
* Updated docs for running the Nitro testnode (dewanshparashar in https://github.com/OffchainLabs/arbitrum-sdk/pull/383)
New Contributors
* ImJeremyHe made their first contribution in https://github.com/OffchainLabs/arbitrum-sdk/pull/374
* Jason-W123 made their first contribution in https://github.com/OffchainLabs/arbitrum-sdk/pull/382
**Full Changelog**: https://github.com/OffchainLabs/arbitrum-sdk/compare/v3.1.13...v3.2.0