Skip to content

Releases: OffchainLabs/nitro

Consensus V11.1

23 Jan 01:42
consensus-v11.1
01e30e7
Compare
Choose a tag to compare
Consensus V11.1 Pre-release
Pre-release

This release signifies a consensus version, and is not necessarily a good version to run a node on

This release is backwards compatible and not required except for use in custom chains that set a custom maximum smart contract code size limit.

WAVM Module Root: 0x68e4fe5023f792d4ef584796c84d710303a5e12ea02d6e37e2b5e9c4332507c4

This backports the following change from consensus v10.3 to consensus v11:

Full Changelog: consensus-v11...consensus-v11.1

Arbitrum Nitro v2.2.2

27 Dec 20:20
v2.2.2
8f33fea
Compare
Choose a tag to compare

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.2-8f33fea

What's Changed

This release fixes broken NodeInterface precompile methods, and a sequencer panic on shutdown if the sequencer coordinator is enabled but a backup sequencer isn't available.

User-facing Improvements

  • Fix broken NodeInterface methods: #2059

Internal Highlights

Full Changelog: v2.2.1...v2.2.2

Arbitrum Nitro v2.2.1

24 Dec 19:44
v2.2.1
6932d66
Compare
Choose a tag to compare

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.1-6932d66

What's Changed

This release fixes a database compaction issue affecting archive nodes, and fixes a memory leak in the relay.

User-facing Improvements

  • Always broadcast feed, even when the node isn't the sequencer: #2045
    • Fix Broadcaster BroadcastMessages sequence numbers: #2054

Internal Highlights

  • Fix memory leak in relay: #2052
  • Downgrade goleveldb fixing database compaction: #2055
  • Increase TxStreamer feed queue size: #2040
  • Fix race conditions in feed backlog.reset(): #2053
  • Only lock redis in the batch poster when posting the batch: #2044
  • Update failed to create machine locator error to a warning: #2042
  • Fix enabling pprof on the relay: #2051
  • Add a metric for steps taken in arbitrator validation: #2033

Full Changelog: v2.2.0...v2.2.1

v2.2.1-beta.3

24 Dec 18:54
v2.2.1-beta.3
8f55e38
Compare
Choose a tag to compare
v2.2.1-beta.3 Pre-release
Pre-release

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.1-beta.3-8f55e38

What's Changed

This release fixes an issue serving the feed compared to the last beta release.

Internal highlights

  • Fix Broadcaster BroadcastMessages sequence numbers: #2054
  • Fix race conditions in backlog.reset(): #2053

Full Changelog: v2.2.1-beta.2...v2.2.1-beta.3

v2.2.1-beta.2

23 Dec 22:54
v2.2.1-beta.2
63bcedc
Compare
Choose a tag to compare
v2.2.1-beta.2 Pre-release
Pre-release

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.1-beta.2-63bcedc

What's Changed

This release fixes a memory leak in the relay compared to the last beta release.

Internal highlights

  • Fix memory leak in relay: #2052
  • Fix enabling pprof on the relay: #2051

Full Changelog: v2.2.1-beta.1...v2.2.1-beta.2

Arbitrum Nitro v2.2.1 Beta 1

23 Dec 04:48
v2.2.1-beta.1
f546581
Compare
Choose a tag to compare
Pre-release

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.1-beta.1-f546581

What's Changed

This release improves feed reliability and batch poster reliability when using redundant batch posters.

Internal highlights

  • Only lock redis in the batch poster when posting the batch: #2044
  • Always broadcast feed, even when the node isn't the sequencer: #2045
  • Increase TxStreamer feed queue size: #2040
  • Add a metric for steps taken in arbitrator validation: #2033
  • Update failed to create machine locator error to a warning: #2042

Full Changelog: v2.2.0...v2.2.1-beta.1

Arbitrum Nitro v2.2.0

19 Dec 00:47
v2.2.0
f7dc9de
Compare
Choose a tag to compare

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.0-f7dc9de

This release will be required for the Arbitrum Sepolia testnet, and should the ArbOS 11 Arbitrum DAO vote pass, this release will be required for the Arbitrum One and Arbitrum Nova mainnets mid-January. Exact details on the timelines will be released soon.

Archive Nodes

This release has issues with database compaction on archive nodes. It's highly recommended to upgrade to v2.2.1.

ArbOS 11

This release adds support for ArbOS 11, which includes EVM Shanghai support and the PUSH0 opcode. The Arbitrum DAO forum proposal documents the full extent of the upgrade. This release will be a required upgrade for any Arbitrum networks that chose to adopt ArbOS 11.

What's Changed

This release adds support for ArbOS 11, significantly improves batch poster performance, and continues splitting the execution and consensus parts of the node.

Configuration Changes

  • The --node.caching.*, --node.forwarder.*, --node.forwarding-target, --node.parent-chain-reader.*, --node.rpc.*, --node.tx-lookup-limit, --node.sequencer.*, --node.tx-pre-checker.*, and --node.recording-database flags have all been moved from --node.* to --execution.*. E.g. --node.caching.archive is now --execution.caching.archive.
  • If you were running a sequencer with --node.sequencer.enable, you must now specify both --execution.sequencer.enable and --node.sequencer.
  • The --node.archive flag was deprecated for a while as it was being moved, and it has now been removed in favor of --execution.caching.archive.
  • If you're running your node outside of docker and haven't downloaded the WASM machine files necessary for validation, you may need to add --validation.wasm.enable-wasmroots-check=false to your config.

