From 2d4d5df881e06220c21dc12300d9ef9d985b9b62 Mon Sep 17 00:00:00 2001 From: Stan Wohlwend Date: Sun, 2 Jun 2024 21:07:30 +0200 Subject: [PATCH] Only allow pnpm --- package.json | 44 +++++++++++++++++++++++--------------------- pnpm-lock.yaml | 17 +++++++++++++++++ 2 files changed, 40 insertions(+), 21 deletions(-) diff --git a/package.json b/package.json index 10a82b15b..562cc7824 100644 --- a/package.json +++ b/package.json @@ -4,29 +4,31 @@ "private": true, "repository": "", "scripts": { - "typecheck": "turbo typecheck", - "build": "turbo build", - "build:docs": "turbo run build --no-cache --filter=stack-docs...", - "build:server": "turbo run build --no-cache --filter=@stackframe/stack-server...", - "build:demo": "turbo run build --no-cache --filter=demo-app...", - "clean": "turbo run clean --no-cache && rimraf --glob **/.next && rimraf --glob **/.turbo && rimraf --glob **/node_modules", - "codegen": "turbo run codegen --no-cache", - "psql:server": "pnpm run --filter=@stackframe/stack-server psql", - "prisma:server": "pnpm run --filter=@stackframe/stack-server prisma", - "dev": "turbo run dev --parallel --continue", - "dev:app": "turbo run dev --continue --filter=@stackframe/dev-app...", - "dev:server": "turbo run dev --continue --filter=@stackframe/stack-server...", - "dev:email": "turbo run email --continue --filter=@stackframe/stack-server...", - "start": "turbo run start --parallel --continue", - "start:server": "turbo run start --continue --filter=@stackframe/stack-server...", - "docs": "turbo run dev --parallel --continue --filter=stack-docs...", - "lint": "turbo run lint --no-cache -- --max-warnings=0", - "release": "release", - "peek": "pnpm release --peek", - "changeset": "changeset", - "test": "turbo run test" + "preinstall": "npx -y only-allow pnpm", + "typecheck": "only-allow pnpm && turbo typecheck", + "build": "only-allow pnpm && turbo build", + "build:docs": "only-allow pnpm && turbo run build --no-cache --filter=stack-docs...", + "build:server": "only-allow pnpm && turbo run build --no-cache --filter=@stackframe/stack-server...", + "build:demo": "only-allow pnpm && turbo run build --no-cache --filter=demo-app...", + "clean": "only-allow pnpm && turbo run clean --no-cache && rimraf --glob **/.next && rimraf --glob **/.turbo && rimraf --glob **/node_modules", + "codegen": "only-allow pnpm && turbo run codegen --no-cache", + "psql:server": "only-allow pnpm && pnpm run --filter=@stackframe/stack-server psql", + "prisma:server": "only-allow pnpm && pnpm run --filter=@stackframe/stack-server prisma", + "dev": "only-allow pnpm && turbo run dev --parallel --continue", + "dev:app": "only-allow pnpm && turbo run dev --continue --filter=@stackframe/dev-app...", + "dev:server": "only-allow pnpm && turbo run dev --continue --filter=@stackframe/stack-server...", + "dev:email": "only-allow pnpm && turbo run email --continue --filter=@stackframe/stack-server...", + "start": "only-allow pnpm && turbo run start --parallel --continue", + "start:server": "only-allow pnpm && turbo run start --continue --filter=@stackframe/stack-server...", + "docs": "only-allow pnpm && turbo run dev --parallel --continue --filter=stack-docs...", + "lint": "only-allow pnpm && turbo run lint --no-cache -- --max-warnings=0", + "release": "only-allow pnpm && release", + "peek": "only-allow pnpm && pnpm release --peek", + "changeset": "only-allow pnpm && changeset", + "test": "only-allow pnpm && turbo run test" }, "devDependencies": { + "only-allow": "^1.2.1", "@changesets/cli": "^2.27.1", "@testing-library/react": "^15.0.2", "@types/node": "^20.8.10", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bb546089f..511875160 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -57,6 +57,9 @@ importers: jsdom: specifier: ^24.0.0 version: 24.0.0 + only-allow: + specifier: ^1.2.1 + version: 1.2.1 rimraf: specifier: ^5.0.5 version: 5.0.5 @@ -7857,6 +7860,10 @@ packages: resolution: {integrity: sha512-1FlR+gjXK7X+AsAHso35MnyN5KqGwJRi/31ft6x0M194ht7S+rWAvd7PHss9xSKMzE0asv1pyIHaJYq+BbacAQ==} engines: {node: '>=12'} + only-allow@1.2.1: + resolution: {integrity: sha512-M7CJbmv7UCopc0neRKdzfoGWaVZC+xC1925GitKH9EAqYFzX9//25Q7oX4+jw0tiCCj+t5l6VZh8UPH23NZkMA==} + hasBin: true + open@10.1.0: resolution: {integrity: sha512-mnkeQ1qP5Ue2wd+aivTD3NHd/lZ96Lu0jgf0pwktLPtx6cTZiH7tyeGRRHs0zX0rbrahXPnXlUnbeXyaBBuIaw==} engines: {node: '>=18'} @@ -10135,6 +10142,10 @@ packages: which-module@2.0.1: resolution: {integrity: sha512-iBdZ57RDvnOR9AGBhML2vFZf7h8vmBjhoaZqODJBFWHVtKkDmKuHai3cx5PgVMrX5YDNp27AofYbAwctSS+vhQ==} + which-pm-runs@1.1.0: + resolution: {integrity: sha512-n1brCuqClxfFfq/Rb0ICg9giSZqCS+pLtccdag6C2HyufBrh3fBOiy9nb6ggRMvWOVH5GrdJskj5iGTZNxd7SA==} + engines: {node: '>=4'} + which-pm@2.0.0: resolution: {integrity: sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==} engines: {node: '>=8.15'} @@ -19877,6 +19888,10 @@ snapshots: dependencies: mimic-fn: 4.0.0 + only-allow@1.2.1: + dependencies: + which-pm-runs: 1.1.0 + open@10.1.0: dependencies: default-browser: 5.2.1 @@ -22776,6 +22791,8 @@ snapshots: which-module@2.0.1: {} + which-pm-runs@1.1.0: {} + which-pm@2.0.0: dependencies: load-yaml-file: 0.2.0