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

build: upgrade to golang 1.21.3 #28316

Closed
wants to merge 3 commits into from
Closed

Conversation

holiman
Copy link
Contributor

@holiman holiman commented Oct 11, 2023

Supersedes #28268


Upgrades to 1.21.2 1.21.3.

This PR also includes a tool to sanity-check the checksums in our checksum list. I expanded the semantics of the checksum txt file, so that a line starting with # https sets a new base-url, and we can download and verify each hash/file combo under the given base url.

Execute with go run ./build/ci.go sanitycheck.

Also, if we decide this is a nice idea, then we can make the fixtures-download use this scheme, and we don't have to have a fixtures-version in the main ci.go -- this part:

func downloadSpecTestFixtures(csdb *build.ChecksumDB, cachedir string) string {
	ext := ".tar.gz"
	base := "fixtures" // TODO(MariusVanDerWijden) rename once the version becomes part of the filename
	url := fmt.Sprintf("https://github.com/ethereum/execution-spec-tests/releases/download/v%s/%s%s", executionSpecTestsVersion, base, ext)

We could instead just infer it from the checksumdb.

@holiman holiman changed the title Golang 1.21.3 build: upgrade to golang 1.21.3 Oct 11, 2023
@holiman
Copy link
Contributor Author

holiman commented Oct 12, 2023

Food for though, for triage;

We could structure the checksums like so:

# resource:fixtures
# https://github.com/ethereum/execution-spec-tests/releases
# https://github.com/ethereum/execution-spec-tests/releases/download/v1.0.2/
24bac679f3a2d8240d8e08e7f6a70b70c2dabf673317d924cf1d1887b9fe1f81  fixtures.tar.gz

# resource:golang
# https://go.dev/dl/
186f2b6f8c8b704e696821b09ab2041a5c1ee13dcbc3156a13adcf75931ee488  go1.21.3.src.tar.gz
27014fc69e301d7588a169ca239b3cc609f0aa1abf38528bf0d20d3b259211eb  go1.21.3.darwin-amd64.tar.gz

Where resource: would be a keyword, so that we would not longer have to define dlgoVersion and executionSpecTestsVersion; updating either of them would just mean that we update the checksums.txt-file.

@fjl
Copy link
Contributor

fjl commented Oct 12, 2023

# version:golang 1.21.3
type ChecksumDB struct{
    versions map[string]string    // "golang" -> "1.21.3"
}

@karalabe
Copy link
Member

Closing this in favor of the followup pr.

@karalabe karalabe closed this Oct 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants