1 |
#!perl |
2 |
# A simple listing of core files that have specific maintainers, |
3 |
# or at least someone that can be called an "interested party". |
4 |
# Also, a "module" does not necessarily mean a CPAN module, it |
5 |
# might mean a file or files or a subdirectory. |
6 |
# Most (but not all) of the modules have dual lives in the core |
7 |
# and in CPAN. |
8 |
|
9 |
package Maintainers; |
10 |
|
11 |
use utf8; |
12 |
use File::Glob qw(:case); |
13 |
|
14 |
# IGNORABLE: files which, if they appear in the root of a CPAN |
15 |
# distribution, need not appear in core (i.e. core-cpan-diff won't |
16 |
# complain if it can't find them) |
17 |
|
18 |
@IGNORABLE = qw( |
19 |
.cvsignore .dualLivedDiffConfig .gitignore .perlcriticrc .perltidyrc |
20 |
.travis.yml ANNOUNCE Announce Artistic AUTHORS BENCHMARK BUGS Build.PL |
21 |
CHANGELOG ChangeLog Changelog CHANGES Changes CONTRIBUTING CONTRIBUTING.md |
22 |
CONTRIBUTING.mkdn COPYING Copying cpanfile CREDITS dist.ini GOALS HISTORY |
23 |
INSTALL INSTALL.SKIP LICENCE LICENSE Makefile.PL MANIFEST MANIFEST.SKIP |
24 |
META.json META.yml MYMETA.json MYMETA.yml NEW NEWS NOTES perlcritic.rc |
25 |
ppport.h README README.md README.pod README.PATCHING SIGNATURE THANKS TODO |
26 |
Todo VERSION WHATSNEW |
27 |
); |
28 |
|
29 |
# Each entry in the %Modules hash roughly represents a distribution, |
30 |
# except when DISTRIBUTION is set, where it *exactly* represents a single |
31 |
# CPAN distribution. |
32 |
|
33 |
# The keys of %Modules are human descriptions of the distributions, and |
34 |
# may not exactly match a module or distribution name. Distributions |
35 |
# which have an obvious top-level module associated with them will usually |
36 |
# have a key named for that module, e.g. 'Archive::Extract' for |
37 |
# Archive-Extract-N.NN.tar.gz; the remaining keys are likely to be based |
38 |
# on the name of the distribution, e.g. 'Locale-Codes' for |
39 |
# Locale-Codes-N.NN.tar.gz'. |
40 |
|
41 |
# UPSTREAM indicates where patches should go. This is generally now |
42 |
# inferred from the FILES: modules with files in dist/, ext/ and lib/ |
43 |
# are understood to have UPSTREAM 'blead', meaning that the copy of the |
44 |
# module in the blead sources is to be considered canonical, while |
45 |
# modules with files in cpan/ are understood to have UPSTREAM 'cpan', |
46 |
# meaning that the module on CPAN is to be patched first. |
47 |
|
48 |
# MAINTAINER has previously been used to indicate who the current maintainer |
49 |
# of the module is, but this is no longer stated explicitly. It is now |
50 |
# understood to be either the Perl 5 Porters if UPSTREAM is 'blead', or else |
51 |
# the CPAN author whose PAUSE user ID forms the first part of the DISTRIBUTION |
52 |
# value, e.g. 'BINGOS' in the case of 'BINGOS/Archive-Tar-2.00.tar.gz'. |
53 |
# (PAUSE's View Permissions page may be consulted to find other authors who |
54 |
# have owner or co-maint permissions for the module in question.) |
55 |
|
56 |
# FILES is a list of filenames, glob patterns, and directory |
57 |
# names to be recursed down, which collectively generate a complete list |
58 |
# of the files associated with the distribution. |
59 |
|
60 |
# BUGS is an email or url to post bug reports. For modules with |
61 |
# UPSTREAM => 'blead', use perl5-porters@perl.org. rt.cpan.org |
62 |
# appears to automatically provide a URL for CPAN modules; any value |
63 |
# given here overrides the default: |
64 |
# http://rt.cpan.org/Public/Dist/Display.html?Name=$ModuleName |
65 |
|
66 |
# DISTRIBUTION names the tarball on CPAN which (allegedly) the files |
67 |
# included in core are derived from. Note that the file's version may not |
68 |
# necessarily match the newest version on CPAN. |
69 |
|
70 |
# EXCLUDED is a list of files to be excluded from a CPAN tarball before |
71 |
# comparing the remaining contents with core. Each item can either be a |
72 |
# full pathname (eg 't/foo.t') or a pattern (e.g. qr{^t/}). |
73 |
# It defaults to the empty list. |
74 |
|
75 |
# CUSTOMIZED is a list of files that have been customized within the |
76 |
# Perl core. Use this whenever patching a cpan upstream distribution |
77 |
# or whenever we expect to have a file that differs from the tarball. |
78 |
# If the file in blead matches the file in the tarball from CPAN, |
79 |
# Porting/core-cpan-diff will warn about it, as it indicates an expected |
80 |
# customization might have been lost when updating from upstream. The |
81 |
# path should be relative to the distribution directory. If the upstream |
82 |
# distribution should be modified to incorporate the change then be sure |
83 |
# to raise a ticket for it on rt.cpan.org and add a comment alongside the |
84 |
# list of CUSTOMIZED files noting the ticket number. |
85 |
|
86 |
# DEPRECATED contains the *first* version of Perl in which the module |
87 |
# was considered deprecated. It should only be present if the module is |
88 |
# actually deprecated. Such modules should use deprecated.pm to |
89 |
# issue a warning if used. E.g.: |
90 |
# |
91 |
# use if $] >= 5.011, 'deprecate'; |
92 |
# |
93 |
|
94 |
# MAP is a hash that maps CPAN paths to their core equivalents. |
95 |
# Each key represents a string prefix, with longest prefixes checked |
96 |
# first. The first match causes that prefix to be replaced with the |
97 |
# corresponding key. For example, with the following MAP: |
98 |
# { |
99 |
# 'lib/' => 'lib/', |
100 |
# '' => 'lib/Foo/', |
101 |
# }, |
102 |
# |
103 |
# these files are mapped as shown: |
104 |
# |
105 |
# README becomes lib/Foo/README |
106 |
# lib/Foo.pm becomes lib/Foo.pm |
107 |
# |
108 |
# The default is dependent on the type of module. |
109 |
# For distributions which appear to be stored under ext/, it defaults to: |
110 |
# |
111 |
# { '' => 'ext/Foo-Bar/' } |
112 |
# |
113 |
# otherwise, it's |
114 |
# |
115 |
# { |
116 |
# 'lib/' => 'lib/', |
117 |
# '' => 'lib/Foo/Bar/', |
118 |
# } |
119 |
|
120 |
%Modules = ( |
121 |
|
122 |
'Archive::Tar' => { |
123 |
'DISTRIBUTION' => 'BINGOS/Archive-Tar-2.24.tar.gz', |
124 |
'FILES' => q[cpan/Archive-Tar], |
125 |
'BUGS' => 'bug-archive-tar@rt.cpan.org', |
126 |
'EXCLUDED' => [ |
127 |
qw(t/07_ptardiff.t), |
128 |
], |
129 |
}, |
130 |
|
131 |
'Attribute::Handlers' => { |
132 |
'DISTRIBUTION' => 'RJBS/Attribute-Handlers-0.99.tar.gz', |
133 |
'FILES' => q[dist/Attribute-Handlers], |
134 |
}, |
135 |
|
136 |
'autodie' => { |
137 |
'DISTRIBUTION' => 'PJF/autodie-2.29.tar.gz', |
138 |
'FILES' => q[cpan/autodie], |
139 |
'EXCLUDED' => [ |
140 |
qr{benchmarks}, |
141 |
qr{README\.md}, |
142 |
# All these tests depend upon external |
143 |
# modules that don't exist when we're |
144 |
# building the core. Hence, they can |
145 |
# never run, and should not be merged. |
146 |
qw( t/author-critic.t |
147 |
t/critic.t |
148 |
t/fork.t |
149 |
t/kwalitee.t |
150 |
t/lex58.t |
151 |
t/pod-coverage.t |
152 |
t/pod.t |
153 |
t/release-pod-coverage.t |
154 |
t/release-pod-syntax.t |
155 |
t/socket.t |
156 |
t/system.t |
157 |
) |
158 |
], |
159 |
# CPAN RT 105344 |
160 |
'CUSTOMIZED' => [ qw[ t/mkdir.t ] ], |
161 |
}, |
162 |
|
163 |
'AutoLoader' => { |
164 |
'DISTRIBUTION' => 'SMUELLER/AutoLoader-5.74.tar.gz', |
165 |
'FILES' => q[cpan/AutoLoader], |
166 |
'EXCLUDED' => ['t/00pod.t'], |
167 |
}, |
168 |
|
169 |
'autouse' => { |
170 |
'DISTRIBUTION' => 'RJBS/autouse-1.11.tar.gz', |
171 |
'FILES' => q[dist/autouse], |
172 |
'EXCLUDED' => [qr{^t/release-.*\.t}], |
173 |
}, |
174 |
|
175 |
'B::Debug' => { |
176 |
'DISTRIBUTION' => 'RURBAN/B-Debug-1.24.tar.gz', |
177 |
'FILES' => q[cpan/B-Debug], |
178 |
'EXCLUDED' => ['t/pod.t'], |
179 |
}, |
180 |
|
181 |
'base' => { |
182 |
'DISTRIBUTION' => 'RJBS/base-2.23.tar.gz', |
183 |
'FILES' => q[dist/base], |
184 |
}, |
185 |
|
186 |
'bignum' => { |
187 |
'DISTRIBUTION' => 'PJACKLAM/bignum-0.47.tar.gz', |
188 |
'FILES' => q[cpan/bignum], |
189 |
'EXCLUDED' => [ |
190 |
qr{^t/author-}, |
191 |
qw( t/00sig.t |
192 |
t/01load.t |
193 |
t/02pod.t |
194 |
t/03podcov.t |
195 |
), |
196 |
], |
197 |
}, |
198 |
|
199 |
'Carp' => { |
200 |
'DISTRIBUTION' => 'RJBS/Carp-1.38.tar.gz', |
201 |
'FILES' => q[dist/Carp], |
202 |
}, |
203 |
|
204 |
'Compress::Raw::Bzip2' => { |
205 |
'DISTRIBUTION' => 'PMQS/Compress-Raw-Bzip2-2.074.tar.gz', |
206 |
'FILES' => q[cpan/Compress-Raw-Bzip2], |
207 |
'EXCLUDED' => [ |
208 |
qr{^t/Test/}, |
209 |
'bzip2-src/bzip2-const.patch', |
210 |
'bzip2-src/bzip2-cpp.patch', |
211 |
'bzip2-src/bzip2-unsigned.patch', |
212 |
], |
213 |
}, |
214 |
|
215 |
'Compress::Raw::Zlib' => { |
216 |
'DISTRIBUTION' => 'PMQS/Compress-Raw-Zlib-2.074.tar.gz', |
217 |
|
218 |
'FILES' => q[cpan/Compress-Raw-Zlib], |
219 |
'EXCLUDED' => [ |
220 |
qr{^examples/}, |
221 |
qr{^t/Test/}, |
222 |
qw( t/000prereq.t |
223 |
t/99pod.t |
224 |
), |
225 |
], |
226 |
}, |
227 |
|
228 |
'Config::Perl::V' => { |
229 |
'DISTRIBUTION' => 'HMBRAND/Config-Perl-V-0.27.tgz', |
230 |
'FILES' => q[cpan/Config-Perl-V], |
231 |
'EXCLUDED' => [qw( |
232 |
examples/show-v.pl |
233 |
)], |
234 |
}, |
235 |
|
236 |
'constant' => { |
237 |
'DISTRIBUTION' => 'RJBS/constant-1.33.tar.gz', |
238 |
'FILES' => q[dist/constant], |
239 |
'EXCLUDED' => [ |
240 |
qw( t/00-load.t |
241 |
t/more-tests.t |
242 |
t/pod-coverage.t |
243 |
t/pod.t |
244 |
eg/synopsis.pl |
245 |
), |
246 |
], |
247 |
}, |
248 |
|
249 |
'CPAN' => { |
250 |
'DISTRIBUTION' => 'ANDK/CPAN-2.18-TRIAL.tar.gz', |
251 |
'FILES' => q[cpan/CPAN], |
252 |
'EXCLUDED' => [ |
253 |
qr{^distroprefs/}, |
254 |
qr{^inc/Test/}, |
255 |
qr{^t/CPAN/}, |
256 |
qr{^t/data/}, |
257 |
qr{^t/97-}, |
258 |
qw( lib/CPAN/Admin.pm |
259 |
scripts/cpan-mirrors |
260 |
PAUSE2015.pub |
261 |
SlayMakefile |
262 |
t/00signature.t |
263 |
t/04clean_load.t |
264 |
t/12cpan.t |
265 |
t/13tarzip.t |
266 |
t/14forkbomb.t |
267 |
t/30shell.coverage |
268 |
t/30shell.t |
269 |
t/31sessions.t |
270 |
t/41distribution.t |
271 |
t/42distroprefs.t |
272 |
t/43distroprefspref.t |
273 |
t/44cpanmeta.t |
274 |
t/50pod.t |
275 |
t/51pod.t |
276 |
t/52podcover.t |
277 |
t/60credentials.t |
278 |
t/70_critic.t |
279 |
t/71_minimumversion.t |
280 |
t/local_utils.pm |
281 |
t/perlcriticrc |
282 |
t/yaml_code.yml |
283 |
), |
284 |
], |
285 |
}, |
286 |
|
287 |
# Note: When updating CPAN-Meta the META.* files will need to be regenerated |
288 |
# perl -Icpan/CPAN-Meta/lib Porting/makemeta |
289 |
'CPAN::Meta' => { |
290 |
'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-2.150010.tar.gz', |
291 |
'FILES' => q[cpan/CPAN-Meta], |
292 |
'EXCLUDED' => [ |
293 |
qw[t/00-report-prereqs.t |
294 |
t/00-report-prereqs.dd |
295 |
], |
296 |
qr{^xt}, |
297 |
qr{^history}, |
298 |
], |
299 |
}, |
300 |
|
301 |
'CPAN::Meta::Requirements' => { |
302 |
'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-Requirements-2.140.tar.gz', |
303 |
'FILES' => q[cpan/CPAN-Meta-Requirements], |
304 |
'EXCLUDED' => [ |
305 |
qw(t/00-report-prereqs.t), |
306 |
qw(t/00-report-prereqs.dd), |
307 |
qw(t/version-cleanup.t), |
308 |
qr{^xt}, |
309 |
], |
310 |
}, |
311 |
|
312 |
'CPAN::Meta::YAML' => { |
313 |
'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-YAML-0.018.tar.gz', |
314 |
'FILES' => q[cpan/CPAN-Meta-YAML], |
315 |
'EXCLUDED' => [ |
316 |
't/00-report-prereqs.t', |
317 |
't/00-report-prereqs.dd', |
318 |
qr{^xt}, |
319 |
], |
320 |
}, |
321 |
|
322 |
'Data::Dumper' => { |
323 |
'DISTRIBUTION' => 'SMUELLER/Data-Dumper-2.161.tar.gz', |
324 |
'FILES' => q[dist/Data-Dumper], |
325 |
}, |
326 |
|
327 |
'DB_File' => { |
328 |
'DISTRIBUTION' => 'PMQS/DB_File-1.840.tar.gz', |
329 |
'FILES' => q[cpan/DB_File], |
330 |
'EXCLUDED' => [ |
331 |
qr{^patches/}, |
332 |
qw( t/pod.t |
333 |
fallback.h |
334 |
fallback.xs |
335 |
), |
336 |
], |
337 |
}, |
338 |
|
339 |
'Devel::PPPort' => { |
340 |
'DISTRIBUTION' => 'WOLFSAGE/Devel-PPPort-3.35.tar.gz', |
341 |
# RJBS has asked MHX to have UPSTREAM be 'blead' |
342 |
# (i.e. move this from cpan/ to dist/) |
343 |
'FILES' => q[cpan/Devel-PPPort], |
344 |
'EXCLUDED' => [ |
345 |
'PPPort.pm', # we use PPPort_pm.PL instead |
346 |
] |
347 |
}, |
348 |
|
349 |
'Devel::SelfStubber' => { |
350 |
'DISTRIBUTION' => 'FLORA/Devel-SelfStubber-1.05.tar.gz', |
351 |
'FILES' => q[dist/Devel-SelfStubber], |
352 |
'EXCLUDED' => [qr{^t/release-.*\.t}], |
353 |
}, |
354 |
|
355 |
'Digest' => { |
356 |
'DISTRIBUTION' => 'GAAS/Digest-1.17.tar.gz', |
357 |
'FILES' => q[cpan/Digest], |
358 |
'EXCLUDED' => ['digest-bench'], |
359 |
'CUSTOMIZED' => [ |
360 |
# CVE-2016-1238 |
361 |
qw( Digest.pm ) |
362 |
], |
363 |
}, |
364 |
|
365 |
'Digest::MD5' => { |
366 |
'DISTRIBUTION' => 'GAAS/Digest-MD5-2.55.tar.gz', |
367 |
'FILES' => q[cpan/Digest-MD5], |
368 |
'EXCLUDED' => ['rfc1321.txt'], |
369 |
}, |
370 |
|
371 |
'Digest::SHA' => { |
372 |
'DISTRIBUTION' => 'MSHELOR/Digest-SHA-5.96.tar.gz', |
373 |
'FILES' => q[cpan/Digest-SHA], |
374 |
'EXCLUDED' => [ |
375 |
qw( t/pod.t |
376 |
t/podcover.t |
377 |
examples/dups |
378 |
), |
379 |
], |
380 |
}, |
381 |
|
382 |
'Dumpvalue' => { |
383 |
'DISTRIBUTION' => 'FLORA/Dumpvalue-1.17.tar.gz', |
384 |
'FILES' => q[dist/Dumpvalue], |
385 |
'EXCLUDED' => [qr{^t/release-.*\.t}], |
386 |
}, |
387 |
|
388 |
'Encode' => { |
389 |
'DISTRIBUTION' => 'DANKOGAI/Encode-2.88.tar.gz', |
390 |
'FILES' => q[cpan/Encode], |
391 |
'CUSTOMIZED' => [ qw(Unicode/Unicode.pm) ], |
392 |
}, |
393 |
|
394 |
'encoding::warnings' => { |
395 |
'DISTRIBUTION' => 'AUDREYT/encoding-warnings-0.11.tar.gz', |
396 |
'FILES' => q[dist/encoding-warnings], |
397 |
'EXCLUDED' => [ |
398 |
qr{^inc/Module/}, |
399 |
qw(t/0-signature.t), |
400 |
], |
401 |
}, |
402 |
|
403 |
'Env' => { |
404 |
'DISTRIBUTION' => 'FLORA/Env-1.04.tar.gz', |
405 |
'FILES' => q[dist/Env], |
406 |
'EXCLUDED' => [qr{^t/release-.*\.t}], |
407 |
}, |
408 |
|
409 |
'experimental' => { |
410 |
'DISTRIBUTION' => 'LEONT/experimental-0.016.tar.gz', |
411 |
'FILES' => q[cpan/experimental], |
412 |
'EXCLUDED' => [qr{^xt/}], |
413 |
}, |
414 |
|
415 |
'Exporter' => { |
416 |
'DISTRIBUTION' => 'TODDR/Exporter-5.72.tar.gz', |
417 |
'FILES' => q[dist/Exporter], |
418 |
'EXCLUDED' => [ |
419 |
qw( t/pod.t |
420 |
t/use.t |
421 |
), |
422 |
], |
423 |
}, |
424 |
|
425 |
'ExtUtils::CBuilder' => { |
426 |
'DISTRIBUTION' => 'AMBS/ExtUtils-CBuilder-0.280224.tar.gz', |
427 |
'FILES' => q[dist/ExtUtils-CBuilder], |
428 |
'EXCLUDED' => [ |
429 |
qw(README.mkdn), |
430 |
qr{^xt}, |
431 |
], |
432 |
}, |
433 |
|
434 |
'ExtUtils::Constant' => { |
435 |
|
436 |
'DISTRIBUTION' => 'NWCLARK/ExtUtils-Constant-0.23.tar.gz', |
437 |
'FILES' => q[cpan/ExtUtils-Constant], |
438 |
'EXCLUDED' => [ |
439 |
qw( lib/ExtUtils/Constant/Aaargh56Hash.pm |
440 |
examples/perl_keyword.pl |
441 |
examples/perl_regcomp_posix_keyword.pl |
442 |
), |
443 |
], |
444 |
# cc37ebcee3 to fix VMS failure |
445 |
'CUSTOMIZED' => [ qw(t/Constant.t) ], |
446 |
}, |
447 |
|
448 |
'ExtUtils::Install' => { |
449 |
'DISTRIBUTION' => 'BINGOS/ExtUtils-Install-2.04.tar.gz', |
450 |
'FILES' => q[cpan/ExtUtils-Install], |
451 |
'EXCLUDED' => [ |
452 |
qw( t/lib/Test/Builder.pm |
453 |
t/lib/Test/Builder/Module.pm |
454 |
t/lib/Test/More.pm |
455 |
t/lib/Test/Simple.pm |
456 |
t/pod-coverage.t |
457 |
t/pod.t |
458 |
), |
459 |
], |
460 |
}, |
461 |
|
462 |
'ExtUtils::MakeMaker' => { |
463 |
'DISTRIBUTION' => 'BINGOS/ExtUtils-MakeMaker-7.24.tar.gz', |
464 |
'FILES' => q[cpan/ExtUtils-MakeMaker], |
465 |
'EXCLUDED' => [ |
466 |
qr{^t/lib/Test/}, |
467 |
qr{^(bundled|my)/}, |
468 |
qr{^t/Liblist_Kid.t}, |
469 |
qr{^t/liblist/}, |
470 |
qr{^\.perlcriticrc}, |
471 |
'PATCHING', |
472 |
'README.packaging', |
473 |
'lib/ExtUtils/MakeMaker/version/vpp.pm', |
474 |
], |
475 |
}, |
476 |
|
477 |
'ExtUtils::Manifest' => { |
478 |
'DISTRIBUTION' => 'ETHER/ExtUtils-Manifest-1.70.tar.gz', |
479 |
'FILES' => q[cpan/ExtUtils-Manifest], |
480 |
'EXCLUDED' => [ |
481 |
qr(^t/00-report-prereqs), |
482 |
qr(^xt/) |
483 |
], |
484 |
}, |
485 |
|
486 |
'ExtUtils::ParseXS' => { |
487 |
'DISTRIBUTION' => 'SMUELLER/ExtUtils-ParseXS-3.30.tar.gz', |
488 |
'FILES' => q[dist/ExtUtils-ParseXS], |
489 |
}, |
490 |
|
491 |
'File::Fetch' => { |
492 |
'DISTRIBUTION' => 'BINGOS/File-Fetch-0.52.tar.gz', |
493 |
'FILES' => q[cpan/File-Fetch], |
494 |
}, |
495 |
|
496 |
'File::Path' => { |
497 |
'DISTRIBUTION' => 'RICHE/File-Path-2.12.tar.gz', |
498 |
'FILES' => q[cpan/File-Path], |
499 |
'EXCLUDED' => [ |
500 |
qw(t/Path-Class.t), |
501 |
qr{^xt/}, |
502 |
], |
503 |
# https://github.com/rpcme/File-Path/pull/34 |
504 |
'CUSTOMIZED' => [ qw( lib/File/Path.pm t/Path_win32.t ) ], |
505 |
}, |
506 |
|
507 |
'File::Temp' => { |
508 |
'DISTRIBUTION' => 'DAGOLDEN/File-Temp-0.2304.tar.gz', |
509 |
'FILES' => q[cpan/File-Temp], |
510 |
'EXCLUDED' => [ |
511 |
qw( misc/benchmark.pl |
512 |
misc/results.txt |
513 |
), |
514 |
qw[t/00-report-prereqs.t], |
515 |
qr{^xt}, |
516 |
], |
517 |
}, |
518 |
|
519 |
'Filter::Simple' => { |
520 |
'DISTRIBUTION' => 'SMUELLER/Filter-Simple-0.91.tar.gz', |
521 |
'FILES' => q[dist/Filter-Simple], |
522 |
'EXCLUDED' => [ |
523 |
qr{^demo/} |
524 |
], |
525 |
}, |
526 |
|
527 |
'Filter::Util::Call' => { |
528 |
'DISTRIBUTION' => 'RURBAN/Filter-1.55.tar.gz', |
529 |
'FILES' => q[cpan/Filter-Util-Call |
530 |
pod/perlfilter.pod |
531 |
], |
532 |
'EXCLUDED' => [ |
533 |
qr{^decrypt/}, |
534 |
qr{^examples/}, |
535 |
qr{^Exec/}, |
536 |
qr{^lib/Filter/}, |
537 |
qr{^tee/}, |
538 |
qw( Call/Makefile.PL |
539 |
Call/ppport.h |
540 |
Call/typemap |
541 |
mytest |
542 |
t/cpp.t |
543 |
t/decrypt.t |
544 |
t/exec.t |
545 |
t/order.t |
546 |
t/sh.t |
547 |
t/tee.t |
548 |
t/z_kwalitee.t |
549 |
t/z_meta.t |
550 |
t/z_perl_minimum_version.t |
551 |
t/z_pod-coverage.t |
552 |
t/z_pod.t |
553 |
), |
554 |
], |
555 |
'MAP' => { |
556 |
'Call/' => 'cpan/Filter-Util-Call/', |
557 |
'filter-util.pl' => 'cpan/Filter-Util-Call/filter-util.pl', |
558 |
'perlfilter.pod' => 'pod/perlfilter.pod', |
559 |
'' => 'cpan/Filter-Util-Call/', |
560 |
}, |
561 |
}, |
562 |
|
563 |
'Getopt::Long' => { |
564 |
'DISTRIBUTION' => 'JV/Getopt-Long-2.49.1.tar.gz', |
565 |
'FILES' => q[cpan/Getopt-Long], |
566 |
'EXCLUDED' => [ |
567 |
qr{^examples/}, |
568 |
qw( perl-Getopt-Long.spec |
569 |
lib/newgetopt.pl |
570 |
t/gol-compat.t |
571 |
), |
572 |
], |
573 |
}, |
574 |
|
575 |
'HTTP::Tiny' => { |
576 |
'DISTRIBUTION' => 'DAGOLDEN/HTTP-Tiny-0.070.tar.gz', |
577 |
'FILES' => q[cpan/HTTP-Tiny], |
578 |
'EXCLUDED' => [ |
579 |
't/00-report-prereqs.t', |
580 |
't/00-report-prereqs.dd', |
581 |
't/200_live.t', |
582 |
't/200_live_local_ip.t', |
583 |
't/210_live_ssl.t', |
584 |
qr/^eg/, |
585 |
qr/^xt/ |
586 |
], |
587 |
}, |
588 |
|
589 |
'I18N::Collate' => { |
590 |
'DISTRIBUTION' => 'FLORA/I18N-Collate-1.02.tar.gz', |
591 |
'FILES' => q[dist/I18N-Collate], |
592 |
'EXCLUDED' => [qr{^t/release-.*\.t}], |
593 |
}, |
594 |
|
595 |
'I18N::LangTags' => { |
596 |
'FILES' => q[dist/I18N-LangTags], |
597 |
}, |
598 |
|
599 |
'if' => { |
600 |
'DISTRIBUTION' => 'RJBS/if-0.0606.tar.gz', |
601 |
'FILES' => q[dist/if], |
602 |
}, |
603 |
|
604 |
'IO' => { |
605 |
'DISTRIBUTION' => 'GBARR/IO-1.25.tar.gz', |
606 |
'FILES' => q[dist/IO/], |
607 |
'EXCLUDED' => ['t/test.pl'], |
608 |
}, |
609 |
|
610 |
'IO-Compress' => { |
611 |
'DISTRIBUTION' => 'PMQS/IO-Compress-2.074.tar.gz', |
612 |
'FILES' => q[cpan/IO-Compress], |
613 |
'EXCLUDED' => [ |
614 |
qr{^examples/}, |
615 |
qr{^t/Test/}, |
616 |
't/010examples-bzip2.t', |
617 |
't/010examples-zlib.t', |
618 |
't/cz-05examples.t', |
619 |
], |
620 |
}, |
621 |
|
622 |
'IO::Socket::IP' => { |
623 |
'DISTRIBUTION' => 'PEVANS/IO-Socket-IP-0.38.tar.gz', |
624 |
'FILES' => q[cpan/IO-Socket-IP], |
625 |
'EXCLUDED' => [ |
626 |
qr{^examples/}, |
627 |
], |
628 |
}, |
629 |
|
630 |
'IO::Zlib' => { |
631 |
'DISTRIBUTION' => 'TOMHUGHES/IO-Zlib-1.10.tar.gz', |
632 |
'FILES' => q[cpan/IO-Zlib], |
633 |
}, |
634 |
|
635 |
'IPC::Cmd' => { |
636 |
'DISTRIBUTION' => 'BINGOS/IPC-Cmd-0.96.tar.gz', |
637 |
'FILES' => q[cpan/IPC-Cmd], |
638 |
}, |
639 |
|
640 |
'IPC::SysV' => { |
641 |
'DISTRIBUTION' => 'MHX/IPC-SysV-2.07.tar.gz', |
642 |
'FILES' => q[cpan/IPC-SysV], |
643 |
'EXCLUDED' => [ |
644 |
qw( const-c.inc |
645 |
const-xs.inc |
646 |
), |
647 |
], |
648 |
}, |
649 |
|
650 |
'JSON::PP' => { |
651 |
'DISTRIBUTION' => 'MAKAMAKA/JSON-PP-2.27400.tar.gz', |
652 |
'FILES' => q[cpan/JSON-PP], |
653 |
'CUSTOMIZED' => [ |
654 |
'bin/json_pp', # CVE-2016-1238 |
655 |
'lib/JSON/PP.pm', # CVE-2016-1238, CPAN RT 118469 |
656 |
't/011_pc_expo.t', # CPAN RT 118469 |
657 |
't/018_json_checker.t', # CPAN RT 118469 |
658 |
], |
659 |
}, |
660 |
|
661 |
'lib' => { |
662 |
'DISTRIBUTION' => 'SMUELLER/lib-0.63.tar.gz', |
663 |
'FILES' => q[dist/lib/], |
664 |
'EXCLUDED' => [ |
665 |
qw( forPAUSE/lib.pm |
666 |
t/00pod.t |
667 |
), |
668 |
], |
669 |
}, |
670 |
|
671 |
'libnet' => { |
672 |
'DISTRIBUTION' => 'SHAY/libnet-3.10.tar.gz', |
673 |
'FILES' => q[cpan/libnet], |
674 |
'EXCLUDED' => [ |
675 |
qw( Configure |
676 |
t/changes.t |
677 |
t/critic.t |
678 |
t/pod.t |
679 |
t/pod_coverage.t |
680 |
), |
681 |
qr(^demos/), |
682 |
qr(^t/external/), |
683 |
], |
684 |
}, |
685 |
|
686 |
'Locale-Codes' => { |
687 |
'DISTRIBUTION' => 'SBECK/Locale-Codes-3.42.tar.gz', |
688 |
'FILES' => q[cpan/Locale-Codes], |
689 |
'EXCLUDED' => [ |
690 |
qw( README.first |
691 |
t/pod_coverage.ign |
692 |
t/pod_coverage.t |
693 |
t/pod.t), |
694 |
qr{^t/runtests}, |
695 |
qr{^t/runtests\.bat}, |
696 |
qr{^internal/}, |
697 |
qr{^examples/}, |
698 |
], |
699 |
}, |
700 |
|
701 |
'Locale::Maketext' => { |
702 |
'DISTRIBUTION' => 'TODDR/Locale-Maketext-1.28.tar.gz', |
703 |
'FILES' => q[dist/Locale-Maketext], |
704 |
'EXCLUDED' => [ |
705 |
qw( |
706 |
perlcriticrc |
707 |
t/00_load.t |
708 |
t/pod.t |
709 |
), |
710 |
], |
711 |
}, |
712 |
|
713 |
'Locale::Maketext::Simple' => { |
714 |
'DISTRIBUTION' => 'JESSE/Locale-Maketext-Simple-0.21.tar.gz', |
715 |
'FILES' => q[cpan/Locale-Maketext-Simple], |
716 |
'CUSTOMIZED' => [ |
717 |
# CVE-2016-1238 |
718 |
qw( lib/Locale/Maketext/Simple.pm ) |
719 |
], |
720 |
}, |
721 |
|
722 |
'Math::BigInt' => { |
723 |
'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-1.999806.tar.gz', |
724 |
'FILES' => q[cpan/Math-BigInt], |
725 |
'EXCLUDED' => [ |
726 |
qr{^examples/}, |
727 |
qr{^t/author-}, |
728 |
qw( t/00sig.t |
729 |
t/01load.t |
730 |
t/02pod.t |
731 |
t/03podcov.t |
732 |
), |
733 |
], |
734 |
}, |
735 |
|
736 |
'Math::BigInt::FastCalc' => { |
737 |
'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-FastCalc-0.5005.tar.gz', |
738 |
'FILES' => q[cpan/Math-BigInt-FastCalc], |
739 |
'EXCLUDED' => [ |
740 |
qr{^t/author-}, |
741 |
qr{^t/Math/BigInt/Lib/TestUtil.pm}, |
742 |
qw( t/00sig.t |
743 |
t/01load.t |
744 |
t/02pod.t |
745 |
t/03podcov.t |
746 |
), |
747 |
|
748 |
# instead we use the versions of these test |
749 |
# files that come with Math::BigInt: |
750 |
qw( t/bigfltpm.inc |
751 |
t/bigfltpm.t |
752 |
t/bigintpm.inc |
753 |
t/bigintpm.t |
754 |
t/mbimbf.inc |
755 |
t/mbimbf.t |
756 |
), |
757 |
], |
758 |
}, |
759 |
|
760 |
'Math::BigRat' => { |
761 |
'DISTRIBUTION' => 'PJACKLAM/Math-BigRat-0.2611.tar.gz', |
762 |
'FILES' => q[cpan/Math-BigRat], |
763 |
'EXCLUDED' => [ |
764 |
qr{^t/author-}, |
765 |
qw( t/00sig.t |
766 |
t/01load.t |
767 |
t/02pod.t |
768 |
t/03podcov.t |
769 |
), |
770 |
], |
771 |
}, |
772 |
|
773 |
'Math::Complex' => { |
774 |
'DISTRIBUTION' => 'ZEFRAM/Math-Complex-1.59.tar.gz', |
775 |
'FILES' => q[cpan/Math-Complex], |
776 |
'CUSTOMIZED' => [ |
777 |
'lib/Math/Complex.pm', # CPAN RT 118467 |
778 |
't/Complex.t', # CPAN RT 118467 |
779 |
't/Trig.t', # CPAN RT 118467 |
780 |
], |
781 |
'EXCLUDED' => [ |
782 |
qw( t/pod.t |
783 |
t/pod-coverage.t |
784 |
), |
785 |
], |
786 |
}, |
787 |
|
788 |
'Memoize' => { |
789 |
'DISTRIBUTION' => 'MJD/Memoize-1.03.tgz', |
790 |
'FILES' => q[cpan/Memoize], |
791 |
'EXCLUDED' => ['article.html'], |
792 |
'CUSTOMIZED' => [ |
793 |
# CVE-2016-1238 |
794 |
qw( Memoize.pm ) |
795 |
], |
796 |
}, |
797 |
|
798 |
'MIME::Base64' => { |
799 |
'DISTRIBUTION' => 'GAAS/MIME-Base64-3.15.tar.gz', |
800 |
'FILES' => q[cpan/MIME-Base64], |
801 |
'EXCLUDED' => ['t/bad-sv.t'], |
802 |
}, |
803 |
|
804 |
'Module::CoreList' => { |
805 |
'DISTRIBUTION' => 'BINGOS/Module-CoreList-5.20170420.tar.gz', |
806 |
'FILES' => q[dist/Module-CoreList], |
807 |
}, |
808 |
|
809 |
'Module::Load' => { |
810 |
'DISTRIBUTION' => 'BINGOS/Module-Load-0.32.tar.gz', |
811 |
'FILES' => q[cpan/Module-Load], |
812 |
}, |
813 |
|
814 |
'Module::Load::Conditional' => { |
815 |
'DISTRIBUTION' => 'BINGOS/Module-Load-Conditional-0.68.tar.gz', |
816 |
'FILES' => q[cpan/Module-Load-Conditional], |
817 |
}, |
818 |
|
819 |
'Module::Loaded' => { |
820 |
'DISTRIBUTION' => 'BINGOS/Module-Loaded-0.08.tar.gz', |
821 |
'FILES' => q[cpan/Module-Loaded], |
822 |
}, |
823 |
|
824 |
'Module::Metadata' => { |
825 |
'DISTRIBUTION' => 'ETHER/Module-Metadata-1.000033.tar.gz', |
826 |
'FILES' => q[cpan/Module-Metadata], |
827 |
'EXCLUDED' => [ |
828 |
qw(t/00-report-prereqs.t), |
829 |
qw(t/00-report-prereqs.dd), |
830 |
qr{weaver.ini}, |
831 |
qr{^xt}, |
832 |
], |
833 |
}, |
834 |
|
835 |
'Net::Ping' => { |
836 |
'DISTRIBUTION' => 'RURBAN/Net-Ping-2.55.tar.gz', |
837 |
'FILES' => q[dist/Net-Ping], |
838 |
'EXCLUDED' => [ |
839 |
qw(README.md.PL), |
840 |
qw(t/020_external.t), |
841 |
qw(t/600_pod.t), |
842 |
qw(t/601_pod-coverage.t), |
843 |
], |
844 |
'CUSTOMIZED' => [ |
845 |
qw( t/000_load.t t/001_new.t t/010_pingecho.t t/500_ping_icmp.t), |
846 |
], |
847 |
|
848 |
}, |
849 |
|
850 |
'NEXT' => { |
851 |
'DISTRIBUTION' => 'NEILB/NEXT-0.67.tar.gz', |
852 |
'FILES' => q[cpan/NEXT], |
853 |
'EXCLUDED' => [qr{^demo/}], |
854 |
}, |
855 |
|
856 |
'Params::Check' => { |
857 |
'DISTRIBUTION' => 'BINGOS/Params-Check-0.38.tar.gz', |
858 |
'FILES' => q[cpan/Params-Check], |
859 |
}, |
860 |
|
861 |
'parent' => { |
862 |
'DISTRIBUTION' => 'CORION/parent-0.236.tar.gz', |
863 |
'FILES' => q[cpan/parent], |
864 |
'EXCLUDED' => [ |
865 |
qr{^xt} |
866 |
], |
867 |
}, |
868 |
|
869 |
'PathTools' => { |
870 |
'DISTRIBUTION' => 'RJBS/PathTools-3.62.tar.gz', |
871 |
'FILES' => q[dist/PathTools], |
872 |
'EXCLUDED' => [ |
873 |
qr{^t/lib/Test/}, |
874 |
qw( t/rel2abs_vs_symlink.t), |
875 |
], |
876 |
}, |
877 |
|
878 |
'Perl::OSType' => { |
879 |
'DISTRIBUTION' => 'DAGOLDEN/Perl-OSType-1.010.tar.gz', |
880 |
'FILES' => q[cpan/Perl-OSType], |
881 |
'EXCLUDED' => [qw(tidyall.ini), qr/^xt/, qr{^t/00-}], |
882 |
}, |
883 |
|
884 |
'perlfaq' => { |
885 |
'DISTRIBUTION' => 'LLAP/perlfaq-5.021011.tar.gz', |
886 |
'FILES' => q[cpan/perlfaq], |
887 |
'EXCLUDED' => [ |
888 |
qw( inc/CreateQuestionList.pm |
889 |
inc/perlfaq.tt |
890 |
t/00-compile.t), |
891 |
qr{^xt/}, |
892 |
], |
893 |
}, |
894 |
|
895 |
'PerlIO::via::QuotedPrint' => { |
896 |
'DISTRIBUTION' => 'SHAY/PerlIO-via-QuotedPrint-0.08.tar.gz', |
897 |
'FILES' => q[cpan/PerlIO-via-QuotedPrint], |
898 |
}, |
899 |
|
900 |
'Pod::Checker' => { |
901 |
'DISTRIBUTION' => 'MAREKR/Pod-Checker-1.73.tar.gz', |
902 |
'FILES' => q[cpan/Pod-Checker], |
903 |
'CUSTOMIZED' => [ qw[ |
904 |
t/pod/contains_bad_pod.xr |
905 |
t/pod/selfcheck.t |
906 |
t/pod/testcmp.pl |
907 |
t/pod/testpchk.pl |
908 |
] ], |
909 |
}, |
910 |
|
911 |
'Pod::Escapes' => { |
912 |
'DISTRIBUTION' => 'NEILB/Pod-Escapes-1.07.tar.gz', |
913 |
'FILES' => q[cpan/Pod-Escapes], |
914 |
}, |
915 |
|
916 |
'Pod::Parser' => { |
917 |
'DISTRIBUTION' => 'MAREKR/Pod-Parser-1.63.tar.gz', |
918 |
'FILES' => q[cpan/Pod-Parser], |
919 |
}, |
920 |
|
921 |
'Pod::Perldoc' => { |
922 |
'DISTRIBUTION' => 'MALLEN/Pod-Perldoc-3.28.tar.gz', |
923 |
'FILES' => q[cpan/Pod-Perldoc], |
924 |
|
925 |
# Note that we use the CPAN-provided Makefile.PL, since it |
926 |
# contains special handling of the installation of perldoc.pod |
927 |
|
928 |
'EXCLUDED' => [ |
929 |
# In blead, the perldoc executable is generated by perldoc.PL |
930 |
# instead |
931 |
# XXX We can and should fix this, but clean up the DRY-failure in |
932 |
# utils first |
933 |
'perldoc', |
934 |
|
935 |
# https://rt.cpan.org/Ticket/Display.html?id=116827 |
936 |
't/02_module_pod_output.t' |
937 |
], |
938 |
}, |
939 |
|
940 |
'Pod::Simple' => { |
941 |
'DISTRIBUTION' => 'MARCGREEN/Pod-Simple-3.35.tar.gz', |
942 |
'FILES' => q[cpan/Pod-Simple], |
943 |
}, |
944 |
|
945 |
'Pod::Usage' => { |
946 |
'DISTRIBUTION' => 'MAREKR/Pod-Usage-1.69.tar.gz', |
947 |
'FILES' => q[cpan/Pod-Usage], |
948 |
}, |
949 |
|
950 |
'podlators' => { |
951 |
'DISTRIBUTION' => 'RRA/podlators-4.09.tar.gz', |
952 |
'FILES' => q[cpan/podlators pod/perlpodstyle.pod], |
953 |
'EXCLUDED' => [ |
954 |
qr{^docs/metadata/}, |
955 |
], |
956 |
|
957 |
'MAP' => { |
958 |
'' => 'cpan/podlators/', |
959 |
# this file lives outside the cpan/ directory |
960 |
'pod/perlpodstyle.pod' => 'pod/perlpodstyle.pod', |
961 |
}, |
962 |
}, |
963 |
|
964 |
'Safe' => { |
965 |
'DISTRIBUTION' => 'RGARCIA/Safe-2.35.tar.gz', |
966 |
'FILES' => q[dist/Safe], |
967 |
}, |
968 |
|
969 |
'Scalar-List-Utils' => { |
970 |
'DISTRIBUTION' => 'PEVANS/Scalar-List-Utils-1.46.tar.gz', |
971 |
'FILES' => q[cpan/Scalar-List-Utils], |
972 |
'CUSTOMIZED' => [ |
973 |
'lib/List/Util.pm', # CPAN RT 118470 |
974 |
'lib/List/Util/XS.pm', # CPAN RT 118470 |
975 |
'lib/Scalar/Util.pm', # CPAN RT 118470 |
976 |
'lib/Sub/Util.pm', # CPAN RT 118470 |
977 |
't/lln.t', # CPAN RT 118470 |
978 |
't/uniq.t', # CPAN RT 118470 |
979 |
't/tainted.t', # CPAN RT 119169 |
980 |
], |
981 |
}, |
982 |
|
983 |
'Search::Dict' => { |
984 |
'DISTRIBUTION' => 'DAGOLDEN/Search-Dict-1.07.tar.gz', |
985 |
'FILES' => q[dist/Search-Dict], |
986 |
}, |
987 |
|
988 |
'SelfLoader' => { |
989 |
'DISTRIBUTION' => 'SMUELLER/SelfLoader-1.20.tar.gz', |
990 |
'FILES' => q[dist/SelfLoader], |
991 |
'EXCLUDED' => ['t/00pod.t'], |
992 |
}, |
993 |
|
994 |
'Socket' => { |
995 |
'DISTRIBUTION' => 'PEVANS/Socket-2.020.tar.gz', |
996 |
'FILES' => q[cpan/Socket], |
997 |
|
998 |
# https://rt.cpan.org/Ticket/Display.html?id=106797 |
999 |
# https://rt.cpan.org/Ticket/Display.html?id=107058 |
1000 |
# https://rt.cpan.org/Ticket/Display.html?id=111707 |
1001 |
'CUSTOMIZED' => [ qw[ Socket.pm Socket.xs ] ], |
1002 |
}, |
1003 |
|
1004 |
'Storable' => { |
1005 |
'DISTRIBUTION' => 'AMS/Storable-2.51.tar.gz', |
1006 |
'FILES' => q[dist/Storable], |
1007 |
'EXCLUDED' => [ |
1008 |
qr{^t/compat/}, |
1009 |
], |
1010 |
}, |
1011 |
|
1012 |
'Sys::Syslog' => { |
1013 |
'DISTRIBUTION' => 'SAPER/Sys-Syslog-0.35.tar.gz', |
1014 |
'FILES' => q[cpan/Sys-Syslog], |
1015 |
'EXCLUDED' => [ |
1016 |
qr{^eg/}, |
1017 |
qw( README.win32 |
1018 |
t/data-validation.t |
1019 |
t/distchk.t |
1020 |
t/pod.t |
1021 |
t/podcover.t |
1022 |
t/podspell.t |
1023 |
t/portfs.t |
1024 |
win32/PerlLog.RES |
1025 |
), |
1026 |
], |
1027 |
}, |
1028 |
|
1029 |
'Term::ANSIColor' => { |
1030 |
'DISTRIBUTION' => 'RRA/Term-ANSIColor-4.06.tar.gz', |
1031 |
'FILES' => q[cpan/Term-ANSIColor], |
1032 |
'EXCLUDED' => [ |
1033 |
qr{^docs/}, |
1034 |
qr{^examples/}, |
1035 |
qr{^t/data/}, |
1036 |
qr{^t/docs/}, |
1037 |
qr{^t/style/}, |
1038 |
qw( t/module/aliases-env.t ), |
1039 |
], |
1040 |
}, |
1041 |
|
1042 |
'Term::Cap' => { |
1043 |
'DISTRIBUTION' => 'JSTOWE/Term-Cap-1.17.tar.gz', |
1044 |
'FILES' => q[cpan/Term-Cap], |
1045 |
}, |
1046 |
|
1047 |
'Term::Complete' => { |
1048 |
'DISTRIBUTION' => 'FLORA/Term-Complete-1.402.tar.gz', |
1049 |
'FILES' => q[dist/Term-Complete], |
1050 |
'EXCLUDED' => [qr{^t/release-.*\.t}], |
1051 |
}, |
1052 |
|
1053 |
'Term::ReadLine' => { |
1054 |
'DISTRIBUTION' => 'FLORA/Term-ReadLine-1.14.tar.gz', |
1055 |
'FILES' => q[dist/Term-ReadLine], |
1056 |
'EXCLUDED' => [qr{^t/release-.*\.t}], |
1057 |
}, |
1058 |
|
1059 |
'Test' => { |
1060 |
'DISTRIBUTION' => 'JESSE/Test-1.26.tar.gz', |
1061 |
'FILES' => q[dist/Test], |
1062 |
}, |
1063 |
|
1064 |
'Test::Harness' => { |
1065 |
'DISTRIBUTION' => 'LEONT/Test-Harness-3.38.tar.gz', |
1066 |
'FILES' => q[cpan/Test-Harness], |
1067 |
'EXCLUDED' => [ |
1068 |
qr{^examples/}, |
1069 |
qr{^xt/}, |
1070 |
qw( Changes-2.64 |
1071 |
MANIFEST.CUMMULATIVE |
1072 |
HACKING.pod |
1073 |
perlcriticrc |
1074 |
t/000-load.t |
1075 |
t/lib/if.pm |
1076 |
), |
1077 |
], |
1078 |
}, |
1079 |
|
1080 |
'Test::Simple' => { |
1081 |
'DISTRIBUTION' => 'EXODIST/Test-Simple-1.302073.tar.gz', |
1082 |
'FILES' => q[cpan/Test-Simple], |
1083 |
'EXCLUDED' => [ |
1084 |
qr{^examples/}, |
1085 |
qr{^xt/}, |
1086 |
qw( appveyor.yml |
1087 |
perltidyrc |
1088 |
t/00compile.t |
1089 |
t/00-report.t |
1090 |
t/zzz-check-breaks.t |
1091 |
), |
1092 |
], |
1093 |
'CUSTOMIZED' => [ |
1094 |
# |
1095 |
qw( t/Test2/modules/IPC/Driver/Files.t ) |
1096 |
], |
1097 |
}, |
1098 |
|
1099 |
'Text::Abbrev' => { |
1100 |
'DISTRIBUTION' => 'FLORA/Text-Abbrev-1.02.tar.gz', |
1101 |
'FILES' => q[dist/Text-Abbrev], |
1102 |
'EXCLUDED' => [qr{^t/release-.*\.t}], |
1103 |
}, |
1104 |
|
1105 |
'Text::Balanced' => { |
1106 |
'DISTRIBUTION' => 'SHAY/Text-Balanced-2.03.tar.gz', |
1107 |
'FILES' => q[cpan/Text-Balanced], |
1108 |
'EXCLUDED' => [ |
1109 |
qw( t/97_meta.t |
1110 |
t/98_pod.t |
1111 |
t/99_pmv.t |
1112 |
), |
1113 |
], |
1114 |
}, |
1115 |
|
1116 |
'Text::ParseWords' => { |
1117 |
'DISTRIBUTION' => 'CHORNY/Text-ParseWords-3.30.tar.gz', |
1118 |
'FILES' => q[cpan/Text-ParseWords], |
1119 |
}, |
1120 |
|
1121 |
'Text-Tabs+Wrap' => { |
1122 |
'DISTRIBUTION' => 'MUIR/modules/Text-Tabs+Wrap-2013.0523.tar.gz', |
1123 |
'FILES' => q[cpan/Text-Tabs], |
1124 |
'EXCLUDED' => [ |
1125 |
qr/^lib\.old/, |
1126 |
't/dnsparks.t', # see af6492bf9e |
1127 |
], |
1128 |
'MAP' => { |
1129 |
'' => 'cpan/Text-Tabs/', |
1130 |
'lib.modern/Text/Tabs.pm' => 'cpan/Text-Tabs/lib/Text/Tabs.pm', |
1131 |
'lib.modern/Text/Wrap.pm' => 'cpan/Text-Tabs/lib/Text/Wrap.pm', |
1132 |
}, |
1133 |
}, |
1134 |
|
1135 |
# Jerry Hedden does take patches that are applied to blead first, even |
1136 |
# though that can be hard to discern from the Git history; so it's |
1137 |
# correct for this (and Thread::Semaphore, threads, and threads::shared) |
1138 |
# to be under dist/ rather than cpan/ |
1139 |
'Thread::Queue' => { |
1140 |
'DISTRIBUTION' => 'JDHEDDEN/Thread-Queue-3.12.tar.gz', |
1141 |
'FILES' => q[dist/Thread-Queue], |
1142 |
'EXCLUDED' => [ |
1143 |
qr{^examples/}, |
1144 |
qw( t/00_load.t |
1145 |
t/99_pod.t |
1146 |
t/test.pl |
1147 |
), |
1148 |
], |
1149 |
}, |
1150 |
|
1151 |
'Thread::Semaphore' => { |
1152 |
'DISTRIBUTION' => 'JDHEDDEN/Thread-Semaphore-2.13.tar.gz', |
1153 |
'FILES' => q[dist/Thread-Semaphore], |
1154 |
'EXCLUDED' => [ |
1155 |
qw( examples/semaphore.pl |
1156 |
t/00_load.t |
1157 |
t/99_pod.t |
1158 |
t/test.pl |
1159 |
), |
1160 |
], |
1161 |
}, |
1162 |
|
1163 |
'threads' => { |
1164 |
'DISTRIBUTION' => 'JDHEDDEN/threads-2.15.tar.gz', |
1165 |
'FILES' => q[dist/threads], |
1166 |
'EXCLUDED' => [ |
1167 |
qr{^examples/}, |
1168 |
qw( t/pod.t |
1169 |
t/test.pl |
1170 |
threads.h |
1171 |
), |
1172 |
], |
1173 |
}, |
1174 |
|
1175 |
'threads::shared' => { |
1176 |
'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.55.tar.gz', |
1177 |
'FILES' => q[dist/threads-shared], |
1178 |
'EXCLUDED' => [ |
1179 |
qw( examples/class.pl |
1180 |
shared.h |
1181 |
t/pod.t |
1182 |
t/test.pl |
1183 |
), |
1184 |
], |
1185 |
}, |
1186 |
|
1187 |
'Tie::File' => { |
1188 |
'DISTRIBUTION' => 'TODDR/Tie-File-1.00.tar.gz', |
1189 |
'FILES' => q[dist/Tie-File], |
1190 |
}, |
1191 |
|
1192 |
'Tie::RefHash' => { |
1193 |
'DISTRIBUTION' => 'FLORA/Tie-RefHash-1.39.tar.gz', |
1194 |
'FILES' => q[cpan/Tie-RefHash], |
1195 |
}, |
1196 |
|
1197 |
'Time::HiRes' => { |
1198 |
'DISTRIBUTION' => 'JHI/Time-HiRes-1.9741.tar.gz', |
1199 |
'FILES' => q[dist/Time-HiRes], |
1200 |
}, |
1201 |
|
1202 |
'Time::Local' => { |
1203 |
'DISTRIBUTION' => 'DROLSKY/Time-Local-1.25.tar.gz', |
1204 |
'FILES' => q[cpan/Time-Local], |
1205 |
'EXCLUDED' => [ |
1206 |
qr{^xt/}, |
1207 |
qw( perlcriticrc |
1208 |
perltidyrc |
1209 |
tidyall.ini |
1210 |
t/00-report-prereqs.t |
1211 |
t/00-report-prereqs.dd |
1212 |
), |
1213 |
], |
1214 |
}, |
1215 |
|
1216 |
'Time::Piece' => { |
1217 |
'DISTRIBUTION' => 'ESAYM/Time-Piece-1.31.tar.gz', |
1218 |
'FILES' => q[cpan/Time-Piece], |
1219 |
}, |
1220 |
|
1221 |
'Unicode::Collate' => { |
1222 |
'DISTRIBUTION' => 'SADAHIRO/Unicode-Collate-1.19.tar.gz', |
1223 |
'FILES' => q[cpan/Unicode-Collate], |
1224 |
'EXCLUDED' => [ |
1225 |
qr{N$}, |
1226 |
qr{^data/}, |
1227 |
qr{^gendata/}, |
1228 |
qw( disableXS |
1229 |
enableXS |
1230 |
mklocale |
1231 |
), |
1232 |
], |
1233 |
}, |
1234 |
|
1235 |
'Unicode::Normalize' => { |
1236 |
'DISTRIBUTION' => 'KHW/Unicode-Normalize-1.25.tar.gz', |
1237 |
'FILES' => q[dist/Unicode-Normalize], |
1238 |
'EXCLUDED' => [ |
1239 |
qw( MANIFEST.N |
1240 |
Normalize.pmN |
1241 |
disableXS |
1242 |
enableXS |
1243 |
), |
1244 |
], |
1245 |
}, |
1246 |
|
1247 |
'version' => { |
1248 |
'DISTRIBUTION' => 'JPEACOCK/version-0.9917.tar.gz', |
1249 |
'FILES' => q[cpan/version vutil.c vutil.h vxs.inc], |
1250 |
'EXCLUDED' => [ |
1251 |
qr{^vutil/lib/}, |
1252 |
'vutil/Makefile.PL', |
1253 |
'vutil/ppport.h', |
1254 |
'vutil/vxs.xs', |
1255 |
't/00impl-pp.t', |
1256 |
't/survey_locales', |
1257 |
'vperl/vpp.pm', |
1258 |
], |
1259 |
|
1260 |
# When adding the CPAN-distributed files for version.pm, it is necessary |
1261 |
# to delete an entire block out of lib/version.pm, since that code is |
1262 |
# only necessary with the CPAN release. |
1263 |
'CUSTOMIZED' => [ |
1264 |
qw( lib/version.pm |
1265 |
), |
1266 |
], |
1267 |
|
1268 |
'MAP' => { |
1269 |
'vutil/' => '', |
1270 |
'' => 'cpan/version/', |
1271 |
}, |
1272 |
}, |
1273 |
|
1274 |
'warnings' => { |
1275 |
'FILES' => q[ |
1276 |
lib/warnings |
1277 |
lib/warnings.{pm,t} |
1278 |
regen/warnings.pl |
1279 |
t/lib/warnings |
1280 |
], |
1281 |
}, |
1282 |
|
1283 |
'Win32' => { |
1284 |
'DISTRIBUTION' => "JDB/Win32-0.52.tar.gz", |
1285 |
'FILES' => q[cpan/Win32], |
1286 |
}, |
1287 |
|
1288 |
'Win32API::File' => { |
1289 |
'DISTRIBUTION' => 'CHORNY/Win32API-File-0.1203.tar.gz', |
1290 |
'FILES' => q[cpan/Win32API-File], |
1291 |
'EXCLUDED' => [ |
1292 |
qr{^ex/}, |
1293 |
], |
1294 |
}, |
1295 |
|
1296 |
'XSLoader' => { |
1297 |
'DISTRIBUTION' => 'SAPER/XSLoader-0.24.tar.gz', |
1298 |
'FILES' => q[dist/XSLoader], |
1299 |
'EXCLUDED' => [ |
1300 |
qr{^eg/}, |
1301 |
qw( t/00-load.t |
1302 |
t/01-api.t |
1303 |
t/distchk.t |
1304 |
t/pod.t |
1305 |
t/podcover.t |
1306 |
t/portfs.t |
1307 |
), |
1308 |
'XSLoader.pm', # we use XSLoader_pm.PL |
1309 |
], |
1310 |
}, |
1311 |
|
1312 |
# this pseudo-module represents all the files under ext/ and lib/ |
1313 |
# that aren't otherwise claimed. This means that the following two |
1314 |
# commands will check that every file under ext/ and lib/ is |
1315 |
# accounted for, and that there are no duplicates: |
1316 |
# |
1317 |
# perl Porting/Maintainers --checkmani lib ext |
1318 |
# perl Porting/Maintainers --checkmani |
1319 |
|
1320 |
'_PERLLIB' => { |
1321 |
'FILES' => q[ |
1322 |
ext/Amiga-ARexx/ |
1323 |
ext/Amiga-Exec/ |
1324 |
ext/B/ |
1325 |
ext/Devel-Peek/ |
1326 |
ext/DynaLoader/ |
1327 |
ext/Errno/ |
1328 |
ext/ExtUtils-Miniperl/ |
1329 |
ext/Fcntl/ |
1330 |
ext/File-DosGlob/ |
1331 |
ext/File-Find/ |
1332 |
ext/File-Glob/ |
1333 |
ext/FileCache/ |
1334 |
ext/GDBM_File/ |
1335 |
ext/Hash-Util-FieldHash/ |
1336 |
ext/Hash-Util/ |
1337 |
ext/I18N-Langinfo/ |
1338 |
ext/IPC-Open3/ |
1339 |
ext/NDBM_File/ |
1340 |
ext/ODBM_File/ |
1341 |
ext/Opcode/ |
1342 |
ext/POSIX/ |
1343 |
ext/PerlIO-encoding/ |
1344 |
ext/PerlIO-mmap/ |
1345 |
ext/PerlIO-scalar/ |
1346 |
ext/PerlIO-via/ |
1347 |
ext/Pod-Functions/ |
1348 |
ext/Pod-Html/ |
1349 |
ext/SDBM_File/ |
1350 |
ext/Sys-Hostname/ |
1351 |
ext/Tie-Hash-NamedCapture/ |
1352 |
ext/Tie-Memoize/ |
1353 |
ext/VMS-DCLsym/ |
1354 |
ext/VMS-Filespec/ |
1355 |
ext/VMS-Stdio/ |
1356 |
ext/Win32CORE/ |
1357 |
ext/XS-APItest/ |
1358 |
ext/XS-Typemap/ |
1359 |
ext/arybase/ |
1360 |
ext/attributes/ |
1361 |
ext/mro/ |
1362 |
ext/re/ |
1363 |
lib/AnyDBM_File.{pm,t} |
1364 |
lib/Benchmark.{pm,t} |
1365 |
lib/B/Deparse{.pm,.t,-*.t} |
1366 |
lib/B/Op_private.pm |
1367 |
lib/CORE.pod |
1368 |
lib/Class/Struct.{pm,t} |
1369 |
lib/Config.t |
1370 |
lib/Config/Extensions.{pm,t} |
1371 |
lib/DB.{pm,t} |
1372 |
lib/DBM_Filter.pm |
1373 |
lib/DBM_Filter/ |
1374 |
lib/DirHandle.{pm,t} |
1375 |
lib/English.{pm,t} |
1376 |
lib/ExtUtils/Embed.pm |
1377 |
lib/ExtUtils/XSSymSet.pm |
1378 |
lib/ExtUtils/t/Embed.t |
1379 |
lib/ExtUtils/typemap |
1380 |
lib/File/Basename.{pm,t} |
1381 |
lib/File/Compare.{pm,t} |
1382 |
lib/File/Copy.{pm,t} |
1383 |
lib/File/stat{.pm,.t,-7896.t} |
1384 |
lib/FileHandle.{pm,t} |
1385 |
lib/FindBin.{pm,t} |
1386 |
lib/Getopt/Std.{pm,t} |
1387 |
lib/Internals.pod |
1388 |
lib/Internals.t |
1389 |
lib/meta_notation.{pm,t} |
1390 |
lib/Net/hostent.{pm,t} |
1391 |
lib/Net/netent.{pm,t} |
1392 |
lib/Net/protoent.{pm,t} |
1393 |
lib/Net/servent.{pm,t} |
1394 |
lib/PerlIO.pm |
1395 |
lib/Pod/t/InputObjects.t |
1396 |
lib/Pod/t/Select.t |
1397 |
lib/Pod/t/Usage.t |
1398 |
lib/Pod/t/utils.t |
1399 |
lib/SelectSaver.{pm,t} |
1400 |
lib/Symbol.{pm,t} |
1401 |
lib/Thread.{pm,t} |
1402 |
lib/Tie/Array.pm |
1403 |
lib/Tie/Array/ |
1404 |
lib/Tie/ExtraHash.t |
1405 |
lib/Tie/Handle.pm |
1406 |
lib/Tie/Handle/ |
1407 |
lib/Tie/Hash.{pm,t} |
1408 |
lib/Tie/Scalar.{pm,t} |
1409 |
lib/Tie/StdHandle.pm |
1410 |
lib/Tie/SubstrHash.{pm,t} |
1411 |
lib/Time/gmtime.{pm,t} |
1412 |
lib/Time/localtime.{pm,t} |
1413 |
lib/Time/tm.pm |
1414 |
lib/UNIVERSAL.pm |
1415 |
lib/Unicode/README |
1416 |
lib/Unicode/UCD.{pm,t} |
1417 |
lib/User/grent.{pm,t} |
1418 |
lib/User/pwent.{pm,t} |
1419 |
lib/_charnames.pm |
1420 |
lib/blib.{pm,t} |
1421 |
lib/bytes.{pm,t} |
1422 |
lib/bytes_heavy.pl |
1423 |
lib/charnames.{pm,t} |
1424 |
lib/dbm_filter_util.pl |
1425 |
lib/deprecate.pm |
1426 |
lib/diagnostics.{pm,t} |
1427 |
lib/dumpvar.{pl,t} |
1428 |
lib/feature.{pm,t} |
1429 |
lib/feature/ |
1430 |
lib/filetest.{pm,t} |
1431 |
lib/h2ph.t |
1432 |
lib/h2xs.t |
1433 |
lib/integer.{pm,t} |
1434 |
lib/less.{pm,t} |
1435 |
lib/locale.{pm,t} |
1436 |
lib/locale_threads.t |
1437 |
lib/open.{pm,t} |
1438 |
lib/overload/numbers.pm |
1439 |
lib/overloading.{pm,t} |
1440 |
lib/overload{.pm,.t,64.t} |
1441 |
lib/perl5db.{pl,t} |
1442 |
lib/perl5db/ |
1443 |
lib/perlbug.t |
1444 |
lib/sigtrap.{pm,t} |
1445 |
lib/sort.{pm,t} |
1446 |
lib/strict.{pm,t} |
1447 |
lib/subs.{pm,t} |
1448 |
lib/unicore/ |
1449 |
lib/utf8.{pm,t} |
1450 |
lib/utf8_heavy.pl |
1451 |
lib/vars{.pm,.t,_carp.t} |
1452 |
lib/vmsish.{pm,t} |
1453 |
], |
1454 |
}, |
1455 |
); |
1456 |
|
1457 |
# legacy CPAN flag |
1458 |
for ( values %Modules ) { |
1459 |
$_->{CPAN} = !!$_->{DISTRIBUTION}; |
1460 |
} |
1461 |
|
1462 |
# legacy UPSTREAM flag |
1463 |
for ( keys %Modules ) { |
1464 |
# Keep any existing UPSTREAM flag so that "overrides" can be applied |
1465 |
next if exists $Modules{$_}{UPSTREAM}; |
1466 |
|
1467 |
if ($_ eq '_PERLLIB' or $Modules{$_}{FILES} =~ m{^\s*(?:dist|ext|lib)/}) { |
1468 |
$Modules{$_}{UPSTREAM} = 'blead'; |
1469 |
} |
1470 |
elsif ($Modules{$_}{FILES} =~ m{^\s*cpan/}) { |
1471 |
$Modules{$_}{UPSTREAM} = 'cpan'; |
1472 |
} |
1473 |
else { |
1474 |
warn "Unexpected location of FILES for module $_: $Modules{$_}{FILES}"; |
1475 |
} |
1476 |
} |
1477 |
|
1478 |
# legacy MAINTAINER field |
1479 |
for ( keys %Modules ) { |
1480 |
# Keep any existing MAINTAINER flag so that "overrides" can be applied |
1481 |
next if exists $Modules{$_}{MAINTAINER}; |
1482 |
|
1483 |
if ($Modules{$_}{UPSTREAM} eq 'blead') { |
1484 |
$Modules{$_}{MAINTAINER} = 'P5P'; |
1485 |
$Maintainers{P5P} = 'perl5-porters <perl5-porters@perl.org>'; |
1486 |
} |
1487 |
elsif (exists $Modules{$_}{DISTRIBUTION}) { |
1488 |
(my $pause_id = $Modules{$_}{DISTRIBUTION}) =~ s{/.*$}{}; |
1489 |
$Modules{$_}{MAINTAINER} = $pause_id; |
1490 |
$Maintainers{$pause_id} = "<$pause_id\@cpan.org>"; |
1491 |
} |
1492 |
else { |
1493 |
warn "No DISTRIBUTION for non-blead module $_"; |
1494 |
} |
1495 |
} |
1496 |
|
1497 |
1; |