User-facing Improvements

  • Finalize ArbOS 11 in the node software: #2008
  • Add --dev flag to easily start up a local L2-only dev chain: #1914
  • Configuration changes for Orbit chains:
    • Change default sequencer MaxBlockSpeed to 250ms: #1927
    • Increase the default BatchPosterConfig MaxSize for DAS chains to ~1MB: #1982
  • Add support for consensus v10.3 to Dockerfile: #1971
  • Implement external signer for dataposter: #1919, #1923, and #1924
  • Create access lists for batchposter transactions to reduce storage access cost: #1905 and #1907
  • Add secondary feed support to go relay: #1908, #1944, and #1958
  • Add backup transaction forwarding URLs: #1975 and #1985

Internal Highlights

  • Refactor the sequencer feed relay backlog system: #1930
    • Add back in metric for latest confirmed sequence number: #2022
  • Merge in upstream go-ethereum v1.12.2: #1973
  • Execution service 3: initial execution-node, interface+implementation: #1537
  • Retry common RPC connection errors by default: #2013
  • Disable feed output compression by default: #2024
  • Ensure sequencer backlog is populated before any clients connect: #2025
  • Recognize batch poster backlog from the data poster: #2026
  • Increase default data poster MaxMempoolTransactions: #2023
  • Fix data poster time RLP encoding: #2014 and #2030
  • Modify fee allocation for data poster mempool txs: #2031
  • Use a moving average to determine messages per batch: #2032
  • Use normal gas estimation when possible in the batch poster: #1986
  • Check that on-chain WASM module root is compatible with node: #2006
  • Change default PrerecordedBlocks to number of CPUs * 2: #2010
    • This should significantly reduce the memory usage of the validator
  • Resolve configuration issue with datool: #1963
  • Retain new feed messages when cache is cleared: #1945
  • Cache ArbOS storage keys: #1767
  • Sequence delayed initially when starting without coordinator: #1952
  • Use new DataPoster storage encoding by default: #1954
  • Improve "execution reverted" error matching: #1955 and #2012
  • Fix retryable gas estimation when overriding gas price to zero: #1929
  • Add --log-type option for daserver to allow for JSON logging: #1925
  • Prevent double v in reported version: #1942
  • Fix typo and let potuz have a nitro PR: #1910
  • Make “error posting batch” error just a warning unless it happens continuously: #1965
  • Fix the check for duplicate sequencerBatches in inbox_reader: #1970
  • Don't re-request parent block if same block as previous block: #1977
  • Rpcclient: retry delay: #1957
  • Bump fastcache pin to latest master: #1984 (pulls in OffchainLabs/fastcache#1)
  • Fix FloatToBig overflowing on values greater than an int64: #2011
  • Add argv[0]="js" to Go in jit runtime: #2007
  • Fix missing ArgLogLimit in L1 RPC client: #2034

Full Changelog: https://github.com/OffchainLabs/nitro/compare/v2.1.3..v2.2.0

Arbitrum Nitro v2.2.0 Release Candidate 2

18 Dec 17:46
v2.2.0-rc.2
06269e0
Compare
Choose a tag to compare

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.0-rc.2-06269e0

What's Changed

This release reduces error logs in the batch poster and better picks fees to post at compared to the previous release candidate.

Internal highlights

  • Modify fee allocation for data poster mempool txs: #2031
  • Use a moving average to determine messages per batch: #2032

Full Changelog: v2.2.0-rc.1...v2.2.0-rc.2

Arbitrum Nitro v2.2.0 Release Candidate 1

16 Dec 19:26
v2.2.0-rc.1
3e36ab5
Compare
Choose a tag to compare

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.0-rc.1-3e36ab5

What's Changed

This release fixes data poster compatibility with older versions compared to the previous beta release.

Internal highlights

  • Fix queued transaction time encoding: #2030

Full Changelog: v2.2.0-beta.1...v2.2.0-rc.1

Arbitrum Nitro v2.2.0 Beta 1

16 Dec 06:37
v2.2.0-beta.1
3221e11
Compare
Choose a tag to compare
Pre-release

This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.2.0-beta.1-3221e11

What's Changed

This release improves sequencer feed relay and data poster performance during periods of high data throughput compared to the last alpha release.

Internal highlights

  • Refactor the sequencer feed relay backlog system: #1930
    • Add back in metric for latest confirmed sequence number: #2022
  • Disable feed output compression by default: #2024
  • Ensure sequencer backlog is populated before any clients connect: #2025
  • Recognize batch poster backlog from the data poster: #2026
  • Increase default data poster MaxMempoolTransactions: #2023
  • Add argv[0]="js" to Go in jit runtime: #2007

Full Changelog: v2.2.0-alpha.7...v2.2.0-beta.1