Skip to content

feat(docs)!: require Astro 7 and run the plugins on a unified processor - #192

Merged
tmccoy14 merged 2 commits into
mainfrom
feat/docs-astro-7
Oct 7, 2026
Merged

tmccoy14 merged 2 commits into
mainfrom
feat/docs-astro-7

Conversation

@tmccoy14

@tmccoy14 tmccoy14 commented Oct 7, 2026

Copy link
Copy Markdown
Contributor

Moves @eqtylab/docs to Astro 7 and releases it as 0.11.0. guardian's docs site needs it: Astro 6 carries a Critical advisory (GHSA-26w7-cxv4-gfx2, remote code execution through AVIF optimization) that is fixed only in astro 7.2.8, and guardian's security scans fail on it.

Breaking

  • Peers are now astro ^7.2.10, @astrojs/mdx ^8 and @astrojs/react ^7. @astrojs/mdx 8 needs astro 7.2.10, and supporting Astro 6 as well would mean two markdown code paths
  • Sites on Astro 6 stay on 0.10.x

Why the integration changes

Astro 7's default Markdown processor, Sätteri, runs no remark or rehype plugins and only logs a warning. Left as it was, the integration's plugins would stop running: links would lose base, and prose would lose its styling.

The integration now adds its plugins to a unified processor from @astrojs/markdown-remark:

  • A site that already has one (including one Astro builds from the deprecated markdown.remarkPlugins) is extended, not replaced, so the site's own plugins keep running. guardian's site relies on this for its remarkStripLeadingH1
  • Otherwise a new one is created

@astrojs/mdx 8 reuses markdown.processor through extendMarkdownConfig, so .mdx pages get the same plugins. gfm and smartypants move onto the processor, since the top-level settings are deprecated.

Verification

  • pnpm lint, pnpm format:check, pnpm build and pnpm test pass
  • Demo site, built on main (Astro 6) and on this branch: all 2,390 pages differ only in entity encoding, whitespace between tags and minified CSS. The visible content and the plugins' output are unchanged
  • guardian's docs site, built against this package with Astro 7, MDX 8, React 7 and Equality 4.11:
    • same 440 pages, tables, code blocks and links
    • its own remark plugin still runs
    • its CI checks pass, including the base-path snapshot build

Worth knowing

  • Vite 8's CSS minifier drops -webkit-backdrop-filter, so dialog backdrops lose their blur in Safari before 18

After merge

Publish with pnpm release from packages/docs. Only @eqtylab/ui publishes automatically.

🤖 Generated with Claude Code

tmccoy14 and others added 2 commits October 7, 2026 13:08
Astro 7's default Markdown processor, Sätteri, runs no remark or rehype
plugins, so links lost `base` and prose lost its styling. The integration
now puts its plugins on the site's `unified` processor, or a new one, and
MDX reuses it. Peers move to astro 7, @astrojs/mdx 8 and @astrojs/react 7,
and the demo site moves with them

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@tmccoy14 tmccoy14 self-assigned this Oct 7, 2026
@tmccoy14
tmccoy14 merged commit a0f05d4 into main Oct 7, 2026
1 check passed
@tmccoy14
tmccoy14 deleted the feat/docs-astro-7 branch October 7, 2026 17:13
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant