This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Scalar-List-Utils customization bump
[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
9cd8e8a5
MB
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
2c95b6e4
DM
27);
28
e30e10b5 29# Each entry in the %Modules hash roughly represents a distribution,
97556ec3 30# except when DISTRIBUTION is set, where it *exactly* represents a single
e30e10b5
DM
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'.
d350de41 40
099bebb1
SH
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
b3dcf775
SH
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
a40258e5 52# value, e.g. 'BINGOS' in the case of 'BINGOS/Archive-Tar-2.00.tar.gz'.
b3dcf775
SH
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.)
d350de41 55
e30e10b5
DM
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
e1466347
JC
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
a55d270d
DM
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
2c95b6e4
DM
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
d43babf1 75# CUSTOMIZED is a list of files that have been customized within the
24b68a05
DG
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
fae38280 80# customization might have been lost when updating from upstream. The
f81a37f2
SH
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.
d43babf1 85
ab87ca4d
DG
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
2c95b6e4 94# MAP is a hash that maps CPAN paths to their core equivalents.
47e01c32 95# Each key represents a string prefix, with longest prefixes checked
2c95b6e4
DM
96# first. The first match causes that prefix to be replaced with the
97# corresponding key. For example, with the following MAP:
613f422f 98# {
4f3a742d
DR
99# 'lib/' => 'lib/',
100# '' => 'lib/Foo/',
2c95b6e4
DM
101# },
102#
103# these files are mapped as shown:
104#
105# README becomes lib/Foo/README
613f422f 106# lib/Foo.pm becomes lib/Foo.pm
2c95b6e4
DM
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#
613f422f 115# {
4f3a742d
DR
116# 'lib/' => 'lib/',
117# '' => 'lib/Foo/Bar/',
2c95b6e4
DM
118# }
119
b128a327
JH
120%Modules = (
121
4f3a742d 122 'Archive::Tar' => {
19606b44 123 'DISTRIBUTION' => 'BINGOS/Archive-Tar-2.04.tar.gz',
4f3a742d 124 'FILES' => q[cpan/Archive-Tar],
4f3a742d 125 'BUGS' => 'bug-archive-tar@rt.cpan.org',
c465fd2f
CBW
126 'EXCLUDED' => [
127 qw(t/07_ptardiff.t),
128 ],
4f3a742d
DR
129 },
130
131 'Attribute::Handlers' => {
e8b9cef0 132 'DISTRIBUTION' => 'RJBS/Attribute-Handlers-0.99.tar.gz',
4f3a742d 133 'FILES' => q[dist/Attribute-Handlers],
4f3a742d
DR
134 },
135
4f3a742d 136 'autodie' => {
dc013420 137 'DISTRIBUTION' => 'PJF/autodie-2.29.tar.gz',
4f3a742d
DR
138 'FILES' => q[cpan/autodie],
139 'EXCLUDED' => [
273225d4 140 qr{benchmarks},
f91d7e0d 141 qr{README\.md},
4f3a742d
DR
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.
ff4ad1c0 146 qw( t/author-critic.t
4f3a742d
DR
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
273225d4
CBW
153 t/release-pod-coverage.t
154 t/release-pod-syntax.t
4f3a742d
DR
155 t/socket.t
156 t/system.t
157 )
158 ],
1a74a75d
DM
159 # CPAN RT 105344
160 'CUSTOMIZED' => [ qw[ t/mkdir.t ] ],
4f3a742d
DR
161 },
162
163 'AutoLoader' => {
dff36865 164 'DISTRIBUTION' => 'SMUELLER/AutoLoader-5.74.tar.gz',
4f3a742d
DR
165 'FILES' => q[cpan/AutoLoader],
166 'EXCLUDED' => ['t/00pod.t'],
4f3a742d
DR
167 },
168
169 'autouse' => {
275943c0 170 'DISTRIBUTION' => 'WOLFSAGE/autouse-1.08.tar.gz',
4f3a742d
DR
171 'FILES' => q[dist/autouse],
172 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
173 },
174
4f3a742d 175 'B::Debug' => {
372b8708 176 'DISTRIBUTION' => 'RURBAN/B-Debug-1.23.tar.gz',
4f3a742d
DR
177 'FILES' => q[cpan/B-Debug],
178 'EXCLUDED' => ['t/pod.t'],
4f3a742d
DR
179 },
180
4f3a742d 181 'base' => {
4c13dc7e 182 'DISTRIBUTION' => 'RJBS/base-2.23.tar.gz',
4f3a742d 183 'FILES' => q[dist/base],
4f3a742d
DR
184 },
185
4f3a742d 186 'bignum' => {
91f07087 187 'DISTRIBUTION' => 'PJACKLAM/bignum-0.42.tar.gz',
c287fe32 188 'FILES' => q[cpan/bignum],
4f3a742d
DR
189 'EXCLUDED' => [
190 qr{^inc/Module/},
91f07087 191 qr{^t/author-},
c287fe32
SH
192 qw( t/00sig.t
193 t/01load.t
194 t/02pod.t
195 t/03podcov.t
4f3a742d
DR
196 ),
197 ],
4f3a742d
DR
198 },
199
200 'Carp' => {
ba705463 201 'DISTRIBUTION' => 'RJBS/Carp-1.38.tar.gz',
4f3a742d 202 'FILES' => q[dist/Carp],
4f3a742d
DR
203 },
204
4f3a742d 205 'Compress::Raw::Bzip2' => {
9e7c8eb7 206 'DISTRIBUTION' => 'PMQS/Compress-Raw-Bzip2-2.069.tar.gz',
4f3a742d
DR
207 'FILES' => q[cpan/Compress-Raw-Bzip2],
208 'EXCLUDED' => [
209 qr{^t/Test/},
65b62fea 210 'bzip2-src/bzip2-const.patch',
4f3a742d 211 'bzip2-src/bzip2-cpp.patch',
65b62fea 212 'bzip2-src/bzip2-unsigned.patch',
4f3a742d 213 ],
4f3a742d
DR
214 },
215
216 'Compress::Raw::Zlib' => {
2b91859c 217 'DISTRIBUTION' => 'PMQS/Compress-Raw-Zlib-2.069.tar.gz',
4f3a742d
DR
218
219 'FILES' => q[cpan/Compress-Raw-Zlib],
220 'EXCLUDED' => [
84c82da4 221 qr{^examples/},
4f3a742d
DR
222 qr{^t/Test/},
223 qw( t/000prereq.t
224 t/99pod.t
225 ),
226 ],
4f3a742d
DR
227 },
228
4b07058c 229 'Config::Perl::V' => {
6f186eb8 230 'DISTRIBUTION' => 'HMBRAND/Config-Perl-V-0.25.tgz',
4b07058c 231 'FILES' => q[cpan/Config-Perl-V],
b4ade012
MB
232 'EXCLUDED' => [qw(
233 examples/show-v.pl
b4ade012 234 )],
4b07058c
RS
235 },
236
4f3a742d 237 'constant' => {
8b1ae794 238 'DISTRIBUTION' => 'RJBS/constant-1.33.tar.gz',
4f3a742d
DR
239 'FILES' => q[dist/constant],
240 'EXCLUDED' => [
241 qw( t/00-load.t
242 t/more-tests.t
243 t/pod-coverage.t
244 t/pod.t
245 eg/synopsis.pl
246 ),
247 ],
4f3a742d
DR
248 },
249
250 'CPAN' => {
d210e520 251 'DISTRIBUTION' => 'ANDK/CPAN-2.10.tar.gz',
4f3a742d
DR
252 'FILES' => q[cpan/CPAN],
253 'EXCLUDED' => [
254 qr{^distroprefs/},
255 qr{^inc/Test/},
45a13884
SH
256 qr{^t/CPAN/},
257 qr{^t/data/},
79116533 258 qr{^t/97-},
4f3a742d 259 qw( lib/CPAN/Admin.pm
6156383d 260 scripts/cpan-mirrors
bfae5bde 261 PAUSE2015.pub
4f3a742d
DR
262 SlayMakefile
263 t/00signature.t
264 t/04clean_load.t
265 t/12cpan.t
266 t/13tarzip.t
267 t/14forkbomb.t
268 t/30shell.coverage
269 t/30shell.t
270 t/31sessions.t
271 t/41distribution.t
272 t/42distroprefs.t
273 t/43distroprefspref.t
45a13884 274 t/44cpanmeta.t
4f3a742d
DR
275 t/50pod.t
276 t/51pod.t
277 t/52podcover.t
278 t/60credentials.t
279 t/70_critic.t
bfae5bde 280 t/71_minimumversion.t
4f3a742d
DR
281 t/local_utils.pm
282 t/perlcriticrc
283 t/yaml_code.yml
284 ),
285 ],
f907dd3c
SH
286 # See commit 3198fda65dbcd975c56916e4b98f515fab7f02e5
287 'CUSTOMIZED' => [ qw[ lib/CPAN.pm ] ],
4f3a742d
DR
288 },
289
278337cd
CBW
290 # Note: When updating CPAN-Meta the META.* files will need to be regenerated
291 # perl -Icpan/CPAN-Meta/lib Porting/makemeta
4f3a742d 292 'CPAN::Meta' => {
2b771c51 293 'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-2.150005.tar.gz',
4f3a742d
DR
294 'FILES' => q[cpan/CPAN-Meta],
295 'EXCLUDED' => [
f907dd3c
SH
296 qw[t/00-report-prereqs.t
297 t/00-report-prereqs.dd
298 t/data-test/x_deprecated-META.json
299 t/data-valid/x_deprecated-META.yml
300 t/README-data.txt],
4f3a742d
DR
301 qr{^xt},
302 qr{^history},
303 ],
4f3a742d
DR
304 },
305
b6ae0ea7 306 'CPAN::Meta::Requirements' => {
054d0c99 307 'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-Requirements-2.140.tar.gz',
b6ae0ea7
CBW
308 'FILES' => q[cpan/CPAN-Meta-Requirements],
309 'EXCLUDED' => [
c4814040 310 qw(t/00-report-prereqs.t),
54b7cb30 311 qw(t/00-report-prereqs.dd),
608e531f 312 qw(t/version-cleanup.t),
b6ae0ea7 313 qr{^xt},
b6ae0ea7 314 ],
b6ae0ea7
CBW
315 },
316
4f3a742d 317 'CPAN::Meta::YAML' => {
0d99ea03 318 'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-YAML-0.018.tar.gz',
4f3a742d
DR
319 'FILES' => q[cpan/CPAN-Meta-YAML],
320 'EXCLUDED' => [
2954a1e9 321 't/00-report-prereqs.t',
e586de20 322 't/00-report-prereqs.dd',
4f3a742d
DR
323 qr{^xt},
324 ],
4f3a742d
DR
325 },
326
327 'Data::Dumper' => {
50a0759e 328 'DISTRIBUTION' => 'SMUELLER/Data-Dumper-2.154.tar.gz',
4f3a742d 329 'FILES' => q[dist/Data-Dumper],
4f3a742d
DR
330 },
331
332 'DB_File' => {
1bb0c253 333 'DISTRIBUTION' => 'PMQS/DB_File-1.835.tar.gz',
4f3a742d
DR
334 'FILES' => q[cpan/DB_File],
335 'EXCLUDED' => [
336 qr{^patches/},
337 qw( t/pod.t
338 fallback.h
339 fallback.xs
340 ),
341 ],
4f3a742d
DR
342 },
343
4f3a742d 344 'Devel::PPPort' => {
95a7456e 345 'DISTRIBUTION' => 'WOLFSAGE/Devel-PPPort-3.32.tar.gz',
099bebb1
SH
346 # RJBS has asked MHX to have UPSTREAM be 'blead'
347 # (i.e. move this from cpan/ to dist/)
4f3a742d 348 'FILES' => q[cpan/Devel-PPPort],
84c82da4
SH
349 'EXCLUDED' => [
350 'PPPort.pm', # we use PPPort_pm.PL instead
84c82da4 351 ]
4f3a742d
DR
352 },
353
97b1d6e6 354 'Devel::SelfStubber' => {
97b1d6e6
SH
355 'DISTRIBUTION' => 'FLORA/Devel-SelfStubber-1.05.tar.gz',
356 'FILES' => q[dist/Devel-SelfStubber],
357 'EXCLUDED' => [qr{^t/release-.*\.t}],
97b1d6e6
SH
358 },
359
4f3a742d 360 'Digest' => {
4f3a742d
DR
361 'DISTRIBUTION' => 'GAAS/Digest-1.17.tar.gz',
362 'FILES' => q[cpan/Digest],
363 'EXCLUDED' => ['digest-bench'],
4f3a742d
DR
364 },
365
366 'Digest::MD5' => {
38054f44 367 'DISTRIBUTION' => 'GAAS/Digest-MD5-2.54.tar.gz',
4f3a742d
DR
368 'FILES' => q[cpan/Digest-MD5],
369 'EXCLUDED' => ['rfc1321.txt'],
4f3a742d
DR
370 },
371
372 'Digest::SHA' => {
b495b81b 373 'DISTRIBUTION' => 'MSHELOR/Digest-SHA-5.95.tar.gz',
4f3a742d
DR
374 'FILES' => q[cpan/Digest-SHA],
375 'EXCLUDED' => [
376 qw( t/pod.t
377 t/podcover.t
378 examples/dups
379 ),
380 ],
4f3a742d
DR
381 },
382
4f3a742d 383 'Dumpvalue' => {
f6e46c4d 384 'DISTRIBUTION' => 'FLORA/Dumpvalue-1.17.tar.gz',
4f3a742d
DR
385 'FILES' => q[dist/Dumpvalue],
386 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
387 },
388
4f3a742d 389 'Encode' => {
8693e0c5 390 'DISTRIBUTION' => 'DANKOGAI/Encode-2.80.tar.gz',
4f3a742d 391 'FILES' => q[cpan/Encode],
0648b1fd 392 CUSTOMIZED => [
13cf5167 393 qw( encoding.pm
5695cd67 394 ),
0648b1fd 395 ],
4f3a742d
DR
396 },
397
398 'encoding::warnings' => {
4f3a742d 399 'DISTRIBUTION' => 'AUDREYT/encoding-warnings-0.11.tar.gz',
e1c786ba 400 'FILES' => q[dist/encoding-warnings],
4f3a742d
DR
401 'EXCLUDED' => [
402 qr{^inc/Module/},
94c85d8e 403 qw(t/0-signature.t),
4f3a742d 404 ],
4f3a742d
DR
405 },
406
4f3a742d 407 'Env' => {
126fc07f 408 'DISTRIBUTION' => 'FLORA/Env-1.04.tar.gz',
4f3a742d
DR
409 'FILES' => q[dist/Env],
410 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
411 },
412
de84ff2b 413 'experimental' => {
4fdcb09b 414 'DISTRIBUTION' => 'LEONT/experimental-0.016.tar.gz',
de84ff2b 415 'FILES' => q[cpan/experimental],
4fdcb09b 416 'EXCLUDED' => [qr{^xt/}],
de84ff2b
RS
417 },
418
4f3a742d 419 'Exporter' => {
b4d1bf31 420 'DISTRIBUTION' => 'TODDR/Exporter-5.72.tar.gz',
3110a055 421 'FILES' => q[dist/Exporter],
4f3a742d
DR
422 'EXCLUDED' => [
423 qw( t/pod.t
424 t/use.t
425 ),
426 ],
4f3a742d
DR
427 },
428
429 'ExtUtils::CBuilder' => {
83dcc064 430 'DISTRIBUTION' => 'AMBS/ExtUtils-CBuilder-0.280224.tar.gz',
4f3a742d 431 'FILES' => q[dist/ExtUtils-CBuilder],
a0e78e9f
SH
432 'EXCLUDED' => [
433 qw(README.mkdn),
434 qr{^xt},
435 ],
4f3a742d
DR
436 },
437
4f3a742d 438 'ExtUtils::Constant' => {
4f3a742d 439
c9849c52 440 'DISTRIBUTION' => 'NWCLARK/ExtUtils-Constant-0.23.tar.gz',
4f3a742d
DR
441 'FILES' => q[cpan/ExtUtils-Constant],
442 'EXCLUDED' => [
443 qw( lib/ExtUtils/Constant/Aaargh56Hash.pm
444 examples/perl_keyword.pl
445 examples/perl_regcomp_posix_keyword.pl
446 ),
34c00cdf 447 ],
c9849c52
DM
448 # cc37ebcee3 to fix VMS failure
449 'CUSTOMIZED' => [ qw(t/Constant.t) ],
4f3a742d
DR
450 },
451
452 'ExtUtils::Install' => {
f1c22b9e 453 'DISTRIBUTION' => 'BINGOS/ExtUtils-Install-2.04.tar.gz',
d393d7e5 454 'FILES' => q[cpan/ExtUtils-Install],
4f3a742d
DR
455 'EXCLUDED' => [
456 qw( t/lib/Test/Builder.pm
457 t/lib/Test/Builder/Module.pm
458 t/lib/Test/More.pm
459 t/lib/Test/Simple.pm
460 t/pod-coverage.t
461 t/pod.t
462 ),
463 ],
4f3a742d
DR
464 },
465
466 'ExtUtils::MakeMaker' => {
2b7c926c 467 'DISTRIBUTION' => 'BINGOS/ExtUtils-MakeMaker-7.10.tar.gz',
4f3a742d
DR
468 'FILES' => q[cpan/ExtUtils-MakeMaker],
469 'EXCLUDED' => [
470 qr{^t/lib/Test/},
471 qr{^(bundled|my)/},
472 qr{^t/Liblist_Kid.t},
473 qr{^t/liblist/},
78fd4358 474 qr{^\.perlcriticrc},
84c82da4
SH
475 'PATCHING',
476 'README.packaging',
ce9582af 477 'lib/ExtUtils/MakeMaker/version/vpp.pm',
4f3a742d 478 ],
2b7c926c
CBW
479 # Upstreamed as https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/ede9ea4a
480 'CUSTOMIZED' => [
481 qq[lib/ExtUtils/MakeMaker.pm],
482 qq[t/prereq.t],
483 qq[t/vstrings.t],
152e735a
CB
484 # Upstreamed as https://github.com/Perl-Toolchain-Gang/ExtUtils-MakeMaker/commit/dd1e236ab
485 qq[lib/ExtUtils/MM_VMS.pm],
8f1332ed
DD
486 # Not yet submitted
487 qq[t/lib/MakeMaker/Test/NoXS.pm],
7295ec19
SH
488 # Backported commits from upstream
489 qw(lib/ExtUtils/Command/MM.pm
490 lib/ExtUtils/Liblist.pm
491 lib/ExtUtils/Liblist/Kid.pm
492 lib/ExtUtils/MM.pm
493 lib/ExtUtils/MM_AIX.pm
494 lib/ExtUtils/MM_Any.pm
495 lib/ExtUtils/MM_BeOS.pm
496 lib/ExtUtils/MM_Cygwin.pm
497 lib/ExtUtils/MM_DOS.pm
498 lib/ExtUtils/MM_Darwin.pm
499 lib/ExtUtils/MM_MacOS.pm
500 lib/ExtUtils/MM_NW5.pm
501 lib/ExtUtils/MM_OS2.pm
502 lib/ExtUtils/MM_QNX.pm
503 lib/ExtUtils/MM_UWIN.pm
504 lib/ExtUtils/MM_Unix.pm
505 lib/ExtUtils/MM_VOS.pm
506 lib/ExtUtils/MM_Win32.pm
507 lib/ExtUtils/MM_Win95.pm
508 lib/ExtUtils/MY.pm
509 lib/ExtUtils/MakeMaker/Config.pm
510 lib/ExtUtils/MakeMaker/FAQ.pod
511 lib/ExtUtils/MakeMaker/Tutorial.pod
512 lib/ExtUtils/MakeMaker/version.pm
513 lib/ExtUtils/MakeMaker/version/regex.pm
514 lib/ExtUtils/Mkbootstrap.pm
515 lib/ExtUtils/Mksymlists.pm
516 lib/ExtUtils/testlib.pm
517 t/cd.t
518 t/echo.t
519 ),
2b7c926c 520 ],
4f3a742d
DR
521 },
522
523 'ExtUtils::Manifest' => {
f660499c 524 'DISTRIBUTION' => 'ETHER/ExtUtils-Manifest-1.70.tar.gz',
854a00d8 525 'FILES' => q[cpan/ExtUtils-Manifest],
4d25f022
SH
526 'EXCLUDED' => [
527 qr(^t/00-report-prereqs),
528 qr(^xt/)
529 ],
4f3a742d
DR
530 },
531
532 'ExtUtils::ParseXS' => {
bdc4e4b2 533 'DISTRIBUTION' => 'SMUELLER/ExtUtils-ParseXS-3.30.tar.gz',
4f3a742d 534 'FILES' => q[dist/ExtUtils-ParseXS],
4f3a742d
DR
535 },
536
4f3a742d 537 'File::Fetch' => {
9d56ca6f 538 'DISTRIBUTION' => 'BINGOS/File-Fetch-0.48.tar.gz',
4f3a742d 539 'FILES' => q[cpan/File-Fetch],
4f3a742d
DR
540 },
541
4f3a742d 542 'File::Path' => {
bfcc9519 543 'DISTRIBUTION' => 'RICHE/File-Path-2.12.tar.gz',
4f3a742d
DR
544 'FILES' => q[cpan/File-Path],
545 'EXCLUDED' => [
bfcc9519
SH
546 qw(t/Path-Class.t),
547 qr{^xt/},
4f3a742d 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' => {
356231b0 572 'DISTRIBUTION' => 'RURBAN/Filter-1.55.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' => {
50f00446 608 'DISTRIBUTION' => 'JV/Getopt-Long-2.48.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' => {
f7294c1d 644 'DISTRIBUTION' => 'RJBS/if-0.0606.tar.gz',
4f3a742d 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' => {
7dcc7d3d 655 'DISTRIBUTION' => 'PMQS/IO-Compress-2.069.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' => {
bfdb5bfe 710 'DISTRIBUTION' => 'SHAY/libnet-3.08.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' => {
50774986 725 'DISTRIBUTION' => 'SBECK/Locale-Codes-3.37.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' => {
4657e0bc 757 'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-1.999715.tar.gz',
6b0f9b46 758 'FILES' => q[cpan/Math-BigInt],
4f3a742d
DR
759 'EXCLUDED' => [
760 qr{^inc/},
761 qr{^examples/},
6b10d254 762 qr{^t/author-},
4f3a742d
DR
763 qw( t/00sig.t
764 t/01load.t
765 t/02pod.t
766 t/03podcov.t
767 ),
768 ],
4f3a742d
DR
769 },
770
771 'Math::BigInt::FastCalc' => {
1d5bcce3 772 'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-FastCalc-0.40.tar.gz',
6b0f9b46 773 'FILES' => q[cpan/Math-BigInt-FastCalc],
4f3a742d
DR
774 'EXCLUDED' => [
775 qr{^inc/},
776 qw( t/00sig.t
777 t/01load.t
778 t/02pod.t
779 t/03podcov.t
780 ),
781
782 # instead we use the versions of these test
783 # files that come with Math::BigInt:
784 qw( t/bigfltpm.inc
785 t/bigfltpm.t
786 t/bigintpm.inc
787 t/bigintpm.t
788 t/mbimbf.inc
789 t/mbimbf.t
790 ),
791 ],
4f3a742d
DR
792 },
793
794 'Math::BigRat' => {
11c955be 795 'DISTRIBUTION' => 'PJACKLAM/Math-BigRat-0.260802.tar.gz',
6b0f9b46 796 'FILES' => q[cpan/Math-BigRat],
4f3a742d
DR
797 'EXCLUDED' => [
798 qr{^inc/},
799 qw( t/00sig.t
800 t/01load.t
801 t/02pod.t
802 t/03podcov.t
11c955be 803 t/blog-mbr.t
4f3a742d
DR
804 ),
805 ],
9b331ac6
SH
806 'CUSTOMIZED' => [
807 qw( lib/Math/BigRat.pm
808 ),
809 ],
4f3a742d
DR
810 },
811
812 'Math::Complex' => {
04ae1553 813 'DISTRIBUTION' => 'ZEFRAM/Math-Complex-1.59.tar.gz',
4f3a742d
DR
814 'FILES' => q[cpan/Math-Complex],
815 'EXCLUDED' => [
816 qw( t/pod.t
817 t/pod-coverage.t
818 ),
819 ],
4f3a742d
DR
820 },
821
822 'Memoize' => {
8114efa0 823 'DISTRIBUTION' => 'MJD/Memoize-1.03.tgz',
4f3a742d
DR
824 'FILES' => q[cpan/Memoize],
825 'EXCLUDED' => ['article.html'],
4f3a742d
DR
826 },
827
828 'MIME::Base64' => {
6b10655d 829 'DISTRIBUTION' => 'GAAS/MIME-Base64-3.15.tar.gz',
4f3a742d
DR
830 'FILES' => q[cpan/MIME-Base64],
831 'EXCLUDED' => ['t/bad-sv.t'],
4f3a742d
DR
832 },
833
4f3a742d 834 'Module::CoreList' => {
03c5b8df 835 'DISTRIBUTION' => 'BINGOS/Module-CoreList-5.20160121.tar.gz',
4f3a742d 836 'FILES' => q[dist/Module-CoreList],
4f3a742d
DR
837 },
838
839 'Module::Load' => {
58572ed8 840 'DISTRIBUTION' => 'BINGOS/Module-Load-0.32.tar.gz',
4f3a742d 841 'FILES' => q[cpan/Module-Load],
4f3a742d
DR
842 },
843
844 'Module::Load::Conditional' => {
a1f2a8e1 845 'DISTRIBUTION' => 'BINGOS/Module-Load-Conditional-0.64.tar.gz',
4f3a742d 846 'FILES' => q[cpan/Module-Load-Conditional],
4f3a742d
DR
847 },
848
849 'Module::Loaded' => {
4f3a742d
DR
850 'DISTRIBUTION' => 'BINGOS/Module-Loaded-0.08.tar.gz',
851 'FILES' => q[cpan/Module-Loaded],
4f3a742d
DR
852 },
853
854 'Module::Metadata' => {
b105cec5 855 'DISTRIBUTION' => 'ETHER/Module-Metadata-1.000031-TRIAL.tar.gz',
4f3a742d
DR
856 'FILES' => q[cpan/Module-Metadata],
857 'EXCLUDED' => [
b9beed70 858 qw(t/00-report-prereqs.t),
adc2cdfb 859 qw(t/00-report-prereqs.dd),
e6d414a9 860 qr{weaver.ini},
4f3a742d
DR
861 qr{^xt},
862 ],
4f3a742d
DR
863 },
864
4f3a742d 865 'Net::Ping' => {
4e0aac35 866 'DISTRIBUTION' => 'SMPETERS/Net-Ping-2.41.tar.gz',
4f3a742d 867 'FILES' => q[dist/Net-Ping],
4f3a742d
DR
868 },
869
870 'NEXT' => {
4f3a742d
DR
871 'DISTRIBUTION' => 'FLORA/NEXT-0.65.tar.gz',
872 'FILES' => q[cpan/NEXT],
873 'EXCLUDED' => [qr{^demo/}],
4f3a742d
DR
874 },
875
4f3a742d 876 'Params::Check' => {
8b21fa03 877 'DISTRIBUTION' => 'BINGOS/Params-Check-0.38.tar.gz',
4f3a742d 878 'FILES' => q[cpan/Params-Check],
4f3a742d
DR
879 },
880
881 'parent' => {
bdb6acef 882 'DISTRIBUTION' => 'CORION/parent-0.234.tar.gz',
4f3a742d 883 'FILES' => q[cpan/parent],
4f3a742d
DR
884 },
885
886 'Parse::CPAN::Meta' => {
9716828a 887 'DISTRIBUTION' => 'DAGOLDEN/Parse-CPAN-Meta-1.4417.tar.gz',
4f3a742d 888 'FILES' => q[cpan/Parse-CPAN-Meta],
342e4710 889 'EXCLUDED' => [
f907dd3c 890 qw[t/00-report-prereqs.dd],
342e4710
CBW
891 qw[t/00-report-prereqs.t],
892 qr{^xt},
893 ],
4f3a742d
DR
894 },
895
896 'PathTools' => {
0224bf41 897 'DISTRIBUTION' => 'RJBS/PathTools-3.62.tar.gz',
cb8c8458 898 'FILES' => q[dist/PathTools],
76250107
SH
899 'EXCLUDED' => [
900 qr{^t/lib/Test/},
901 qw( t/rel2abs_vs_symlink.t),
902 ],
4f3a742d
DR
903 },
904
97b1d6e6 905 'Perl::OSType' => {
76f6b771 906 'DISTRIBUTION' => 'DAGOLDEN/Perl-OSType-1.009.tar.gz',
97b1d6e6 907 'FILES' => q[cpan/Perl-OSType],
765955c0 908 'EXCLUDED' => [qw(tidyall.ini), qr/^xt/, qr{^t/00-}],
97b1d6e6
SH
909 },
910
97b1d6e6 911 'perlfaq' => {
5eeb15d3 912 'DISTRIBUTION' => 'LLAP/perlfaq-5.021010.tar.gz',
97b1d6e6
SH
913 'FILES' => q[cpan/perlfaq],
914 'EXCLUDED' => [
4d25f022 915 qw( inc/CreateQuestionList.pm
e3ef4406 916 inc/perlfaq.tt
4d25f022
SH
917 t/00-compile.t),
918 qr{^xt/},
97b1d6e6 919 ],
97b1d6e6
SH
920 },
921
4f3a742d 922 'PerlIO::via::QuotedPrint' => {
96623e31 923 'DISTRIBUTION' => 'SHAY/PerlIO-via-QuotedPrint-0.08.tar.gz',
4f3a742d 924 'FILES' => q[cpan/PerlIO-via-QuotedPrint],
4f3a742d
DR
925 },
926
0c501878 927 'Pod::Checker' => {
0c501878
CBW
928 'DISTRIBUTION' => 'MAREKR/Pod-Checker-1.60.tar.gz',
929 'FILES' => q[cpan/Pod-Checker],
0c501878
CBW
930 },
931
4f3a742d 932 'Pod::Escapes' => {
f347d3e3 933 'DISTRIBUTION' => 'NEILB/Pod-Escapes-1.07.tar.gz',
4f3a742d 934 'FILES' => q[cpan/Pod-Escapes],
4f3a742d
DR
935 },
936
4f3a742d 937 'Pod::Parser' => {
534577b2 938 'DISTRIBUTION' => 'MAREKR/Pod-Parser-1.63.tar.gz',
4f3a742d 939 'FILES' => q[cpan/Pod-Parser],
4f3a742d
DR
940 },
941
942 'Pod::Perldoc' => {
96f13870 943 'DISTRIBUTION' => 'MALLEN/Pod-Perldoc-3.25.tar.gz',
00e518b3 944 'FILES' => q[cpan/Pod-Perldoc],
4f3a742d 945
fa884b76
DM
946 # Note that we use the CPAN-provided Makefile.PL, since it
947 # contains special handling of the installation of perldoc.pod
948
949 # In blead, the perldoc executable is generated by perldoc.PL
4f3a742d
DR
950 # instead
951 # XXX We can and should fix this, but clean up the DRY-failure in utils
952 # first
953 'EXCLUDED' => ['perldoc'],
18c028dd
AB
954
955 # https://rt.cpan.org/Ticket/Display.html?id=106798
f090f03a 956 # https://rt.cpan.org/Ticket/Display.html?id=110368
18c028dd 957 'CUSTOMIZED' => [ qw[ lib/Pod/Perldoc.pm ] ],
4f3a742d
DR
958 },
959
960 'Pod::Simple' => {
a4a12576 961 'DISTRIBUTION' => 'MARCGREEN/Pod-Simple-3.32.tar.gz',
4f3a742d 962 'FILES' => q[cpan/Pod-Simple],
4f3a742d
DR
963 },
964
0c501878 965 'Pod::Usage' => {
1a938e7c 966 'DISTRIBUTION' => 'MAREKR/Pod-Usage-1.68.tar.gz',
0c501878 967 'FILES' => q[cpan/Pod-Usage],
0c501878
CBW
968 },
969
4f3a742d 970 'podlators' => {
77218c1e 971 'DISTRIBUTION' => 'RRA/podlators-4.06.tar.gz',
4f3a742d
DR
972 'FILES' => q[cpan/podlators pod/perlpodstyle.pod],
973
4f3a742d
DR
974 'MAP' => {
975 '' => 'cpan/podlators/',
4f3a742d 976 # this file lives outside the cpan/ directory
259f5e0b 977 'pod/perlpodstyle' => 'pod/perlpodstyle.pod',
4f3a742d 978 },
4f3a742d
DR
979 },
980
4f3a742d 981 'Safe' => {
e739c653 982 'DISTRIBUTION' => 'RGARCIA/Safe-2.35.tar.gz',
4f3a742d 983 'FILES' => q[dist/Safe],
4f3a742d
DR
984 },
985
986 'Scalar-List-Utils' => {
3d58dd24 987 'DISTRIBUTION' => 'PEVANS/Scalar-List-Utils-1.42.tar.gz',
869a9612
SH
988 'FILES' => q[cpan/Scalar-List-Utils],
989 # Waiting to be merged upstream:
990 # https://github.com/Scalar-List-Utils/Scalar-List-Utils/pull/24
50b6e514 991 # https://rt.cpan.org/Public/Bug/Display.html?id=105415
869a9612
SH
992 'CUSTOMIZED' => [
993 qw( ListUtil.xs
994 lib/List/Util.pm
995 lib/List/Util/XS.pm
996 lib/Scalar/Util.pm
997 lib/Sub/Util.pm
50b6e514 998 t/product.t
869a9612
SH
999 )
1000 ],
4f3a742d
DR
1001 },
1002
4f3a742d 1003 'Search::Dict' => {
0b0a7092 1004 'DISTRIBUTION' => 'DAGOLDEN/Search-Dict-1.07.tar.gz',
4f3a742d 1005 'FILES' => q[dist/Search-Dict],
4f3a742d
DR
1006 },
1007
1008 'SelfLoader' => {
c3958279 1009 'DISTRIBUTION' => 'SMUELLER/SelfLoader-1.20.tar.gz',
4f3a742d
DR
1010 'FILES' => q[dist/SelfLoader],
1011 'EXCLUDED' => ['t/00pod.t'],
4f3a742d
DR
1012 },
1013
4f3a742d 1014 'Socket' => {
06a9195c 1015 'DISTRIBUTION' => 'PEVANS/Socket-2.020.tar.gz',
4f3a742d 1016 'FILES' => q[cpan/Socket],
06a9195c
SH
1017
1018 # https://rt.cpan.org/Ticket/Display.html?id=106797
1019 # https://rt.cpan.org/Ticket/Display.html?id=107058
98e2bb74 1020 # https://rt.cpan.org/Ticket/Display.html?id=111707
06a9195c 1021 'CUSTOMIZED' => [ qw[ Socket.pm Socket.xs ] ],
4f3a742d
DR
1022 },
1023
1024 'Storable' => {
5f4b5e0f 1025 'DISTRIBUTION' => 'AMS/Storable-2.51.tar.gz',
4f3a742d 1026 'FILES' => q[dist/Storable],
76250107
SH
1027 'EXCLUDED' => [
1028 qr{^t/compat/},
1029 ],
4f3a742d
DR
1030 },
1031
4f3a742d 1032 'Sys::Syslog' => {
848ca32c 1033 'DISTRIBUTION' => 'SAPER/Sys-Syslog-0.33.tar.gz',
4f3a742d
DR
1034 'FILES' => q[cpan/Sys-Syslog],
1035 'EXCLUDED' => [
1036 qr{^eg/},
84c82da4
SH
1037 qw( README.win32
1038 t/data-validation.t
4f3a742d
DR
1039 t/distchk.t
1040 t/pod.t
1041 t/podcover.t
1042 t/podspell.t
1043 t/portfs.t
1044 win32/PerlLog.RES
4f3a742d
DR
1045 ),
1046 ],
4f3a742d
DR
1047 },
1048
1049 'Term::ANSIColor' => {
deb8398d 1050 'DISTRIBUTION' => 'RRA/Term-ANSIColor-4.04.tar.gz',
4f3a742d
DR
1051 'FILES' => q[cpan/Term-ANSIColor],
1052 'EXCLUDED' => [
92f80b37
CBW
1053 qr{^examples/},
1054 qr{^t/data/},
5e64492f
CBW
1055 qr{^t/docs/},
1056 qr{^t/style/},
1057 qw( t/module/aliases-env.t ),
4f3a742d 1058 ],
4f3a742d
DR
1059 },
1060
1061 'Term::Cap' => {
23a75734 1062 'DISTRIBUTION' => 'JSTOWE/Term-Cap-1.17.tar.gz',
4f3a742d 1063 'FILES' => q[cpan/Term-Cap],
4f3a742d
DR
1064 },
1065
1066 'Term::Complete' => {
4f3a742d
DR
1067 'DISTRIBUTION' => 'FLORA/Term-Complete-1.402.tar.gz',
1068 'FILES' => q[dist/Term-Complete],
1069 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1070 },
1071
1072 'Term::ReadLine' => {
75ad3638 1073 'DISTRIBUTION' => 'FLORA/Term-ReadLine-1.14.tar.gz',
4f3a742d
DR
1074 'FILES' => q[dist/Term-ReadLine],
1075 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1076 },
1077
4f3a742d 1078 'Test' => {
1c22e001 1079 'DISTRIBUTION' => 'JESSE/Test-1.26.tar.gz',
48458f69 1080 'FILES' => q[dist/Test],
4f3a742d
DR
1081 },
1082
1083 'Test::Harness' => {
3eb3ec0b 1084 'DISTRIBUTION' => 'LEONT/Test-Harness-3.36.tar.gz',
4f3a742d
DR
1085 'FILES' => q[cpan/Test-Harness],
1086 'EXCLUDED' => [
1087 qr{^examples/},
4f3a742d
DR
1088 qr{^xt/},
1089 qw( Changes-2.64
8db65552 1090 MANIFEST.CUMMULATIVE
4f3a742d
DR
1091 HACKING.pod
1092 perlcriticrc
8db65552 1093 t/000-load.t
4f3a742d
DR
1094 t/lib/if.pm
1095 ),
1096 ],
4f3a742d
DR
1097 },
1098
1099 'Test::Simple' => {
80a7dd19 1100 'DISTRIBUTION' => 'EXODIST/Test-Simple-1.001014.tar.gz',
4f3a742d
DR
1101 'FILES' => q[cpan/Test-Simple],
1102 'EXCLUDED' => [
6dab8563 1103 qr{^t/xt},
86e082c9 1104 qr{^xt},
4f3a742d
DR
1105 qw( .perlcriticrc
1106 .perltidyrc
84c82da4
SH
1107 examples/indent.pl
1108 examples/subtest.t
80a7dd19 1109 t/00compile.t
18864292 1110 t/xxx-changes_updated.t
4f3a742d
DR
1111 ),
1112 ],
f266b743 1113 },
4f3a742d
DR
1114
1115 'Text::Abbrev' => {
5e96eee9 1116 'DISTRIBUTION' => 'FLORA/Text-Abbrev-1.02.tar.gz',
4f3a742d
DR
1117 'FILES' => q[dist/Text-Abbrev],
1118 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1119 },
1120
1121 'Text::Balanced' => {
03a97c81 1122 'DISTRIBUTION' => 'SHAY/Text-Balanced-2.03.tar.gz',
4f3a742d
DR
1123 'FILES' => q[cpan/Text-Balanced],
1124 'EXCLUDED' => [
1125 qw( t/97_meta.t
1126 t/98_pod.t
1127 t/99_pmv.t
1128 ),
1129 ],
4f3a742d
DR
1130 },
1131
1132 'Text::ParseWords' => {
a790e348 1133 'DISTRIBUTION' => 'CHORNY/Text-ParseWords-3.30.tar.gz',
4f3a742d 1134 'FILES' => q[cpan/Text-ParseWords],
4f3a742d
DR
1135 },
1136
4f3a742d 1137 'Text-Tabs+Wrap' => {
83aea42c 1138 'DISTRIBUTION' => 'MUIR/modules/Text-Tabs+Wrap-2013.0523.tar.gz',
4f3a742d 1139 'FILES' => q[cpan/Text-Tabs],
e7b92d54
SH
1140 'EXCLUDED' => [
1141 qr/^lib\.old/,
1142 't/dnsparks.t', # see af6492bf9e
4f3a742d 1143 ],
e7b92d54
SH
1144 'MAP' => {
1145 '' => 'cpan/Text-Tabs/',
ab2a3ce2
SH
1146 'lib.modern/Text/Tabs.pm' => 'cpan/Text-Tabs/lib/Text/Tabs.pm',
1147 'lib.modern/Text/Wrap.pm' => 'cpan/Text-Tabs/lib/Text/Wrap.pm',
e7b92d54 1148 },
4f3a742d
DR
1149 },
1150
4e75700d
AC
1151 # Jerry Hedden does take patches that are applied to blead first, even
1152 # though that can be hard to discern from the Git history; so it's
1153 # correct for this (and Thread::Semaphore, threads, and threads::shared)
1154 # to be under dist/ rather than cpan/
4f3a742d 1155 'Thread::Queue' => {
9846bace 1156 'DISTRIBUTION' => 'JDHEDDEN/Thread-Queue-3.07.tar.gz',
4f3a742d
DR
1157 'FILES' => q[dist/Thread-Queue],
1158 'EXCLUDED' => [
1fd4700e
JH
1159 qr{^examples/},
1160 qw( t/00_load.t
4f3a742d
DR
1161 t/99_pod.t
1162 t/test.pl
1163 ),
1164 ],
4f3a742d
DR
1165 },
1166
1167 'Thread::Semaphore' => {
4f3a742d
DR
1168 'DISTRIBUTION' => 'JDHEDDEN/Thread-Semaphore-2.12.tar.gz',
1169 'FILES' => q[dist/Thread-Semaphore],
1170 'EXCLUDED' => [
1171 qw( examples/semaphore.pl
1172 t/00_load.t
1173 t/99_pod.t
1174 t/test.pl
1175 ),
1176 ],
4f3a742d
DR
1177 },
1178
1179 'threads' => {
aa8d754d 1180 'DISTRIBUTION' => 'JDHEDDEN/threads-2.02.tar.gz',
4f3a742d
DR
1181 'FILES' => q[dist/threads],
1182 'EXCLUDED' => [
1183 qr{^examples/},
1184 qw( t/pod.t
1185 t/test.pl
1186 threads.h
1187 ),
1188 ],
4f3a742d
DR
1189 },
1190
1191 'threads::shared' => {
f3f2f486 1192 'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.48.tar.gz',
4f3a742d
DR
1193 'FILES' => q[dist/threads-shared],
1194 'EXCLUDED' => [
1195 qw( examples/class.pl
1196 shared.h
1197 t/pod.t
1198 t/test.pl
1199 ),
1200 ],
4f3a742d
DR
1201 },
1202
1203 'Tie::File' => {
4ac9c666 1204 'DISTRIBUTION' => 'TODDR/Tie-File-1.00.tar.gz',
c0504019 1205 'FILES' => q[dist/Tie-File],
4f3a742d
DR
1206 },
1207
4f3a742d 1208 'Tie::RefHash' => {
4f3a742d
DR
1209 'DISTRIBUTION' => 'FLORA/Tie-RefHash-1.39.tar.gz',
1210 'FILES' => q[cpan/Tie-RefHash],
4f3a742d
DR
1211 },
1212
1213 'Time::HiRes' => {
4451fd4e 1214 'DISTRIBUTION' => 'RJBS/Time-HiRes-1.9728.tar.gz',
91ba54d4 1215 'FILES' => q[dist/Time-HiRes],
4f3a742d
DR
1216 },
1217
1218 'Time::Local' => {
62e824cf 1219 'DISTRIBUTION' => 'DROLSKY/Time-Local-1.2300.tar.gz',
4f3a742d
DR
1220 'FILES' => q[cpan/Time-Local],
1221 'EXCLUDED' => [
62e824cf 1222 qr{^t/release-.*\.t},
4f3a742d 1223 ],
4f3a742d
DR
1224 },
1225
1226 'Time::Piece' => {
5563b392 1227 'DISTRIBUTION' => 'ESAYM/Time-Piece-1.31.tar.gz',
4f3a742d 1228 'FILES' => q[cpan/Time-Piece],
4f3a742d
DR
1229 },
1230
1231 'Unicode::Collate' => {
6962a25d 1232 'DISTRIBUTION' => 'SADAHIRO/Unicode-Collate-1.14.tar.gz',
4f3a742d
DR
1233 'FILES' => q[cpan/Unicode-Collate],
1234 'EXCLUDED' => [
1235 qr{N$},
1236 qr{^data/},
1237 qr{^gendata/},
1238 qw( disableXS
1239 enableXS
1240 mklocale
1241 ),
1242 ],
4f3a742d
DR
1243 },
1244
1245 'Unicode::Normalize' => {
1ef95abd 1246 'DISTRIBUTION' => 'KHW/Unicode-Normalize-1.25.tar.gz',
4f3a742d 1247 'FILES' => q[cpan/Unicode-Normalize],
1ef95abd
SH
1248 'EXCLUDED' => [
1249 qw( MANIFEST.N
1250 Normalize.pmN
1251 disableXS
1252 enableXS
1253 ),
1254 ],
4f3a742d
DR
1255 },
1256
4f3a742d 1257 'version' => {
da891a41 1258 'DISTRIBUTION' => 'JPEACOCK/version-0.9909.tar.gz',
4fa93b19 1259 'FILES' => q[cpan/version vutil.c vutil.h vxs.inc],
4f3a742d 1260 'EXCLUDED' => [
df3ba8e7 1261 qr{^vutil/lib/},
c60b4fa6 1262 'vutil/Makefile.PL',
df3ba8e7
FC
1263 'vutil/ppport.h',
1264 'vutil/vxs.xs',
ce9582af 1265 't/00impl-pp.t',
4f3a742d 1266 't/survey_locales',
ce9582af 1267 'lib/version/vpp.pm',
4f3a742d 1268 ],
f81a37f2 1269
c872d591
SH
1270 # When adding the CPAN-distributed files for version.pm, it is necessary
1271 # to delete an entire block out of lib/version.pm, since that code is
1272 # only necessary with the CPAN release.
f81a37f2
SH
1273 'CUSTOMIZED' => [
1274 qw( lib/version.pm
f81a37f2 1275 ),
4637d007
SH
1276
1277 # Merged upstream, waiting for new CPAN release: see CPAN RT#92721
1278 qw( vutil.c
4637d007 1279 ),
f81a37f2
SH
1280 ],
1281
df3ba8e7 1282 'MAP' => {
4fa93b19
SH
1283 'vperl/' => 'cpan/version/lib/version/',
1284 'vutil/' => '',
df3ba8e7
FC
1285 '' => 'cpan/version/',
1286 },
4f3a742d
DR
1287 },
1288
4f3a742d 1289 'warnings' => {
099bebb1 1290 'FILES' => q[
4f3a742d 1291 lib/warnings
099bebb1
SH
1292 lib/warnings.{pm,t}
1293 regen/warnings.pl
4f3a742d 1294 t/lib/warnings
099bebb1 1295 ],
4f3a742d
DR
1296 },
1297
4f3a742d 1298 'Win32' => {
083231ea 1299 'DISTRIBUTION' => "JDB/Win32-0.52.tar.gz",
4f3a742d 1300 'FILES' => q[cpan/Win32],
4f3a742d
DR
1301 },
1302
1303 'Win32API::File' => {
e5240100 1304 'DISTRIBUTION' => 'CHORNY/Win32API-File-0.1202.tar.gz',
4f3a742d
DR
1305 'FILES' => q[cpan/Win32API-File],
1306 'EXCLUDED' => [
1307 qr{^ex/},
4f3a742d 1308 ],
9d20b1d3
SH
1309
1310 # Currently all EOL differences. Waiting for a new upstream release:
1311 # All the files in the GitHub repo have UNIX EOLs already.
1312 'CUSTOMIZED' => [
1313 qw( ExtUtils/Myconst2perl.pm
1314 Makefile.PL
1315 buffers.h
1316 cFile.h
1317 cFile.pc
1318 const2perl.h
1319 t/file.t
1320 t/tie.t
1321 typemap
1322 ),
1323 ],
4f3a742d
DR
1324 },
1325
4f3a742d 1326 'XSLoader' => {
681a49bf 1327 'DISTRIBUTION' => 'SAPER/XSLoader-0.16.tar.gz',
4f3a742d
DR
1328 'FILES' => q[dist/XSLoader],
1329 'EXCLUDED' => [
1330 qr{^eg/},
57f9caa0
SH
1331 qw( t/00-load.t
1332 t/01-api.t
1333 t/distchk.t
1334 t/pod.t
4f3a742d
DR
1335 t/podcover.t
1336 t/portfs.t
1337 ),
1338 'XSLoader.pm', # we use XSLoader_pm.PL
1339 ],
4f3a742d
DR
1340 },
1341
462ea751
DM
1342 # this pseudo-module represents all the files under ext/ and lib/
1343 # that aren't otherwise claimed. This means that the following two
1344 # commands will check that every file under ext/ and lib/ is
1345 # accounted for, and that there are no duplicates:
1346 #
1347 # perl Porting/Maintainers --checkmani lib ext
d8ada404 1348 # perl Porting/Maintainers --checkmani
462ea751 1349
4f3a742d 1350 '_PERLLIB' => {
2af3c4b9 1351 'FILES' => q[
79852350
AB
1352 ext/Amiga-ARexx/
1353 ext/Amiga-Exec/
09213599 1354 ext/B/
2af3c4b9
SH
1355 ext/Devel-Peek/
1356 ext/DynaLoader/
1357 ext/Errno/
7b4d95f7 1358 ext/ExtUtils-Miniperl/
2af3c4b9
SH
1359 ext/Fcntl/
1360 ext/File-DosGlob/
1361 ext/File-Find/
1362 ext/File-Glob/
1363 ext/FileCache/
1364 ext/GDBM_File/
1365 ext/Hash-Util-FieldHash/
1366 ext/Hash-Util/
1367 ext/I18N-Langinfo/
1368 ext/IPC-Open3/
1369 ext/NDBM_File/
1370 ext/ODBM_File/
1371 ext/Opcode/
1372 ext/POSIX/
1373 ext/PerlIO-encoding/
1374 ext/PerlIO-mmap/
1375 ext/PerlIO-scalar/
1376 ext/PerlIO-via/
1377 ext/Pod-Functions/
1378 ext/Pod-Html/
1379 ext/SDBM_File/
1380 ext/Sys-Hostname/
1381 ext/Tie-Hash-NamedCapture/
1382 ext/Tie-Memoize/
b3dcf775 1383 ext/VMS-DCLsym/
2af3c4b9 1384 ext/VMS-Filespec/
b3dcf775
SH
1385 ext/VMS-Stdio/
1386 ext/Win32CORE/
4f3a742d 1387 ext/XS-APItest/
2af3c4b9
SH
1388 ext/XS-Typemap/
1389 ext/arybase/
1390 ext/attributes/
1391 ext/mro/
1392 ext/re/
1393 lib/AnyDBM_File.{pm,t}
1394 lib/Benchmark.{pm,t}
38eca645 1395 lib/B/Deparse{.pm,.t,-*.t}
f3574cc6 1396 lib/B/Op_private.pm
4f3a742d 1397 lib/CORE.pod
2af3c4b9 1398 lib/Class/Struct.{pm,t}
4f3a742d
DR
1399 lib/Config.t
1400 lib/Config/Extensions.{pm,t}
1401 lib/DB.{pm,t}
2af3c4b9
SH
1402 lib/DBM_Filter.pm
1403 lib/DBM_Filter/
1404 lib/DirHandle.{pm,t}
1405 lib/English.{pm,t}
4f3a742d
DR
1406 lib/ExtUtils/Embed.pm
1407 lib/ExtUtils/XSSymSet.pm
1408 lib/ExtUtils/t/Embed.t
1409 lib/ExtUtils/typemap
2af3c4b9
SH
1410 lib/File/Basename.{pm,t}
1411 lib/File/Compare.{pm,t}
1412 lib/File/Copy.{pm,t}
1413 lib/File/stat{.pm,.t,-7896.t}
1414 lib/FileHandle.{pm,t}
1415 lib/FindBin.{pm,t}
1416 lib/Getopt/Std.{pm,t}
4f3a742d 1417 lib/Internals.t
4b6af431 1418 lib/meta_notation.{pm,t}
4f3a742d
DR
1419 lib/Net/hostent.{pm,t}
1420 lib/Net/netent.{pm,t}
1421 lib/Net/protoent.{pm,t}
1422 lib/Net/servent.{pm,t}
2af3c4b9 1423 lib/PerlIO.pm
4f3a742d
DR
1424 lib/Pod/t/InputObjects.t
1425 lib/Pod/t/Select.t
1426 lib/Pod/t/Usage.t
4f3a742d
DR
1427 lib/Pod/t/utils.t
1428 lib/SelectSaver.{pm,t}
1429 lib/Symbol.{pm,t}
1430 lib/Thread.{pm,t}
1431 lib/Tie/Array.pm
1432 lib/Tie/Array/
1433 lib/Tie/ExtraHash.t
1434 lib/Tie/Handle.pm
1435 lib/Tie/Handle/
2af3c4b9 1436 lib/Tie/Hash.{pm,t}
4f3a742d
DR
1437 lib/Tie/Scalar.{pm,t}
1438 lib/Tie/StdHandle.pm
1439 lib/Tie/SubstrHash.{pm,t}
1440 lib/Time/gmtime.{pm,t}
1441 lib/Time/localtime.{pm,t}
1442 lib/Time/tm.pm
1443 lib/UNIVERSAL.pm
1444 lib/Unicode/README
2af3c4b9 1445 lib/Unicode/UCD.{pm,t}
4f3a742d
DR
1446 lib/User/grent.{pm,t}
1447 lib/User/pwent.{pm,t}
2af3c4b9 1448 lib/_charnames.pm
4f3a742d
DR
1449 lib/blib.{pm,t}
1450 lib/bytes.{pm,t}
1451 lib/bytes_heavy.pl
1452 lib/charnames.{pm,t}
1453 lib/dbm_filter_util.pl
1454 lib/deprecate.pm
2af3c4b9 1455 lib/diagnostics.{pm,t}
4f3a742d
DR
1456 lib/dumpvar.{pl,t}
1457 lib/feature.{pm,t}
1458 lib/feature/
1459 lib/filetest.{pm,t}
1460 lib/h2ph.t
1461 lib/h2xs.t
1462 lib/integer.{pm,t}
1463 lib/less.{pm,t}
1464 lib/locale.{pm,t}
1465 lib/open.{pm,t}
1466 lib/overload/numbers.pm
1467 lib/overloading.{pm,t}
2af3c4b9 1468 lib/overload{.pm,.t,64.t}
4f3a742d
DR
1469 lib/perl5db.{pl,t}
1470 lib/perl5db/
2af3c4b9 1471 lib/sigtrap.{pm,t}
4f3a742d
DR
1472 lib/sort.{pm,t}
1473 lib/strict.{pm,t}
1474 lib/subs.{pm,t}
1475 lib/unicore/
1476 lib/utf8.{pm,t}
1477 lib/utf8_heavy.pl
1478 lib/vars{.pm,.t,_carp.t}
1479 lib/vmsish.{pm,t}
1480 ],
4f3a742d 1481 },
462ea751 1482);
b128a327 1483
97556ec3 1484# legacy CPAN flag
4f3a742d 1485for ( values %Modules ) {
97556ec3
GA
1486 $_->{CPAN} = !!$_->{DISTRIBUTION};
1487}
1488
099bebb1
SH
1489# legacy UPSTREAM flag
1490for ( keys %Modules ) {
1491 # Keep any existing UPSTREAM flag so that "overrides" can be applied
1492 next if exists $Modules{$_}{UPSTREAM};
1493
1494 if ($_ eq '_PERLLIB' or $Modules{$_}{FILES} =~ m{^\s*(?:dist|ext|lib)/}) {
1495 $Modules{$_}{UPSTREAM} = 'blead';
1496 }
1497 elsif ($Modules{$_}{FILES} =~ m{^\s*cpan/}) {
1498 $Modules{$_}{UPSTREAM} = 'cpan';
1499 }
1500 else {
1501 warn "Unexpected location of FILES for module $_: $Modules{$_}{FILES}";
1502 }
1503}
1504
d350de41 1505# legacy MAINTAINER field
099bebb1 1506for ( keys %Modules ) {
b3dcf775 1507 # Keep any existing MAINTAINER flag so that "overrides" can be applied
099bebb1
SH
1508 next if exists $Modules{$_}{MAINTAINER};
1509
1510 if ($Modules{$_}{UPSTREAM} eq 'blead') {
1511 $Modules{$_}{MAINTAINER} = 'P5P';
872818ae 1512 $Maintainers{P5P} = 'perl5-porters <perl5-porters@perl.org>';
d350de41 1513 }
099bebb1
SH
1514 elsif (exists $Modules{$_}{DISTRIBUTION}) {
1515 (my $pause_id = $Modules{$_}{DISTRIBUTION}) =~ s{/.*$}{};
1516 $Modules{$_}{MAINTAINER} = $pause_id;
d350de41
SH
1517 $Maintainers{$pause_id} = "<$pause_id\@cpan.org>";
1518 }
099bebb1
SH
1519 else {
1520 warn "No DISTRIBUTION for non-blead module $_";
1521 }
d350de41
SH
1522}
1523
b128a327 15241;