sml-hamt: re-vendor range-safe intRange fix from sml-prng #3
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: CI | |
| on: | |
| push: | |
| branches: [ main ] | |
| pull_request: | |
| branches: [ main ] | |
| jobs: | |
| mlton: | |
| name: MLton (build + test + example) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install MLton | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y mlton | |
| - name: Run tests | |
| run: make test | |
| - name: Run example | |
| run: make example | |
| - name: Capture raw output | |
| # Raw binary stdout only — never `make | tee`, whose command echoes | |
| # differ between the mlton/poly targets and would break the byte diff. | |
| run: | | |
| ./bin/test-mlton > test-out.txt | |
| make -s example > demo-out.txt | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: out-mlton | |
| path: | | |
| test-out.txt | |
| demo-out.txt | |
| polyml: | |
| name: Poly/ML (test + example) | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v4 | |
| - name: Install Poly/ML | |
| run: | | |
| sudo apt-get update | |
| sudo apt-get install -y polyml libpolyml-dev | |
| - name: Run tests | |
| run: make test-poly | |
| - name: Run example | |
| run: make example-poly | |
| - name: Capture raw output | |
| run: | | |
| ./bin/test-poly > test-out.txt | |
| make -s example-poly > demo-out.txt | |
| - uses: actions/upload-artifact@v4 | |
| with: | |
| name: out-poly | |
| path: | | |
| test-out.txt | |
| demo-out.txt | |
| byte-identical: | |
| name: Byte-identical output | |
| runs-on: ubuntu-latest | |
| needs: [mlton, polyml] | |
| steps: | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: out-mlton | |
| path: mlton | |
| - uses: actions/download-artifact@v4 | |
| with: | |
| name: out-poly | |
| path: poly | |
| - name: Diff test output | |
| run: diff mlton/test-out.txt poly/test-out.txt | |
| - name: Diff example output | |
| run: diff mlton/demo-out.txt poly/demo-out.txt |