Gentoo Archives: gentoo-commits

From: Kent Fredric <kentnl@g.o>
To: gentoo-commits@l.g.o
Subject: [gentoo-commits] repo/gentoo:master commit in: dev-perl/Dist-Zilla/files/, dev-perl/Dist-Zilla/
Date: Fri, 07 Aug 2020 17:53:34
Message-Id: 1596822794.c8e6567dafa3ed40b7f9faf3d309fa897accb511.kentnl@gentoo
1 commit: c8e6567dafa3ed40b7f9faf3d309fa897accb511
2 Author: Kent Fredric <kentnl <AT> gentoo <DOT> org>
3 AuthorDate: Fri Aug 7 17:47:06 2020 +0000
4 Commit: Kent Fredric <kentnl <AT> gentoo <DOT> org>
5 CommitDate: Fri Aug 7 17:53:14 2020 +0000
6 URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=c8e6567d
7
8 dev-perl/Dist-Zilla: add workaround for broken `authordeps --missing`
9
10 Stumbled into this working with app-admin/rex's 9999 version.
11
12 `dzil authordeps --missing` was reporting missing deps, and bailing,
13 even though they were provably installed.
14
15 This fixes build issues with app-admin/rex-9999 with
16 =dev-perl/Dist-Zilla-6.15.0
17
18 Bug: https://github.com/rjbs/Dist-Zilla/issues/660
19 Package-Manager: Portage-2.3.103, Repoman-2.3.22
20 Signed-off-by: Kent Fredric <kentnl <AT> gentoo.org>
21
22 dev-perl/Dist-Zilla/Dist-Zilla-6.15.0-r1.ebuild | 157 +++++++++++++++++++++
23 .../Dist-Zilla-6.015-authordeps-missing.patch | 36 +++++
24 2 files changed, 193 insertions(+)
25
26 diff --git a/dev-perl/Dist-Zilla/Dist-Zilla-6.15.0-r1.ebuild b/dev-perl/Dist-Zilla/Dist-Zilla-6.15.0-r1.ebuild
27 new file mode 100644
28 index 00000000000..4485c5f5469
29 --- /dev/null
30 +++ b/dev-perl/Dist-Zilla/Dist-Zilla-6.15.0-r1.ebuild
31 @@ -0,0 +1,157 @@
32 +# Copyright 1999-2020 Gentoo Authors
33 +# Distributed under the terms of the GNU General Public License v2
34 +
35 +EAPI=7
36 +
37 +DIST_AUTHOR=RJBS
38 +DIST_VERSION=6.015
39 +inherit perl-module
40 +
41 +DESCRIPTION="distribution builder; installer not included!"
42 +
43 +SLOT="0"
44 +KEYWORDS="~amd64 ~x86"
45 +IUSE="minimal test"
46 +RESTRICT="!test? ( test )"
47 +
48 +## CPAN->Gentoo resolution map for grepping in case upstream split a dep
49 +# breaks: Dist::Zilla::App::Command::stale -> Dist-Zilla-Plugin-PromptIfStale
50 +# DZA:Command::xtest -> DZP:CheckExtraTests
51 +# DZP:Author::Plicease::Tests -> DZPB::Author::Plicease
52 +X_BREAKS="
53 + !<dev-perl/Dist-Zilla-Plugin-PromptIfStale-0.40.0
54 + !<=dev-perl/Dist-Zilla-App-Command-update-0.40.0
55 + !<dev-perl/Dist-Zilla-Plugin-CheckExtraTests-0.29.0
56 + !<=dev-perl/Dist-Zilla-PluginBundle-Author-Plicease-2.20.0
57 + !<dev-perl/Dist-Zilla-Plugin-CopyFilesFromBuild-0.161.230
58 + !<=dev-perl/Dist-Zilla-Plugin-CopyFilesFromBuild-Filtered-0.1.0
59 + !<=dev-perl/Dist-Zilla-Plugin-Git-2.36.0
60 + !<=dev-perl/Dist-Zilla-Plugin-Keywords-0.6.0
61 + !<dev-perl/Dist-Zilla-Plugin-MakeMaker-Awesome-0.220.0
62 + !<=dev-perl/Dist-Zilla-Plugin-NameFromDirectory-0.30.0
63 + !<=dev-perl/Dist-Zilla-Plugin-PodWeaver-4.6.0
64 + !<=dev-perl/Dist-Zilla-Plugin-Prereqs-AuthorDeps-0.5.0
65 + !<dev-perl/Dist-Zilla-Plugin-ReadmeAnyFromPod-0.161.170
66 + !<=dev-perl/Dist-Zilla-Plugin-Run-0.35.0
67 + !<=dev-perl/Dist-Zilla-Plugin-Test-CheckDeps-0.13.0
68 + !<=dev-perl/Dist-Zilla-Plugin-Test-Version-1.50.0
69 + !<=dev-perl/Dist-Zilla-Plugin-TrialVersionComment-0.3.0
70 +"
71 +# r: App::Cmd::Command::version -> App-Cmd-0.321
72 +# r: App::Cmd::Setup -> App-Cmd
73 +# r: App::Cmd::Tester -> App-Cmd
74 +# r: App::Cmd::Tester::CaptureExternal -> App-Cmd 0.314
75 +# r: CPAN::Meta::Converter -> CPAN-Meta
76 +# r: CPAN::Meta::Merge -> CPAN-Meta 2.142060
77 +# r: CPAN::Meta::Prereqs -> CPAN-Meta
78 +# r: CPAN::Meta::Validator -> CPAN-Meta
79 +# r: Config::INI::Reader -> Config-INI
80 +# r: Config::MVP::Assembler -> Config-MVP
81 +# r: Config::MVP::Assembler::WithBundles -> Config-MVP
82 +# r: Config::MVP::Reader -> Config-MVP
83 +# r: Config::MVP::Reader::Findable::ByExtension -> Config-MVP 1.101450
84 +# r: Config::MVP::Reader::Finder -> Config-MVP 0.092990
85 +# r: Config::MVP::Section -> Config-MVP
86 +# r: List::Util -> Scalar-List-Utils
87 +# r: Mixin::Linewise::Readers -> Mixin-Linewise
88 +# r: Moose::Role -> Moose
89 +# r: Moose::Util::TypeConstraints -> Moose
90 +# r: MooseX::Types::Moose -> MooseX-Types
91 +# r: PPI::Document -> PPI
92 +# r: Scalar::Util -> Scalar-List-Utils
93 +# r: Software::LicenseUtils -> Software-License
94 +# r: Sub::Exporter::Util -> Sub-Exporter
95 +# r: Term::ReadKey -> TermReadKey
96 +# r: Text::Template -> text-template
97 +# r: strict, warnings -> perl
98 +
99 +# NB: PPI::XS is suggested by Dist-Zilla, but upstream of
100 +# PPI say PPI::XS presently doesn't do anything useful,
101 +# so the optional useflag and the dependency are skipped.
102 +RDEPEND="
103 + ${X_BREAKS}
104 + !minimal? (
105 + >=dev-perl/Archive-Tar-Wrapper-0.150.0
106 + >=dev-perl/Data-OptList-0.110.0
107 + dev-perl/Term-ReadLine-Gnu
108 + )
109 + >=dev-perl/App-Cmd-0.330.0
110 + virtual/perl-Archive-Tar
111 + >=virtual/perl-CPAN-Meta-2.142.60
112 + >=virtual/perl-CPAN-Meta-Requirements-2.121.0
113 + >=dev-perl/CPAN-Uploader-0.103.4
114 + virtual/perl-Carp
115 + >=dev-perl/Class-Load-0.170.0
116 + dev-perl/Config-INI
117 + >=dev-perl/Config-MVP-2.200.11
118 + >=dev-perl/Config-MVP-Reader-INI-2.101.461
119 + virtual/perl-Data-Dumper
120 + >=dev-perl/Data-Section-0.200.2
121 + >=dev-perl/DateTime-0.440.0
122 + virtual/perl-Digest-MD5
123 + virtual/perl-Encode
124 + >=virtual/perl-ExtUtils-Manifest-1.660.0
125 + >=dev-perl/File-Copy-Recursive-0.410.0
126 + dev-perl/File-Find-Rule
127 + virtual/perl-File-Path
128 + dev-perl/File-ShareDir
129 + >=dev-perl/File-ShareDir-Install-0.30.0
130 + virtual/perl-File-Spec
131 + virtual/perl-File-Temp
132 + dev-perl/File-pushd
133 + dev-perl/JSON-MaybeXS
134 + >=dev-perl/Log-Dispatchouli-1.102.220
135 + >=dev-perl/Mixin-Linewise-0.100.0
136 + virtual/perl-Module-CoreList
137 + dev-perl/Module-Runtime
138 + >=dev-perl/Moose-0.920.0
139 + dev-perl/MooseX-LazyRequire
140 + >=dev-perl/MooseX-Role-Parameterized-1.10.0
141 + dev-perl/MooseX-SetOnce
142 + dev-perl/MooseX-Types
143 + dev-perl/MooseX-Types-Perl
144 + dev-perl/PPI
145 + dev-perl/Params-Util
146 + >=dev-perl/Path-Tiny-0.52.0
147 + >=dev-perl/Perl-PrereqScanner-1.16.0
148 + virtual/perl-Pod-Simple
149 + >=virtual/perl-Scalar-List-Utils-1.450.0
150 + >=dev-perl/Software-License-0.103.14
151 + virtual/perl-Storable
152 + >=dev-perl/String-Formatter-0.100.680
153 + >=dev-perl/String-RewritePrefix-0.6.0
154 + dev-perl/Sub-Exporter
155 + dev-perl/Sub-Exporter-ForMethods
156 + dev-perl/Term-Encoding
157 + dev-perl/TermReadKey
158 + virtual/perl-Term-ReadLine
159 + dev-perl/Term-UI
160 + dev-perl/Test-Deep
161 + >=dev-perl/Text-Glob-0.80.0
162 + dev-perl/Text-Template
163 + dev-perl/Try-Tiny
164 + dev-perl/YAML-Tiny
165 + virtual/perl-autodie
166 + dev-perl/namespace-autoclean
167 + virtual/perl-parent
168 + virtual/perl-version
169 +"
170 +# t: Software::License::None -> Software-License 0.016
171 +# t: lib, utf8 -> perl
172 +BDEPEND="${RDEPEND}
173 + virtual/perl-ExtUtils-MakeMaker
174 + >=dev-perl/File-ShareDir-Install-0.60.0
175 + test? (
176 + >=dev-perl/CPAN-Meta-Check-0.11.0
177 + dev-perl/Test-FailWarnings
178 + dev-perl/Test-Fatal
179 + dev-perl/Test-File-ShareDir
180 + >=virtual/perl-Test-Simple-0.960.0
181 + )
182 +"
183 +PATCHES=(
184 + "${FILESDIR}/${PN}-6.015-authordeps-missing.patch"
185 +)
186 +src_test() {
187 + TZ=UTC perl-module_src_test
188 +}
189
190 diff --git a/dev-perl/Dist-Zilla/files/Dist-Zilla-6.015-authordeps-missing.patch b/dev-perl/Dist-Zilla/files/Dist-Zilla-6.015-authordeps-missing.patch
191 new file mode 100644
192 index 00000000000..c9e25ebff61
193 --- /dev/null
194 +++ b/dev-perl/Dist-Zilla/files/Dist-Zilla-6.015-authordeps-missing.patch
195 @@ -0,0 +1,36 @@
196 +From 21a92b08d30cd4758fefe1706eb96af30082cb7b Mon Sep 17 00:00:00 2001
197 +From: Kent Fredric <kentnl@g.o>
198 +Date: Sat, 8 Aug 2020 05:25:21 +1200
199 +Subject: Fix INC traversal breakage with non-string objects in INC
200 +
201 +As `$root` is a Path object, and because there are defined mechanisms
202 +for handling objects in `@INC` traversal, this object being added to
203 +`@INC` can cause panics when the perl interpreter tries to call a method
204 +that doesn't exist, violating the API.
205 +
206 +And this in turn makes various authordeps appear missing when they're
207 +present, due to suppression of the error occurring from the above.
208 +
209 +Forcing stringification of the path object mitigates this issue.
210 +
211 +Bug: https://github.com/rjbs/Dist-Zilla/issues/660
212 +---
213 + lib/Dist/Zilla/Util/AuthorDeps.pm | 2 +-
214 + 1 file changed, 1 insertion(+), 1 deletion(-)
215 +
216 +diff --git a/lib/Dist/Zilla/Util/AuthorDeps.pm b/lib/Dist/Zilla/Util/AuthorDeps.pm
217 +index cbca1c7..603d67b 100644
218 +--- a/lib/Dist/Zilla/Util/AuthorDeps.pm
219 ++++ b/lib/Dist/Zilla/Util/AuthorDeps.pm
220 +@@ -113,7 +113,7 @@ sub extract_author_deps {
221 + : do {
222 + my $m = $_;
223 + ! eval {
224 +- local @INC = @INC; push @INC, $root;
225 ++ local @INC = @INC; push @INC, "$root";
226 + # This will die if module is missing
227 + Module::Runtime::require_module($m);
228 + my $v = $vermap->{$m};
229 +--
230 +2.28.0
231 +