Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 913406 - Suppress other conflicts if a REQUIRED_USE issue is found
Summary: Suppress other conflicts if a REQUIRED_USE issue is found
Status: CONFIRMED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Portage team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2023-09-01 12:05 UTC by Sam James
Modified: 2023-11-25 21:22 UTC (History)
1 user (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
example output from user (file_913406.txt,3.47 KB, text/plain)
2023-09-01 12:05 UTC, Sam James
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Sam James archtester Gentoo Infrastructure gentoo-dev Security 2023-09-01 12:05:34 UTC
Created attachment 869125 [details]
example output from user

We should consider suppressing slot conflicts and autounmask output when a REQUIRED_USE issue is found.

We often get reports from users like:
```
!!! Multiple package instances within a single package slot have been pulled
!!! into the dependency graph, resulting in a slot conflict:

dev-python/pyparsing:0

  (dev-python/pyparsing-3.1.1:0/0::gentoo, ebuild scheduled for merge) USE="-examples -test" ABI_X86="(64)" PYTHON_TARGETS="python3_10 python3_11 (-pypy3) (-python3_12)" pulled in by
    >=dev-python/pyparsing-3.0.7-r1[python_targets_pypy3(-)?,python_targets_python3_10(-)?,python_targets_python3_11(-)?,python_targets_python3_12(-)?] required by (dev-python/packaging-23.1:0/0::gentoo, installed) USE="-test" ABI_X86="(64)" PYTHON_TARGETS="python3_10 python3_11 (-pypy3) (-python3_12)"




  (dev-python/pyparsing-3.0.9:0/0::gentoo, ebuild scheduled for merge) USE="-examples -test" ABI_X86="(64)" PYTHON_TARGETS="python3_11 (-pypy3) -python3_10 (-python3_12)" pulled in by
    <dev-python/pyparsing-3.1.0[python_targets_python3_10(-)?,python_targets_python3_11(-)?] required by (dev-python/matplotlib-3.7.2:0/0::gentoo, ebuild scheduled for merge) USE="cairo qt5 wxwidgets -debug (-doc) -examples -excel -gtk3 -latex -test -tk -webagg" ABI_X86="(64)" PYTHON_TARGETS="python3_11 -python3_10"
    ^                     ^^^^^

[...]

The following USE changes are necessary to proceed:
 (see "package.use" in the portage(5) man page for more details)
# required by dev-python/packaging-23.1::gentoo
[...]
>=dev-python/pyparsing-3.1.1 python_targets_python3_10

!!! The ebuild selected to satisfy "media-video/pipewire[sound-server(+)]" has unmet requirements.
- media-video/pipewire-0.3.77-r2::gentoo USE="X dbus ffmpeg pipewire-alsa readline sound-server ssl -bluetooth -doc -echo-cancel -extra -flatpak -gsettings -gstreamer -ieee1394 -jack-client -jack-sdk -liblc3 -lv2 -modemmanager (-system-service) -systemd -test -v4l -zeroconf" ABI_X86="(64) -32 (-x32)"

  The following REQUIRED_USE flag constraints are unsatisfied:
    ffmpeg? ( extra )

[...]
```

In this case, there may be a genuine issue with their Python targets, but we often get conflicts which are purely as a result of incomplete backtracking b/c of a REQUIRED_USE issue.