Skip to content

Releases: OffchainLabs/arbitrum-orbit-sdk

v0.9.1

09 Apr 10:21
363ef10

Choose a tag to compare

What's Changed

  • Fixed an issue where the maxDataSize parameter for createRollup was incorrect for some chains (@spsjvc in #73)

Full Changelog: v0.9.0...v0.9.1

v0.9.0

28 Mar 12:07
f07c96c

Choose a tag to compare

What's Changed

We added actions for the ArbOwner, ArbOwnerPublic and ArbGasInfo precompile contracts (@GreatSoshiant, @spsjvc in #6).

You can utilize these actions by extending an existing PublicClient, for example:

// create a public client for your orbit chain
const publicClient = createPublicClient({
  chain: orbitChain,
  transport: http(),
})
  .extend(arbOwnerPublicActions)
  .extend(arbGasInfoPublicActions);

// add a chain owner through ArbOwner
const addChainOwnerTransactionRequest = await client.arbOwnerPrepareTransactionRequest({
  functionName: 'addChainOwner',
  args: [address],
  // if an upgrade executor is the chain owner, provide the address of said upgrade executor
  // if not, you can set this parameter to false
  upgradeExecutor: upgradeExecutorAddress,
  account,
});

// read the infra fee receiver through ArbOwnerPublic
const infraFeeReceiver = await client.arbOwnerReadContract({
  functionName: 'getInfraFeeAccount',
});

// read l1 base fee estimate inertia through ArbGasInfo
const l1BaseFeeEstimateInertia = await client.arbGasInfoReadContract({
  functionName: 'getL1BaseFeeEstimateInertia',
});

See more examples here and here.

Full Changelog: v0.8.3...v0.9.0

v0.8.3

20 Mar 12:02
f4cabbf

Choose a tag to compare

What's Changed

  • Fixed an issue where networks weren't properly registered before calls to the Arbitrum SDK (@chrstph-dvx in #65)

Full Changelog: v0.8.2...v0.8.3

v0.8.2

15 Mar 12:19
fc6e3c7

Choose a tag to compare

What's Changed

  • Fixed the RollupCreator address on Holesky to be v1.1.0 (@spsjvc in #64)

Full Changelog: v0.8.1...v0.8.2

v0.8.1

06 Mar 17:04
1e39d21

Choose a tag to compare

What's Changed

New Contributors

Full Changelog: v0.8.0...v0.8.1

v0.8.0

29 Feb 12:44
543482e

Choose a tag to compare

What's Changed

  • Added utilities for WETH gateway registration (@TucksonDev in #44)
  • Updated NodeConfig for Nitro v2.3.0 (@spsjvc in #58)

Internal

New Contributors

Full Changelog: v0.7.0...v0.8.0

v0.7.0

27 Feb 10:55
2186ccc

Choose a tag to compare

What's Changed

  • Added auto-generated NodeConfig type with all config parameters (@spsjvc in #38)
  • Added option to override the RollupCreator and TokenBridgeCreator factory addresses (@spsjvc in #56)
  • Removed createRollup (@spsjvc in #57)
    • You should switch to using createRollupPrepareTransactionRequest and createRollupPrepareTransactionReceipt together to achieve the same behaviour

Full Changelog: v0.6.1...v0.7.0

v0.6.1

22 Feb 12:32
27b1a41

Choose a tag to compare

What's Changed

NodeConfig

  • Set node.delayed-sequencer.finalize-distance=1 for fast deposits (@TucksonDev in #53)

Full Changelog: v0.6.0...v0.6.1

v0.6.0

14 Feb 09:44
7eaed04

Choose a tag to compare

What's Changed

ArbOS 11

All new chains will be deployed with ArbOS 11 enabled. Since ArbOS 11 only works with versions of Nitro higher than v2.2.2, the structure of the node config file is also updated to be compatible with those versions.

Create Rollup

  • Added additional sanity checks for create rollup transaction request (@spsjvc in #25)
  • Added createRollupFetchTransactionHash for fetching the create rollup tx hash from the rollup address (@TucksonDev in #30)

Create Token Bridge

This release adds various utilities for deploying the token bridge contracts, for both a chain that uses ETH as the gas token, as well as a chain that uses a custom gas token.

For the best overview of new APIs, take a look at the examples:

Misc

  • Added prepareKeyset for calculating the keyset from a set of BLS keys (@GreatSoshiant in #35)
  • Added Arbitrum One and Arbitrum Nova contracts (@spsjvc in #47, #52)
  • Added generated contract ABIs (@spsjvc in #48)
  • Added sanitizePrivateKey for sanitizing private key to utils (@spsjvc in #49)
  • Added constants (@spsjvc in #51)

Constants include useful values for creating the rollup or creating the token bridge:

export const createRollupDefaultRetryablesFees = parseEther('0.125');

export const createTokenBridgeDefaultRetryablesFees = parseEther('0.02');
export const createTokenBridgeDefaultGasLimit = 5_000_000n;

Full Changelog: v0.5.4...v0.6.0