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 with Go 1.21 out of the box #9034

Closed
vext01 opened this issue Aug 10, 2023 · 17 comments
Closed

Build with Go 1.21 out of the box #9034

vext01 opened this issue Aug 10, 2023 · 17 comments
Labels
build Issues caused by or requiring changes to the build system (scripts or Docker image)
Milestone

Comments

@vext01
Copy link

vext01 commented Aug 10, 2023

Hi folks,

OpenBSD just upgraded to Go 1.21 and this broke syncthing for us.

I assume work is under way to support Go 1.21?

../../../go/pkg/mod/github.com/quic-go/quic-go@v0.32.0/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/quic-go/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

Thanks

@vext01 vext01 added bug A problem with current functionality, as opposed to missing functionality (enhancement) needs-triage New issues needed to be validated labels Aug 10, 2023
@bt90
Copy link
Contributor

bt90 commented Aug 10, 2023

Blocked by #8930

@bt90
Copy link
Contributor

bt90 commented Aug 10, 2023

Which in turn is soft-blocked by quic-go/quic-go#3992

@vext01
Copy link
Author

vext01 commented Aug 10, 2023

Can syncthing be built without quic?

@imsodin
Copy link
Member

imsodin commented Aug 10, 2023

Yep, with -tags noquic.

@vext01
Copy link
Author

vext01 commented Aug 10, 2023

And that would work on the new version of go?

@nekr0z
Copy link
Contributor

nekr0z commented Aug 11, 2023

And that would work on the new version of go?

One way to find out is to give it a try.

@imsodin imsodin changed the title Go 1.21 Build with Go 1.21 out of the box Aug 11, 2023
@imsodin
Copy link
Member

imsodin commented Aug 11, 2023

Should. Also please use the forum - https://forum.syncthing.net/ - for further discussions/support for workarounds, ... I'll leave this ticket open as a hint that we don't currently build on go 1.21 and to track the resolution.

gentoo-bot pushed a commit to gentoo/gentoo that referenced this issue Aug 12, 2023
As usual, a new minor version of Go has broken one of the bundled
dependencies. Upstream is already aware of this (see
syncthing/syncthing#9034) so hopefully we
won't have to wait for a proper resolution.

Closes: https://bugs.gentoo.org/912060
Signed-off-by: Marek Szuba <marecki@gentoo.org>
@marco-m
Copy link
Contributor

marco-m commented Aug 17, 2023

@imsodin FYI looks like quick-go v0.37.4 fixed this, see https://github.com/quic-go/quic-go/releases/tag/v0.37.4 (although some of the mentioned issues in this thread are still open, so I might be missing something...).

@alerque
Copy link

alerque commented Aug 17, 2023

This is blocking Arch Linux updating to the latest syncthing release as well. I'm following along here and will hope for a quick patch release as soon as the blockers are fixed.

@imsodin imsodin added build Issues caused by or requiring changes to the build system (scripts or Docker image) and removed needs-triage New issues needed to be validated bug A problem with current functionality, as opposed to missing functionality (enhancement) labels Aug 18, 2023
@calmh
Copy link
Member

calmh commented Aug 21, 2023

Fixed as of #9040.

Conversely, it's no longer possible to build with Go 1.19.

@calmh calmh closed this as completed Aug 21, 2023
@calmh calmh added this to the v1.24.0 milestone Aug 21, 2023
@alerque
Copy link

alerque commented Sep 4, 2023

I believe this issue alone should trigger a new point release as even the last release can't be packaged by many distros any more. There are also other regressions showing up as fixed in the 1.24.0 milestone and nothing marked as pending. Can we either get a 1.24.0 release or backport the fix for this issue into a 1.23.8 release?

@bt90
Copy link
Contributor

bt90 commented Sep 5, 2023

Can we either get a 1.24.0 release

https://github.com/syncthing/syncthing/releases/tag/v1.24.0

@dlangille
Copy link

Fixed as of #9040.

Conversely, it's no longer possible to build with Go 1.19.

Same problem here. I just tried building 1.24.0 and it fails.

:/

@bt90
Copy link
Contributor

bt90 commented Sep 6, 2023

Syncthing v1.24.0 requires go1.20+

See https://docs.syncthing.net/dev/building.html#prerequisites

The latest stable version of Go. The previous stable version should also work; older versions will likely not work.

@dlangille
Copy link

Success. Thank you.

@dlangille
Copy link

To be clear, https://docs.syncthing.net/dev/building.html#prerequisites just says "The latest stable version of Go." and below that mentions "This should output "go version go1.18" or higher."

@calmh
Copy link
Member

calmh commented Sep 6, 2023

Fixed, thanks for noticing.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
build Issues caused by or requiring changes to the build system (scripts or Docker image)
Projects
None yet
Development

No branches or pull requests

8 participants