Test CLE under Pyodide - #704
Conversation
|
Corpus decompilation diffs can be found at angr/dec-snapshots@master...angr/cle_704 |
|
Please rebase your branch on top of master! |
|
THIS MESSAGE WAS GENERATED BY AN AUTOMATED PROCESS Rebased Validation: the exact rebased CLE checkout passes with 200 passed and 9 skipped, all pre-commit hooks pass under Python 3.12, the complete workspace gate passes, and all 20 fresh PR checks are green, including Pyodide. |
|
|
||
| import pytest | ||
|
|
||
| pytestmark = pytest.mark.skipif(sys.platform == "emscripten", reason="subprocesses are unavailable in Pyodide") |
There was a problem hiding this comment.
This looks unused, but even if it was it should be unittest
| import timeit | ||
|
|
||
| import cffi | ||
| import pytest |
There was a problem hiding this comment.
Convert this to unittest instead of using pytest
| ci: | ||
| uses: angr/ci-settings/.github/workflows/angr-ci.yml@master | ||
|
|
||
| pyodide: |
There was a problem hiding this comment.
Can we use uv with its tool.uv.sources to checkout all of the repos we need instead of doing this manually? And then instead of building wheels, can we do a uv sync with the right platform config set, and run our tests in that environment?
Adds a Pyodide CI job analogous to PyVEX CI. It builds the PyVEX WebAssembly wheel, builds CLE and archinfo wheels, installs them into a Pyodide virtualenv, and runs the CLE test suite.
The branch currently includes the commits from #703 because importing current master under Pyodide fails in the optional UEFI backend. Those commits will disappear from this diff when #703 merges.
Tandem PRs: