-
Notifications
You must be signed in to change notification settings - Fork 0
Migrate from npm to pnpm #13
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Changes from all commits
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -25,31 +25,48 @@ jobs: | |||||
| uses: actions/setup-node@v4 | ||||||
| with: | ||||||
| node-version: ${{ matrix.node-version }} | ||||||
| cache: 'npm' | ||||||
|
|
||||||
| - name: Setup pnpm | ||||||
| uses: pnpm/action-setup@v4 | ||||||
| with: | ||||||
| version: 9 | ||||||
|
Comment on lines
+29
to
+32
|
||||||
| version: 9 | |
| version: 9.15.3 |
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -19,18 +19,35 @@ jobs: | |||||
| uses: actions/setup-node@v4 | ||||||
| with: | ||||||
| node-version: '20.x' | ||||||
| cache: 'npm' | ||||||
|
|
||||||
| - name: Setup pnpm | ||||||
| uses: pnpm/action-setup@v4 | ||||||
| with: | ||||||
| version: 9 | ||||||
|
||||||
| version: 9 | |
| version: 9.0.0 |
Copilot
AI
Jan 25, 2026
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The "Setup pnpm" step should be placed before "Setup Node.js" for better compatibility with corepack and to ensure pnpm is available when Node.js is configured. This is the recommended order according to pnpm's official documentation for GitHub Actions.
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
|
|
@@ -23,13 +23,30 @@ jobs: | |||||
| uses: actions/setup-node@v4 | ||||||
| with: | ||||||
| node-version: '20.x' | ||||||
| cache: 'npm' | ||||||
|
|
||||||
| - name: Setup pnpm | ||||||
| uses: pnpm/action-setup@v4 | ||||||
| with: | ||||||
| version: 9 | ||||||
|
Comment on lines
+27
to
+30
|
||||||
| version: 9 | |
| version: '9.15.3' |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -5,6 +5,7 @@ yarn-debug.log* | |
| yarn-error.log* | ||
| pnpm-debug.log* | ||
| package-lock.json | ||
| yarn.lock | ||
|
|
||
| # Build outputs | ||
| dist/ | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -16,10 +16,10 @@ git clone https://github.com/objectstack-ai/objectstack-starter.git | |
| cd objectstack-starter | ||
|
|
||
| # Install dependencies (installs all workspace packages) | ||
| npm install | ||
| pnpm install | ||
|
|
||
| # Build all packages | ||
| npm run build | ||
| pnpm run build | ||
| ``` | ||
|
Comment on lines
+19
to
23
|
||
|
|
||
| ### Running Examples | ||
|
|
@@ -28,36 +28,36 @@ This template includes multiple example applications demonstrating different use | |
|
|
||
| ```bash | ||
| # Run the basic example (core objects) | ||
| npm run example:basic | ||
| pnpm run example:basic | ||
|
|
||
| # Run the e-commerce example | ||
| npm run example:ecommerce | ||
| pnpm run example:ecommerce | ||
|
|
||
| # Run the blog example | ||
| npm run example:blog | ||
| pnpm run example:blog | ||
|
|
||
| # Run the CRM example | ||
| npm run example:crm | ||
| pnpm run example:crm | ||
|
|
||
| # Run the comprehensive CRM example (All core modules) | ||
| npm run example:crm-comprehensive | ||
| pnpm run example:crm-comprehensive | ||
| ``` | ||
|
|
||
| ### Development | ||
|
|
||
| ```bash | ||
| # Watch mode - automatically rebuild all packages on changes | ||
| npm run dev | ||
| pnpm run dev | ||
|
|
||
| # Build specific package | ||
| npm run build:core | ||
| npm run build:examples | ||
| pnpm run build:core | ||
| pnpm run build:examples | ||
|
|
||
| # Type checking | ||
| npm run type-check | ||
| pnpm run type-check | ||
|
|
||
| # Clean build artifacts | ||
| npm run clean | ||
| pnpm run clean | ||
| ``` | ||
|
|
||
| ## 📦 What's Included | ||
|
|
@@ -297,7 +297,7 @@ This repository includes comprehensive automation workflows: | |
|
|
||
| ## 🌟 Features | ||
|
|
||
| - ✅ Monorepo structure with npm workspaces | ||
| - ✅ Monorepo structure with pnpm workspaces | ||
| - ✅ Multiple packages: core and examples | ||
| - ✅ TypeScript support with strict type checking | ||
| - ✅ Based on the latest @objectstack/spec (v0.3.3) | ||
|
|
||
| Original file line number | Diff line number | Diff line change | ||||||
|---|---|---|---|---|---|---|---|---|
|
|
@@ -4,21 +4,18 @@ | |||||||
| "description": "ObjectStack Starter Template - A metadata-driven low-code platform starter (Multi-package Monorepo)", | ||||||||
| "type": "module", | ||||||||
| "private": true, | ||||||||
|
||||||||
| "private": true, | |
| "private": true, | |
| "packageManager": "pnpm@9.0.0", |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The open-pull-requests-limit was increased from 5 to 10 for npm dependencies. Consider whether this increase is intentional and appropriate for the team's capacity to review dependency updates. With pnpm consolidating all workspace dependencies at the root, this could result in more simultaneous PRs than before.