Skip to content

Prisma ORM RC.13: npm Dependency-Resolution Problem #30257

Description

@R-3-N-3

Package and version

@prisma/orm-postgres": "8.0.0-rc.13

What happened?

Summary

Installing Prisma ORM 8.0.0-rc.13 in an independent npm project can enter a loop of repeated peer-dependency warnings:

npm warn ERESOLVE overriding peer dependency
npm warn While resolving: @effect/sql-d1@4.0.0-rc.114
npm warn Found: peer effect@"^4.0.0-rc.114" from the root project

npm warn Could not resolve dependency:
npm warn peer effect@"^4.0.0-rc.114" from the root project

### What did you expect to happen?

"npm install" should not end in a endless loop

A minimal PostgreSQL Prisma ORM project should install successfully with:
npm install
npm run emit

### Minimal reproduction

rm -rf node_modules package-lock.json
npm cache verify
npm install --no-audit --no-fund

With verbose logging, npm repeatedly outputs requests such as:

npm http cache https://registry.npmjs.org/effect
npm warn ERESOLVE overriding peer dependency
npm warn While resolving: @effect/sql-d1@4.0.0-rc.114
npm warn Could not resolve dependency:
npm warn peer effect@"^4.0.0-rc.114" from the root project

The project is not an npm workspace, so the issue is not caused by workspace configuration.

Observed Dependency Metadata
The published package metadata shows an inconsistent RC dependency tree.

@prisma/orm-postgres@8.0.0-rc.13 / or @prisma/orm-postgres@8.0.0-rc.9 depends on Prisma packages including:

@prisma/orm-toolchain@8.0.0-rc.9
@prisma/orm-framework@8.0.0-rc.9
@prisma/orm-family-sql@8.0.0-rc.9
@prisma/orm-target-postgres@8.0.0-rc.9


However, prisma@8.0.0-rc.9 declares:
`@prisma/orm-toolchain@8.0.0-rc.5`

The Prisma CLI also depends on:
@prisma/composer-cli@0.12.0

That package declares:
`effect@4.0.0-rc.111`

During npm resolution, npm also attempts to resolve:
`@effect/sql-d1@4.0.0-rc.114`

The required effect@4.0.0-rc.114 version cannot be resolved consistently with the other published package metadata. npm repeatedly retries the peer-dependency resolution.

**Workaround**
The installation succeeds when npm uses the legacy peer-dependency behavior:

rm -rf node_modules package-lock.json

npm install
--legacy-peer-deps
--no-audit
--no-fund


This is a workaround, not a permanent fix.

**Why Effect Is Unexpected**
The application uses PostgreSQL through Prisma ORM. It does not directly use:

effect
@effect/sql-d1
@effect/vitest


`@effect/sql-d1` is intended for Cloudflare D1 integration and is unrelated to the PostgreSQL runtime used by this application.

The Effect packages appear to enter the dependency graph indirectly through Prisma CLI/Composer-related packages.

### Environment

Operating system: macOS
Node.js:          24.x
Package manager:  npm
Prisma ORM:       8.0.0-rc.13
Project type:     Independent npm project
npm workspace:    No

The project was confirmed to be independent:

npm prefix:
  /Users/admin/dev/my-projects/mvh/apps/4200-cat

npm pkg get name:
  "4200-cat-2-srv"

npm config get workspaces:
  null

### Additional context

Minimal package.json
The project does not declare any Effect packages directly:

{
  "name": "4200-cat-2-srv",
  "private": true,
  "type": "module",
  "version": "8.0.0-rc.13,
  "engines": {
    "node": ">=24"
  },
  "scripts": {
    "emit": "prisma contract emit",
    "db:init": "prisma db init"
  },
  "dependencies": {
    "@prisma/orm-postgres": "8.0.0-rc.9",
    "dotenv": "^17.4.2",
    "express": "^5.1.0",
    "pg": "^8.22.0"
  },
  "devDependencies": {
    "@prisma/cli-engine": "0.3.0",
    "@types/express": "^5.0.3",
    "@types/node": "^22.0.0",
    "@types/pg": "^8.15.0",
    "prisma": "8.0.0-rc.13",
    "tsx": "^4.23.5",
    "typescript": "^5.9.3"
  }
}

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions