| name: CI for interpreter & tests |
| |
| on: |
| push: |
| branches: [ main, wasm-3.0 ] |
| paths: [ .github/**, interpreter/**, test/** ] |
| |
| pull_request: |
| branches: [ main, wasm-3.0 ] |
| paths: [ .github/**, interpreter/**, test/** ] |
| |
| # Allows you to run this workflow manually from the Actions tab |
| workflow_dispatch: |
| |
| jobs: |
| interpreter: |
| runs-on: ubuntu-latest |
| steps: |
| - name: Checkout repo |
| uses: actions/checkout@v4 |
| - name: Setup OCaml |
| uses: ocaml/setup-ocaml@v3 |
| with: |
| ocaml-compiler: 5.04.x |
| - name: Setup OCaml tools |
| run: opam install --yes ocamlfind js_of_ocaml js_of_ocaml-ppx |
| - name: Build interpreter |
| run: cd interpreter && opam exec make |
| # Neither V8 nor SpiderMonkey can currently handle all 3.0 tests, so we disable checking JS translation for now. |
| #- name: Setup Node.js |
| # uses: actions/setup-node@v4 |
| # with: |
| # node-version: 25-nightly |
| #- name: Setup SpiderMonkey |
| # run: curl -O https://archive.mozilla.org/pub/firefox/nightly/latest-mozilla-central/jsshell-linux-x86_64.zip && unzip jsshell-linux-x86_64.zip |
| - name: Run tests |
| run: cd interpreter && opam exec make ci # don't test JS translation |
| # run: cd interpreter && opam exec make JS=node ci # test with V8 |
| # run: cd interpreter && opam exec make JS=../js ci # test with SM |