Repository navigation
Switch from Yarn classic to pnpm - #7
Merged
Merged
Conversation
- pnpm workspace (pnpm-workspace.yaml) in place of the Yarn workspaces; the hub depends on the theme through workspace:* so it always links the local package - pnpm-lock.yaml imported from yarn.lock (same resolved versions), pnpm pinned by packageManager - docs-site.yml detects pnpm-lock.yaml or yarn.lock (in the site folder, or at the root for a workspace member) so callers can migrate one by one - CI on pnpm; the package is still packed and published by npm, unchanged - README and theme guide show pnpm commands
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.
Replaces Yarn classic (v1) with pnpm 12.
Changes
pnpm-workspace.yaml(packages/*,site) replaces the Yarnworkspacesfield.sitenow depends on@silarhi/docs-kitthroughworkspace:*(pnpm does not link a*range to the local package by default), so the hub keeps building with the local theme.pnpm-lock.yamlgenerated withpnpm importfromyarn.lock, so resolved versions are unchanged.yarn.lockremoved."packageManager": "pnpm@12.11.2"in the rootpackage.json.allowBuilds: none needed, no dependency runs an install script (sharpships prebuilt binaries through optional deps).docs-site.yml: pnpm only.pnpm/action-setup@v6readspackageManagerfrom the rootpackage.json(every caller pins it there), thensetup-nodewithcache: pnpmkeyed on**/pnpm-lock.yaml,pnpm install --frozen-lockfile,pnpm run build.pnpm/action-setup+cache: pnpm,pnpm install --frozen-lockfile,pnpm lint:ci. The Package contents step runsnpm pack --dry-runinsidepackages/docs-kit(the--workspaceflag needed the removed Yarn/npmworkspacesfield).release.ymlkeepsnpm publish(trusted publishing/provenance as before). The package has noworkspace:dependency, so the tarball is the same as onmain.pnpm add @silarhi/docs-kit …), Getting started (layout withpnpm-lock.yaml+pnpm-workspace.yaml, install commands) and Versions pages.Verified locally
pnpm install --frozen-lockfile,pnpm build(hub),pnpm lint:ci✅npm pack --dry-runfile list identical tomain(12 files). For reference,pnpm packwould add the rootLICENSE(13 files), another reason to keepnpm publish.Merge order
The workflow no longer supports Yarn: merge this together with the 8 library PRs (qif-library, cfonb-parser, caf-parser, llms-txt-bundle, tabler-ux-components, cursor-pagination, turbo-bundle, picasso-bundle). Merge this one first; a library still on
yarn.lockwould fail its docs build until its own PR lands.After merge
rm -rf node_modules site/node_modules && pnpm install.