Go to file
Jeff Schroeder 2712dd3f3f
node: upgrade to go 1.21.9 (#3855)
* node: update quic-go

Ran via:

    go get github.com/quic-go/quic-go@v0.42.0

* node: update mongo-drive dependency

Ran via:

    go get go.mongodb.org/mongo-driver@latest

* node: upgrade libp2p-go

Ran via:

    go get github.com/libp2p/go-libp2p@v0.33.1

Refs: #3863

* node: fallout from the go upgrade in the go.sum

Run via:

    go mod tidy

This updates the go.sum and removes unnecessary indirect references.

* docs: use go1.21.8

* github: use go1.21.8

Except for wormchain.

* node: update dockerfiles to use go 1.21.8

This was done with scripts/update-go-version.sh

* scripts: update linter dockerfile to use go 1.21.8

This was done with scripts/update-go-version.sh

* wormchain: update ibc-relayer to use go 1.21.8

This was done with scripts/update-go-version.sh

* scripts: add update-go-version.sh

This is a little helper to make updating the version of go a bit nicer.

* scripts: update-go-version.sh fixes

* set the default docker command to "dokcer"
* update the comment for the humongous sed command for dockerfiles

* github: fix go linting

* Upgrade golangci-lint to a version built with go 1.21.x. The older
  version was a binary version built with go 1.20.x and it was failing
  against the newer code built with go 1.21.x
* print the golangci-lint version in each run to see what version of go
  it was built with in case there are incompatibilties during the next
  upgrade
* remove the linter config skipping over pkg/supervisor entirely and
  instead put in an override to ignore the `unused` linter for the
  pkg/supervisor testhelpers bits for unsed test functions necessary
  to satisfy the test interface.

* scripts: update golang linter cli invocation

* github: use the latest version of golangci-lint

Because 1.52.2 is built with go 1.20.x which has issues with this project
now that it is upgraded to 1.21.8.

* node: remove implicit memory aliasing in a loop

Caught by an upgraded golangci-lint with the gosec linter:

    ::medium file=node/pkg/watchers/evm/connectors/batch_poller.go,line=226,col=8::G601: Implicit memory aliasing in for loop. (gosec)
    ::medium file=node/pkg/watchers/evm/connectors/batch_poller.go,line=285,col=8::G601: Implicit memory aliasing in for loop. (gosec)
    ::medium file=node/pkg/watchers/evm/connectors/batch_poller_test.go,line=128,col=37::G601: Implicit memory aliasing in for loop. (gosec)

See also: https://husni.dev/beware-of-implicit-memory-aliasing-in-go-foor-loop/

* node: update logging

* Update go to 1.21.9

Automated via:

    scripts/update-go-version.sh 1.21.9

* node: update test root context teardown time

Otherwise things get really sad.

* scripts: additions to update-go-versions.sh

* Standardized on prefacing functions with `function` for consistency
* Added a few more comments to explain how things work
* Automatically increment the go version and toolchain in go.mod
* Standardized on prefacing functions with `function` for consistency
* Make the go image debian version a variable for ease of maintenance

* node: update go.mod to specify 1.21.9

* node: update node tests

Review feedback from @pires

* scripts: run go mod tidy in update-go-version.sh

Required after running go mod edit or it refuses to build.

* node: update go.mod

Running `go mod tidy` removes the toolchain so the build works.

* node: update node tests

---------

Co-authored-by: Ryan Hamphrey <hamphreyryan26@gmail.com>
2024-04-19 14:43:36 -04:00
.github node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
.run Commit .run IntelliJ shortcuts to repo 2020-11-23 17:21:41 +01:00
algorand docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
aptos docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
clients clients/js: fix sui guardian set upgrade handler 2024-04-17 09:59:45 -04:00
cosmwasm sdk/rust: prepare to publish crate (#3849) 2024-03-25 14:09:54 -04:00
dashboards add Prometheus + Grafana for Guardian metrics 2022-08-04 16:03:56 -04:00
deployments deployments: add RockawayX as a new Guardian (#3880) 2024-04-16 13:02:37 -04:00
devnet Tilt : Deploy with forge instead of truffle (#3877) 2024-04-19 10:44:04 -04:00
docs node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
ethereum Deploy SeiEVM Read Only to Testnet (#3889) 2024-04-19 11:01:58 -05:00
lp_ui js: make packages comply with ci rule 2022-10-20 17:11:13 -05:00
near docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
node node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
proto Deploy Polygon Sepolia Testnet (#3723) 2024-03-12 09:46:28 -05:00
relayer Ethereum: Move relayer (#3866) 2024-04-11 08:46:36 -04:00
scripts node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
sdk Deploy SeiEVM Read Only to Testnet (#3889) 2024-04-19 11:01:58 -05:00
solana docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
spydk/js NTT / Acct / Node: Guardian support (#3815) 2024-03-08 07:52:12 -06:00
sui Upgrade sui packages and compiler to 1.19.1-mainnet (#3803) 2024-04-15 17:16:07 +01:00
terra docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
testing Ethereum: deploy with forge (#3862) 2024-04-15 12:13:37 -05:00
third_party Move from ADD to COPY on Dockerfiles 2022-07-13 09:27:15 -04:00
tilt_modules Devnet arguments for BigTable connection. 2021-08-05 12:53:56 +00:00
tools node: update golang to 1.20 from 1.19 2023-05-12 05:59:53 -04:00
whitepapers docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
wormchain ci: switch from ganache to anvil 2024-04-12 10:13:27 -04:00
.dockerignore tilt: ignore wormchain gentx folder to make deployment robust 2022-12-12 16:59:26 -05:00
.gitignore node: Fix url verification bug where <ip>:<port> is not supported (#3719) 2024-01-19 03:14:59 +08:00
.golangci.yml node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
.nvmrc Add top level .nvmrc file (#2342) 2023-02-06 23:10:40 +08:00
.prettierignore ci: add github workflow with prettier checks for clients/js/src and sdk/js/src (#3176) 2023-07-12 11:30:14 -04:00
.spr.yml rename dev.v2 to main 2022-11-29 10:43:07 -05:00
CONTRIBUTING.md CONTRIBUTING.md: add note about typo fixes (#3820) 2024-03-08 17:48:28 +01:00
DEVELOP.md node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
Dockerfile.cli tilt: remove additional root CA support 2023-12-12 14:22:05 -06:00
Dockerfile.const tilt: remove additional root CA support 2023-12-12 14:22:05 -06:00
Dockerfile.proto node: upgrade to go 1.21.9 (#3855) 2024-04-19 14:43:36 -04:00
LICENSE staging/algorand: apply global Apache 2 license 2022-02-05 09:30:28 -05:00
Makefile Makefile: set CGO_ENABLED=1 2023-10-26 12:29:56 -04:00
Makefile.help Add scripts and readme to deploy and verify terra contracts 2022-04-05 17:42:07 +02:00
README.md docs: change link on README to point to docs site 2023-07-12 11:46:54 -04:00
SECURITY.md docs: Add latest audit reports 2024-04-16 13:44:55 -04:00
Tiltfile Upgrade sui packages and compiler to 1.19.1-mainnet (#3803) 2024-04-15 17:16:07 +01:00
buf.gen.web.yaml sdk/js: publish separate proto packages 2022-07-13 10:04:23 -04:00
buf.gen.yaml node: rename bridge/ to node/ 2021-08-26 11:36:36 +02:00
buf.lock Update buf.lock 2022-09-07 10:34:18 -04:00
buf.yaml certusone -> wormhole-foundation 2022-08-26 12:48:14 -04:00
cspell-custom-words.txt eth,node,sdk: XLayer, Linea and Berachain to testnet (#3871) 2024-04-15 22:45:43 -04:00
cspell.config.yaml docs: quit the spelling spam typo fix PRs with cspell magic (#3845) 2024-03-20 15:40:02 -04:00
generate-abi-celo.sh certusone -> wormhole-foundation 2022-08-26 12:48:14 -04:00
generate-abi.sh certusone -> wormhole-foundation 2022-08-26 12:48:14 -04:00
package-lock.json sdk/js: injective package bump (#2175) 2023-01-23 21:33:26 -05:00

README.md

Banner

This monorepo contains the reference implementation of the Wormhole protocol.

To learn about how to use and build on Wormhole read the docs.


See Live Contracts for current testnet and mainnet deployments of the Wormhole smart contracts.

See DEVELOP.md for instructions on how to set up a local devnet, CONTRIBUTING.md for instructions on how to contribute to this project, and SECURITY.md for more information about our security audits and bug bounty program.

See docs/operations.md for node operator instructions.

This software is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Or plainly spoken - this is a very complex piece of software which targets a bleeding-edge, experimental smart contract runtime. Mistakes happen, and no matter how hard you try and whether you pay someone to audit it, it may eat your tokens, set your printer on fire or startle your cat. Cryptocurrencies are a high-risk investment, no matter how fancy.