Skip to content

ci: exclude generated changelogs from format checks - #2976

Merged
ascorbic merged 1 commit into
mainfrom
fix/ignore-generated-changelogs
Sep 9, 2026
Merged

ascorbic merged 1 commit into
mainfrom
fix/ignore-generated-changelogs

Conversation

@ascorbic

@ascorbic ascorbic commented Sep 9, 2026

Copy link
Copy Markdown
Collaborator

What does this PR do?

Excludes generated CHANGELOG.md files from oxfmt checks. Changesets generates these files when it updates the release PR, so formatting is enforced on the source changesets instead of their generated aggregate output.

This unblocks release PR #2833, where the generated packages/registry-client/CHANGELOG.md currently fails the Format job.

Type of change

  • Bug fix
  • Feature (requires maintainer-approved Discussion)
  • Refactor (no behavior change)
  • Translation
  • Documentation
  • Performance improvement
  • Tests
  • Chore (dependencies, CI, tooling)

Checklist

  • I have read CONTRIBUTING.md
  • pnpm typecheck passes
  • pnpm lint passes
  • pnpm test passes (or targeted tests for my change)
  • pnpm format has been run
  • I have added/updated tests for my changes (if applicable) — Not applicable; this is a formatter configuration change verified against the exact generated file from release PR ci: release #2833.
  • User-visible strings in the admin UI are wrapped for translation (if applicable). Do not include messages.po changes except in translation PRs — Not applicable; there are no user-visible strings.
  • I have added and reviewed the user-facing changeset (if this PR changes a published package) — Not applicable; no published package changes.
  • New features link to an approved Discussion: https://github.com/emdash-cms/emdash/discussions/... — Not applicable; this is not a feature.
  • I have included screenshots below if this PR changes the UI — Not applicable; there are no UI changes.

AI-generated code disclosure

  • This PR includes AI-generated code — model/tool: OpenAI GPT-5 (Codex)

Screenshots / test output

Not applicable; there are no UI changes.

The targeted fixture copies the exact failing changelog and formatter config from release PR #2833:

  • Existing config: oxfmt reports packages/registry-client/CHANGELOG.md as unformatted.
  • This PR's config: the same directory-level check passes because the generated changelog is excluded.

Also verified with pnpm lint, pnpm typecheck, pnpm format, pnpm format:check, and git diff --check.

@changeset-bot

changeset-bot Bot commented Sep 9, 2026

Copy link
Copy Markdown

⚠️ No Changeset found

Latest commit: 8feb29f

Merging this PR will not cause a version bump for any packages. If these changes should not result in a new version, you're good to go. If these changes should result in a version bump, you need to add a changeset.

This PR includes no changesets

When changesets are added to this PR, you'll see the packages that this PR includes changesets for and the associated semver types

Click here to learn what changesets are, and how to add one.

Click here if you're a maintainer who wants to add a changeset to this PR

@github-actions github-actions Bot added size/XS review/needs-review No maintainer or bot review yet labels Sep 9, 2026

@emdashbot emdashbot Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This is the right change for the problem: Changeset-generated CHANGELOG.md files are produced by an external release workflow, so enforcing oxfmt on their aggregate output creates a formatting conflict that the release PR cannot reasonably avoid. Excluding them from oxfmt lets the project keep formatting checks on the source changesets and on the code.

I checked:

  • The full .oxfmtrc.json diff (only adds "**/CHANGELOG.md" to ignorePatterns).
  • package.json format scripts: pnpm format/format:check run oxfmt --ignore-path .gitignore followed by prettier.
  • .prettierignore, which already ignores everything except *.astro files, so prettier is not a second source of markdown formatting requirements.
  • The existing CHANGELOG.md files, all of which are generated changeset output.
  • The two workflow files that invoke oxfmt (auto-format.yml and format-command.yml); both rely on the same oxfmt --ignore-path .gitignore pattern and will pick up .oxfmtrc.json just like the existing ignore entries already do.

No published package behavior changes, so a changeset is not required. No tests are needed for a one-line formatter ignore pattern (a test would just re-state the config literal). The fix is minimal, targeted, and consistent with the current tooling split (oxfmt for most files, prettier for Astro only).

@pkg-pr-new

pkg-pr-new Bot commented Sep 9, 2026

