Releases: OffchainLabs/nitro
Arbitrum Nitro v2.0.10
This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.0.10-73224e3
What's Changed
This release supports RPC queries with the "safe" and "finalized" block numbers, along with various bug fixes and improvements. The "safe" and "finalized" L2 block numbers represent the latest L2 block which has been posted to L1 and whose sequencer batch is "safe" or "finalized" respectively on L1.
User-facing Improvements
- support safe and finalized blocknumber: #1323
- Anytrust ipfs node sync: #1366
- Fix block hash in receipts in ws log subscription: #1396
- Stop the RPCs before stopping the blockchain: #1391
Internal Highlights
- Use snapshot-restore-gas-limit: #1411
- Make the trie dirty cache size configurable: #1406
- fix: add inbox gas limit validation: #1374
- revert: #1320 unsafe retryable caller: #1375
- feat: uniswap unalised crosschain message: #1379
- Improve feed broadcaster error logs and metrics: #1383
- sequence delayed messages when acquiring lock: #1358
- Wasmer 3.1: #1386
- Test node consensus: #1384
- Use new time-bounded histogram for timer metrics: #1388
- Use pointers for precompiles: #1405
- Feed client metric should be microseconds instead of nanoseconds: #1422
- Add L1 reader state to syncmap: #1420
Full Changelog: v2.0.9...v2.0.10
Arbitrum Nitro v2.0.10 Release Candidate 2
This release candidate is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.0.10-rc.2-9148773
What's Changed
This release candidate fixes an edge case of state recovery after an unclean shutdown, and fixes a delay on startup connecting to the feed.
Internal Highlights
- use snapshot-restore-gas-limit by @tsahee in #1411
- Fix inbox reader caught up tracking if already caught up by @PlasmaPower in #1416
Full Changelog: v2.0.10-rc.1...v2.0.10-rc.2
Arbitrum Nitro v2.0.10 Release Candidate 1
This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.0.10-rc.1-687c381
What's Changed
This release supports RPC queries with the "safe" and "finalized" block numbers, along with various bug fixes and improvements.
User-facing Improvements
- support safe and finalized blocknumber by @tsahee in #1323
- Anytrust ipfs node sync by @Tristan-Wilson in #1366
- Fix block hash in receipts in ws log subscription by @PlasmaPower in #1396
- Stop the RPCs before stopping the blockchain by @PlasmaPower in #1391
Internal Highlights
- fix: add inbox gas limit validation by @gzeoneth in #1374
- revert: #1320 unsafe retryable caller by @gzeoneth in #1375
- feat: uniswap unalised crosschain message by @gzeoneth in #1379
- Improve feed broadcaster error logs and metrics by @joshuacolvin0 in #1383
- sequence delayed messages when acquiring lock by @tsahee in #1358
- Wasmer 3.1 by @rachel-bousfield in #1386
- Test node consensus by @tsahee in #1384
- Use new time-bounded histogram for timer metrics by @Tristan-Wilson in #1388
- Use pointers for precompiles by @rachel-bousfield in #1405
- Make the trie dirty cache size configurable by @PlasmaPower in #1406
Full Changelog: v2.0.9...v2.0.10-rc.1
Arbitrum Nitro v2.0.9
This release will be required by December 14th for testnets and December 15th for mainnets. It is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.0.9-51f9452
What's Changed
This release contains support for consensus v10, and adds support for running a validator without archive mode, along with various fixes and improvements.
User-facing Improvements
- Validation on non-archive node: #1207
- Add option to download genesis state archive using IPFS url: #1270
- Set new TxLookupLimit default value to better target 1 year: #1351
- Add logging to file option: #1319
- Add support for geth's DebugAPI: #1353
- IPFS Backend for daserver: #1337
Internal Highlights
- Resequence removed messages when a reorg occurs: #1243
- Merge in upstream geth v1.10.25: #1275
- Track l1 gas receipts: #1304
- Handle feed reorgs: #1230
- JIT validator preimages protocol: #1219
- Immediately try to post another batch if we just posted one: #1318
- Don't send feed cache if requested seqnum is too old: #1349
- Include failed connect register in metric counting: #1329
- Do not connect to feed until node caught up to L1: #1348
- Optimize arbitrator some more: #1309
- Fix config fetching lambdas: #1371
Full Changelog: v2.0.8...v2.0.9
Arbitrum Nitro v2.0.9 Release Candidate 1
What's Changed
This release contains support for consensus v10, and adds support for running a validator without archive mode, along with various fixes and improvements.
User-facing Improvements
- Validation on non-archive node: #1207
- Add option to download genesis state archive using IPFS url: #1270
- Set new TxLookupLimit default value to better target 1 year: #1351
- Add logging to file option: #1319
- Add support for geth's DebugAPI: #1353
- IPFS Backend for daserver: #1337
Internal Highlights
- Resequence removed messages when a reorg occurs: #1243
- Merge in upstream geth v1.10.25: #1275
- Track l1 gas receipts: #1304
- Handle feed reorgs: #1230
- JIT validator preimages protocol: #1219
- Immediately try to post another batch if we just posted one: #1318
- Don't send feed cache if requested seqnum is too old: #1349
- Include failed connect register in metric counting: #1329
- Do not connect to feed until node caught up to L1: #1348
- Optimize arbitrator some more: #1309
- Fix config fetching lambdas: #1371
Full Changelog: v2.0.8...v2.0.9-rc.1
Consensus V10
This release signifies a consensus version, and is not necessarily a good version to run a node on
WAVM Module Root: 0x6b94a7fc388fd8ef3def759297828dc311761e88d8179c7ee8d3887dc554f3c3
This contains the following consensus changes from consensus v9:
- Track l1 gas receipts: #1304
Full Changelog: consensus-v9...consensus-v10
Arbitrum Nitro v2.0.8
This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.0.8-5b9fe9c
What's Changed
This release contains support for consensus v9, which will be required by November 8th to allow for future validators without archive nodes, along with various fixes and improvements.
User-facing Improvements
- Tx Tips in L2 (will be enabled at a future point in time after discussion with community): #1253
- Include block number in blockhash for empty L1 blocks: #1229
- Continue running L2 nitro node when L1 is unavailable by including gas cost in batch posting report message when parsing (requires relay upgrade): #1214
- Fix L1 block number being one too high: #1250
- Add arbtrace_* calls forwarding: #1188
- Add livenessprobe to feed: #1235
- Replace panics on startup with nicer exits: #1224
- [Instrumentation] Add Pprof Support to Nitro: #1233
- Use batchposter address for gascap adjustment (fixes gas cap handling with data gas): #1256
- Add consensus v9 WASM machine to docker: #1282
- Log an error when an unsupported ArbOS upgrade is scheduled: #1284
- Deploy token bridge with test node using sdk: #1189
Internal Highlights
- Deterministic statedb in record/replay: #1213
- Instead of panicking, make a fatal error when node is out of date: #1200
- Timeout sequencer requests if they have been sitting in queue too long: #1203
- Ensure we don't exceed MaxDecompressedLen in batch poster: #1239
- Always try to post the next transaction in the batch poster: #1260
- Handle unexpected relay input on connect: #1201
- Coordinator sign asymmetric: #1136
- Don't accept ArbitrumLegacyTxType in decodeTyped: #1269
- Error when the L1 client returns bad transaction data instead of panicking: #1216
- Add nonce cache to sequencer: #1175
- Initialize validator wallet early (fixes startup logs): #1202
- Add support for database format versions: #1225
- Generally saturate and log a warning instead of erroring on overflow: #1245
- Improve logging when feed goes down: #1240
- Add extra metric to measure rate new connections are made: #1267
- Fix full challenge tests: #1274
Config Changes
- The sequencer redis signing options have been changed in #1136
Full Changelog: v2.0.7...v2.0.8
Consensus V9
This release signifies a consensus version, and is not necessarily a good version to run a node on
WAVM Module Root: 0xd1842bfbe047322b3f3b3635b5fe62eb611557784d17ac1d2b1ce9c170af6544
Note that consensus v8 was skipped, as this release includes support for ArbOS versions 8 and 9.
This contains the following consensus changes from consensus v7.1:
- Include block number in blockhash for empty L1 blocks (in ArbOS version 8): #1229
- Fix L1 block number being one too high (in ArbOS version 8): #1250
- Enable transaction tips in L2 (in ArbOS version 9): #1253
Full Changelog: consensus-v7.1...consensus-v9
Consensus V7.1
This release signifies a consensus version, and is not necessarily a good version to run a node on
WAVM Module Root: 0x2b20e1490d1b06299b222f3239b0ae07e750d8f3b4dedd19f500a815c1548bbc
This contains the following consensus changes from consensus v7:
- Deterministic statedb in record/replay: #1213
Full Changelog: consensus-v7...consensus-v7.1
Arbitrum Nitro v2.0.7
This release is available as a Docker image on Docker Hub at offchainlabs/nitro-node:v2.0.7-10b845c
What's Changed
This release contains various validator improvements and fixes, along with IPC RPC support for easy local RPC access.
User-facing Improvements
- Allow for an EOA validator wallet (has config changes): #1161
- Allow validator smart contract wallet to be specified: #1151
- Validator shouldn't require deprecated parameter: #1181
- Improve validator logging around invalid assertions and whitelisting: #1196
- Add ipc rpc support: #1156
- Fix jit validator shutdown cancellation: #1179
- Testnode updates and fixes: #1164
Internal Highlights
- Jit path: #1192
- Orderly sequencer shutdown: #1163
- Don't assume validator succeeded: #1195
- Ensure feed ping gets sent regardless of other traffic: #1159
- No live sequencer log should be error: #1169
- Add sequencer backlog gauge metric: #1168
- Life cycle controlled by node: #1166
Config Changes
- Validators using a smart contract wallet (the previous behavior) will now need to specify
--node.validator.use-smart-contract-wallet
as the new default is to use an EOA wallet.
Full Changelog: v2.0.6...v2.0.7