Releases: wormhole-foundation/wormhole
v2.38.0 Plume mainnet/testnet
Key changes
Plume support
This release adds support for Plume mainnet and testnet. To enable it on mainnet, please use the following config parameters:
--plumeRPC YOUR_WEBSOCKET_RPC
--plumeContract 0xaBf89de706B583424328B54dD05a8fC986750Da8
To enable it on testnet, please use the following config parameters:
--plumeRPC YOUR_WEBSOCKET_RPC
--plumeContract 0x81705b969cDcc6FbFde91a0C6777bE0EF3A75855 //this is TESTNET!
Governor changes
- This release reduces the governor limits for Blast and X Layer to 0, delaying all token bridge transfers originating from those chains by 24 hours. This is due to extremely low cross-chain activity over Wormhole and preparation for a possible disconnection.
- The maximum time a governor delay can be extended to manually via the admin command has been increased from 7 to 30 days.
Note: versions v2.36.0 and v2.37.0 were not proposed to mainnet guardians. The changelog for these are copied in this release note.
What's Changed v2.38.0
- CODEOWNERS: update file by @panoel in #4381
- deps: Update elliptic to >= 6.6.1 (round 2) by @johnsaigle in #4392
- Plume testnet by @aapclark in #4414
- node: Reduce Governor limits for Blast and XLayer by @djb15 in #4416
- Plume mainnet by @aapclark in #4417
What's Changed v2.37.0
- guardiand: fix set message fee serialization by @fergarrui in #4397
- Node: Converge VAAs not getting published by @bruce-riley in #4401
- fix: moved message fee from int64 to string and uint256 by @fergarrui in #4399
- node: Governor token list update by @djb15 in #4396
- node: Increase Governor maximum delay to 30 days by @djb15 in #4398
- sdk: reserve Codex chain ID by @connorstake in #4408
- docs: Modify Governor whitepaper to include information about Flow Cancelling by @johnsaigle in #3982
- Node: Specify config file by @bruce-riley in #4404
- ci: fix clippy lint violation by @johnsaigle in #4412
- Node/Solana: TX for account by @bruce-riley in #4350
What's Changed v2.36.0
- ci: add depguard linter to create a deny-list for dependencies by @johnsaigle in #4390
- add Converge testnet by @aapclark in #4394
Full Changelog: v2.37.0...v2.38.0
v2.37.0
What's Changed v2.37.0
- guardiand: fix set message fee serialization by @fergarrui in #4397
- Node: Converge VAAs not getting published by @bruce-riley in #4401
- fix: moved message fee from int64 to string and uint256 by @fergarrui in #4399
- node: Governor token list update by @djb15 in #4396
- node: Increase Governor maximum delay to 30 days by @djb15 in #4398
- sdk: reserve Codex chain ID by @connorstake in #4408
- docs: Modify Governor whitepaper to include information about Flow Cancelling by @johnsaigle in #3982
- Node: Specify config file by @bruce-riley in #4404
- ci: fix clippy lint violation by @johnsaigle in #4412
- Node/Solana: TX for account by @bruce-riley in #4350
What's Changed v2.36.0
- ci: add depguard linter to create a deny-list for dependencies by @johnsaigle in #4390
- add Converge testnet by @aapclark in #4394
New Contributors
- @connorstake made their first contribution in #4408
Full Changelog: v2.36.0...v2.37.0
v2.36.1 Converge VAAs not getting published
GetAllNetworkIDs was not updated when Converge support was added to testnet, which prevented the watcher from properly forwarding observations for processing and publication. This release fixes that oversight.
What’s Changed
PR #4401 – Update GetAllNetworkIDs for Converge
Full Changelog
View changes
v2.36.0 Converge testnet
Key changes
This release adds support for Converge testnet. To enable it, use the following config parameters:
--convergeRPC YOUR_CONVERGE_WEBSOCKET_URL
--convergeContract 0x556B259cFaCd9896B2773310080c7c3bcE90Ff01
What's Changed
- ci: add depguard linter to create a deny-list for dependencies by @johnsaigle in #4390
- add Converge testnet by @aapclark in #4394
Full Changelog: v2.35.0...v2.36.0
v2.35.0 HyperEVM mainnet (experimental)
Key changes
HyperEVM mainnet (experimental)
This release adds support for HyperEVM mainnet, a component of Hyperliquid. To enable it, use the following config parameters.
Please note that at the time of this release, the HyperEVM node is not open source, which is traditionally a requirement for Wormhole. Contributors are labeling this integration as experimental for the time being.
--hyperEvmRPC YOUR_HYPEREVM_WEBSOCKET_URL
--hyperEvmContract 0x7C0faFc4384551f063e05aee704ab943b8B53aB3
What's Changed
- added missing SR addresses by @hernandp in #4226
- node: Governor token list update by @djb15 in #4368
- deps: Remove Go-Spew and add new debugging function for VAAs by @johnsaigle in #4385
- Deploy HyperEVM in mainnet by @bruce-riley in #4389
Full Changelog: v2.34.0...v2.35.0
v2.34.0 Mezo mainnet
Key changes
Mezo mainnet
This release adds support for Mezo mainnet. To enable it, use the following config parameters.
--mezoRPC YOUR_MEZO_RPC
--mezoContract 0xaBf89de706B583424328B54dD05a8fC986750Da8
Governor limit changes
This release changes the governor limits according to #4331
Algorand
- Daily limit: 1M -> 750k
- Big tx: 100k -> 75k
Celo
- Daily limit: 2M -> 1M;
- Big tx: 200k -> 100k
Injective
- Daily limit: 500k -> 150k
- Big tx 50k -> 15k
Sei
- Daily limit: 5M -> 150k
- Big tx: 50k -> 15k
What's Changed
- Tilt/CI: Pin foundry release by @bruce-riley in #4337
- node: add targets for linting to Makefiles by @johnsaigle in #4308
- Node: Alternate publishers by @bruce-riley in #4318
- node: Enable transfer verifier for the node in devnet by @johnsaigle in #4320
- ci: golangci-lint major version upgrade by @johnsaigle in #4322
- CI: Explicitly define top level permissions for workflows by @djb15 in #4345
- ci: add golangci-lint linters with no violations by @johnsaigle in #4341
- node: Governor token list update by @djb15 in #4321
- sdk: Return false for empty arguments to VerifySignatures by @johnsaigle in #4340
- deps: Remove benbjohnson/clock as a direct dependency by @johnsaigle in #4339
- cleanup: Remove use of tendermint/libs/rand for non-Cosmos code by @johnsaigle in #4338
- Node/Solana: Minor watcher cleanup by @bruce-riley in #4348
- cosmwasm: added shutdown contracts tests by @kakucodes in #4257
- ci: Add nolintlint to golangci-lint by @johnsaigle in #4346
- docs: Fix Tilt minimal run command; add linter requirement by @johnsaigle in #4351
- deps: Remove miguelmota/go-ethereum-hdwallet; delete unused code by @johnsaigle in #4347
- ci: upgrade golangci-lint to v2.1.2 by @johnsaigle in #4354
- Node: Clean up feature flags by @bruce-riley in #4352
- txverifier: fix nil deference panic for logs with no topics by @johnsaigle in #4360
- deps: Use stable slices package instead of experimental release by @johnsaigle in #4356
- deps: Remove status-im/keycard-go by @johnsaigle in #4355
- node: Reduce Governor Limits on Sei, Injective, Celo & Algorand by @djb15 in #4361
- ci: detect unused function arguments with unparam by @johnsaigle in #4353
- node: Extend flow cancel by configuring allow-list of chain ID pairs ("corridors") by @johnsaigle in #4229
- ethereum: remove deleted "--no-commit" flag from forge commands by @johnsaigle in #4363
- Node/CCQ: Add waiting for peer warning by @bruce-riley in #4366
- ci: update golangci-lint to 2.1.5 by @johnsaigle in #4364
- docs: Update SECURITY.md to mention the audits/ directory by @johnsaigle in #4367
- sdk: reserve Sonic chain ID by @evan-gray in #4370
- ci: Fix docker-related errors in Algorand job by @johnsaigle in #4374
- docs: Add instructions for enabling flow cancel in the Governor by @johnsaigle in #4365
- Docs: Update Guardian Key/Signer Documentation by @pleasew8t in #4273
- deps: Replace godo/fswatch with fsnotify/fsnotify by @johnsaigle in #4357
- add new env files: ink, unichain, berachain by @hernandp in #4298
- node/admin: add template for core bridge set message by @fergarrui in #4369
- Mezo mainnet deployment by @aapclark in #4378
- node: Add initial tokens for SeiEVM and Ink by @djb15 in #4382
New Contributors
- @fergarrui made their first contribution in #4369
- @aapclark made their first contribution in #4378
Full Changelog: v2.33.0...v2.34.0
v2.33.0 Shimmy the Expenses
Key changes
Solana Shim (mainnet)
In v2.25.0, a mechanism was added that enables the guardian to observe messages on Solana testnet through a shim program, which drastically reduces the gas costs for core messaging. This release updates the guardian such that this mechanism can also be enabled on mainnet. To do that, please use the following parameters:
--solanaRPC SOLANA_RPC
--solanaContract worm2ZoG2kUd4vFXhvjh93UUH596ayRfgQ2MgjNMTth
--solanaShimContract EtZMZM22ViKMo4r5y4Anovs3wKQ2owUmDpjygnMMcdEX
SeiEVM mainnet
This release adds support for SeiEVM mainnet. To enable it, use the following config parameters.
--seiEvmRPC YOUR_SEIEVM_RPC
--seiEvmContract 0xCa1D5a146B03f6303baF59e5AD5615ae0b9d146D
Fogo testnet
This release adds support for Fogo testnet. To enable it, use the following config parameters.
--fogoRPC YOUR_HTTP_RPC
--fogoContract BhnQyKoQQgpuRTRo6D8Emz93PvXCYfVgHhnrR4T3qhw4
--fogoShimContract EtZMZM22ViKMo4r5y4Anovs3wKQ2owUmDpjygnMMcdEX
What's Changed (v2.33.0)
- node: Integrate Transfer Verifier into the Ethereum watcher by @johnsaigle in #4233
- Deploy SeiEVM mainnet by @bruce-riley in #4305
- Node: Add reobservation metric by @bruce-riley in #4303
- sdk: Add functions for type-safe conversions from integers to ChainID by @johnsaigle in #4271
- Node/EVM: Add contract address to chain config by @bruce-riley in #4299
- audits: Add OtterSec Solana shim audit by @johnsaigle in #4301
- node: Remove go-homedir dependency by @johnsaigle in #4316
- sdk: add StringToKnownChainID function for VAAs by @johnsaigle in #4239
- ci: Bump golang linter version by @djb15 in #4224
- add svm/wormhole-core-shims by @a5-pickle in #4311
- sdk/rust: fix clippy by @a5-pickle in #4327
- test: Relax failure conditions for Transfer Verifier EVM integration tests by @johnsaigle in #4328
- Node: Allow Mainnet Solana shim by @bruce-riley in #4329
- solana: core bridge initialize script by @evan-gray in #4325
- svm: use solana-verify to build by @a5-pickle in #4326
- Node: Add Solana shim feature flag by @bruce-riley in #4332
- Node: Fogo support by @bruce-riley in #4330
- audits: Update OtterSec report for Solana shims by @johnsaigle in #4333
- github: Add djb15 as root reviewer by @djb15 in #4335
- Golang linter improvements PR by @mdulin2 in #4323
What's Changed (v2.32.0)
- Node / Solana: Fix reobservation ID in log msg by @bruce-riley in #4297
- Node: Buffer log messages by @bruce-riley in #4294
- Node/Solana: Shim watcher cleanup by @bruce-riley in #4269
- txverifier: Increase integration test coverage and simplify Tilt set-up by @johnsaigle in #4280
- Deploy Mezo testnet by @bruce-riley in #4300
What's Changed (v2.31.0)
- Update the Berachain testnet config by @bruce-riley in #4296
Full Changelog: v2.32.0...v2.33.0
v2.32.0 Mezo testnet
Key changes
Added Mezo testnet support. To enable it, please use these config parameters:
--mezoRPC YOUR_MEZO_RPC
--mezoContract 0x268557122Ffd64c85750d630b716471118F323c8
What's Changed
- Node / Solana: Fix reobservation ID in log msg by @bruce-riley in #4297
- Node: Buffer log messages by @bruce-riley in #4294
- Node/Solana: Shim watcher cleanup by @bruce-riley in #4269
- txverifier: Increase integration test coverage and simplify Tilt set-up by @johnsaigle in #4280
- Deploy Mezo testnet by @bruce-riley in #4300
Full Changelog: v2.31.0...v2.32.0
v2.31.0 Bepolia
What's Changed
- Update the Berachain testnet config by @bruce-riley in #4296
Full Changelog: v2.30.0...v2.31.0
v2.30.0 Ink mainnet
Key changes
Versions v2.28.0 and v2.29.0 were not directly proposed to mainnet guardians. Their changelogs are copied below.
Ink mainnet
Added Ink mainnet support. To enable it, please use these config parameters:
--inkRPC YOUR_INK_RPC
--inkContract 0xCa1D5a146B03f6303baF59e5AD5615ae0b9d146D
EVM chain ID verification
#4116 adds a check to verify that each EVM watcher is connected to the correct chain by verifying the EVM chain ID matches what is expected. If this error is detected, the watcher will fail with an "evm chain ID miss match" error.
P2P peer protection
#4292 adds the ability to specify a set of P2P peer IDs that should be added to the protected list. Please see the pull request for usage details.
What's Changed (v2.30.0)
- Deploy Ink mainnet by @bruce-riley in #4295
Full Changelog: v2.29.0...v2.30.0
What's Changed (v2.29.0)
- Update elliptic to >= 6.6.1 by @kev1n-peters in #4272
- Update CODEOWNERS for Transfer Verifier by @johnsaigle in #4281
- Node/EVM: Add instant finality to chain config by @bruce-riley in #4283
- Node/EVM: Berachain not instant finality by @bruce-riley in #4285
- Wormchain token denom bug fix by @mdulin2 in #4265
- Node/EVM: Update repair tool by @bruce-riley in #4291
- node: commit results of "go mod tidy" by @johnsaigle in #4278
- ci: bump ubuntu-20.04 to ubuntu-24.04 by @evan-gray in #4293
- cli: arbitrary chain registration by @evan-gray in #4201
- node: Governor token list update by @djb15 in #4287
- Node/P2P: Add protected peers list by @bruce-riley in #4292
Full Changelog: v2.28.0...v2.29.0
What's Changed (v2.28.0)
- governor: Add initial token list for Unichain and Berachain by @djb15 in #4270
- Node/EVM: Add GetLatestBlocks API by @bruce-riley in #4274
- Node/EVM: Verify EVM chain ID by @bruce-riley in #4116
- txverifier: fix bugs and improve error handling by @johnsaigle in #4277
- Node: Reobserve with custom endpoint by @bruce-riley in #4260
Full Changelog: v2.27.0...v2.28.0