Releases: ethereum-optimism/optimism
op-node, op-batcher, op-proposer v1.4.3
❗ This is a strongly recommended update of op-node
. It brings back an important receipts validation check to the op-node, which was disabled since December '23 when the trustrpc
option was set to true
. There have been numerous reports of L1 rpc endpoints returning incomplete receipt lists, which could lead to localized chain splits without receipts validation. With this release, trustrpc
can again safely be set to true
.
Also improves some logging in the transaction manager (used by op-batcher & op-proposer).
Partial Changelog
Affecting op-batcher & op-proposer
- feat(op-proposer):
DisputeGameFactory
support by @clabby in #8689 - txmgr,op-batcher: Improve logging & metrics by @sebastianst in #8766
- txmgr: Add min basefee and tip cap parameters to enforce fee minima by @sebastianst in #8799
- fix(op-proposer): Handle context closing on error by @clabby in #8822
- op-service/txmgr: Fix tx logging by @sebastianst in #8875
Affecting op-node
- op-service/sources: Always validate receipts when fetching them by @sebastianst in #8861
- add new UpdateType & fields to L1 system config required for the Ecotone upgrade by @roberto-bayardo in #8723
- handle the new Ecotone system config update event log type by @roberto-bayardo in #8785
Full Monorepo Changelog: v1.4.2...op-batcher/v1.4.3
🚢 Docker Images
https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node:v1.4.3
https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-batcher:v1.4.3
https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-proposer:v1.4.3
Release op-batcher & op-proposer v1.4.2
⬆️ This is a recommended release for the op-batcher & the op-proposer.
It switches the compressor type to shadow by default on the batcher, adds an optional active sequencer follow mode on the batcher & proposer, & includes several bugfixes to the transaction manger.
Partial Changelog
- Batch validation test refactoring by @ImTei in #7953
- Fix batcher panic on invalid configuration by @mdehoog in #7975
- Span Batch Hard Fork Activation Rule Update by @pcw109550 in #7813
- op-service: cliapp lifecycle test fix, prevent race nil-ptr on app state-access by @protolambda in #8077
- op-proposer: Fix err check location in test by @trianglesphere in #8322
- op-batcher: Move config test from op-e2e to unit tests by @trianglesphere in #8463
- make shadow compressor the default compressor type by @roberto-bayardo in #8545
- txmgr: Fix gas estimation call by @sebastianst in #8578
- fix swapped fee/tip parameters to estimateGas by @roberto-bayardo in #8572
- op-batcher: adjust error handling on pending-channels after close by @protolambda in #7683
- feat(proxyd): impl proxyd_healthz method by @felipe-op in #8658
- op-node,batcher,proposer,challenger: Add env var flag tests by @trianglesphere in #8596
- op-service, op-batcher, op-proposer: Active sequencer follow mode by @EvanJRichard in #8585
- op-service/txmgr: Add threshold to gas price increase limiter by @sebastianst in #8699
- op-service/txmgr: Bump fees by at least 1 wei by @sebastianst in #8713
- [txmgr] Ensure that fee is increased by at least 10% by @mdehoog in #8747
Full Changelog: op-batcher/v1.3.0...op-batcher/v1.4.2
Docker Images
https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-batcher:v1.4.2
https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-proposer:v1.4.2
Release op-node v1.4.2
✨ This is a minor release and upgrading is optional for the op-node.
This release contains two breaking changes:
- If trustrpc is set to true, the op-node will not validate receipts. This will be changed back to the old behavior in v1.4.3
- The
RPC Alt Sync
method is removed. There is a P2P based mechanism which is enabled by default.
What's Changed
- Revert "Add
PrefetchingEthClient
, which builds a cache of ethclient data for callers." by @sebastianst in #8557 - op-node: Activate Canyon on Mainent & Delta on testnets by @trianglesphere in #8569
- op-node: Fix race condition closing gossip handler. by @ajsutton in #8576
- op-node: Disable CL P2P Sync when EL Sync is enabled by @trianglesphere in #8592
- op-node: Remove alt RPC sync by @trianglesphere in #8593
- op-node,batcher,proposer,challenger: Add env var flag tests by @trianglesphere in #8596
- Update TestUniqueFlags to check for uniqueness in aliases by @trianglesphere in #8661
- op-node: Disable xor requirement on Network and rollup.config flags by @trianglesphere in #8727
Full Changelog: op-node/v1.4.0...op-node/v1.4.2
Docker Images
https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node:v1.4.2
Release op-node & op-batcher v1.4.0
❗ This is a mandatory release for Optimism Sepolia & Goerli and upgrading is required before 2023-12-20. This includes all features required for the Delta Network Upgade which will be activating at 1703116800 Thu Dec 21 00:00:00 UTC 2023 for Goerli & at 1703203200 Fri Dec 22 00:00:00 UTC 2023 for Sepolia.
This version also includes mainnet Canyon as in https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.3.2. This release is ready to run on mainnet.
Important Changes
- Span Batches is added to this version of op-node & op-batcher. It will automatically activate on the op-node with the Delta network upgrade timestamp. It can be activated on the batcher by setting the
--batch-type
flag to1
. - The
--engine-sync
flag is being deprecated. - The op-node now supports dencun headers
Partial Changelog
- Fix batcher panic on invalid configuration by @mdehoog in #7975
- op-node: static-peers list local-peer check and flag description update by @protolambda in #8014
- Span Batch Hard Fork Activation Rule Update by @pcw109550 in #7813
- Span batch atomicity by @ImTei in #7867
- op-node: Fixup PGN Sepolia Rollup Config by @trianglesphere in #8065
- op-node: Check withdrawals hash in P2P validation by @trianglesphere in #8035
- Optimize span batch e2e test by @ImTei in #8047
- Update Span batch specs to allow overlapping batches by @ImTei in #7259
- specs: 1559 configuration by @trianglesphere in #8090
- specs: Clarify withdrawals specs better by @trianglesphere in #8088
- op-challenger: Introduce TraceAccessor by @ajsutton in #8043
- Dencun header changes by @EvanJRichard in #7993
- op-service: Add unit tests for verifying receipts by @ajsutton in #8066
- op-service: Ensure block body validation tests fail for the expected reason by @ajsutton in #8064
- op-node: flexible L2 genesis generation by @tynes in #8102
- op-service: Remove attributes from warn-log in EngineClient by @sebastianst in #8073
- op-node: Add command to dump rollup configs by @mslipper in #8063
- op-service: Fix fetcher for proxyd by @trianglesphere in #8182
- op-proposer: service lifecycle cleanup by @joohhnnn in #8040
- op-node/p2p: Fix deleteRecord to return nil if store.Delete succeeds by @sebastianst in #8211
- Rename span batch hard fork to delta hard fork by @pcw109550 in #8314
- op-proposer: Fix err check location in test by @trianglesphere in #8322
- op-node: specify Delta upgrade version, update superchain-registry, bump protocol-support to Delta pre-release by @protolambda in #8354
- op-node: Add syncmode flag and remove old snap sync flag by @trianglesphere in #8333
- op-node: Remove Panic while Span Batch Derivation by @pcw109550 in #8385
- Add span batch logging & metrics by @ImTei in #8412
- op-service: Refactor
EthClient
withReceiptsProvider
abstraction by @sebastianst in #8130 - Add config flag to set max number of concurrent L1 RPC requests. by @EvanJRichard in #8431
- op-node: Log and set metrics after batch is derived without error by @ImTei in #8440
- Several typos are fixed by @sukey2008 in #8445
- op-batcher: Move config test from op-e2e to unit tests by @trianglesphere in #8463
- Add Delta override flag by @ImTei in #8406
- op-node: Span batch Unprotected Tx Handling + Logic Error Fix by @pcw109550 in #8458
New Contributors
- @kafeikui made their first contribution in #8011
- @Aryan9592 made their first contribution in #8024
- @EvanJRichard made their first contribution in #7993
- @kaliubuntu0206 made their first contribution in #8039
- @joseandro made their first contribution in #8136
- @xenoliss made their first contribution in #8288
- @oxbau made their first contribution in #8398
- @kylemasterd1 made their first contribution in #8405
- @Pan-chao made their first contribution in #8475
Full Changelog: op-node/v1.3.2...op-node/v1.4.0
Release op-node v1.3.2
❗ This is a mandatory release for Optimism Mainnet and upgrading is required before 2024-01-11.
This release activates Canyon on op-mainnet
, base-mainnet
, pgn-mainnet
, and zora-mainnet
. It will activate at Thu Jan 11 17:00:01 UTC 2024 (unix timestamp: 1704992401)
Full Changelog: op-node/v1.3.1...op-node/v1.3.2
Release op-node v1.3.1
This is a recommended release for Goerli & Sepolia nodes. This is a required release for PGN Sepolia.
This contains two fixes since op-node v1.3.1
- Withdrawals are disallowed in P2P blocks.
- This contains a fix for the rollup config for pgn-sepolia when using the --network flag
See https://github.com/ethereum-optimism/optimism/releases/tag/op-node%2Fv1.3.0 for more information on the changes since the 1.2 series of releases.
Docker Image: https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node:v1.3.1
Release op-node v1.3.0
This is the Canyon ready release of op-node. See #7452 for the contents of Canyon. This release contains the Canyon activation timestamp for Goerli & Sepolia based chains. Canyon will activate at 1699981200 which is Tue Nov 14 17:00:00 UTC 2023 on the following networks: op-goerli, op-sepolia, base-goerli, base-sepolia, pgn-sepolia, & zora-sepolia.
❗ This is a mandatory release for op-goerli, op-sepolia, base-goerli, base-sepolia, pgn-sepolia, & zora-sepolia and upgrading is required before Nov 14, 2023. ⬆️ This is a recommended release for other networks.
op-node changes
- Added an env var for the
--override.canyon
flag - All networks in the experimental superchain registry are allowed to be picked by default without setting the
--beta.extra-networks
flag - Miscellaneous bug fixes
Partial Changelog
- fix: pass in env var prefix for p2p flags by @anikaraghu in #7548
- Migrate from V1 to V2 APIs by @danyalprout in #7623
- op-node: Channel ordering fix for canyon by @trianglesphere in #7253
- bugfix(op-node): syncClient incorrectly removes peer issue by @welkin22 in #7348
- op-node: on fetching error, accurately report the L1 block that it fails at by @protolambda in #7755
- Canyon: Blocks V2 P2P & Testing by @danyalprout in #7707
- op-service,op-node,op-program: default to new standard rpc-kind with eth_getBlockReceipts support by @protolambda in #7768
- op-service: withdrawals typing fixes by @protolambda in #7767
- fix(op-node): git commit print by @shaspitz in #7783
- op-service: Extract shared method for formatting versions by @ajsutton in #7805
- specs: protocol-version comparison prerelease edge-case note by @protolambda in #7659
- Enable Canyon in the devnet by @trianglesphere in #7830
- fix: race condition updating last updated scorebook timestamp by @qu0b in #7838
- op-node: Pull in Canyon Time from superchain registry by @trianglesphere in #7872
- Missing envvars setting for --override.canyon flag by @mdehoog in #7891
- op-node: enable all network options by default by @protolambda in #7856
- op-node: Enable Canyon on Goerli & Sepolia via superchain registry by @trianglesphere in #7946
New Contributors
- @anikaraghu made their first contribution in #7548
- @shuoer86 made their first contribution in #7593
- @vuittont60 made their first contribution in #7608
- @danyalprout made their first contribution in #7623
- @brycealan made their first contribution in #7657
- @pegahcarter made their first contribution in #7686
- @GoodDaisy made their first contribution in #7689
- @welkin22 made their first contribution in #7348
- @shaspitz made their first contribution in #7783
- @eyqs made their first contribution in #7792
- @qu0b made their first contribution in #7838
- @lukasrosario made their first contribution in #7898
- @twoshark made their first contribution in #7874
Full Changelog: v1.2.0...op-node/v1.3.0
Docker Images
https://us-docker.pkg.dev/oplabs-tools-artifacts/images/op-node:v1.3.0
Release op-batcher & op-proposer 1.3.0
✨ This is a minor release and upgrading is optional for the op-batcher & op-proposer. The minor version bump is because op-node had a minor version bump with Canyon. No op-batcher or op-proposer upgrade is required with Canyon.
Short Changelog
- Bugfixes in the transaction manager for the batcher & proposer
- The proposer has an optional Admin RPC namespace now
What's Changed
- op-service: http-server util, Close explicitly to wait for resource cleanup before shutdown by @protolambda in #7592
- op-proposer: Enable default Admin RPC by @trianglesphere in #7661
- txmgr: don't wait the resubmission timeout for gas increases for underpriced errors by @mdehoog in #7472
- op-service,op-node,op-program: default to new standard rpc-kind with eth_getBlockReceipts support by @protolambda in #7768
- [txmgr] Avoid incrementing the nonce if tx signing fails by @mdehoog in #7782
- op-service: Extract shared method for formatting versions by @ajsutton in #7805
- feat(op-service): new http latency metric by @felipe-op in #7852
- Span batch derivation [by Test In Prod, rebased on develop, see #7289] by @protolambda in #7621
- op-batcher: Span Batch Submission by @ImTei in #7290
- op-batcher: fix test RNG data flake by @protolambda in #7944
New Contributors
- @anikaraghu made their first contribution in #7548
- @shuoer86 made their first contribution in #7593
- @vuittont60 made their first contribution in #7608
- @brycealan made their first contribution in #7657
- @pegahcarter made their first contribution in #7686
- @GoodDaisy made their first contribution in #7689
- @welkin22 made their first contribution in #7348
- @shaspitz made their first contribution in #7783
- @eyqs made their first contribution in #7792
- @qu0b made their first contribution in #7838
- @lukasrosario made their first contribution in #7898
- @twoshark made their first contribution in #7874
Full Changelog: op-batcher/v1.2.0...op-batcher/v1.3.0
🚢 Docker Images:
Release op-node, op-batcher, op-proposer v1.2.0
✨ This is a minor release and upgrading is optional.
General Changes
This release primarily updates dependencies for minor improvements and fixes.
What's Changed
- op-node: RPC Limit client does not respect context by @jyellick in #7525
- op-node: Cleanup shutdown process and support idle after halt by @protolambda in #7538
- op-node: Synchronize node halted bit by @Inphi in #7560
New Contributors
- @joohhnnn made their first contribution in #7329
- @dhanusaputra made their first contribution in #6895
- @boyuan-chen made their first contribution in #7346
- @upnodedev made their first contribution in #7443
- @AKABABA-ETH made their first contribution in #7479
- @Chomtana made their first contribution in #7449
- @thanks173 made their first contribution in #7518
- @seungjulee made their first contribution in #7482
- @tarunkhasnavis made their first contribution in #7486
Full Changelog: op-node/v1.1.6...op-node/v1.2.0
Docker Images
op-contracts v1.1.0
This is the official release of the ProtocolVersions.sol
contract
Modifications to any other contracts are not included in this release. See op-contracts/v1.0.0
for the release of all other contracts. The set of contracts released by this version is:
- ProtocolVersions: 1.0.0
Therefore, a chain running this version of the L1 contracts would have the following versions:
- AddressManager: Latest (this has no version)
- L1CrossDomainMessenger: 1.4.0
- L1ERC721Bridge: 1.1.1
- L1StandardBridge: 1.1.0
- L2OutputOracle: 1.3.0
- OptimismMintableERC20Factory: 1.1.0
- OptimismPortal: 1.6.0
- SystemConfig: 1.3.0
- ProtocolVersions: 1.0.0