You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Process wheelhouse.txt holistically rather than per-layer (#569)
* Process wheelhouse.txt wholistically rather than per-layer
Processing the wheelhouse.txt file from each layer in isolation means
that pip can't resolve conflicts, duplicates, or dependency version
pinning which spans across layers. This can lead to duplicate versions
of libraries being installed which violate constraints to avoid certain
upstream bugs.
This came up in both of:
* https://bugs.launchpad.net/charm-flannel/+bug/1884598
* https://bugs.launchpad.net/charm-octavia/+bug/1884164
And in both cases trying to resolve it on a per-layer or per-charm basis
results in a whack-a-mole process of catching all of the layers which
indirectly reintroduce the unpinned version of a dependency pinned in a
base layer.
* Improve error handling
* Improve help text on --wheelhouse-per-layer flag
* Comment out overridden lines in wheelhouse.txt
This allows higher layers to override explicit requirements while still
inheriting specs from lower layers.
* Fix test
0 commit comments