fix(server): observe the serialized race so a pre-shell rejection can… #434
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: Release | |
| on: | |
| push: | |
| branches: | |
| - next | |
| concurrency: ${{ github.workflow }}-${{ github.ref }} | |
| permissions: | |
| actions: write | |
| contents: write | |
| id-token: write | |
| pull-requests: write | |
| jobs: | |
| release: | |
| name: Release | |
| runs-on: ubuntu-latest | |
| outputs: | |
| published: ${{ steps.changesets.outputs.published }} | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| with: | |
| fetch-depth: 0 | |
| - uses: pnpm/action-setup@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version-file: ".nvmrc" | |
| registry-url: "https://registry.npmjs.org" | |
| cache: "pnpm" | |
| - name: Install dependencies | |
| run: pnpm install --frozen-lockfile | |
| # The workspace resolves @solidjs/compiler locally, so everything that | |
| # loads it through @solidjs/vite-plugin (the examples built by | |
| # release.mjs's `pnpm run build` included) needs the binding built — | |
| # the root build script skips the Rust build. The TanStack Solid Query | |
| # gate also hands this binding to the compiler it packs (#3534). | |
| - uses: dtolnay/rust-toolchain@stable | |
| - uses: Swatinem/rust-cache@v2 | |
| with: | |
| workspaces: packages/compiler | |
| - name: Build compiler binding | |
| run: pnpm --filter @solidjs/compiler run build | |
| - name: Create version pull request or publish | |
| id: changesets | |
| uses: changesets/action@v1 | |
| with: | |
| version: pnpm run version-packages | |
| publish: pnpm run release | |
| title: Release RC packages | |
| commit: Version packages | |
| env: | |
| GH_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| # Emergency valve for the TanStack Solid Query gate: set to the exact | |
| # version being released to let that ONE release through without it | |
| # (see scripts/release.mjs). Self-expiring; remove after the release. | |
| # SKIP_SOLID_QUERY_GATE: 2.0.0-rc.N | |
| # Installs the just-published packages from the real registry into a temp | |
| # project and exercises them (dist-tags, native compiler binary, runtime). | |
| smoke: | |
| name: Smoke test published packages | |
| needs: release | |
| if: needs.release.outputs.published == 'true' | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v4 | |
| with: | |
| node-version-file: ".nvmrc" | |
| registry-url: "https://registry.npmjs.org" | |
| - name: Smoke test | |
| run: node scripts/smoke-release.mjs |