Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 594346 - dev-perl/Module-Build-0.421.800 over-aggressive dependency on virtual/perl-podlators
Summary: dev-perl/Module-Build-0.421.800 over-aggressive dependency on virtual/perl-po...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal
Assignee: Gentoo Perl team
URL:
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-09-19 11:09 UTC by Alexander Tsoy
Modified: 2016-09-19 23:16 UTC (History)
1 user (show)

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


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alexander Tsoy 2016-09-19 11:09:37 UTC
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?
Comment 1 Alexander Tsoy 2016-09-19 11:45:36 UTC
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.
Comment 2 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2016-09-19 22:32:17 UTC
> 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 )
Comment 3 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2016-09-19 23:05:49 UTC
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
Comment 4 Kent Fredric (IRC: kent\n) (RETIRED) gentoo-dev 2016-09-19 23:16:03 UTC
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.