Releases: OffchainLabs/nitro-contracts
Arbitrum Nitro Contracts v2.1.1
NOTICE: timeboost bid.signature should be EIP-712 signed as opposed to what is in the comment, see https://github.com/OffchainLabs/nitro-contracts/pull/193/commits/0972e25b2d0706f7e9c8cfb04e1f9e02889f92be
What's Changed
This release includes timeboost contracts. Existing contracts are not required to upgrade.
- Express lane auction contracts by @yahgwai in #214
- Add option to enable CacheManager through UpgradeExecutor by @gvladika in #231
- Update RollupCreator natspec by @gvladika in #232
- arbwasm: fix mininitgas return types by @PlasmaPower in #253
Full Changelog: v2.1.0...v2.1.1
Arbitrum Nitro Contracts v2.1.1-beta.0
What's Changed
This release includes timeboost contracts. Existing contracts are not required to upgrade.
- Express lane auction contracts by @yahgwai #214
- arbwasm: fix mininitgas return types by @PlasmaPower in #253
Full Changelog: v2.1.0...v2.1.1-beta.0
Arbitrum Nitro Contracts v3.0.0-alpha.0
Arbitrum Nitro Contracts v2.1.0
What's Changed
This release add reorg protection to the fast confirm affordance. It is a breaking change due to the additional parameter required in the fastConfirmNextNode
function. i.e.
- "fastConfirmNextNode(bytes32,bytes32)": "4a7a8010",
+ "fastConfirmNextNode(bytes32,bytes32,bytes32)": "3ed57598",
Full Changelog: v2.0.0...v2.1.0
Arbitrum Nitro Contracts v2.0.0
What's Changed
NOTICE: starting from this version, consensus-v31 or above `wasmModuleRoot` MUST be used
NOTICE: upgrading `ERC20Bridge`, `ERC20Inbox`, `ERC20Outbox` from prior version is currently not supported
NOTICE: non-18 decimal native token (on parent chain) will be rebased to 18 decimals on child chain
This release introduce Stylus, AnyTrust fast confirmation, non-18 decimal native token on parent chain, and more:
- Arbitrum Stylus by @rachel-bousfield in #170
- feat: anytrust fast confirmation by @gzeoneth in #187
- feat: normalize native token decimals by @gzeoneth in #100
- Set initial pricePerUnit by @gvladika in #117
- Properly calculate and configure validator addresses by @gvladika in #174
- feat: conditional osp by @gzeoneth in #173
- Unique Module Hashes by @rachel-bousfield in #179
- feat: CacheManager QoL by @gzeoneth in #185
- Post audit fixes for native token decimals feature by @gvladika in #102
- Specify address when caching Stylus program by @PlasmaPower in #194
- Upgradeable cache manager by @yahgwai in #191
- Fix cache manager by @gvladika in #200
New Contributors
- @tsahee made their first contribution in #184
- @joshuacolvin0 made their first contribution in #190
- @Jason-W123 made their first contribution in #167
Full Changelog: v1.2.1...v2.0.0
Arbitrum Nitro Contracts v2.0.0-beta.1
Release candidate for v2.0.0 (Stylus) nitro-contracts
What's Changed
- Post audit fixes for native token decimals feature by @gvladika in #102
- Add script to deploy cache manager in testnode by @gvladika in #192
- Specify address when caching Stylus program by @PlasmaPower in #194
- Upgradeable cache manager by @yahgwai in #191
- Fix link to license by @joshuacolvin0 in #190
- fix: comment for excess fee refund address by @Jason-W123 in #167
- Add fund withdrawal e2e test to CI by @gvladika in #183
- Helper contract for cross-chain deployment of deterministic factories by @gvladika in #105
- Fix cache manager by @gvladika in #200
- Add 6-decimals fee token chain to CI by @gvladika in #201
- feat: normalize native token decimals by @gzeoneth in #100
- Set initial pricePerUnit by @gvladika in #117
- feat: anytrust fast confirmation by @gzeoneth in #187
- chore: slither and yarn audit review by @gzeoneth in #203
- ci: use sha instead of head ref to support push and pull by @gzeoneth in #205
Full Changelog: v2.0.0-beta.0...v2.0.0-beta.1
Arbitrum Nitro Contracts v2.0.0-beta.0
What's Changed
- Add unit test for conditional OSP by @gvladika in #175
- feat: conditional osp by @gzeoneth in #173
- Unique Module Hashes by @rachel-bousfield in #179
- fix: yul remapping issue by @gzeoneth in #182
- Arbitrum Stylus by @rachel-bousfield in #170
- Add e2e tests to CI by @gvladika in #165
- feat: CacheManager QoL by @gzeoneth in #185
- MultiCallTest.sol: a non-standard contract for stylus compatibility test by @tsahee in #184
- Bump Slither action by @gvladika in #186
- test: improve outbox tests by @gzeoneth in #188
Full Changelog: v1.3.0-beta.0...v2.0.0-beta.0
Arbitrum Nitro Contracts v1.3.0-beta.0
What's Changed
- refactor: move machine hash logic to osp by @gzeoneth in #172
- add audit ci; update / allowlist dependencies; update waffle tests for v4 [v2] by @DZGoldman in #144
- Add contract to test pending block's time and number advance by @ganeshvanahalli in #133
- fix: audit ci by @gzeoneth in #152
- update yarn audit: OZ by @DZGoldman in #157
- Add Slither to CI by @gvladika in #148
- Add function to test if arbBlockHash on pending block returns latest by @ganeshvanahalli in #159
- Add script for deploying rollups to local test node by @gvladika in #161
- Properly calculate and configure validator addresses by @gvladika in #174
Full Changelog: v1.2.1...v1.3.0-beta.0
Arbitrum Nitro Contracts v1.2.1
What's Changed
This patch release revert a change in the function signature of certain privileged or deployment methods.
Full Changelog: v1.2.0...v1.2.1
Arbitrum Nitro Contracts v1.2.0
What's Changed
The version add 4844 support to the SequencerInbox and OneStepProof contracts, and is the version used in ArbOS 20 “Atlas” upgrade AIP. When upgrading from a version before 1.2.0, SequencerInbox.postUpgradeInit
MUST be called with the upgradeTo call due to a storage change. ChallengeManager.postUpgradeInit
is also required to set the new osp.
For custom fee token AnyTrust Orbit chains, this release also removed the batch posting report from parent chain upon batch posting so the L1GasPriceEstimate can stay close to 0.
A new Batch Poster Manager affordance in added to the SequencerInbox, along with some smaller improvements:
- feat: add sha256 preimage support to osp by @gzeoneth in #90
- Fix rollup owner address in NotOwner() emitted event in sequencerInbox by @anodar in #98
- Added some basic seq inbox foundry tests by @yahgwai in #95
- Add WAVM KZG preimage proof by @PlasmaPower in #104
- Include blob cost in extraGas field of batch posting reports by @PlasmaPower in #114
- Blob data gas refunds by @yahgwai in #111
- Add safety checks to Reader4844.yul by @PlasmaPower in #115
- Added postupgradeinit for the challenge manager by @yahgwai in #116
- Use 0x50 as the header byte for 4844 batches by @PlasmaPower in #118
- Support zero basefee for gas estimation by @PlasmaPower in #119
- misc: spending report logic and interface by @gzeoneth in #121
- feat: 4844 implementation by @gzeoneth in #109
- Do not send batch poster reports in fee token based chains by @gvladika in #108
- Add a batch poster manager for the sequencer inbox by @yahgwai in #74
- Missing custom fee token arg in 4844 tests by @yahgwai in #124
- Add ArbOS precompile method to get scheduled upgrade by @PlasmaPower in #126
- Add missing getters for L1 pricing parameters to ArbGasInfo by @PlasmaPower in #125
- chore: remove sol2uml by @gzeoneth in #134
- fix: format and lint warnings by @gzeoneth in #137
- Add reader4844 to deployment script by @gvladika in #141
- Set proper params for SequencerInbox by @gvladika in #143
- chore: deployment helper by @gzeoneth in #140
Full Changelog: v1.1.1...v1.2.0