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