cloudflare/vinext

Build: transitive externals resolve to wrong package version

Offen

#1.503 geöffnet am 22.05.2026

 (0 Kommentare) (0 Reaktionen) (0 zugewiesene Personen)TypeScript (386 Forks)github user discovery
adapter-api-e2ehelp wanted

Repository-Metriken

Stars
 (8.635 Sterne)
PR-Merge-Metriken
 (Durchschn. Merge 1T 1h) (462 gemergte PRs in 30 T)

Beschreibung

This issue was created by an agent analysing CI failures from the Next.js Deploy Suite (vinext main vs Next.js v16.2.6, 2026-05-22).

Problem

When serverExternalPackages (or equivalent) is configured, transitive dependencies resolve to the wrong version. Test expects depB: 4.17.21, 4.17.21, 5.0.0 but got depB: 3.10.1, 4.17.21, 5.0.0 — the first depB instance is wrongly resolved to depA's version.

Transitive externals resolution picks wrong package version

Estimated Impact

~1 test failures across the deploy suite.

Affected Test Suites

  • test/e2e/externals-transitive/externals-transitive.test.ts

Recommendation

  1. Reproduce first in vinext's own test suite. Add a fixture with depA -> depB@4 and root -> depB@3, mark depA as external, and assert each module sees the correct depB version.

  2. Preserve transitive version resolution. Externalising a package must not collapse nested copies of a transitive dep to a single version.

Contributor Guide