name: Miri on: workflow_dispatch: pull_request: types: [opened, synchronize] paths: - "crates/oxc_allocator/**" - "crates/oxc_data_structures/**" - "crates/oxc_parser/**" - "crates/oxc_traverse/**" - ".github/workflows/miri.yml" push: branches: - main paths: - "crates/oxc_allocator/**" - "crates/oxc_data_structures/**" - "crates/oxc_parser/**" - "crates/oxc_traverse/**" - ".github/workflows/miri.yml" concurrency: group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.sha }} cancel-in-progress: true jobs: miri: name: Miri runs-on: ubuntu-latest steps: - name: Checkout uses: taiki-e/checkout-action@b13d20b7cda4e2f325ef19895128f7ff735c0b3d # v1.3.1 - uses: oxc-project/setup-rust@cd82e1efec7fef815e2c23d296756f31c7cdc03d # v1.0.0 with: cache-key: miri save-cache: ${{ github.ref_name == 'main' }} - name: Install Miri run: | rustup toolchain install nightly --component miri rustup override set nightly cargo miri setup - name: Test with Miri run: | cargo miri test -p oxc_parser cargo miri test -p oxc_transformer