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

Support go1.21.0 #774

Closed
chenrui333 opened this issue Aug 13, 2023 · 6 comments
Closed

Support go1.21.0 #774

chenrui333 opened this issue Aug 13, 2023 · 6 comments

Comments

@chenrui333
Copy link

👋 currently, there is some build issue with go1.21.0 as for the error shown below:

/Users/rui/Library/Caches/Homebrew/go_mod_cache/pkg/mod/github.com/sagernet/quic-go@v0.0.0-20230731012313-1327e4015111/internal/qtls/go121.go:5:13: cannot use "The version of quic-go you're using can't be built on Go 1.21 yet. For more details, please see https://github.com/sagernet/quic-go/wiki/quic-go-and-Go-versions." (untyped string constant "The version of quic-go you're using can't be built on Go 1.21 yet. F...) as int value in variable declaration

relates to Homebrew/homebrew-core#134468

@nekohasekai
Copy link
Member

We already support Go 1.21 in beta versions, since the new quic-go is not compatible with Go 1.18 and 1.19 with simple modifications, we will not bring it to the stable version.

@chenrui333
Copy link
Author

We already support Go 1.21 in beta versions, since the new quic-go is not compatible with Go 1.18 and 1.19 with simple modifications, we will not bring it to the stable version.

but go1.18 and go1.19 is already EOL? How can I pull the related changes to build with go1.21.0?

@simple-shadow
Copy link

We already support Go 1.21 in beta versions, since the new quic-go is not compatible with Go 1.18 and 1.19 with simple modifications, we will not bring it to the stable version.

but go1.18 and go1.19 is already EOL? How can I pull the related changes to build with go1.21.0?

git clone https://github.com/SagerNet/sing-box/
cd sing-box/cmd/sing-box/
go build -v -tags xxx,xxx

you can find the singbox binary in sing-box/cmd/sing-box/

@nekohasekai
Copy link
Member

No you can't, we support go 1.21 in the next minor release. It is absurd that homebrew requires all software to be able to compile under go 1.21 instead, just as they arrogantly modify the compilation parameters when compiling instead of using Makefile. If it doesn't support a fixed go version, just use the binaries from releases, like they do for closed source software.

@chenrui333
Copy link
Author

chenrui333 commented Aug 22, 2023

No you can't, we support go 1.21 in the next minor release. It is absurd that homebrew requires all software to be able to compile under go 1.21 instead, just as they arrogantly modify the compilation parameters when compiling instead of using Makefile.

it is pretty much the same as the other package managers (eg debian). And this is important from SBOM perspective. (we dont control the taps though, this only happens in core.)

@nekohasekai
Copy link
Member

nekohasekai commented Aug 22, 2023

Go 1.21 is already supported in the latest code, so your issue can be closed.

Also, I think it's arrogant and unreasonable to arbitrarily change the compiler and compilation parameters of an open source project, and this is a redistribution. This behavior applies to the additional terms of the license of this project, so homebrew redistribution using the original name of this project may violate the license.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants