Skip to content

v0.24.0

Choose a tag to compare

@spsjvc spsjvc released this 13 Aug 15:53
· 5 commits to main since this release
2935743

Summary

RollupCreator Multi-Version Support

Previously, support for Nitro contracts v2.1 and v3.1 (which use BoLD) was split across versions v0.22.* and v0.23.* of the SDK, respectively. This release simplifies things by adding support for both versions in a single build.

A couple of utilities now accept an optional parameter called rollupCreatorVersion (accepted values are v2.1 and v3.1 with latest being the default), and have smarter types that reflect the version chosen:

  • createRollup
  • createRollupPrepareTransactionRequest
  • createRollupPrepareDeploymentParamsConfig
  • createRollupPrepareDeploymentParamsConfigDefaults
  • createRollupGetRetryablesFees
  • createRollupGetCallValue
  • createRollupEncodeFunctionData
  • createRollupEnoughCustomFeeTokenAllowance
  • createRollupPrepareCustomFeeTokenApprovalTransactionRequest
  • getRollupCreatorAddress

This change is fully backwards compatible. If you're coming from v0.23.*, no changes to your code are required. If you're coming from v0.22.*, the changes required are minimal, with you only having to explicitly provide v2.1 as the version to be used:

+ const rollupCreatorVersion = 'v2.1' as const;

  createRollupPrepareTransactionRequest({
    params: {
      config: createRollupPrepareDeploymentParamsConfig(
        publicClient,
        { chainId, owner },
+       rollupCreatorVersion,
      ),
      batchPosters,
      validators,
    },
    account: deployer.address, 
    publicClient,
+   rollupCreatorVersion,
  }),

ArbOS 40

ArbOS 40 is now the default for new deployments, both using v2.1 and v3.1.

ArbOS Upgrade Scheduling

Added the buildScheduleArbOSUpgrade action for easier of ArbOS upgrade scheduling.

What's Changed

  • feat: add action for scheduling ArbOS upgrades by @spsjvc in #479
  • refactor: add dedicated v3.1 deployment params files by @spsjvc in #498
  • feat: add dedicated v2.1 deployment params files by @spsjvc in #499
  • feat: add versioning to deployment params config by @spsjvc in #500
  • feat: update createRollupGetRetryablesFees versioning by @spsjvc in #501
  • feat: update createRollupEncodeFunctionData versioning by @spsjvc in #502
  • feat: add versioning to createRollup by @spsjvc in #503
  • refactor: clean up RollupCreator versioning types by @spsjvc in #504
  • feat: default to ArbOS 40 by @spsjvc in #505

Other

  • build: bump vitest from 3.0.9 to 3.2.4 by @spsjvc in #497
  • test: fix async expect calls in unit tests by @spsjvc in #511
  • chore: update audit-ci.jsonc by @spsjvc in #520

Full Changelog: v0.23.5...v0.24.0