Bower's Flat Dependency Tree: Conflict Resolution Limits
0 reputation · 16 Aug 2022, 00:41 UTC
Conflict Scenario
When two dependencies require different, non‑overlapping versions of the same package, Bower’s flat layout forces a single copy of that package in bower_components. The installer cannot nest both, so it prompts the user to choose a version.
Persisting a Decision
The choice can be recorded in bower.json under the resolutions field. Once declared, subsequent bower install runs should be non‑interactive, but the behavior has been reported to vary across Bower 1.x releases.
Unresolved Questions
1. Does Bower always honor the first declared resolution in bower.json, or can later package dependencies override it?
2. Is there a documented flag or configuration that forces a deterministic resolution path for CI environments without user interaction?
3. If a conflict remains unresolved, does Bower fall back to the latest available version, or does it abort the install?