prisma: pnpm: Can not `prisma generate` when `@prisma/client` is not installed in project

Bug description

image

How to reproduce

Just add Prisma to pnpm workspace

Expected behavior

No response

Prisma information

package.json

{
  "name": "adonis",
  "type": "module",
  "license": "MIT",
  "engines": {
    "node": ">=16.0.0"
  },
  "scripts": {
    "clean": "pnpm dlx rimraf \"**/{node_modules,dist,lib,lib-types}\"",
    "build": "bob-esbuild tsc && pnpm prepack -r",
    "test": "pnpm build && pnpm --prefix packages/ai start",
    "lint": "eslint \"./**/*.{ts,tsx}\"",
    "run": "node --experimental-specifier-resolution=node --loader ts-node/esm",
    "prisma": "cross-env NODE_ENV=${NODE_ENV:-development} dotenv-flow -- prisma",
    "migrate:dev": "pnpm prisma migrate dev",
    "migrate:dev:create": "pnpm prisma migrate dev --create-only",
    "migrate:deploy": "pnpm prisma migrate deploy",
    "migrate:reset": "pnpm prisma migrate reset",
    "migrate:resolve": "pnpm prisma migrate resolve",
    "prisma:generate": "pnpm prisma generate",
    "prisma:generate:watch": "pnpm prisma generate --watch",
    "prisma:seed": "pnpm prisma db seed",
    "prisma:studio": "pnpm prisma studio"
  },
  "devDependencies": {
    "@types/node": "^16.11.1",
    "@typescript-eslint/eslint-plugin": "^5.1.0",
    "@typescript-eslint/parser": "^5.1.0",
    "cross-env": "^7.0.3",
    "dotenv-flow-cli": "^1.0.0",
    "esbuild": "^0.13.8",
    "eslint": "^8.0.1",
    "eslint-config-prettier": "^8.3.0",
    "eslint-plugin-prettier": "^4.0.0",
    "prettier": "^2.4.1",
    "prisma": "^3.2.1",
    "ts-node": "^10.3.0",
    "typescript": "^4.5.0-dev.20211018"
  },
  "dependencies": {
    "bob-esbuild": "^2.0.1",
    "bob-esbuild-cli": "^2.0.0"
  }
}

Environment & setup

  • OS: MacOS
  • Database: PostgreSQL
  • Node.js version: 16.11.1

Prisma Version

prisma                  : 3.3.0
@prisma/client          : 3.3.0
Current platform        : darwin
Query Engine (Node-API) : libquery-engine 33838b0f78f1fe9052cf9a00e9761c9dc097a63c (at node_modules/.pnpm/@prisma+engines@3.3.0-30.33838b0f78f1fe9052cf9a00e9761c9dc097a63c/node_modules/@prisma/engines/libquery_engine-darwin.dylib.node)
Migration Engine        : migration-engine-cli 33838b0f78f1fe9052cf9a00e9761c9dc097a63c (at node_modules/.pnpm/@prisma+engines@3.3.0-30.33838b0f78f1fe9052cf9a00e9761c9dc097a63c/node_modules/@prisma/engines/migration-engine-darwin)
Introspection Engine    : introspection-core 33838b0f78f1fe9052cf9a00e9761c9dc097a63c (at node_modules/.pnpm/@prisma+engines@3.3.0-30.33838b0f78f1fe9052cf9a00e9761c9dc097a63c/node_modules/@prisma/engines/introspection-engine-darwin)
Format Binary           : prisma-fmt 33838b0f78f1fe9052cf9a00e9761c9dc097a63c (at node_modules/.pnpm/@prisma+engines@3.3.0-30.33838b0f78f1fe9052cf9a00e9761c9dc097a63c/node_modules/@prisma/engines/prisma-fmt-darwin)
Default Engines Hash    : 33838b0f78f1fe9052cf9a00e9761c9dc097a63c
Studio                  : 0.437.0

About this issue

  • Original URL
  • State: closed
  • Created 3 years ago
  • Reactions: 6
  • Comments: 22 (9 by maintainers)

Most upvoted comments

Hey folks, we have just improved our pnpm detection logic to fix this issue, and we will release this in our 4.13.0 release. That said, you can try it now by installing our dev version. npm install prisma@dev. Feedback welcome!