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

Go 1.24 support #973

Closed
stefanb opened this issue Feb 2, 2025 · 10 comments
Closed

Go 1.24 support #973

stefanb opened this issue Feb 2, 2025 · 10 comments
Labels
bug Something isn't working

Comments

@stefanb
Copy link

stefanb commented Feb 2, 2025

While testing llgo with Go 1.24 release candidates in

there was a test error:

hello.go:1:1: package requires newer Go version go1.24 (application built with go1.23)
-: This application uses version go1.23 of the source-processing packages but runs version go1.24 of 'go list'. It may fail to process source files that rely on newer language features. If so, rebuild the application using a newer version of Go.

@xushiwei xushiwei added the bug Something isn't working label Feb 5, 2025
@cpunion
Copy link
Contributor

cpunion commented Feb 7, 2025

It's not a bug - verified in PR #982

The error occurs because llgo was built with Go 1.23 but is running with Go 1.24 when llgo calls go list. Just rebuild llgo with Go 1.24 and test again.

@stefanb Could you share the test?

@stefanb
Copy link
Author

stefanb commented Feb 7, 2025

@cpunion
Copy link
Contributor

cpunion commented Feb 8, 2025

Thanks. I guess llgo needs to be rebuilt after go is upgraded from 1.23 to 1.24. Is there a way to trigger an llgo rebuild automatically when go upgraded?

@stefanb
Copy link
Author

stefanb commented Feb 8, 2025

We can bump revision in the same or a separate follow-up PR to publish a rebuilt bottle. Simillar as in govulncheck.rb in the same PR.

But in that test the llgo was already rebuilt (as well as all other formulae depending on go) and tests were run with newly rebuilt llgo and go 1.24rc3. Khm, unless the references to Formula["go"].opt_bin/"go" in test are using old go. 🤔

@cpunion
Copy link
Contributor

cpunion commented Feb 9, 2025

Maybe let llgo depends on go@1.23, and create new revision after go 1.24 released into Homebrew?

@stefanb
Copy link
Author

stefanb commented Feb 9, 2025

Homebrew cannot pin it yet to go@1.23 because this is the current formula at the moment.

llgo is currently on the list in Homebrew/homebrew-core#201070 with a link to this issue, to be checked immediately after go 1.24 formula is merged. Options in order of preference are:

  • bump llgo formula revision to rebuild it with Go 1.24
  • pin llgo to go@1.23

@cpunion
Copy link
Contributor

cpunion commented Feb 9, 2025

@stefanb So currently we don't need to do anything, just follow the Go 1.24 progress?

@stefanb
Copy link
Author

stefanb commented Feb 9, 2025

Correct. If you tested it with go 1.24 rc it should be easy to do a follow-up in homebrew.

@stefanb
Copy link
Author

stefanb commented Feb 13, 2025

Indeed, rebuilding in Homebrew/homebrew-core#207420 was enough, thank you!

@stefanb stefanb closed this as completed Feb 13, 2025
@cpunion
Copy link
Contributor

cpunion commented Feb 13, 2025

@stefanb Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
None yet
Development

No branches or pull requests

3 participants