Copy link
Copy Markdown

Open in StackBlitz

@emdash-cms/admin

npm i https://pkg.pr.new/@emdash-cms/admin@2976

@emdash-cms/auth

npm i https://pkg.pr.new/@emdash-cms/auth@2976

@emdash-cms/auth-atproto

npm i https://pkg.pr.new/@emdash-cms/auth-atproto@2976

@emdash-cms/blocks

npm i https://pkg.pr.new/@emdash-cms/blocks@2976

@emdash-cms/cloudflare

npm i https://pkg.pr.new/@emdash-cms/cloudflare@2976

@emdash-cms/contentful-to-portable-text

npm i https://pkg.pr.new/@emdash-cms/contentful-to-portable-text@2976

emdash

npm i https://pkg.pr.new/emdash@2976

create-emdash

npm i https://pkg.pr.new/create-emdash@2976

@emdash-cms/gutenberg-to-portable-text

npm i https://pkg.pr.new/@emdash-cms/gutenberg-to-portable-text@2976

@emdash-cms/plugin-cli

npm i https://pkg.pr.new/@emdash-cms/plugin-cli@2976

@emdash-cms/plugin-types

npm i https://pkg.pr.new/@emdash-cms/plugin-types@2976

@emdash-cms/registry-client

npm i https://pkg.pr.new/@emdash-cms/registry-client@2976

@emdash-cms/registry-lexicons

npm i https://pkg.pr.new/@emdash-cms/registry-lexicons@2976

@emdash-cms/registry-moderation

npm i https://pkg.pr.new/@emdash-cms/registry-moderation@2976

@emdash-cms/registry-verification

npm i https://pkg.pr.new/@emdash-cms/registry-verification@2976

@emdash-cms/sandbox-workerd

npm i https://pkg.pr.new/@emdash-cms/sandbox-workerd@2976

@emdash-cms/x402

npm i https://pkg.pr.new/@emdash-cms/x402@2976

@emdash-cms/plugin-ai-moderation

npm i https://pkg.pr.new/@emdash-cms/plugin-ai-moderation@2976

@emdash-cms/plugin-atproto

npm i https://pkg.pr.new/@emdash-cms/plugin-atproto@2976

@emdash-cms/plugin-audit-log

npm i https://pkg.pr.new/@emdash-cms/plugin-audit-log@2976

@emdash-cms/plugin-color

npm i https://pkg.pr.new/@emdash-cms/plugin-color@2976

@emdash-cms/plugin-embeds

npm i https://pkg.pr.new/@emdash-cms/plugin-embeds@2976

@emdash-cms/plugin-field-kit

npm i https://pkg.pr.new/@emdash-cms/plugin-field-kit@2976

@emdash-cms/plugin-forms

npm i https://pkg.pr.new/@emdash-cms/plugin-forms@2976

@emdash-cms/plugin-webhook-notifier

npm i https://pkg.pr.new/@emdash-cms/plugin-webhook-notifier@2976

commit: 8feb29f

@github-actions github-actions Bot added review/approved Approved; no new commits since and removed review/needs-review No maintainer or bot review yet labels Sep 9, 2026
@cloudflare-workers-and-pages

Copy link
Copy Markdown

🚀 Deploying Preview to Cloudflare 🚀

Preview URL: https://fix-ignore-generated-changelogs.try.emdashcms.com, https://fix-ignore-generated-changelogs-emdash-playground.emdash-cms.workers.dev (commit 8feb29f)

This URL reflects your latest Preview deployment

Preview Deployments by commit

Status Deployment URL Commit Updated (UTC) See this deployment's details
  • Build: Success ✅
  • Deployment: Success ✅

View logs ↗
https://11c512e4.try.emdashcms.com, https://11c512e4-emdash-playground.emdash-cms.workers.dev 8feb29f 2026-09-09T09:37:35.623Z Visit the dashboard ↗

@ascorbic
ascorbic enabled auto-merge (squash) September 9, 2026 09:39
@ascorbic
ascorbic merged commit b2212ba into main Sep 9, 2026
53 checks passed
@ascorbic
ascorbic deleted the fix/ignore-generated-changelogs branch September 9, 2026 09:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

review/approved Approved; no new commits since size/XS

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant