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

test on Go 1.22.x, draft changelog #828

Merged
merged 4 commits into from
Feb 8, 2024
Merged

Conversation

mvdan
Copy link
Member

@mvdan mvdan commented Feb 7, 2024

(see commit messages - please do not squash)

@mvdan
Copy link
Member Author

mvdan commented Feb 7, 2024

FYI @pagran that TODO relates to #825 (comment) - if you aren't able to write the docs this week that's not a problem, I'll remove the TODO and we can add them post-release.

@mvdan
Copy link
Member Author

mvdan commented Feb 7, 2024

Will need to look into why 1.22 fails on mac.

@pagran
Copy link
Member

pagran commented Feb 7, 2024

FYI @pagran that TODO relates to #825 (comment) - if you aren't able to write the docs this week that's not a problem, I'll remove the TODO and we can add them post-release.

I'll add documentation on the weekend

@mvdan
Copy link
Member Author

mvdan commented Feb 8, 2024

I think I figured out the MacOS bug; it was already an existing bug, we just hadn't spotted it yet. Please review that last commit @lu4p

@mvdan mvdan mentioned this pull request Feb 8, 2024
It seems like building with Go 1.22.0 for GOOS=darwin started
running into some issues with the syscall package's use of ABIInternal
in assembly source code:

    > exec garble build
    [stderr]
    # syscall
    [...].s:16: ABI selector only permitted when compiling runtime, reference was to "runtime.entersyscall"

The error can be reproduced from another platform like GOOS=linux
as long as we have any test that cross-compiles std to GOOS=darwin.
We had crossbuild.txtar which only ensured we covered GOOS=windows
and GOOS=linux, so add a third case to ensure MacOS is covered too.

This will slow down the tests a bit, but is important for the sake
of ensuring that we catch these bugs early, even without MacOS on CI.
In fact, we hadn't caught this earlier for Go 1.22 precisely because
on CI we only tested on Go tip with GOOS=linux, for the sake of speed.

Adding the rest of the package import paths from objabi.allowAsmABIPkgs
to our runtimeAndDeps generated map solves this error.
@lu4p lu4p merged commit 55921a0 into burrowers:master Feb 8, 2024
8 checks passed
@mvdan mvdan deleted the prepare-release branch February 10, 2024 10:30
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants