Repository navigation
chore: manage the workspace with pnpm - #90
Merged
Merged
Conversation
dist/ of the wrapper and of the packages was committed by accident in #85 (the branch predated the dist/ gitignore entry).
….yaml, packageManager) CI and the release workflow use pnpm/action-setup; installs use --frozen-lockfile; packages are published with the npm CLI (Trusted Publishing is an npm feature).
…cp/dist) that slipped into #72 purus-mcp is third-party and unlicensed; it is not part of this repository (see ADR 0001). The file was a leftover of the abandoned import.
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.
Follow-up to the monorepo and TypeScript work (#17, #18). Why: npm 10.9 crashes resolving the workspace (
edgesOut) so lockfile updates needed npm 11; pnpm is strict about undeclared dependencies, has--filterfor per-package scripts, and matches funmary-app.pnpm-workspace.yaml,packageManager: pnpm@11.22.0,pnpm-lock.yaml;package-lock.jsonand the npmworkspacesfield removedvitestexplicitlypnpm;typecheck:ts/test:packagesusepnpm --filter \"./packages/*\"(quoted so the shell does not expand the glob; the root has its owntest/typecheckscripts for MoonBit)_release.yml:pnpm/action-setup(v6.1.0, SHA-pinned) beforesetup-nodewithcache: pnpm;pnpm install --frozen-lockfile; tests/builds throughpnpm --filter; publishing and version bumps still use the npm CLI in each package directory (Trusted Publishing is an npm feature;npm versionno longer needs the-wworkspace flag). Release commits stage onlypackage.json(andmoon.modfor the compiler), since pnpm has no root lockfile entry for versions.prettierignoreupdated. End users are unaffected (purus newis package-manager agnostic)Also fixes:
dist/build outputs of the wrapper and both packages were accidentally committed in #85 (that branch predated thedist/ignore entry); they are untracked in a separate commit.Verified locally:
pnpm install --frozen-lockfile,pnpm run build, typecheck, ESLint, Prettier, wrapper tests (25), package tests (12 + 8), per-package builds;npm versionandnpm packin a package directory. The release workflow itself cannot be exercised without publishing; the first real release after merging is the test.Also removes
packages/mcp/dist/index.js: compiled output of the third-party purus-mcp (unlicensed, not part of this repo) that was swept into #72 by agit add -Afrom leftovers of the abandoned import (packages/mcpandpackages/language-serverleftover directories were also cleaned locally). The file still exists in the history of #72; rewritingmainwould need the ruleset lifted, so it is left to the maintainer to decide.