dev-perl/Test-Output: Weaken dependency on dev-perl/Test-Tester
authorKent Fredric <kentnl@gentoo.org>
Tue, 2 Aug 2016 23:58:28 +0000 (11:58 +1200)
committerKent Fredric <kentnl@gentoo.org>
Wed, 3 Aug 2016 00:00:13 +0000 (12:00 +1200)
Without this fix, Test-Output effectively needs perl-5.22
stabilized in order to satisfy Test-Tester from Perl-5.22

However, satisfying Test-Tester from a mechanism other than Perl-5.22
confuses portages dependency resolver, and confuses portage to not be able
to upgrade perl, and not being able to upgrade perl means perl can't be
stabilized, invoking a stabilization-needs-stabilization bug.

Hence, the choice here optimises for assuming stabilization will
happen/has happened, and removes any dependency on Test::Tester, assuming
portage will eventually provide it for you.

And just to be sure, we use perl before the test phase executes
to determine if Test::Tester was /actually/ installed and then only run tests
if it was.

This means before stabilization, some people *might* install this and not have
tests run, but everyone *will* get tests working after stabilization, as
opposed to the opposite occurring and stabilization being blocked.

Keyword Note: Stable keywords for arm64, m68k, s390 and sh are not
satisfied by dev-perl/Sub-Exporter. This was a residual issue and remains
to be fixed.

Bug: https://bugs.gentoo.org/584238

Package-Manager: portage-2.3.0
RepoMan-Options: --include-arches="alpha amd64 amd64-fbsd arm hppa ia64 mips nios2 ppc ppc64 riscv sparc sparc-fbsd x86 x86-fbsd"

dev-perl/Test-Output/Test-Output-1.30.0.ebuild

index e1af282d6e3a7e6dea280eaeb792721640299430..5aae85aad26a912e8407f91d45a87517dc477d6f 100644 (file)
@@ -1,4 +1,4 @@
-# Copyright 1999-2015 Gentoo Foundation
+# Copyright 1999-2016 Gentoo Foundation
 # Distributed under the terms of the GNU General Public License v2
 # $Id$
 
@@ -23,8 +23,18 @@ RDEPEND="
 DEPEND="${RDEPEND}
        test? (
                virtual/perl-Test-Simple
-               || ( >=virtual/perl-Test-Simple-1.1.10 >=dev-perl/Test-Tester-0.107 )
        )
 "
 
 SRC_TEST=do
+
+src_test() {
+       # Bug 584238 Avoidance
+       if perl -e 'exit ( eval { require Test::Tester; Test::Tester->VERSION(0.107); 1 } ? 0 : 1 )'; then
+               perl-module_src_test
+       else
+               einfo "Test phase skipped: Test::Tester required for tests"
+               einfo "Please upgrade to >=dev-lang/perl-5.22.0 or >=virtual/perl-Test-Simple-1.1.10"
+               einfo "if you want this tested"
+       fi
+}