Skip to content

v5.0.0-rc.6

v5.0.0-rc.6 #62

Workflow file for this run

name: Publish
on:
release:
types: [released, prereleased]
jobs:
publish_npm:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4 # version comes from the "packageManager" field in package.json
- uses: actions/setup-node@v4
with:
node-version-file: '.node-version'
cache: pnpm
cache-dependency-path: pnpm-lock.yaml
registry-url: "https://registry.npmjs.org"
- run: pnpm i --frozen-lockfile --production false
- run: pnpm build && pnpm test
# Must use `pnpm publish` (not `npm publish`): npm ignores
# `publishConfig.exports`, so the development-time exports field
# (pointing at ./src/*.ts for vitest self-imports) leaks into the
# published artifact and breaks consumers. See #228.
- name: Publish to npm
run: |
if ${{ github.event.release.prerelease }}; then
echo "Publishing pre-release..."
pnpm publish --access=public --provenance --no-git-checks --tag next
else
echo "Publishing release..."
pnpm publish --access=public --provenance --no-git-checks
fi
publish_jsr:
runs-on: ubuntu-latest
permissions:
contents: read
id-token: write
steps:
- uses: actions/checkout@v4
- uses: pnpm/action-setup@v4 # version comes from the "packageManager" field in package.json
- uses: actions/setup-node@v4
with:
node-version-file: '.node-version'
cache: pnpm
cache-dependency-path: pnpm-lock.yaml
- run: pnpm install --frozen-lockfile --production false
- run: pnpm dlx jsr publish