chore: fix some typechecking errors for new type solver #101
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 | |
| paths-ignore: | |
| - '**/*.md' | |
| - 'examples/**' | |
| pull_request: | |
| workflow_dispatch: | |
| defaults: | |
| run: | |
| shell: bash | |
| permissions: | |
| actions: write | |
| jobs: | |
| fmt: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install nix | |
| uses: nixbuild/nix-quick-install-action@v29 | |
| - name: Restore and cache Nix store | |
| uses: nix-community/cache-nix-action@v5 | |
| with: | |
| primary-key: nix-${{ runner.os }}-${{ hashFiles('**/*.nix') }} | |
| restore-prefixes-first-match: nix-${{ runner.os }}- | |
| gc-max-store-size-linux: 5368709000 | |
| purge: true | |
| purge-prefixes: cache-${{ runner.os }}- | |
| purge-created: 0 | |
| purge-primary-key: never | |
| - name: Cache pesde data | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.pesde | |
| key: pesde-${{ runner.os }}-${{ hashFiles('pesde.toml') }} | |
| - name: Install dependencies | |
| run: nix develop -c pesde install --locked | |
| - name: Check formatting | |
| run: nix develop -c lune run fmt --check | |
| typecheck: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install nix | |
| uses: nixbuild/nix-quick-install-action@v29 | |
| - name: Restore and cache Nix store | |
| uses: nix-community/cache-nix-action@v5 | |
| with: | |
| primary-key: nix-${{ runner.os }}-${{ hashFiles('**/*.nix') }} | |
| restore-prefixes-first-match: nix-${{ runner.os }}- | |
| gc-max-store-size-linux: 5368709000 | |
| purge: true | |
| purge-prefixes: cache-${{ runner.os }}- | |
| purge-created: 0 | |
| purge-primary-key: never | |
| - name: Cache pesde data | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.pesde | |
| key: pesde-${{ runner.os }}-${{ hashFiles('pesde.toml') }} | |
| - name: Install dependencies | |
| run: nix develop -c pesde install --locked | |
| - name: Setup lune typedefs | |
| run: nix develop -c lune setup | |
| - name: Typecheck | |
| run: nix develop -c lune run typecheck | |
| test: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install nix | |
| uses: nixbuild/nix-quick-install-action@v29 | |
| - name: Restore and cache Nix store | |
| uses: nix-community/cache-nix-action@v5 | |
| with: | |
| primary-key: nix-${{ runner.os }}-${{ hashFiles('**/*.nix') }} | |
| restore-prefixes-first-match: nix-${{ runner.os }}- | |
| gc-max-store-size-linux: 5368709000 | |
| purge: true | |
| purge-prefixes: cache-${{ runner.os }}- | |
| purge-created: 0 | |
| purge-primary-key: never | |
| - name: Cache pesde data | |
| uses: actions/cache@v4 | |
| with: | |
| path: ~/.pesde | |
| key: pesde-${{ runner.os }}-${{ hashFiles('pesde.toml') }} | |
| - name: Install dependencies | |
| run: nix develop -c pesde install --locked | |
| - name: Generate test data | |
| run: | | |
| nix develop -c lune run scripts/generate_invalid_version_zip.luau 64 | |
| nix develop -c lune run scripts/generate_inflate_testdata.luau | |
| - name: Run tests | |
| run: | | |
| # HACK: Since the exit code isn't properly reflected due to frktest not returning | |
| # the correct status on test fails, we have to parse the output and check ourselves | |
| output="$(nix develop -c lune run tests | tee /dev/stderr)" | |
| tail -n 1 <<< $output | sed 's/\x1b\[[0-9;]*m//g' | grep -q "status: OK" |