Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

all: build with go1.23 #217

Merged
merged 2 commits into from
Aug 28, 2024
Merged

all: build with go1.23 #217

merged 2 commits into from
Aug 28, 2024

Conversation

joshuasing
Copy link
Contributor

@joshuasing joshuasing commented Aug 20, 2024

Summary
Build project with Go v1.23.
This does not change the go directive in the go.mod files, meaning we do not require consumers of this module to use go1.23, and we cannot use Go v1.23 features yet.

Changes

  • Use toolchain go1.23
  • Use Go 1.23.x in GitHub Actions
  • Update Go Docker images to 1.23-alpine3.20 and 1.23-bookworm (debian)
  • Document that Go 1.23 is required for building (previously 1.22.2 or newer)

Note: Go v1.23 introduces new go vet checks for the slices package which are currently failing, resolved by #215

@github-actions github-actions bot added area: bfg This is a change to BFG (Bitcoin Finality Governor) area: bss This is a change to BSS (Bitcoin Secure Sequencer) area: ci This is a change to CI files. Excluded from changelog area: popm This is a change to popm (PoP Miner) area: docker This is a change to a Dockerfile area: tbc This is a change to TBC (Tiny Bitcoin) labels Aug 20, 2024
@joshuasing joshuasing added type: dependencies This is related to dependencies. Excluded from changelog type: enhancement This improves existing functionality size: XS This change is very small (+/- <10) and removed area: bfg This is a change to BFG (Bitcoin Finality Governor) area: bss This is a change to BSS (Bitcoin Secure Sequencer) area: ci This is a change to CI files. Excluded from changelog area: popm This is a change to popm (PoP Miner) area: docker This is a change to a Dockerfile area: tbc This is a change to TBC (Tiny Bitcoin) labels Aug 20, 2024
@github-actions github-actions bot added area: bfg This is a change to BFG (Bitcoin Finality Governor) area: bss This is a change to BSS (Bitcoin Secure Sequencer) area: ci This is a change to CI files. Excluded from changelog area: popm This is a change to popm (PoP Miner) area: docker This is a change to a Dockerfile area: tbc This is a change to TBC (Tiny Bitcoin) labels Aug 21, 2024
@joshuasing joshuasing removed the area: tbc This is a change to TBC (Tiny Bitcoin) label Aug 21, 2024
@joshuasing joshuasing removed area: popm This is a change to popm (PoP Miner) area: docker This is a change to a Dockerfile area: bfg This is a change to BFG (Bitcoin Finality Governor) area: bss This is a change to BSS (Bitcoin Secure Sequencer) area: ci This is a change to CI files. Excluded from changelog labels Aug 21, 2024
Copy link
Contributor

@jcvernaleo jcvernaleo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK

@ClaytonNorthey92
Copy link
Contributor

@joshuasing as long as this passes this is an approval from me ✅ https://github.com/hemilabs/heminetwork/actions/runs/10496216883

Copy link
Contributor

@ClaytonNorthey92 ClaytonNorthey92 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hey @joshuasing it seems that this breaks localnet tests

https://github.com/hemilabs/heminetwork/actions/runs/10496216883/job/29076358690#step:5:4833

90.37 link: github.com/fjl/memsize: invalid reference to runtime.stopTheWorld
90.57 util.go:48: exit status 1
90.57 exit status 1
90.63 make: *** [Makefile:12: geth] Error 1

can we fix this before merge? I am happy to look as well

@joshuasing joshuasing added this to the v0.4.0 milestone Aug 26, 2024
@github-actions github-actions bot added area: bfg This is a change to BFG (Bitcoin Finality Governor) area: bss This is a change to BSS (Bitcoin Secure Sequencer) area: ci This is a change to CI files. Excluded from changelog area: popm This is a change to popm (PoP Miner) area: docker This is a change to a Dockerfile area: tbc This is a change to TBC (Tiny Bitcoin) labels Aug 26, 2024
@joshuasing
Copy link
Contributor Author

Reverted to Go 1.22.6 in e2e/optimism-stack.dockerfile due to an incompatibility between a module used by go-ethereum and Go 1.23 (github.com/fjl/memsize). Once we rebase https://github.com/hemilabs/op-geth, we should update this to Go 1.23.

fjl/memsize#4
ethereum/go-ethereum#30100
ethereum/go-ethereum#30253
ethereum-optimism/op-geth@04354cf

@joshuasing joshuasing merged commit 87a37c1 into main Aug 28, 2024
7 checks passed
@joshuasing joshuasing deleted the joshua/go1-23 branch August 28, 2024 17:41
web3cryptoguy pushed a commit to web3cryptoguy/heminetwork that referenced this pull request Nov 1, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area: bfg This is a change to BFG (Bitcoin Finality Governor) area: bss This is a change to BSS (Bitcoin Secure Sequencer) area: ci This is a change to CI files. Excluded from changelog area: docker This is a change to a Dockerfile area: popm This is a change to popm (PoP Miner) area: tbc This is a change to TBC (Tiny Bitcoin) size: XS This change is very small (+/- <10) type: dependencies This is related to dependencies. Excluded from changelog type: enhancement This improves existing functionality
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants