Skip to content

fix: resolve npm peer dependency conflict blocking CI#37

Merged
iqbalhasandev merged 1 commit intomainfrom
fix/npm-peer-dep-conflict
Apr 12, 2026
Merged

fix: resolve npm peer dependency conflict blocking CI#37
iqbalhasandev merged 1 commit intomainfrom
fix/npm-peer-dep-conflict

Conversation

@iqbalhasandev
Copy link
Copy Markdown
Member

Summary

npm ci was failing in all CI jobs due to a peer dependency version conflict:

  • unbuild@3.6.1 requires typescript@^5.9.2 but project uses typescript@6

Neither package has released a version that officially supports the other's major version yet.

Fix

Added .npmrc with legacy-peer-deps=true so npm uses the relaxed peer dependency resolution algorithm, allowing installation to succeed. The lock file has been regenerated with this setting applied.

Test plan

  • Verify npm ci succeeds in CI
  • Verify all workflow jobs pass

Add .npmrc with legacy-peer-deps=true so npm ci resolves peer
dependency version mismatches that block CI installation.
Copilot AI review requested due to automatic review settings April 12, 2026 04:53
@iqbalhasandev iqbalhasandev merged commit 31e385b into main Apr 12, 2026
11 checks passed
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Unblocks CI by relaxing npm peer dependency resolution so npm ci can install despite the unbuild@3.6.1typescript@6 peer dependency conflict.

Changes:

  • Add a repo-level .npmrc enabling legacy-peer-deps=true for installs.
  • (Per PR description) Regenerate package-lock.json using the relaxed peer dependency resolution.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@@ -0,0 +1 @@
legacy-peer-deps=true
Copy link

Copilot AI Apr 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Consider adding an inline comment explaining why legacy-peer-deps is enabled (e.g., unbuild@3.6.1 ↔ TypeScript 6 peer conflict) and when it can be removed. Without context, this setting can be confusing for future maintainers.

Copilot uses AI. Check for mistakes.
@@ -0,0 +1 @@
legacy-peer-deps=true
Copy link

Copilot AI Apr 12, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Setting legacy-peer-deps=true in a repo-level .npmrc affects all installs (local dev, CI, and any scripts) and can mask new peer dependency issues. Consider scoping this to CI only (e.g., npm ci --legacy-peer-deps or NPM_CONFIG_LEGACY_PEER_DEPS=true in workflows) to keep stricter resolution for developers while still unblocking CI.

Suggested change
legacy-peer-deps=true

Copilot uses AI. Check for mistakes.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants