Debug stack overflow #302
Workflow file for this run
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: | |
| tags: | |
| - "v*.*.*" | |
| branches: | |
| - main | |
| pull_request: | |
| permissions: | |
| checks: write | |
| pull-requests: write | |
| env: | |
| CARGO_TERM_COLOR: always | |
| WASI_SDK_VERSION: "25" | |
| WASI_SDK_PATH: /opt/wasi-sdk | |
| jobs: | |
| build: | |
| runs-on: blacksmith-16vcpu-ubuntu-2404 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: ./.github/actions/setup | |
| - name: Check formatting | |
| run: cargo fmt -- --check | |
| - name: Clippy | |
| run: cargo clippy -- -Dwarnings | |
| - name: Build | |
| run: cargo build --all-targets | |
| test-other: | |
| needs: [build] | |
| runs-on: blacksmith-16vcpu-ubuntu-2404 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: ./.github/actions/setup | |
| - name: Compilation, DTS and error tests | |
| run: cargo test --test compilation --test dts --test errors -- --nocapture --report-time --format ctrf --logfile target/ctrf.json | |
| - name: Publish Test Report | |
| uses: ctrf-io/github-test-reporter@v1 | |
| if: always() | |
| with: | |
| report-path: "**/target/ctrf-*.json" | |
| upload-artifact: "true" | |
| artifact-name: test-other-report | |
| summary: true | |
| summary-report: true | |
| failed-report: true | |
| slowest-report: true | |
| github-report: true | |
| flaky-report: true | |
| collapse-large-reports: true | |
| exit-on-no-files: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| test-runtime: | |
| needs: [build] | |
| runs-on: blacksmith-16vcpu-ubuntu-2404 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| group: [1, 2, 3, 4, 5, 6, 7, 8] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: ./.github/actions/setup | |
| - name: Runtime tests under gdb (groups 1-2) | |
| if: matrix.group == 1 || matrix.group == 2 | |
| run: bash .github/scripts/run-runtime-group-under-gdb.sh ${{ matrix.group }} | |
| - name: Runtime tests (group ${{ matrix.group }}/8) | |
| if: matrix.group != 1 && matrix.group != 2 | |
| run: cargo test --test runtime -- --nocapture --report-time --format ctrf --logfile target/ctrf.json ':tag:group${{ matrix.group }}' | |
| - name: Upload gdb log | |
| uses: actions/upload-artifact@v4 | |
| if: always() && (matrix.group == 1 || matrix.group == 2) | |
| with: | |
| name: test-runtime-group-${{ matrix.group }}-gdb-log | |
| path: | | |
| target/gdb-runtime-group${{ matrix.group }}.log | |
| target/gdb-runtime-group${{ matrix.group }}.cmds | |
| if-no-files-found: warn | |
| - name: Publish Test Report | |
| uses: ctrf-io/github-test-reporter@v1 | |
| if: always() && matrix.group != 1 && matrix.group != 2 | |
| with: | |
| report-path: "**/target/ctrf-*.json" | |
| upload-artifact: "true" | |
| artifact-name: test-runtime-group-${{ matrix.group }}-report | |
| summary: true | |
| summary-report: true | |
| failed-report: true | |
| slowest-report: true | |
| github-report: true | |
| flaky-report: true | |
| collapse-large-reports: true | |
| exit-on-no-files: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| test-node-compat: | |
| needs: [build] | |
| runs-on: blacksmith-16vcpu-ubuntu-2404 | |
| strategy: | |
| fail-fast: false | |
| matrix: | |
| shard: [0, 1, 2, 3, 4, 5, 6, 7] | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: ./.github/actions/setup | |
| - name: Vendor Node.js test suite | |
| run: bash tests/node_compat/vendor.sh | |
| - name: Node compat tests (shard ${{ matrix.shard }}/8) | |
| run: cargo test --test node_compat -- --nocapture --report-time --format ctrf --logfile target/ctrf.json ':tag:shard${{ matrix.shard }}' | |
| - name: Publish Test Report | |
| uses: ctrf-io/github-test-reporter@v1 | |
| if: always() | |
| with: | |
| report-path: "**/target/ctrf-*.json" | |
| upload-artifact: "true" | |
| artifact-name: test-node-compat-shard-${{ matrix.shard }}-report | |
| summary: true | |
| summary-report: true | |
| failed-report: true | |
| slowest-report: true | |
| github-report: true | |
| flaky-report: true | |
| collapse-large-reports: true | |
| exit-on-no-files: true | |
| env: | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| publish: | |
| needs: [test-other, test-runtime, test-node-compat] | |
| if: "startsWith(github.ref, 'refs/tags/v')" | |
| runs-on: blacksmith-16vcpu-ubuntu-2404 | |
| steps: | |
| - uses: actions/checkout@v4 | |
| with: | |
| submodules: true | |
| - uses: ./.github/actions/setup | |
| with: | |
| cache-key: release | |
| - id: get_version | |
| uses: battila7/get-version-action@v2 | |
| - name: Publish crates | |
| env: | |
| CARGO_REGISTRY_TOKEN: ${{ secrets.CARGO_REGISTRY_TOKEN }} | |
| run: | | |
| export VERSION="${{ steps.get_version.outputs.version-without-v }}" | |
| sed -i "s/0.0.0/$VERSION/g" Cargo.toml | |
| cargo publish -p wasm-rquickjs --features optimize --allow-dirty | |
| cargo publish -p wasm-rquickjs-cli --allow-dirty |