chore!: migrate to ESM, adopt node24 runtime, roll up open Dependabot… #253
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
| # `dist/index.js` is a special file in Actions. | |
| # When you reference an action with `uses:` in a workflow, | |
| # `index.js` is the code that will run. | |
| # For our project, we generate this file through a build process from other source files. | |
| # We need to make sure the checked-in `index.js` actually matches what we expect it to be. | |
| name: Check dist/ | |
| on: | |
| push: | |
| branches: | |
| - main | |
| paths-ignore: | |
| - '**.md' | |
| pull_request: | |
| paths-ignore: | |
| - '**.md' | |
| workflow_dispatch: | |
| jobs: | |
| check-dist: | |
| runs-on: ubuntu-latest | |
| steps: | |
| - uses: actions/checkout@v7 | |
| - name: Setup Node.js | |
| uses: actions/setup-node@v7.0.0 | |
| with: | |
| node-version-file: package.json | |
| cache: npm | |
| - name: Install dependencies | |
| run: npm ci | |
| - name: Rebuild the dist/ directory | |
| run: npm run prepare | |
| - name: Compare the expected and actual dist/ directories | |
| run: | | |
| # `git diff` alone can't see files the build newly added, so check for | |
| # untracked files in dist/ too. | |
| untracked="$(git ls-files --others --exclude-standard -- dist/)" | |
| changed="$(git diff --ignore-space-at-eol -- dist/)" | |
| if [ -n "$untracked" ] || [ -n "$changed" ]; then | |
| echo "Detected uncommitted changes after build. See status below:" | |
| if [ -n "$untracked" ]; then | |
| printf 'Untracked files in dist/:\n%s\n' "$untracked" | |
| fi | |
| git diff -- dist/ | |
| exit 1 | |
| fi | |
| id: diff | |
| # If index.js was different than expected, upload the expected version as an artifact | |
| - uses: actions/upload-artifact@v7 | |
| if: ${{ failure() && steps.diff.conclusion == 'failure' }} | |
| with: | |
| name: dist | |
| path: dist/ |