DLR-FT / wasm-interpreter

A minimal in-place WebAssembly interpreter, written in Rust, almost without use of external dependencies
https://dlr-ft.github.io/wasm-interpreter/main/
Apache License 2.0
10 stars 4 forks source link

fix: rework github workflows to use nix #60

Closed george-cosma closed 3 months ago

george-cosma commented 3 months ago

Pull Request Overview

This pull request changes the github workflows to use nix. The coverage preview was left unmodified since I believe it works well-enough as-is.

Testing Strategy

This pull request was tested on my own fork. See https://github.com/george-cosma/wasm-interpreter/pull/9 for coverage-preview and https://github.com/george-cosma/wasm-interpreter/actions/runs/10161441119/job/28099916237 for main deployment

Formatting

codecov[bot] commented 3 months ago

Codecov Report

All modified and coverable lines are covered by tests :white_check_mark:

wucke13 commented 3 months ago

Note: There is one caveat, which justifies still running cargo test external from Nix. Nix either succeeds or fails. If it fails, we get no report at all. So in order to have some insight on test failure having a normal cargo test CI run that is not in nix build still is very valuable. For these cases, nix develop . --command cargo test could be useful, which just uses Nix to provide the toolchain but then runs arbitrary commands in shell (without the all-or-nothin logic of nix build).

george-cosma commented 3 months ago

I'm not sure I am seeing the issue? For the main deployment, we know that it will (most likely) because it has gone through a PR review process. In the case of the coverage report preview, if the build/tests fail, I don't why a coverage report can't be generated? I'm not sure I understand why you would want an extra task to run cargo test