Skip to content

chore: standardize peerDependencies for runtime deps in @orval/* packages #3459

@coderabbitai

Description

@coderabbitai

Summary

Currently, neither @orval/zod nor @orval/effect declare their respective runtime schema libraries (zod and effect) as peerDependencies in their package.json manifests — they rely on the consuming app to have the library installed.

This is a repo-wide convention question: should all @orval/* packages that wrap a user-facing library declare it explicitly as a peerDependency?

Pros of adding explicit peerDependencies:

  • Package managers (npm, pnpm, yarn) will warn users if the peer is missing or the version is incompatible.
  • Signals the version contract clearly to consumers.
  • Follows standard ecosystem practice for plugin/wrapper packages.

Current state:

  • packages/zod/package.jsonzod is not listed under peerDependencies.
  • packages/effect/package.jsoneffect is not listed under peerDependencies (matching @orval/zod convention).

Suggested action

Decide on a repo-wide convention and apply it consistently to all @orval/* packages that wrap a user-installable peer library. If the decision is to add peer deps, packages/zod/package.json and packages/effect/package.json (and potentially others) should be updated together.

References

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No fields configured for Task.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions