mirror of
https://github.com/supabase/supabase.git
synced 2026-10-08 19:05:06 +03:00
Two-part fix for the Update JS Client Libraries Docs workflow. First, the `make` invocation was narrowed to `make download.tsdoc.v2` so the workflow no longer re-downloads unrelated Management and Storage REST openapi specs alongside the JS TypeDoc files, which was the source of the noise in #46738. Second, the `build-reference-content` snapshot test now serializes to a JSON file via `toMatchFileSnapshot` with a cycle-breaker, because the previous `toMatchSnapshot` of a raw object was being collapsed to `[Object]` placeholders by pretty-format (533 of them), hiding every param rename, JSDoc edit, return-type change, and signature tweak. Verified against supabase-js v2.108.0: the `count` to `rows` rename in `PostgrestTransformBuilder.{limit,maxAffected}` now shows up in the snapshot diff as expected. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated documentation generation workflow to run a more targeted build command. * Added ignore rule for test snapshot files and refreshed the autogenerated PR description/reference snapshot. * **Tests** * Improved test snapshot strategy to use file-based snapshots and robust handling of circular structures for more reliable assertions. <!-- end of auto-generated comment: release notes by coderabbit.ai -->
87 lines
2.9 KiB
YAML
87 lines
2.9 KiB
YAML
name: Update JS Client Libraries Docs
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
inputs:
|
|
version:
|
|
description: 'Version that was released (e.g., patch, minor, major, or v2.1.0)'
|
|
required: true
|
|
type: string
|
|
source:
|
|
description: 'Source of the documentation update'
|
|
required: false
|
|
type: string
|
|
default: 'manual'
|
|
|
|
permissions:
|
|
pull-requests: write
|
|
contents: write
|
|
|
|
jobs:
|
|
update-docs:
|
|
runs-on: ubuntu-latest
|
|
|
|
steps:
|
|
- uses: actions/checkout@08eba0b27e820071cde6df949e0beb9ba4906955 # v4.3.0
|
|
with:
|
|
persist-credentials: false
|
|
ref: master
|
|
|
|
- uses: pnpm/action-setup@41ff72655975bd51cab0327fa583b6e92b6d3061 # v4.2.0
|
|
name: Install pnpm
|
|
with:
|
|
run_install: false
|
|
|
|
- name: Use Node.js
|
|
uses: actions/setup-node@49933ea5288caeca8642d1e84afbd3f7d6820020 # v4.4.0
|
|
with:
|
|
node-version-file: '.nvmrc'
|
|
cache: 'pnpm'
|
|
|
|
- name: Install deps
|
|
run: pnpm install --frozen-lockfile
|
|
|
|
- name: Regenerate JS client libraries tsdoc files
|
|
working-directory: apps/docs/spec
|
|
env:
|
|
SOURCE: ${{ github.event.inputs.source }}
|
|
VERSION: ${{ github.event.inputs.version }}
|
|
run: |
|
|
echo "Regenerating tsdoc files for JS client libraries..."
|
|
echo "Source: ${SOURCE}"
|
|
echo "Version: ${VERSION}"
|
|
make download.tsdoc.v2
|
|
|
|
- name: Refresh reference-content snapshot
|
|
working-directory: apps/docs
|
|
# Using --dir (not a file path) so Vitest 4 doesn't run unrelated tests.
|
|
run: npx vitest run --update --dir scripts
|
|
|
|
- name: Generate token
|
|
id: app-token
|
|
uses: actions/create-github-app-token@bcd2ba49218906704ab6c1aa796996da409d3eb1 # v3.2.0
|
|
with:
|
|
client-id: ${{ vars.GH_AUTOFIX_APP_CLIENT_ID }}
|
|
private-key: ${{ secrets.GH_AUTOFIX_PRIVATE_KEY }}
|
|
permission-contents: write
|
|
permission-pull-requests: write
|
|
|
|
- name: Create pull request
|
|
uses: peter-evans/create-pull-request@c5a7806660adbe173f04e3e038b0ccdcd758773c # v6.1.0
|
|
with:
|
|
token: ${{ steps.app-token.outputs.token }}
|
|
commit-message: 'docs: update js sdk docs (${{ github.event.inputs.version }})'
|
|
title: 'docs: update js sdk docs (${{ github.event.inputs.version }})'
|
|
body: |
|
|
Updates JS sdk documentation following stable release.
|
|
Ran `make download.tsdoc.v2` in apps/docs/spec and refreshed the reference-content snapshot.
|
|
|
|
**Details:**
|
|
- **Version:** `${{ github.event.inputs.version }}`
|
|
- **Source:** `${{ github.event.inputs.source }}`
|
|
- **Changes:** Regenerated tsdoc files from latest spec files
|
|
|
|
🤖 Auto-generated from @supabase/supabase-js stable release.
|
|
branch: 'gha/update-js-sdk-docs-${{ github.run_number }}'
|
|
base: 'master'
|