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

syscall: TestStdioAreInheritable fails on windows-arm64-aws because it tries to build a library using an unsupported build mode #46582

Closed
dmitshur opened this issue Jun 5, 2021 · 4 comments
Labels
FrozenDueToAge NeedsFix The path to resolution is known, but the work has not been done. Testing An issue that has been verified to require only test changes, not just a test failure.
Milestone

Comments

@dmitshur
Copy link
Contributor

dmitshur commented Jun 5, 2021

The new-to-Go 1.17 windows/arm64 port (#36439) at this time doesn't support the c-shared build mode (#46549). TestStdioAreInheritable was added in CL 316269 and currently makes use of the c-shared build mode:

cmd := exec.Command(testenv.GoToolPath(t), "build", "-o", dll, "-buildmode", "c-shared", dllsrc)
out, err := testenv.CleanCmdEnv(cmd).CombinedOutput()
if err != nil {
t.Fatalf("failed to build go library: %s\n%s", err, out)
}

​The test fails on windows/arm64 as detected by the windows-arm64-aws builder:

--- FAIL: TestStdioAreInheritable (0.08s)
   ​syscall_windows_test.go:110: failed to build go library: exit status 1
       ​-buildmode=c-shared not supported on windows/arm64
FAIL
FAIL	syscall	0.353s

Source: https://storage.googleapis.com/go-build-log/78592762/windows-arm64-aws_f90b24c9.log from CL 323991.

The test can be skipped on windows/arm64 since that port doesn't meet the minimum requirements (CL 323992 adds this skip). Perhaps the test can be updated not to require c-shared build mode. As another option, the test may stop failing if the c-shared build mode gets enabled for windows/arm64 port.

CC @alexbrainman, @ianlancetaylor.

@dmitshur dmitshur added Testing An issue that has been verified to require only test changes, not just a test failure. NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. labels Jun 5, 2021
@dmitshur dmitshur added this to the Go1.17 milestone Jun 5, 2021
@gopherbot
Copy link
Contributor

Change https://golang.org/cl/323992 mentions this issue: syscall: skip TestStdioAreInheritable when c-shared is unsupported

@dmitshur dmitshur added NeedsFix The path to resolution is known, but the work has not been done. and removed NeedsInvestigation Someone must examine and confirm this is a valid issue and not a duplicate of an existing one. labels Jun 14, 2021
@dmitshur
Copy link
Contributor Author

The windows/arm64 port supports c-shared build mode as of CL 326310, and TestStdioAreInheritable is no longer failing. (CC @zx2c4.) Closing as fixed.

@zx2c4
Copy link
Contributor

zx2c4 commented Jun 14, 2021

That test is actually skipped now because those builders don't have native powershell.

@dmitshur
Copy link
Contributor Author

Thanks. I understand issue #46701 tracks the remaining future work, so it's okay to keep this closed.

@golang golang locked and limited conversation to collaborators Jun 14, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
FrozenDueToAge NeedsFix The path to resolution is known, but the work has not been done. Testing An issue that has been verified to require only test changes, not just a test failure.
Projects
None yet
Development

No branches or pull requests

3 participants