Thanks to visit codestin.com
Credit goes to github.com

Skip to content

Conversation

@QuLogic
Copy link
Contributor

@QuLogic QuLogic commented Jul 22, 2025

These platforms pass the stat tests just fine with the existing implementation.

@QuLogic QuLogic requested a review from mathetake as a code owner July 22, 2025 22:04
Copy link
Member

@mathetake mathetake left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

hmm, I am not sure if we cannot run the tests on these platforms. How can we sure that adding these tags is correct?

@QuLogic
Copy link
Contributor Author

QuLogic commented Jul 29, 2025

Well, all I can tell you is that I've run the tests and they work. If you want to setup more cross-arch tests, then I can, or you can do downstream checks in Fedora with Packit.

@ncruces
Copy link
Contributor

ncruces commented Jul 29, 2025

For what's worth it, I test both these platforms (as well as 386 for 32-bit and s390x for big endian) at ncruces/go-sqlite3 with Qemu.

The interpreter should be fine, but WASI is completely untested. Given it's Linux, the bar shouldn't be too high to get things working, though. The major issue here is that the structs need to have the same layout (which is not a given across archs).

I'm of the opinion that, at least the WASI implementation, if it's not spun off, should start using x/sys/unix to take these matters as much as possible off our hands.

These platforms pass the stat tests just fine with the existing
implementation.

Signed-off-by: Elliott Sales de Andrade <[email protected]>
@Xe
Copy link

Xe commented Sep 23, 2025

Techaro has a PPC64LE shellbox, email me if you want access.

@evacchi
Copy link
Member

evacchi commented Sep 25, 2025

@ncruces
Copy link
Contributor

ncruces commented Sep 25, 2025

For Linux we probably just use docker/setup-qemu-action and run a subset of tests. I regularly test wazero that way. In the past I think we didn't do that because of concerns about quotas? What's the situation now?

Another solution for this is to simply depend on x/sys/unix: push the responsibility there, and assume things should work if they're tested on Linux/macOS/BSD.

This would be a breaking change with the "zero dependencies" motto, but: Go maintainers maintain x/sys/unix, and it's their stated goal that syscalls should go through there.

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

Successfully merging this pull request may close these issues.

5 participants