Skip to content

chore: migrate docs/language-models libs to oxlint/oxfmt (oxc increment 2)#3516

Draft
olliejenningsPT wants to merge 1 commit into
pr-3031-2pkgsfrom
oxc-docs-libs-2
Draft

chore: migrate docs/language-models libs to oxlint/oxfmt (oxc increment 2)#3516
olliejenningsPT wants to merge 1 commit into
pr-3031-2pkgsfrom
oxc-docs-libs-2

Conversation

@olliejenningsPT

Copy link
Copy Markdown
Contributor

Summary

Second increment of the repo-wide ESLint→oxlint / dprint→oxfmt migration (#3031). Stacked on #3481 (pr-3031-2pkgs); that PR needs to merge first.

Migrates three published, plain-TypeScript libraries from the ESLint/dprint toolchain to oxlint/oxfmt (via the Ultracite preset), reusing the exact pattern the four shared.* packages established in #3481:

  • @osdk/language-models
  • @osdk/react-sdk-docs
  • @osdk/typescript-sdk-docs

Changes

  • .monorepolint.config.mjs: move the 3 packages out of standardLibraries into the oxc migrated libraries archetype, which regenerates their lint/fix-lint scripts to use oxlint + oxfmt.
  • .lintstagedrc.mjs: add the 3 short names to OXC_PACKAGES so staged files route through oxlint --fix + oxfmt.
  • dprint.json: exclude the 3 package dirs (now owned by oxfmt).
  • oxfmt.config.ts: ignore **/*.yml / **/*.yaml. oxfmt would otherwise reformat significant-whitespace data such as the mustache templates in typescript-sdk-docs/src/documentation.yml, corrupting the generated snippets. (dprint never formatted YAML either — no yaml plugin — so this preserves the status quo.)
  • oxlint.config.ts: extend the shared override block with three rules these packages surfaced, all kept behavior-preserving per the migration philosophy:
    • complexity → off (large discriminated-union renderType switches exceed the ceiling; splitting is pure churn)
    • unicorn/no-useless-switch-case → off (explicit case "string"/case "unknown" document intent alongside default)
    • require-unicode-regexp → off (adding the u flag to a published runtime regex can change matching semantics)
  • Reformatted the package sources with oxfmt (cosmetic only: sort-keys, array-type, switch-case-braces, trailing-comma, import grouping).

Verification

  • pnpm exec monorepolint check → exit 0
  • pnpm turbo lint typecheck transpile for the 3 packages → 0 errors
  • pnpm turbo check (whole repo) → 636/636 green
  • pnpm turbo transpile (whole repo) → 246/246 green

Changeset: patch for all 3 packages.

Move @osdk/language-models, @osdk/react-sdk-docs, and @osdk/typescript-sdk-docs
from the ESLint/dprint toolchain to oxlint/oxfmt (the oxc migrated libraries
archetype), the second increment of the repo-wide oxc migration (#3031).

- monorepolint: move the 3 packages into the oxc archetype (generates the
  oxlint/oxfmt lint + fix-lint scripts)
- lint-staged: route the 3 packages through oxlint --fix + oxfmt
- dprint.json: exclude the 3 package dirs (now owned by oxfmt)
- oxfmt.config.ts: ignore YAML so significant-whitespace data such as the
  mustache templates in typescript-sdk-docs/src/documentation.yml is preserved
- oxlint.config.ts: disable complexity, unicorn/no-useless-switch-case, and
  require-unicode-regexp (structural-churn / behavior-changing rules) to keep
  the migration behavior-preserving
- reformat the package sources with oxfmt
@github-actions

Copy link
Copy Markdown
Contributor

Storybook Preview

📚 Open Storybook preview

Built from commit 3b089dd.
Workflow run

github-actions Bot added a commit that referenced this pull request Jun 15, 2026
@github-actions

Copy link
Copy Markdown
Contributor

size-limit report 📦

Path Size Change
@osdk/api 432 B 0%
@osdk/client 27.81 kB 0%
@osdk/client/experimental 27.73 kB 0%
@osdk/client/observable 51.99 kB 0%
@osdk/oauth 6.52 kB 0%
@osdk/react 55.82 kB 0%
@osdk/react/devtools-registry 184 B 0%
@osdk/react/experimental 55.83 kB 0%
@osdk/react/platform-apis 2.54 kB 0%
@osdk/react/testing 536 B 0%
@osdk/react/experimental/admin 2.54 kB 0%
@osdk/react-components 10 B 0%
@osdk/react-components/experimental 701.29 kB 0%
@osdk/react-components/primitives 40.64 kB 0%
@osdk/react-components/experimental/action-form 277.66 kB 0%
@osdk/react-components/experimental/cbac-picker 52.62 kB 0%
@osdk/react-components/experimental/document-viewer 346.66 kB 0%
@osdk/react-components/experimental/email-viewer 21.89 kB 0%
@osdk/react-components/experimental/excel-viewer 106.10 kB 0%
@osdk/react-components/experimental/filter-list 131.63 kB 0%
@osdk/react-components/experimental/image-viewer 3.72 kB 0%
@osdk/react-components/experimental/markdown-renderer 44.19 kB 0%
@osdk/react-components/experimental/object-table 153.67 kB 0%
@osdk/react-components/experimental/pdf-viewer 160.27 kB 0%
@osdk/react-components/experimental/theme 714 B 0%
@osdk/react-components/experimental/tiff-renderer 29.56 kB 0%
@osdk/react-components/experimental/video-viewer 3.74 kB 0%
@osdk/react-components/experimental/xml-viewer 3.72 kB 0%
@osdk/widget.client-react 10.82 kB 0%

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