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

psiphon is disabled when building with go1.19 #2222

Closed
bassosimone opened this issue Aug 22, 2022 · 0 comments · Fixed by ooni/probe-cli#1014
Closed

psiphon is disabled when building with go1.19 #2222

bassosimone opened this issue Aug 22, 2022 · 0 comments · Fixed by ooni/probe-cli#1014
Assignees
Labels
bug Something isn't working needs investigation This issue needs extra data and investigation ooni/probe-engine priority/high technical task technical tasks e.g. deployment

Comments

@bassosimone
Copy link
Member

bassosimone commented Aug 22, 2022

While working on #2211, I noticed that we cannot actually upgrade to go1.19 because Psiphon does not work/build using go1.19. The build fails as follows:

% go1.19 build -v ./...
github.com/ooni/probe-cli/v3/internal/tutorial/measurex/chapter13
github.com/ooni/probe-cli/v3/internal/cmd/e2epostprocess
github.com/ooni/probe-cli/v3/internal/cmd/getresources
github.com/ooni/probe-cli/v3/internal/cmd/printversion
github.com/ooni/probe-cli/v3/internal/netxlite/internal/generrno
github.com/ooni/probe-cli/v3/internal/tutorial/generator
github.com/ooni/psiphon/tunnel-core/oovendor/quic-go/internal/qtls
# github.com/ooni/psiphon/tunnel-core/oovendor/quic-go/internal/qtls
/Users/sbs/go/pkg/mod/github.com/ooni/psiphon/tunnel-core@v0.0.0-20220819091114-7dccc0b6b6cd/oovendor/quic-go/internal/qtls/go119.go:6:13: cannot use "quic-go doesn't build on Go 1.19 yet." (untyped string constant) as int value in variable declaration

I think the issue is in the quic-go fork maintained by Psiphon.

As an interim solution, I have disabled Psiphon when building with go1.19. This means that attempting to use Psiphon as a tunnel, or running the Psiphon experiment, fails with:

psiphon is disabled when building with go1.19: see https://github.com/ooni/probe/issues/2222 for more information

I'll try to figure out how to actually make Psiphon build for go1.19 and propose a diff to the Psiphon team.

I've marked all the places that require changes once this problem is solved with TODO(https://github.com/ooni/probe/issues/2222) such that it should be easy to find/fix all of them when we have a better fix.

@bassosimone bassosimone added bug Something isn't working triage labels Aug 22, 2022
@bassosimone bassosimone self-assigned this Aug 22, 2022
@bassosimone bassosimone changed the title psiphon: build fails with go1.19 psiphon is disabled when building with go1.19 Aug 22, 2022
@bassosimone bassosimone added priority/high technical task technical tasks e.g. deployment needs investigation This issue needs extra data and investigation ooni/probe-engine and removed triage labels Aug 22, 2022
bassosimone added a commit to ooni/probe-cli that referenced this issue Aug 22, 2022
Part of ooni/probe#2211.

See also ooni/probe#2222, which
describes the issue we have with psiphon.
bassosimone added a commit to ooni/probe-cli that referenced this issue Aug 22, 2022
Part of ooni/probe#2211.

See also ooni/probe#2222, which
describes the issue we have with psiphon and go1.19.
bassosimone added a commit to ooni/probe-cli that referenced this issue Aug 22, 2022
This diff pins OONI to use go1.18.5 and oohttp and oocrypto at
go1.18.5 as the version of go with which we build releases.

The same codebase also works with go1.19 although this configuration
cannot include Psiphon (see ooni/probe#2222).

Closes ooni/probe#2223.
bassosimone added a commit to ooni/probe-cli that referenced this issue Aug 22, 2022
* chore: use {go,oohttp,oocrypto} v1.18.5

This diff pins OONI to use go1.18.5 and oohttp and oocrypto at
go1.18.5 as the version of go with which we build releases.

The same codebase also works with go1.19 although this configuration
cannot include Psiphon (see ooni/probe#2222).

Closes ooni/probe#2223.

* fix: use oocrypto@v0.1.1

This ensures we keep ooni/probe#2122 fixed.
bassosimone added a commit to ooni/probe-cli that referenced this issue Jan 5, 2023
bassosimone added a commit to ooni/probe-cli that referenced this issue Jan 5, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working needs investigation This issue needs extra data and investigation ooni/probe-engine priority/high technical task technical tasks e.g. deployment
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant