Repository navigation
Conversation
|
Review the following changes in direct dependencies. Learn more about Socket for GitHub.
|
✅ [V2]
To edit notification comments on pull requests, go to your Netlify project configuration. |
|
Size Change: -6.13 kB (-0.05%) Total Size: 12.4 MB 📦 View Changed
ℹ️ View Unchanged
|
⚡️ Lighthouse report for the deploy preview of this PR
|
|
Size Change: -6.09 kB (-0.05%) Total Size: 12.5 MB 📦 View Changed
ℹ️ View Unchanged
|
|
The latest updates on your projects. Learn more about Argos notifications ↗︎
|
slorber
force-pushed
the
claude/upgrade-oxfmt-0.70
branch
2 times, most recently
from
October 8, 2026 15:07
7879cc0 to
c79b0b3
Compare
1 of 3 tasks
slorber
added this pull request to stack #12591
October 8, 2026 15:07
1 of 3 tasks
slorber
force-pushed
the
claude/upgrade-oxfmt-0.70
branch
from
October 8, 2026 15:40
6e3c831 to
ccd6d1e
Compare
slorber
removed this pull request from stack #12591
October 8, 2026 15:41
slorber
added this pull request to stack #12594
October 8, 2026 15:41
oxfmt now skips gitignored files found through directory or glob targets (oxc-project/oxc#25133, #25531), which made the theme package builds fail on lib/theme/**/*.js and format:website:build fail on website/build. Add a temporary format-gitignored-files command that expands globs in Node and passes the files to oxfmt explicitly. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
slorber
force-pushed
the
claude/upgrade-oxfmt-0.70
branch
from
October 8, 2026 18:35
ccd6d1e to
081d4c0
Compare
This branch has not been deployed
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
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Pre-flight checklist
Motivation
Upgrade
oxfmtfrom^0.47.0to^0.70.0(AI-assisted).0.71.0is excluded by our 7-dayminimumReleaseAge.Stacked on #12593, which turns
admin/scriptsinto the@docusaurus/monorepo-scriptsworkspace package so package scripts can call build commands without../../admin/scriptspaths.The PR has 2 commits, best reviewed separately:
pnpm format, no other changes): only 9 files, all cosmetic (see below)Breaking changes from 0.47 to 0.70 that affect us
Gitignored targets are skipped (oxc#25133, oxc#25531): directory and glob targets inside a gitignored tree are now skipped. Only explicitly named files are still formatted, and there is no CLI flag to turn this off. This broke 2 things, both failing with exit code 2 ("Expected at least one target file"):
buildscript of the 7 theme/plugin packages:oxfmt "lib/theme/**/*.js"(lib/is gitignored)format:website:build:oxfmt website/build(gitignored), used by Argos text snapshotsFix: a temporary
format-gitignored-filescommand (admin/scripts/formatGitignoredFiles.js, exposed by the@docusaurus/monorepo-scriptspackage from chore(monorepo): make admin/scripts the @docusaurus/monorepo-scripts workspace package, call copy-untyped-files without relative path (AI-assisted) #12593) expands the globs withfs.promises.glob()and passes the files to oxfmt explicitly, in batches to stay under the Windows command-line limit. Config resolution andignorePatternsbehave the same as before. The theme packages runcopy-untyped-files && format-gitignored-files "lib/theme/**/*.js".The script has a TODO to remove it once oxfmt ships a first-class option:
--no-ignore=vcs, agreed in oxc#25259 and implemented in oxc#25358 (open, not released). The docs' workaround (unquoted shell globs) doesn't work in npm scripts:shhas no**and Windowscmddoesn't expand globs.New native formatters replace Prettier for JSON (0.53–0.55), CSS/LESS/SCSS (0.57), GraphQL (0.57) and YAML (0.62). They produced no diff on our repo files.
.gitignoreis now read from parent directories and.git/info/exclude(0.49).ignorePatternscontaining..are rejected (0.59), and we have none.No config option was renamed or removed. Both
.oxfmtrc*.jsonfiles work unchanged, and the--list-different,--no-error-on-unmatched-patternand--configflags still exist.oxfmt --check .processes the same 1894 files on 0.47 and 0.70, so no new file types are picked up.Reformat diff
{/* options */}). I checked thehighlight-*magic comments and they still point at the right lines.codeBlockUtils.tsx:for (...; cond; )becomesfor (...; cond;)markdownUtils.ts: a last-argument arrow function now hugs the calldocusaurus.config.js.mdxloses its leading|There are no semantic changes and no JSON key reordering.
Knock-on effects
lib/theme/**/*.jsglob didn't match files directly underlib/theme/. SoErrorPageContent.js,prism-include-languages.js,SearchBar.jsandMermaid.jsoftheme-classicwere left as rawtscoutput (4-space indent,{ a }). They are now formatted like in v3.10.2. All other ejected files in the 7 packages are byte-identical to the 0.47 output.argos:build:text-snapshotsbuild:docs/**/*.html: no changeblog/**/*.htmlpages:<template data-dgst=""></template><!--/$-->is no longer split across 2 linesstyles.css: 2 lines where the new CSS formatter keeps DocSearch's minifiedcalc(var(--docsearch-vh, 1vh)*100)(Prettier added spaces around*)format:website:buildnow only formats the.html,.cssand.jsonfiles that Argos uploads (the blog feeds were added in chore(argos): add blog feeds to Argos text snapshots (AI-assisted) #12551). It no longer formats the unused JS bundles. XML feeds and the sitemap were never formatted, and still aren't..git-blame-ignore-revsThe repo squash-merges PRs, so the reformat commit's SHA is only known once this PR lands on
main. The.git-blame-ignore-revsfile is in the stacked draft PR #12590: after merging this one, put the squash commit SHA in it and merge it.Conflicts with other PRs
The reformat touches only 9 files. These open PRs overlap and may need a rebase and
pnpm format: #12430, #11101 (docusaurus.config.js.mdx), #12389 (markdownUtils.ts), #12221, #11655 (codeBlockUtils.tsx). Any large cleanup PR (fs-extra, lodash, React imports…) should be merged before this one, or rebased afterwards and runpnpm format.Test Plan
pnpm format:diff: cleanpnpm lintandpnpm lint:depspasspnpm build:packagespasses, and I diffed the ejectedlib/themeoutput against 0.47 (see above)pnpm test: 3163 tests pass, no snapshot changespnpm build:website:fastpassespnpm argos:build:text-snapshots && pnpm argos:format:text-snapshotspasses, and I diffed the output against 0.47 (see above)Test links
Deploy preview: https://deploy-preview-12571--docusaurus-2.netlify.app/
Related issues/PRs
🤖 Generated with Claude Code