It would be nice if the fetch would be done in this case: mr-fox ~ # emerge -f dev-libs/libressl net-misc/openssh net-misc/wget These are the packages that would be fetched, in order: Calculating dependencies .... done! [ebuild U ] net-misc/openssh-8.1_p1-r1::gentoo [8.0_p1-r4::gentoo] USE="X* libressl* pam pie ssl -X509 -audit -bindist* -debug -hpn -kerberos -ldns -libedit -livecd -sctp (-selinux) -static -test -xmss" 0 KiB [nomerge ] x11-apps/xauth-1.1::gentoo USE="ipv6 -test" [nomerge ] x11-libs/libX11-1.6.9::gentoo USE="ipv6 -doc -static-libs -test" ABI_X86="(64) -32 (-x32)" [nomerge ] x11-libs/libxcb-1.13.1:0/1.12::gentoo USE="xkb -doc (-selinux) -static-libs -test" ABI_X86="(64) -32 (-x32)" [nomerge ] dev-lang/python-3.7.6:3.7/3.7m::gentoo [2.7.17:2.7::gentoo, 3.6.9:3.6/3.6m::gentoo] USE="gdbm ipv6 libressl* ncurses readline sqlite* ssl xml -bluetooth -build -examples -hardened -test -tk -wininst (-threads%*)" [ebuild N ] dev-db/sqlite-3.30.1:3::gentoo USE="icu readline tcl -debug -doc -secure-delete -static-libs -test -tools" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild N ] dev-libs/icu-65.1:0/65.1::gentoo USE="-debug -doc -examples -static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild N ] x11-apps/xauth-1.1::gentoo USE="ipv6 -test" 0 KiB [ebuild N ] x11-libs/libXmu-1.1.3::gentoo USE="ipv6 -doc -static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild N ] x11-libs/libXt-1.2.0::gentoo USE="-doc -static-libs -test" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild N ] x11-libs/libXext-1.3.4::gentoo USE="-doc -static-libs" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild N ] x11-libs/libX11-1.6.9::gentoo USE="ipv6 -doc -static-libs -test" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild N ] x11-libs/libxcb-1.13.1:0/1.12::gentoo USE="xkb -doc (-selinux) -static-libs -test" ABI_X86="(64) -32 (-x32)" 0 KiB [ebuild NS ] dev-lang/python-3.7.6:3.7/3.7m::gentoo [2.7.17:2.7::gentoo, 3.6.9:3.6/3.6m::gentoo] USE="gdbm ipv6 libressl* ncurses readline sqlite* ssl xml -bluetooth -build -examples -hardened -test -tk -wininst (-threads%*)" 0 KiB Total: 10 packages (1 upgrade, 8 new, 1 in new slot), Size of downloads: 0 KiB * Error: circular dependencies: (dev-db/sqlite-3.30.1:3/3::gentoo, ebuild scheduled for merge) depends on (dev-libs/icu-65.1:0/65.1::gentoo, ebuild scheduled for merge) (buildtime_slot_op) (dev-lang/python-3.7.6:3.7/3.7m::gentoo, ebuild scheduled for merge) (buildtime) (dev-db/sqlite-3.30.1:3/3::gentoo, ebuild scheduled for merge) (buildtime_slot_op) It might be possible to break this cycle by applying any of the following changes: - dev-lang/python-3.7.6 (Change USE: -sqlite) - dev-db/sqlite-3.30.1 (Change USE: -icu) Note that this change can be reverted, once the package has been installed. emerge might spew the warning but should continue.
The problem is that the solution for the circular deps may affect the files downloaded (like bug 429926). Unless we greedily downloaded as much as possible, I don't think we can fix this.