Releases: OffchainLabs/nitro-contracts
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
Arbitrum Nitro Contracts v1.1.1
What's Changed
No contract change in this release, sol2uml dependency is removed as we switch to foundry storage check.
- Foundry storage check by @gvladika in #88
- chore: new storage check by @gzeoneth in #92
- Update readme and license for AEP by @hkalodner in #113
- chore: remove sol2uml by @gzeoneth #134
Full Changelog: v1.1.0...v1.1.1
Arbitrum Nitro Contracts v1.1.0
What's Changed
This release add Orbit with custom fee token support.
A minor storage change in the Outbox where L2ToL1Context
now contains an additional field packed into the struct. As a result, Outbox.postUpgradeInit
MUST be called during the upgrade from prior 1.0.x version to 1.1.0 to set the new default context.
The deployment of Inbox/ERC20Inbox and SequencerInbox now requires and additional constructor argument on the template maxDataSize
, which should be set to 117964
when deployed on L1. RollupCreator.createRollup
now takes a single RollupDeploymentParams struct for deployment parameters.
Here is the list of changes:
- Update RollupEventInbox.sol by @fredlacs in #21
- Include L1 gas charges in L3 batch posting reports by @PlasmaPower in #26
- Include the current data cost in the init message by @PlasmaPower in #27
- Track L1 gas separately from basefee in batch posting report by @PlasmaPower in #28
- Add additional redeem checks to mock Simple.sol by @PlasmaPower in #30
- adding deployment script by @GreatSoshiant in #16
- updating rollup created event by @GreatSoshiant in #34
- fix: remove uniswapCreateRetryableTicket by @gzeoneth in #35
- feat: setting validators and batch poster in rollup creation by @GreatSoshiant in #37
- check for empty validator set and zero address for batch poster by @GreatSoshiant in #39
- Use single RollupCreator for both Eth and Erc20 based rollups by @gvladika in #40
- Use L2 block number for keyset info if applicable by @PlasmaPower in #47
- Add getL1RewardRate and getL1RewardRecipient methods to ArbGasInfo interface by @ganeshvanahalli in #44
- Add script for deploying ERC20 rollups by @gvladika in #43
- add rectifyChainOwner function and ChainOwnerRectified event to ArbOwnerPublic by @ganeshvanahalli in #46
- Add upgrade executor to rollup creation flow by @gvladika in #49
- Deploy create2 factories as part of rollup creation by @gvladika in #59
- add getL2BlockRangeForL1 function to NodeInterface by @ganeshvanahalli in #62
- Add gas refunder contract to nitro contracts by @anodar in #66
- Add functions to read and write brotli compression level for fast compression by @ganeshvanahalli in #63
- Add sha256 preimage support by @PlasmaPower in #50
- chore: merge main into develop by @gzeoneth in #61
- feat: configurable maxDataSize by @gzeoneth in #58
- revert: "Add sha256 preimage support" by @gzeoneth in #69
- fix: additional params to rollup creator salt by @gzeoneth in #70
- Add ERC20Bridge balance check by @gvladika in #73
- Hardhat config update by @gvladika in #76
- Fix the BridgeCreator.sol contract by @gvladika in #77
- chore: release config by @gzeoneth in #71
- Add support for custom token fee - ERC20 based rollups by @gvladika in #19
- Fix verification of contracts after deployment by @gvladika in #79
- Update salt used for creating new rollups by @gvladika in #80
- feat: outbox postUpgradeInit by @gzeoneth in #82
- feat: allow rollup update by @gzeoneth in #83
Full Changelog: v1.0.3-beta.3...v1.1.0
Arbitrum Nitro Contracts v1.1.0-beta.2
What's Changed
Full Changelog: v1.1.0-beta.1...v1.1.0-beta.2
Arbitrum Nitro Contracts v1.1.0-beta.1
What's Changed
- Fix verification of contracts after deployment by @gvladika in #79
- Update salt used for creating new rollups by @gvladika in #80
Full Changelog: v1.1.0-beta.0...v1.1.0-beta.1
Arbitrum Nitro Contracts v1.1.0-beta.0
What's Changed
This release add Orbit support, custom token rollup support, among other changes:
- add rectifyChainOwner function and ChainOwnerRectified event to ArbOwnerPublic by @ganeshvanahalli in #46
- Add upgrade executor to rollup creation flow by @gvladika in #49
- Bump Hardhat version by @gvladika in #53
- Deploy create2 factories as part of rollup creation by @gvladika in #59
- add getL2BlockRangeForL1 function to NodeInterface by @ganeshvanahalli in #62
- Add gas refunder contract to nitro contracts by @anodar in #66
- Add functions to read and write brotli compression level for fast compression by @ganeshvanahalli in #63
- Add sha256 preimage support by @PlasmaPower in #50
- chore: merge main into develop by @gzeoneth in #61
- feat: configurable maxDataSize by @gzeoneth in #58
- revert: "Add sha256 preimage support" by @gzeoneth in #69
- fix: additional params to rollup creator salt by @gzeoneth in #70
- Add ERC20Bridge balance check by @gvladika in #73
- Hardhat config update by @gvladika in #76
- Fix the BridgeCreator.sol contract by @gvladika in #77
- chore: release config by @gzeoneth in #71
- Add support for custom token fee - ERC20 based rollups by @gvladika in #19
Full Changelog: v1.1.0-alpha.7...v1.1.0-beta.0
Arbitrum Nitro Contracts v1.0.3
What's Changed
Full Changelog: v1.0.3-beta.2...v1.0.3-beta.3
Arbitrum Nitro Contracts v1.0.3-beta.2
What's Changed
- Store rollup node ArbSys block numbers if on an Arbitrum host chain by @PlasmaPower in #6
- Document that gasEstimateL1Component doesn't pad its estimate by @PlasmaPower in #4
- Fix ABI encoding in sendWithdrawEthToFork by @PlasmaPower in #9
- Add a CI step to check the PR's base branch by @PlasmaPower in #7
- add serialized chain config to init message data by @magicxyyz in #8
- Changes from the nitro repo contracts-develop branch by @PlasmaPower in #3
- add getBlockDifficulty to mock simple by @amsanghi in #12
- Use create2 to deploy the RollupProxy and predict its address by @PlasmaPower in #5
- fix: resolve cyclic dependencies by @gzeoneth in #11
- update dirname in readme by @DZGoldman in #14
- chore(ISequencerInbox): Add Missing views by @shotaronowhere in #15
Full Changelog: v1.0.2...v1.0.3-beta.0