WebAssembly/wasi-testsuite

Include precompiled wasm files in the repository

sunfishcode opened this issue · 2 comments

I know this repository is in the early stages, but I wanted to surface this concern early so that it can be incorporated in the design.

The testsuite currently requires users have npm installed, and requires them to allow npm to install several third-party packages. It's desirable to avoid requiring dependencies like this just to run the testsuite. This will be even more true in the future as we look forward to adding more tests written in more source languages.

The most straightforward way to do this would be to check in the generated wasm files into the repository. It'll still be valuable to have the source code in the repository, but additionally having the wasm modules in the repository would make it possible to run the testsuite with just the harness dependencies and a wasm engine.

Hi @sunfishcode , this is already something we've taken into account. This was also being discussed in my slides here. There's a work in progress (started yesterday) to publish precompiled test binaries, and test harness will support pulling those in at runtime (https://github.com/loganek/wasi-testsuite/blob/7791d37ca4de75cb3cb0f104eb140e98f39b0a91/.github/workflows/compile-tests.yml#L96). I'm still experimenting with different ways to store these binaries; currently they're being packaged into zip file (one zip per test suite) and published to the precompiled-tests branch - I did that so developers that are willing to contribute to this repository can omit pulling this branch (or only pull main) and won't be affected by potentially large size of the whole repository. This was a concern raised by some of the developers working from China, so I think we shouldn't pollute main branch with those binaries.

Thanks!