I'm not sure if this is intentional or not, but virtual/perl-podlators-4.70.0 cannot be installed with perl-5.22 due to missing perl-core/podlators-4.70.0. We have a mix of stable dev-lang/perl and unstable dev-perl/* and perl-core/* packages and getting blockers when trying to upgrade @world. Feel free to close this bug if this is unsupported configuration. $ sudo emerge -avuDN --changed-deps @world These are the packages that would be merged, in order: Calculating dependencies... done! [ebuild U ] dev-libs/libksba-1.3.5::gentoo [1.3.4::gentoo] USE="-static-libs" 607 KiB [ebuild U ~] dev-perl/Config-General-2.630.0::gentoo [2.620.0::gentoo] USE="-examples" 64 KiB [ebuild U ] sys-libs/cracklib-2.9.6-r1::gentoo [2.9.6::gentoo] USE="nls python zlib -static-libs {-test}" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7" 0 KiB [ebuild U ~] dev-lang/perl-5.24.0-r1:0/5.24::gentoo [5.22.2:0/5.22::gentoo] USE="berkdb gdbm ithreads -debug -doc" 13 842 KiB [ebuild U ~] virtual/perl-podlators-4.70.0::gentoo [2.5.3-r1::gentoo] 0 KiB [ebuild U ~] dev-perl/CGI-4.330.0::gentoo [4.310.0::gentoo] USE="-examples {-test}" 193 KiB [ebuild N ] perl-core/CPAN-Meta-2.150.1::gentoo USE="{-test}" 98 KiB [ebuild U ~] dev-perl/Variable-Magic-0.600.0::gentoo [0.590.0::gentoo] USE="-examples {-test}" 77 KiB [ebuild U ~] dev-perl/UUID-0.260.0::gentoo [0.250.0::gentoo] 15 KiB [ebuild U ~] dev-perl/Module-Build-0.421.800::gentoo [0.421.600::gentoo] USE="{-test}" 299 KiB [ebuild U ] net-misc/curl-7.50.3::gentoo [7.50.1::gentoo] USE="ipv6 ssl threads -adns -http2 -idn -kerberos -ldap -metalink -rtmp -samba -ssh -static-libs {-test}" ABI_X86="(64) -32 (-x32)" CURL_SSL="openssl -axtls -gnutls (-libressl ) -mbedtls -nss -polarssl (-winssl)" 7 304 KiB [ebuild U ] dev-db/mysql-init-scripts-2.1-r1::gentoo [2.0-r1::gentoo] 0 KiB [ebuild U ] x11-libs/pixman-0.34.0::gentoo [0.32.8::gentoo] USE="(-altivec) (-iwmmxt) (-loongson2f) (-neon) -static-libs" ABI_X86="(64) -32 (-x32)" CPU_FLAGS_X86="mmxext sse2 ssse3" 723 KiB [ebuild U ] sys-apps/openrc-0.21.7::gentoo [0.21.3::gentoo] USE="ncurses netifrc pam unicode -audit -debug -newnet (-prefix) (-selinux) -static-libs -tools" 165 KiB [ebuild U ] dev-db/mariadb-10.0.27:0/18::gentoo [10.0.26:0/18::gentoo] USE="openssl pam perl server -bindist -debug -embedded -extraengine -jdbc% -jemalloc -latin1 (-libressl) -odbc -oqgraph -profiling (-selinux) -sphinx -static -sta tic-libs -systemtap -tcmalloc {-test} -tokudb -xml -yassl" ABI_X86="(64) -32 (-x32)" 61 776 KiB Total: 15 packages (14 upgrades, 1 new), Size of downloads: 85 156 KiB !!! Multiple package instances within a single package slot have been pulled !!! into the dependency graph, resulting in a slot conflict: dev-lang/perl:0 (dev-lang/perl-5.22.2:0/5.22::gentoo, installed) pulled in by =dev-lang/perl-5.22* required by (virtual/perl-ExtUtils-MakeMaker-7.40.100_rc:0/0::gentoo, installed) ^ ^^^^^ dev-lang/perl:0/5.22=[-build(-)] required by (dev-perl/String-Errf-0.7.0:0/0::perl-experimental, installed) ^^^^^^^^ (and 465 more with the same problems) (dev-lang/perl-5.24.0-r1:0/5.24::gentoo, ebuild scheduled for merge) pulled in by =dev-lang/perl-5.24* required by (virtual/perl-ExtUtils-Install-2.40.0-r1:0/0::gentoo, installed) ^ ^^^^^ (and 3 more with the same problem) NOTE: Use the '--verbose-conflicts' option to display parents omitted above It may be possible to solve this problem by using package.mask to prevent one of those packages from being selected. However, it is also possible that conflicting dependencies exist such that they are impossible to satisfy simultaneously. If such a conflict exists in the dependencies of two different packages, then those packages can not be installed simultaneously. You may want to try a larger value of the --backtrack option, such as --backtrack=30, in order to see if that will solve this conflict automatically. For more information, see MASKED PACKAGES section in the emerge man page or refer to the Gentoo Handbook. The following keyword changes are necessary to proceed: (see "package.accept_keywords" in the portage(5) man page for more details) # required by virtual/perl-Exporter-5.720.0-r1::gentoo # required by dev-perl/Variable-Magic-0.600.0::gentoo # required by dev-perl/B-Hooks-EndOfScope-0.200.0::gentoo # required by dev-perl/namespace-autoclean-0.280.0::gentoo # required by dev-perl/Pod-Elemental-PerlMunger-0.200.2::perl-experimental # required by dev-perl/Dist-Zilla-Plugin-PodWeaver-4.6.0::perl-experimental # required by @selected # required by @world (argument) =dev-lang/perl-5.24.0-r1 ~amd64 # required by dev-perl/Module-Build-Tiny-0.39.0::gentoo # required by dev-perl/MooseX-Role-Parameterized-1.80.0::gentoo # required by dev-perl/Dist-Zilla-5.15.0-r1::perl-experimental # required by @selected # required by @world (argument) =virtual/perl-podlators-4.70.0 ~amd64 Would you like to add these changes to your config files?
At the moment we have workarounded this issue by masking >=dev-perl/Module-Build-0.421.800. As a side note, dev-perl/Module-Build-0.421.800 has suspicious dependency on >=virtual/perl-podlators-2.170.0. I can't find this particular version of podlators anywhere.
> As a side note, dev-perl/Module-Build-0.421.800 has suspicious dependency on > >=virtual/perl-podlators-2.170.0. I can't find this particular version of > podlators anywhere. This is an upstream requirement: https://metacpan.org/source/LEONT/Module-Build-0.4218/META.json#L58 But it does somewhat appear that the mapping was done wrong, because upstream has some weirdness going on with their versions in Podlators: Pod::Man 2.25 R/RR/RRA/podlators-2.4.0.tar.gz Pod::Man 2.26 R/RR/RRA/podlators-2.4.1.tar.gz Pod::Man 2.26 R/RR/RRA/podlators-2.4.2.tar.gz Pod::Man 2.27 R/RR/RRA/podlators-2.5.0.tar.gz Pod::Man 2.27 R/RR/RRA/podlators-2.5.1.tar.gz Pod::Man 2.28 R/RR/RRA/podlators-2.5.2.tar.gz Pod::Man 2.28 R/RR/RRA/podlators-2.5.3.tar.gz Pod::Man 4.00 R/RR/RRA/podlators-4.00.tar.gz Pod::Man 4.01 R/RR/RRA/podlators-4.01.tar.gz Pod::Man 4.02 R/RR/RRA/podlators-4.02.tar.gz Pod::Man 4.03 R/RR/RRA/podlators-4.03.tar.gz Pod::Man 4.04 R/RR/RRA/podlators-4.04.tar.gz Pod::Man 4.05 R/RR/RRA/podlators-4.05.tar.gz Pod::Man 4.06 R/RR/RRA/podlators-4.06.tar.gz Pod::Man 4.07 R/RR/RRA/podlators-4.07.tar.gz So "2.17" must have meant "2.1.7", yaaay. So I'll give this ebuild a double check and see if I missed any other shenanigans. --- RE: perl-podlators At present, virtual/perl-podlators-4.70.0 requires perl 5.24 perl-core/podlators will only be provided if we need to stabilize this version of podlators ( or any of its dependents ) before we stabilize perl 5.24 > We have a mix of stable dev-lang/perl and unstable dev-perl/* and perl-core/* This is ill advised in general with Gentoo, multiply so with Perl. Correct approaches include ( as you did ) masking newer Module-Build, or simply unmasking your whole system. ( We generally don't provide perl-core/ for virtuals unless there is pressing need to, like a security threat, that needs fast stabilization, because perl-core things confuse portage sometimes and make upgrades harder for everyone )
Ugh. Just out of that list it gets really crazy. podlators 2.3.1 -> Pod::Man 2.23 2.3.0 -> 2.23 2.2.2 -> 2.22 2.2.1 -> 2.21 2.2.0 -> 2.21 2.1.4 -> 2.20 2.1.3 -> 2.19 2.1.2 -> 2.18 2.1.1 -> 2.17 2.1.0 -> 2.17 #<-- this is where the dep needs to be. 2.0.6 -> 2.16
commit 492e6d841cf749da711eff78ef98df334c530186 Author: Kent Fredric <kentnl@gentoo.org> Date: Tue Sep 20 11:12:58 2016 +1200 dev-perl/Module-Build: Fix aggressive perl-podlators dep Upstream want Pod::Man 2.17, which was in podlators-2.1.0 or later.