Bump typescript to v7.0.2 #72004
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: | |
| branches: | |
| # should sync with ci-check.yml as a workaround to bypass github checks | |
| - master | |
| - next | |
| - v*.x | |
| pull_request: | |
| paths-ignore: | |
| # should sync with ci-check.yml as a workaround to bypass github checks | |
| - 'docs/**' | |
| permissions: {} | |
| jobs: | |
| # Tests dev-only scripts across all supported dev environments | |
| test-dev: | |
| # l10nbot does not affect dev scripts. | |
| if: ${{ github.actor != 'l10nbot' }} | |
| runs-on: ${{ matrix.os }} | |
| strategy: | |
| matrix: | |
| os: [macos-latest, windows-latest, ubuntu-latest] | |
| permissions: | |
| contents: read | |
| pull-requests: write | |
| steps: | |
| - run: echo '${{ github.actor }}' | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| with: | |
| # fetch all tags which are required for `pnpm release:changelog` | |
| fetch-depth: 0 | |
| - name: Set up pnpm | |
| uses: pnpm/action-setup@0ebf47130e4866e96fce0953f49152a61190b271 # v6.0.9 | |
| - name: Use Node.js | |
| uses: actions/setup-node@820762786026740c76f36085b0efc47a31fe5020 # v7.0.0 | |
| with: | |
| node-version: '22.22.3' | |
| cache: 'pnpm' # https://github.com/actions/setup-node/blob/main/docs/advanced-usage.md#caching-packages-dependencies | |
| - run: pnpm install | |
| - name: Cache Next.js build | |
| uses: actions/cache@55cc8345863c7cc4c66a329aec7e433d2d1c52a9 # v6.1.0 | |
| with: | |
| path: docs/.next/cache | |
| key: ${{ runner.os }}-nextjs-${{ hashFiles('pnpm-lock.yaml') }}-${{ hashFiles('docs/**/*.js', 'docs/**/*.ts', 'docs/**/*.tsx', 'docs/**/*.jsx', 'docs/**/*.json', 'docs/**/*.md', 'docs/**/*.mdx') }} | |
| restore-keys: | | |
| ${{ runner.os }}-nextjs-${{ hashFiles('pnpm-lock.yaml') }}- | |
| ${{ runner.os }}-nextjs- | |
| - run: pnpm release:build | |
| - name: Publish packages to pkg.pr.new | |
| uses: mui/mui-public/.github/actions/ci-publish@d0c4e65df099189157250fa353917bcb28ff4110 # master | |
| if: ${{ matrix.os == 'ubuntu-latest' }} | |
| - name: Build docs | |
| run: pnpm docs:build | |
| env: | |
| NODE_OPTIONS: --max_old_space_size=6144 | |
| # macOS-latest has 3 CPUs, but we get "EMFILE: too many open files" errors with that parallelism | |
| # Limit Next.js to 2 CPUs to prevent file descriptor exhaustion. Empty string uses os.availableParallelism() | |
| NEXT_PARALLELISM: ${{ runner.os == 'macOS' && '2' || '' }} | |
| GITHUB_AUTH: Bearer ${{ secrets.GITHUB_TOKEN }} | |
| # - run: pnpm release:changelog | |
| # env: | |
| # GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
| - name: Debug export-detail.json on when pnpm docs:build fails with EMFILE error | |
| if: failure() | |
| run: cat ./docs/.next/export-detail.json || true | |
| - name: Extract Vale version | |
| if: ${{ matrix.os == 'ubuntu-latest' }} | |
| id: vale-version | |
| run: | | |
| VERSION=$(node -p "(require('./package.json').config && require('./package.json').config.valeVersion) || ''") | |
| echo "vale_version=$VERSION" >> $GITHUB_OUTPUT | |
| - uses: vale-cli/vale-action@85f9f7f2c5f449ac0ae5b66662961bae3f77ca6a # 2.1.2 | |
| continue-on-error: true # GitHub Action flag needed until https://github.com/errata-ai/vale-action/issues/89 is fixed | |
| if: ${{ matrix.os == 'ubuntu-latest' }} | |
| with: | |
| version: ${{ steps.vale-version.outputs.vale_version }} | |
| # Errors should be more visible | |
| fail_on_error: true | |
| # The other reports don't work, not really https://github.com/reviewdog/reviewdog#reporters | |
| reporter: github-pr-check | |
| # Required, set by GitHub actions automatically: | |
| # https://docs.github.com/en/actions/security-guides/automatic-token-authentication#about-the-github_token-secret | |
| token: ${{secrets.GITHUB_TOKEN}} | |
| # Mirrors the real publish workflow environment (`publish.yml`) so an env | |
| # mismatch — e.g. the Node version pinned by `publish-prepare` violating our | |
| # engineStrict `engines` range — is caught here instead of during publishing. | |
| publish-dry-run: | |
| name: Publish Dry Run | |
| if: ${{ github.repository_owner == 'mui' }} | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 | |
| - name: Prepare for publishing | |
| uses: mui/mui-public/.github/actions/publish-prepare@d0c4e65df099189157250fa353917bcb28ff4110 # master | |
| with: | |
| node-version: '22.22.3' | |
| - name: Dry run npm publishing | |
| env: | |
| IS_PUBLISH_TEST: 'true' | |
| run: pnpm code-infra publish --ci --dry-run |