This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade to Scalar-List-Utils 1.45 from CPAN
[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' => {
55701e3e 123 'DISTRIBUTION' => 'BINGOS/Archive-Tar-2.06.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' => {
6b3eaabc 230 'DISTRIBUTION' => 'HMBRAND/Config-Perl-V-0.26.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' => {
c7cd1ed9 333 'DISTRIBUTION' => 'PMQS/DB_File-1.838.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 ],
ef667930
TC
549 # https://github.com/rpcme/File-Path/pull/34
550 'CUSTOMIZED' => [ qw( lib/File/Path.pm t/Path_win32.t ) ],
4f3a742d
DR
551 },
552
4f3a742d 553 'File::Temp' => {
3d5f905f 554 'DISTRIBUTION' => 'DAGOLDEN/File-Temp-0.2304.tar.gz',
4f3a742d
DR
555 'FILES' => q[cpan/File-Temp],
556 'EXCLUDED' => [
557 qw( misc/benchmark.pl
558 misc/results.txt
559 ),
814e893f
CBW
560 qw[t/00-report-prereqs.t],
561 qr{^xt},
4f3a742d 562 ],
4f3a742d
DR
563 },
564
4f3a742d 565 'Filter::Simple' => {
37ffe967 566 'DISTRIBUTION' => 'SMUELLER/Filter-Simple-0.91.tar.gz',
4f3a742d
DR
567 'FILES' => q[dist/Filter-Simple],
568 'EXCLUDED' => [
4f3a742d
DR
569 qr{^demo/}
570 ],
4f3a742d
DR
571 },
572
573 'Filter::Util::Call' => {
356231b0 574 'DISTRIBUTION' => 'RURBAN/Filter-1.55.tar.gz',
4f3a742d
DR
575 'FILES' => q[cpan/Filter-Util-Call
576 pod/perlfilter.pod
577 ],
578 'EXCLUDED' => [
579 qr{^decrypt/},
580 qr{^examples/},
581 qr{^Exec/},
582 qr{^lib/Filter/},
583 qr{^tee/},
584 qw( Call/Makefile.PL
585 Call/ppport.h
586 Call/typemap
587 mytest
588 t/cpp.t
589 t/decrypt.t
590 t/exec.t
591 t/order.t
4f3a742d
DR
592 t/sh.t
593 t/tee.t
533d93cc
SH
594 t/z_kwalitee.t
595 t/z_meta.t
596 t/z_perl_minimum_version.t
597 t/z_pod-coverage.t
598 t/z_pod.t
4f3a742d
DR
599 ),
600 ],
601 'MAP' => {
602 'Call/' => 'cpan/Filter-Util-Call/',
603 'filter-util.pl' => 'cpan/Filter-Util-Call/filter-util.pl',
604 'perlfilter.pod' => 'pod/perlfilter.pod',
605 '' => 'cpan/Filter-Util-Call/',
606 },
4f3a742d
DR
607 },
608
4f3a742d 609 'Getopt::Long' => {
50f00446 610 'DISTRIBUTION' => 'JV/Getopt-Long-2.48.tar.gz',
4f3a742d
DR
611 'FILES' => q[cpan/Getopt-Long],
612 'EXCLUDED' => [
613 qr{^examples/},
614 qw( perl-Getopt-Long.spec
615 lib/newgetopt.pl
974d5816 616 t/gol-compat.t
4f3a742d
DR
617 ),
618 ],
4f3a742d
DR
619 },
620
4f3a742d 621 'HTTP::Tiny' => {
99527ef1 622 'DISTRIBUTION' => 'DAGOLDEN/HTTP-Tiny-0.056.tar.gz',
4f3a742d
DR
623 'FILES' => q[cpan/HTTP-Tiny],
624 'EXCLUDED' => [
fcfb9f49 625 't/00-report-prereqs.t',
57d69a40 626 't/00-report-prereqs.dd',
4f3a742d 627 't/200_live.t',
44347bc3 628 't/200_live_local_ip.t',
fcfb9f49 629 't/210_live_ssl.t',
4f3a742d
DR
630 qr/^eg/,
631 qr/^xt/
632 ],
4f3a742d
DR
633 },
634
635 'I18N::Collate' => {
4f3a742d
DR
636 'DISTRIBUTION' => 'FLORA/I18N-Collate-1.02.tar.gz',
637 'FILES' => q[dist/I18N-Collate],
638 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
639 },
640
4f3a742d 641 'I18N::LangTags' => {
4f3a742d 642 'FILES' => q[dist/I18N-LangTags],
4f3a742d
DR
643 },
644
645 'if' => {
f7294c1d 646 'DISTRIBUTION' => 'RJBS/if-0.0606.tar.gz',
4f3a742d 647 'FILES' => q[dist/if],
4f3a742d
DR
648 },
649
650 'IO' => {
4f3a742d
DR
651 'DISTRIBUTION' => 'GBARR/IO-1.25.tar.gz',
652 'FILES' => q[dist/IO/],
653 'EXCLUDED' => ['t/test.pl'],
4f3a742d
DR
654 },
655
656 'IO-Compress' => {
7dcc7d3d 657 'DISTRIBUTION' => 'PMQS/IO-Compress-2.069.tar.gz',
4f3a742d 658 'FILES' => q[cpan/IO-Compress],
84c82da4
SH
659 'EXCLUDED' => [
660 qr{^examples/},
661 qr{^t/Test/},
662 't/010examples-bzip2.t',
663 't/010examples-zlib.t',
664 't/cz-05examples.t',
665 ],
4f3a742d
DR
666 },
667
74a30e96 668 'IO::Socket::IP' => {
be3cfe4c 669 'DISTRIBUTION' => 'PEVANS/IO-Socket-IP-0.37.tar.gz',
74a30e96
CBW
670 'FILES' => q[cpan/IO-Socket-IP],
671 'EXCLUDED' => [
672 qr{^examples/},
673 ],
674 },
675
4f3a742d 676 'IO::Zlib' => {
4f3a742d
DR
677 'DISTRIBUTION' => 'TOMHUGHES/IO-Zlib-1.10.tar.gz',
678 'FILES' => q[cpan/IO-Zlib],
4f3a742d
DR
679 },
680
681 'IPC::Cmd' => {
9c213c25 682 'DISTRIBUTION' => 'BINGOS/IPC-Cmd-0.92.tar.gz',
4f3a742d 683 'FILES' => q[cpan/IPC-Cmd],
4f3a742d
DR
684 },
685
4f3a742d 686 'IPC::SysV' => {
f38527b2 687 'DISTRIBUTION' => 'MHX/IPC-SysV-2.07.tar.gz',
4f3a742d
DR
688 'FILES' => q[cpan/IPC-SysV],
689 'EXCLUDED' => [
690 qw( const-c.inc
691 const-xs.inc
692 ),
693 ],
4f3a742d
DR
694 },
695
696 'JSON::PP' => {
87f3ebe4 697 'DISTRIBUTION' => 'MAKAMAKA/JSON-PP-2.27300.tar.gz',
4f3a742d 698 'FILES' => q[cpan/JSON-PP],
4f3a742d
DR
699 },
700
701 'lib' => {
4f3a742d
DR
702 'DISTRIBUTION' => 'SMUELLER/lib-0.63.tar.gz',
703 'FILES' => q[dist/lib/],
704 'EXCLUDED' => [
705 qw( forPAUSE/lib.pm
706 t/00pod.t
707 ),
708 ],
4f3a742d
DR
709 },
710
711 'libnet' => {
bfdb5bfe 712 'DISTRIBUTION' => 'SHAY/libnet-3.08.tar.gz',
4f3a742d
DR
713 'FILES' => q[cpan/libnet],
714 'EXCLUDED' => [
715 qw( Configure
2901a52f 716 t/changes.t
59e3cdd4
SH
717 t/critic.t
718 t/pod.t
719 t/pod_coverage.t
4f3a742d 720 ),
84c82da4 721 qr(^demos/),
dadfa42f 722 qr(^t/external/),
4f3a742d 723 ],
4f3a742d
DR
724 },
725
726 'Locale-Codes' => {
add9356c 727 'DISTRIBUTION' => 'SBECK/Locale-Codes-3.38.tar.gz',
4f3a742d
DR
728 'FILES' => q[cpan/Locale-Codes],
729 'EXCLUDED' => [
84c82da4 730 qw( README.first
8eadc45b 731 t/pod_coverage.ign
84c82da4 732 t/pod_coverage.t
4f3a742d
DR
733 t/pod.t),
734 qr{^t/runtests},
735 qr{^t/runtests\.bat},
736 qr{^internal/},
737 qr{^examples/},
738 ],
4f3a742d
DR
739 },
740
741 'Locale::Maketext' => {
2310e174 742 'DISTRIBUTION' => 'TODDR/Locale-Maketext-1.26.tar.gz',
4f3a742d
DR
743 'FILES' => q[dist/Locale-Maketext],
744 'EXCLUDED' => [
745 qw(
746 perlcriticrc
747 t/00_load.t
748 t/pod.t
749 ),
750 ],
4f3a742d
DR
751 },
752
753 'Locale::Maketext::Simple' => {
4f3a742d
DR
754 'DISTRIBUTION' => 'JESSE/Locale-Maketext-Simple-0.21.tar.gz',
755 'FILES' => q[cpan/Locale-Maketext-Simple],
4f3a742d
DR
756 },
757
4f3a742d 758 'Math::BigInt' => {
4657e0bc 759 'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-1.999715.tar.gz',
6b0f9b46 760 'FILES' => q[cpan/Math-BigInt],
4f3a742d
DR
761 'EXCLUDED' => [
762 qr{^inc/},
763 qr{^examples/},
6b10d254 764 qr{^t/author-},
4f3a742d
DR
765 qw( t/00sig.t
766 t/01load.t
767 t/02pod.t
768 t/03podcov.t
769 ),
770 ],
4f3a742d
DR
771 },
772
773 'Math::BigInt::FastCalc' => {
1d5bcce3 774 'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-FastCalc-0.40.tar.gz',
6b0f9b46 775 'FILES' => q[cpan/Math-BigInt-FastCalc],
4f3a742d
DR
776 'EXCLUDED' => [
777 qr{^inc/},
778 qw( t/00sig.t
779 t/01load.t
780 t/02pod.t
781 t/03podcov.t
782 ),
783
784 # instead we use the versions of these test
785 # files that come with Math::BigInt:
786 qw( t/bigfltpm.inc
787 t/bigfltpm.t
788 t/bigintpm.inc
789 t/bigintpm.t
790 t/mbimbf.inc
791 t/mbimbf.t
792 ),
793 ],
4f3a742d
DR
794 },
795
796 'Math::BigRat' => {
11c955be 797 'DISTRIBUTION' => 'PJACKLAM/Math-BigRat-0.260802.tar.gz',
6b0f9b46 798 'FILES' => q[cpan/Math-BigRat],
4f3a742d
DR
799 'EXCLUDED' => [
800 qr{^inc/},
801 qw( t/00sig.t
802 t/01load.t
803 t/02pod.t
804 t/03podcov.t
11c955be 805 t/blog-mbr.t
4f3a742d
DR
806 ),
807 ],
9b331ac6
SH
808 'CUSTOMIZED' => [
809 qw( lib/Math/BigRat.pm
810 ),
811 ],
4f3a742d
DR
812 },
813
814 'Math::Complex' => {
04ae1553 815 'DISTRIBUTION' => 'ZEFRAM/Math-Complex-1.59.tar.gz',
4f3a742d
DR
816 'FILES' => q[cpan/Math-Complex],
817 'EXCLUDED' => [
818 qw( t/pod.t
819 t/pod-coverage.t
820 ),
821 ],
4f3a742d
DR
822 },
823
824 'Memoize' => {
8114efa0 825 'DISTRIBUTION' => 'MJD/Memoize-1.03.tgz',
4f3a742d
DR
826 'FILES' => q[cpan/Memoize],
827 'EXCLUDED' => ['article.html'],
4f3a742d
DR
828 },
829
830 'MIME::Base64' => {
6b10655d 831 'DISTRIBUTION' => 'GAAS/MIME-Base64-3.15.tar.gz',
4f3a742d
DR
832 'FILES' => q[cpan/MIME-Base64],
833 'EXCLUDED' => ['t/bad-sv.t'],
4f3a742d
DR
834 },
835
4f3a742d 836 'Module::CoreList' => {
8fc12533 837 'DISTRIBUTION' => 'BINGOS/Module-CoreList-5.20160507.tar.gz',
4f3a742d 838 'FILES' => q[dist/Module-CoreList],
4f3a742d
DR
839 },
840
841 'Module::Load' => {
58572ed8 842 'DISTRIBUTION' => 'BINGOS/Module-Load-0.32.tar.gz',
4f3a742d 843 'FILES' => q[cpan/Module-Load],
4f3a742d
DR
844 },
845
846 'Module::Load::Conditional' => {
a1f2a8e1 847 'DISTRIBUTION' => 'BINGOS/Module-Load-Conditional-0.64.tar.gz',
4f3a742d 848 'FILES' => q[cpan/Module-Load-Conditional],
4f3a742d
DR
849 },
850
851 'Module::Loaded' => {
4f3a742d
DR
852 'DISTRIBUTION' => 'BINGOS/Module-Loaded-0.08.tar.gz',
853 'FILES' => q[cpan/Module-Loaded],
4f3a742d
DR
854 },
855
856 'Module::Metadata' => {
b105cec5 857 'DISTRIBUTION' => 'ETHER/Module-Metadata-1.000031-TRIAL.tar.gz',
4f3a742d
DR
858 'FILES' => q[cpan/Module-Metadata],
859 'EXCLUDED' => [
b9beed70 860 qw(t/00-report-prereqs.t),
adc2cdfb 861 qw(t/00-report-prereqs.dd),
e6d414a9 862 qr{weaver.ini},
4f3a742d
DR
863 qr{^xt},
864 ],
4f3a742d
DR
865 },
866
4f3a742d 867 'Net::Ping' => {
4e0aac35 868 'DISTRIBUTION' => 'SMPETERS/Net-Ping-2.41.tar.gz',
4f3a742d 869 'FILES' => q[dist/Net-Ping],
4f3a742d
DR
870 },
871
872 'NEXT' => {
4f3a742d
DR
873 'DISTRIBUTION' => 'FLORA/NEXT-0.65.tar.gz',
874 'FILES' => q[cpan/NEXT],
875 'EXCLUDED' => [qr{^demo/}],
4f3a742d
DR
876 },
877
4f3a742d 878 'Params::Check' => {
8b21fa03 879 'DISTRIBUTION' => 'BINGOS/Params-Check-0.38.tar.gz',
4f3a742d 880 'FILES' => q[cpan/Params-Check],
4f3a742d
DR
881 },
882
883 'parent' => {
bdb6acef 884 'DISTRIBUTION' => 'CORION/parent-0.234.tar.gz',
4f3a742d 885 'FILES' => q[cpan/parent],
4f3a742d
DR
886 },
887
888 'Parse::CPAN::Meta' => {
9716828a 889 'DISTRIBUTION' => 'DAGOLDEN/Parse-CPAN-Meta-1.4417.tar.gz',
4f3a742d 890 'FILES' => q[cpan/Parse-CPAN-Meta],
342e4710 891 'EXCLUDED' => [
f907dd3c 892 qw[t/00-report-prereqs.dd],
342e4710
CBW
893 qw[t/00-report-prereqs.t],
894 qr{^xt},
895 ],
4f3a742d
DR
896 },
897
898 'PathTools' => {
0224bf41 899 'DISTRIBUTION' => 'RJBS/PathTools-3.62.tar.gz',
cb8c8458 900 'FILES' => q[dist/PathTools],
76250107
SH
901 'EXCLUDED' => [
902 qr{^t/lib/Test/},
903 qw( t/rel2abs_vs_symlink.t),
904 ],
4f3a742d
DR
905 },
906
97b1d6e6 907 'Perl::OSType' => {
76f6b771 908 'DISTRIBUTION' => 'DAGOLDEN/Perl-OSType-1.009.tar.gz',
97b1d6e6 909 'FILES' => q[cpan/Perl-OSType],
765955c0 910 'EXCLUDED' => [qw(tidyall.ini), qr/^xt/, qr{^t/00-}],
97b1d6e6
SH
911 },
912
97b1d6e6 913 'perlfaq' => {
a2c3b2fe 914 'DISTRIBUTION' => 'LLAP/perlfaq-5.021011.tar.gz',
97b1d6e6
SH
915 'FILES' => q[cpan/perlfaq],
916 'EXCLUDED' => [
4d25f022 917 qw( inc/CreateQuestionList.pm
e3ef4406 918 inc/perlfaq.tt
4d25f022
SH
919 t/00-compile.t),
920 qr{^xt/},
97b1d6e6 921 ],
97b1d6e6
SH
922 },
923
4f3a742d 924 'PerlIO::via::QuotedPrint' => {
96623e31 925 'DISTRIBUTION' => 'SHAY/PerlIO-via-QuotedPrint-0.08.tar.gz',
4f3a742d 926 'FILES' => q[cpan/PerlIO-via-QuotedPrint],
4f3a742d
DR
927 },
928
0c501878 929 'Pod::Checker' => {
0c501878
CBW
930 'DISTRIBUTION' => 'MAREKR/Pod-Checker-1.60.tar.gz',
931 'FILES' => q[cpan/Pod-Checker],
0c501878
CBW
932 },
933
4f3a742d 934 'Pod::Escapes' => {
f347d3e3 935 'DISTRIBUTION' => 'NEILB/Pod-Escapes-1.07.tar.gz',
4f3a742d 936 'FILES' => q[cpan/Pod-Escapes],
4f3a742d
DR
937 },
938
4f3a742d 939 'Pod::Parser' => {
534577b2 940 'DISTRIBUTION' => 'MAREKR/Pod-Parser-1.63.tar.gz',
4f3a742d 941 'FILES' => q[cpan/Pod-Parser],
4f3a742d
DR
942 },
943
944 'Pod::Perldoc' => {
96f13870 945 'DISTRIBUTION' => 'MALLEN/Pod-Perldoc-3.25.tar.gz',
00e518b3 946 'FILES' => q[cpan/Pod-Perldoc],
4f3a742d 947
fa884b76
DM
948 # Note that we use the CPAN-provided Makefile.PL, since it
949 # contains special handling of the installation of perldoc.pod
950
951 # In blead, the perldoc executable is generated by perldoc.PL
4f3a742d
DR
952 # instead
953 # XXX We can and should fix this, but clean up the DRY-failure in utils
954 # first
955 'EXCLUDED' => ['perldoc'],
18c028dd
AB
956
957 # https://rt.cpan.org/Ticket/Display.html?id=106798
f090f03a 958 # https://rt.cpan.org/Ticket/Display.html?id=110368
18c028dd 959 'CUSTOMIZED' => [ qw[ lib/Pod/Perldoc.pm ] ],
4f3a742d
DR
960 },
961
962 'Pod::Simple' => {
a4a12576 963 'DISTRIBUTION' => 'MARCGREEN/Pod-Simple-3.32.tar.gz',
4f3a742d 964 'FILES' => q[cpan/Pod-Simple],
4f3a742d
DR
965 },
966
0c501878 967 'Pod::Usage' => {
1a938e7c 968 'DISTRIBUTION' => 'MAREKR/Pod-Usage-1.68.tar.gz',
0c501878 969 'FILES' => q[cpan/Pod-Usage],
0c501878
CBW
970 },
971
4f3a742d 972 'podlators' => {
84d02d20 973 'DISTRIBUTION' => 'RRA/podlators-4.07.tar.gz',
4f3a742d
DR
974 'FILES' => q[cpan/podlators pod/perlpodstyle.pod],
975
4f3a742d
DR
976 'MAP' => {
977 '' => 'cpan/podlators/',
4f3a742d 978 # this file lives outside the cpan/ directory
259f5e0b 979 'pod/perlpodstyle' => 'pod/perlpodstyle.pod',
4f3a742d 980 },
4f3a742d
DR
981 },
982
4f3a742d 983 'Safe' => {
e739c653 984 'DISTRIBUTION' => 'RGARCIA/Safe-2.35.tar.gz',
4f3a742d 985 'FILES' => q[dist/Safe],
4f3a742d
DR
986 },
987
988 'Scalar-List-Utils' => {
e8164ee7 989 'DISTRIBUTION' => 'PEVANS/Scalar-List-Utils-1.45.tar.gz',
869a9612 990 'FILES' => q[cpan/Scalar-List-Utils],
4f3a742d
DR
991 },
992
4f3a742d 993 'Search::Dict' => {
0b0a7092 994 'DISTRIBUTION' => 'DAGOLDEN/Search-Dict-1.07.tar.gz',
4f3a742d 995 'FILES' => q[dist/Search-Dict],
4f3a742d
DR
996 },
997
998 'SelfLoader' => {
c3958279 999 'DISTRIBUTION' => 'SMUELLER/SelfLoader-1.20.tar.gz',
4f3a742d
DR
1000 'FILES' => q[dist/SelfLoader],
1001 'EXCLUDED' => ['t/00pod.t'],
4f3a742d
DR
1002 },
1003
4f3a742d 1004 'Socket' => {
06a9195c 1005 'DISTRIBUTION' => 'PEVANS/Socket-2.020.tar.gz',
4f3a742d 1006 'FILES' => q[cpan/Socket],
06a9195c
SH
1007
1008 # https://rt.cpan.org/Ticket/Display.html?id=106797
1009 # https://rt.cpan.org/Ticket/Display.html?id=107058
98e2bb74 1010 # https://rt.cpan.org/Ticket/Display.html?id=111707
06a9195c 1011 'CUSTOMIZED' => [ qw[ Socket.pm Socket.xs ] ],
4f3a742d
DR
1012 },
1013
1014 'Storable' => {
5f4b5e0f 1015 'DISTRIBUTION' => 'AMS/Storable-2.51.tar.gz',
4f3a742d 1016 'FILES' => q[dist/Storable],
76250107
SH
1017 'EXCLUDED' => [
1018 qr{^t/compat/},
1019 ],
4f3a742d
DR
1020 },
1021
4f3a742d 1022 'Sys::Syslog' => {
848ca32c 1023 'DISTRIBUTION' => 'SAPER/Sys-Syslog-0.33.tar.gz',
4f3a742d
DR
1024 'FILES' => q[cpan/Sys-Syslog],
1025 'EXCLUDED' => [
1026 qr{^eg/},
84c82da4
SH
1027 qw( README.win32
1028 t/data-validation.t
4f3a742d
DR
1029 t/distchk.t
1030 t/pod.t
1031 t/podcover.t
1032 t/podspell.t
1033 t/portfs.t
1034 win32/PerlLog.RES
4f3a742d
DR
1035 ),
1036 ],
4f3a742d
DR
1037 },
1038
1039 'Term::ANSIColor' => {
deb8398d 1040 'DISTRIBUTION' => 'RRA/Term-ANSIColor-4.04.tar.gz',
4f3a742d
DR
1041 'FILES' => q[cpan/Term-ANSIColor],
1042 'EXCLUDED' => [
92f80b37
CBW
1043 qr{^examples/},
1044 qr{^t/data/},
5e64492f
CBW
1045 qr{^t/docs/},
1046 qr{^t/style/},
1047 qw( t/module/aliases-env.t ),
4f3a742d 1048 ],
4f3a742d
DR
1049 },
1050
1051 'Term::Cap' => {
23a75734 1052 'DISTRIBUTION' => 'JSTOWE/Term-Cap-1.17.tar.gz',
4f3a742d 1053 'FILES' => q[cpan/Term-Cap],
4f3a742d
DR
1054 },
1055
1056 'Term::Complete' => {
4f3a742d
DR
1057 'DISTRIBUTION' => 'FLORA/Term-Complete-1.402.tar.gz',
1058 'FILES' => q[dist/Term-Complete],
1059 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1060 },
1061
1062 'Term::ReadLine' => {
75ad3638 1063 'DISTRIBUTION' => 'FLORA/Term-ReadLine-1.14.tar.gz',
4f3a742d
DR
1064 'FILES' => q[dist/Term-ReadLine],
1065 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1066 },
1067
4f3a742d 1068 'Test' => {
1c22e001 1069 'DISTRIBUTION' => 'JESSE/Test-1.26.tar.gz',
48458f69 1070 'FILES' => q[dist/Test],
4f3a742d
DR
1071 },
1072
1073 'Test::Harness' => {
3eb3ec0b 1074 'DISTRIBUTION' => 'LEONT/Test-Harness-3.36.tar.gz',
4f3a742d
DR
1075 'FILES' => q[cpan/Test-Harness],
1076 'EXCLUDED' => [
1077 qr{^examples/},
4f3a742d
DR
1078 qr{^xt/},
1079 qw( Changes-2.64
8db65552 1080 MANIFEST.CUMMULATIVE
4f3a742d
DR
1081 HACKING.pod
1082 perlcriticrc
8db65552 1083 t/000-load.t
4f3a742d
DR
1084 t/lib/if.pm
1085 ),
1086 ],
4f3a742d
DR
1087 },
1088
1089 'Test::Simple' => {
80a7dd19 1090 'DISTRIBUTION' => 'EXODIST/Test-Simple-1.001014.tar.gz',
4f3a742d
DR
1091 'FILES' => q[cpan/Test-Simple],
1092 'EXCLUDED' => [
6dab8563 1093 qr{^t/xt},
86e082c9 1094 qr{^xt},
4f3a742d
DR
1095 qw( .perlcriticrc
1096 .perltidyrc
84c82da4
SH
1097 examples/indent.pl
1098 examples/subtest.t
80a7dd19 1099 t/00compile.t
18864292 1100 t/xxx-changes_updated.t
4f3a742d
DR
1101 ),
1102 ],
f266b743 1103 },
4f3a742d
DR
1104
1105 'Text::Abbrev' => {
5e96eee9 1106 'DISTRIBUTION' => 'FLORA/Text-Abbrev-1.02.tar.gz',
4f3a742d
DR
1107 'FILES' => q[dist/Text-Abbrev],
1108 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1109 },
1110
1111 'Text::Balanced' => {
03a97c81 1112 'DISTRIBUTION' => 'SHAY/Text-Balanced-2.03.tar.gz',
4f3a742d
DR
1113 'FILES' => q[cpan/Text-Balanced],
1114 'EXCLUDED' => [
1115 qw( t/97_meta.t
1116 t/98_pod.t
1117 t/99_pmv.t
1118 ),
1119 ],
4f3a742d
DR
1120 },
1121
1122 'Text::ParseWords' => {
a790e348 1123 'DISTRIBUTION' => 'CHORNY/Text-ParseWords-3.30.tar.gz',
4f3a742d 1124 'FILES' => q[cpan/Text-ParseWords],
4f3a742d
DR
1125 },
1126
4f3a742d 1127 'Text-Tabs+Wrap' => {
83aea42c 1128 'DISTRIBUTION' => 'MUIR/modules/Text-Tabs+Wrap-2013.0523.tar.gz',
4f3a742d 1129 'FILES' => q[cpan/Text-Tabs],
e7b92d54
SH
1130 'EXCLUDED' => [
1131 qr/^lib\.old/,
1132 't/dnsparks.t', # see af6492bf9e
4f3a742d 1133 ],
e7b92d54
SH
1134 'MAP' => {
1135 '' => 'cpan/Text-Tabs/',
ab2a3ce2
SH
1136 'lib.modern/Text/Tabs.pm' => 'cpan/Text-Tabs/lib/Text/Tabs.pm',
1137 'lib.modern/Text/Wrap.pm' => 'cpan/Text-Tabs/lib/Text/Wrap.pm',
e7b92d54 1138 },
4f3a742d
DR
1139 },
1140
4e75700d
AC
1141 # Jerry Hedden does take patches that are applied to blead first, even
1142 # though that can be hard to discern from the Git history; so it's
1143 # correct for this (and Thread::Semaphore, threads, and threads::shared)
1144 # to be under dist/ rather than cpan/
4f3a742d 1145 'Thread::Queue' => {
6d08d01b 1146 'DISTRIBUTION' => 'JDHEDDEN/Thread-Queue-3.09.tar.gz',
4f3a742d
DR
1147 'FILES' => q[dist/Thread-Queue],
1148 'EXCLUDED' => [
1fd4700e
JH
1149 qr{^examples/},
1150 qw( t/00_load.t
4f3a742d
DR
1151 t/99_pod.t
1152 t/test.pl
1153 ),
1154 ],
4f3a742d
DR
1155 },
1156
1157 'Thread::Semaphore' => {
4f3a742d
DR
1158 'DISTRIBUTION' => 'JDHEDDEN/Thread-Semaphore-2.12.tar.gz',
1159 'FILES' => q[dist/Thread-Semaphore],
1160 'EXCLUDED' => [
1161 qw( examples/semaphore.pl
1162 t/00_load.t
1163 t/99_pod.t
1164 t/test.pl
1165 ),
1166 ],
4f3a742d
DR
1167 },
1168
1169 'threads' => {
6d08d01b 1170 'DISTRIBUTION' => 'JDHEDDEN/threads-2.07.tar.gz',
4f3a742d
DR
1171 'FILES' => q[dist/threads],
1172 'EXCLUDED' => [
1173 qr{^examples/},
1174 qw( t/pod.t
1175 t/test.pl
1176 threads.h
1177 ),
1178 ],
4f3a742d
DR
1179 },
1180
1181 'threads::shared' => {
3cfebacc 1182 'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.51.tar.gz',
4f3a742d
DR
1183 'FILES' => q[dist/threads-shared],
1184 'EXCLUDED' => [
1185 qw( examples/class.pl
1186 shared.h
1187 t/pod.t
1188 t/test.pl
1189 ),
1190 ],
4f3a742d
DR
1191 },
1192
1193 'Tie::File' => {
4ac9c666 1194 'DISTRIBUTION' => 'TODDR/Tie-File-1.00.tar.gz',
c0504019 1195 'FILES' => q[dist/Tie-File],
4f3a742d
DR
1196 },
1197
4f3a742d 1198 'Tie::RefHash' => {
4f3a742d
DR
1199 'DISTRIBUTION' => 'FLORA/Tie-RefHash-1.39.tar.gz',
1200 'FILES' => q[cpan/Tie-RefHash],
4f3a742d
DR
1201 },
1202
1203 'Time::HiRes' => {
4451fd4e 1204 'DISTRIBUTION' => 'RJBS/Time-HiRes-1.9728.tar.gz',
91ba54d4 1205 'FILES' => q[dist/Time-HiRes],
4f3a742d
DR
1206 },
1207
1208 'Time::Local' => {
62e824cf 1209 'DISTRIBUTION' => 'DROLSKY/Time-Local-1.2300.tar.gz',
4f3a742d
DR
1210 'FILES' => q[cpan/Time-Local],
1211 'EXCLUDED' => [
62e824cf 1212 qr{^t/release-.*\.t},
4f3a742d 1213 ],
4f3a742d
DR
1214 },
1215
1216 'Time::Piece' => {
5563b392 1217 'DISTRIBUTION' => 'ESAYM/Time-Piece-1.31.tar.gz',
4f3a742d 1218 'FILES' => q[cpan/Time-Piece],
4f3a742d
DR
1219 },
1220
1221 'Unicode::Collate' => {
6962a25d 1222 'DISTRIBUTION' => 'SADAHIRO/Unicode-Collate-1.14.tar.gz',
4f3a742d
DR
1223 'FILES' => q[cpan/Unicode-Collate],
1224 'EXCLUDED' => [
1225 qr{N$},
1226 qr{^data/},
1227 qr{^gendata/},
1228 qw( disableXS
1229 enableXS
1230 mklocale
1231 ),
1232 ],
4f3a742d
DR
1233 },
1234
1235 'Unicode::Normalize' => {
1ef95abd 1236 'DISTRIBUTION' => 'KHW/Unicode-Normalize-1.25.tar.gz',
4f3a742d 1237 'FILES' => q[cpan/Unicode-Normalize],
1ef95abd
SH
1238 'EXCLUDED' => [
1239 qw( MANIFEST.N
1240 Normalize.pmN
1241 disableXS
1242 enableXS
1243 ),
1244 ],
4f3a742d
DR
1245 },
1246
4f3a742d 1247 'version' => {
3462bde7 1248 'DISTRIBUTION' => 'JPEACOCK/version-0.9916.tar.gz',
4fa93b19 1249 'FILES' => q[cpan/version vutil.c vutil.h vxs.inc],
4f3a742d 1250 'EXCLUDED' => [
df3ba8e7 1251 qr{^vutil/lib/},
c60b4fa6 1252 'vutil/Makefile.PL',
df3ba8e7
FC
1253 'vutil/ppport.h',
1254 'vutil/vxs.xs',
ce9582af 1255 't/00impl-pp.t',
4f3a742d 1256 't/survey_locales',
ce9582af 1257 'lib/version/vpp.pm',
4f3a742d 1258 ],
f81a37f2 1259
c872d591
SH
1260 # When adding the CPAN-distributed files for version.pm, it is necessary
1261 # to delete an entire block out of lib/version.pm, since that code is
1262 # only necessary with the CPAN release.
f81a37f2
SH
1263 'CUSTOMIZED' => [
1264 qw( lib/version.pm
f81a37f2
SH
1265 ),
1266 ],
1267
df3ba8e7 1268 'MAP' => {
4fa93b19
SH
1269 'vperl/' => 'cpan/version/lib/version/',
1270 'vutil/' => '',
df3ba8e7
FC
1271 '' => 'cpan/version/',
1272 },
4f3a742d
DR
1273 },
1274
4f3a742d 1275 'warnings' => {
099bebb1 1276 'FILES' => q[
4f3a742d 1277 lib/warnings
099bebb1
SH
1278 lib/warnings.{pm,t}
1279 regen/warnings.pl
4f3a742d 1280 t/lib/warnings
099bebb1 1281 ],
4f3a742d
DR
1282 },
1283
4f3a742d 1284 'Win32' => {
083231ea 1285 'DISTRIBUTION' => "JDB/Win32-0.52.tar.gz",
4f3a742d 1286 'FILES' => q[cpan/Win32],
4f3a742d
DR
1287 },
1288
1289 'Win32API::File' => {
df61f5a9 1290 'DISTRIBUTION' => 'CHORNY/Win32API-File-0.1203.tar.gz',
4f3a742d
DR
1291 'FILES' => q[cpan/Win32API-File],
1292 'EXCLUDED' => [
1293 qr{^ex/},
4f3a742d 1294 ],
4f3a742d
DR
1295 },
1296
4f3a742d 1297 'XSLoader' => {
681a49bf 1298 'DISTRIBUTION' => 'SAPER/XSLoader-0.16.tar.gz',
4f3a742d
DR
1299 'FILES' => q[dist/XSLoader],
1300 'EXCLUDED' => [
1301 qr{^eg/},
57f9caa0
SH
1302 qw( t/00-load.t
1303 t/01-api.t
1304 t/distchk.t
1305 t/pod.t
4f3a742d
DR
1306 t/podcover.t
1307 t/portfs.t
1308 ),
1309 'XSLoader.pm', # we use XSLoader_pm.PL
1310 ],
4f3a742d
DR
1311 },
1312
462ea751
DM
1313 # this pseudo-module represents all the files under ext/ and lib/
1314 # that aren't otherwise claimed. This means that the following two
1315 # commands will check that every file under ext/ and lib/ is
1316 # accounted for, and that there are no duplicates:
1317 #
1318 # perl Porting/Maintainers --checkmani lib ext
d8ada404 1319 # perl Porting/Maintainers --checkmani
462ea751 1320
4f3a742d 1321 '_PERLLIB' => {
2af3c4b9 1322 'FILES' => q[
79852350
AB
1323 ext/Amiga-ARexx/
1324 ext/Amiga-Exec/
09213599 1325 ext/B/
2af3c4b9
SH
1326 ext/Devel-Peek/
1327 ext/DynaLoader/
1328 ext/Errno/
7b4d95f7 1329 ext/ExtUtils-Miniperl/
2af3c4b9
SH
1330 ext/Fcntl/
1331 ext/File-DosGlob/
1332 ext/File-Find/
1333 ext/File-Glob/
1334 ext/FileCache/
1335 ext/GDBM_File/
1336 ext/Hash-Util-FieldHash/
1337 ext/Hash-Util/
1338 ext/I18N-Langinfo/
1339 ext/IPC-Open3/
1340 ext/NDBM_File/
1341 ext/ODBM_File/
1342 ext/Opcode/
1343 ext/POSIX/
1344 ext/PerlIO-encoding/
1345 ext/PerlIO-mmap/
1346 ext/PerlIO-scalar/
1347 ext/PerlIO-via/
1348 ext/Pod-Functions/
1349 ext/Pod-Html/
1350 ext/SDBM_File/
1351 ext/Sys-Hostname/
1352 ext/Tie-Hash-NamedCapture/
1353 ext/Tie-Memoize/
b3dcf775 1354 ext/VMS-DCLsym/
2af3c4b9 1355 ext/VMS-Filespec/
b3dcf775
SH
1356 ext/VMS-Stdio/
1357 ext/Win32CORE/
4f3a742d 1358 ext/XS-APItest/
2af3c4b9
SH
1359 ext/XS-Typemap/
1360 ext/arybase/
1361 ext/attributes/
1362 ext/mro/
1363 ext/re/
1364 lib/AnyDBM_File.{pm,t}
1365 lib/Benchmark.{pm,t}
38eca645 1366 lib/B/Deparse{.pm,.t,-*.t}
f3574cc6 1367 lib/B/Op_private.pm
4f3a742d 1368 lib/CORE.pod
2af3c4b9 1369 lib/Class/Struct.{pm,t}
4f3a742d
DR
1370 lib/Config.t
1371 lib/Config/Extensions.{pm,t}
1372 lib/DB.{pm,t}
2af3c4b9
SH
1373 lib/DBM_Filter.pm
1374 lib/DBM_Filter/
1375 lib/DirHandle.{pm,t}
1376 lib/English.{pm,t}
4f3a742d
DR
1377 lib/ExtUtils/Embed.pm
1378 lib/ExtUtils/XSSymSet.pm
1379 lib/ExtUtils/t/Embed.t
1380 lib/ExtUtils/typemap
2af3c4b9
SH
1381 lib/File/Basename.{pm,t}
1382 lib/File/Compare.{pm,t}
1383 lib/File/Copy.{pm,t}
1384 lib/File/stat{.pm,.t,-7896.t}
1385 lib/FileHandle.{pm,t}
1386 lib/FindBin.{pm,t}
1387 lib/Getopt/Std.{pm,t}
4f3a742d 1388 lib/Internals.t
4b6af431 1389 lib/meta_notation.{pm,t}
4f3a742d
DR
1390 lib/Net/hostent.{pm,t}
1391 lib/Net/netent.{pm,t}
1392 lib/Net/protoent.{pm,t}
1393 lib/Net/servent.{pm,t}
2af3c4b9 1394 lib/PerlIO.pm
4f3a742d
DR
1395 lib/Pod/t/InputObjects.t
1396 lib/Pod/t/Select.t
1397 lib/Pod/t/Usage.t
4f3a742d
DR
1398 lib/Pod/t/utils.t
1399 lib/SelectSaver.{pm,t}
1400 lib/Symbol.{pm,t}
1401 lib/Thread.{pm,t}
1402 lib/Tie/Array.pm
1403 lib/Tie/Array/
1404 lib/Tie/ExtraHash.t
1405 lib/Tie/Handle.pm
1406 lib/Tie/Handle/
2af3c4b9 1407 lib/Tie/Hash.{pm,t}
4f3a742d
DR
1408 lib/Tie/Scalar.{pm,t}
1409 lib/Tie/StdHandle.pm
1410 lib/Tie/SubstrHash.{pm,t}
1411 lib/Time/gmtime.{pm,t}
1412 lib/Time/localtime.{pm,t}
1413 lib/Time/tm.pm
1414 lib/UNIVERSAL.pm
1415 lib/Unicode/README
2af3c4b9 1416 lib/Unicode/UCD.{pm,t}
4f3a742d
DR
1417 lib/User/grent.{pm,t}
1418 lib/User/pwent.{pm,t}
2af3c4b9 1419 lib/_charnames.pm
4f3a742d
DR
1420 lib/blib.{pm,t}
1421 lib/bytes.{pm,t}
1422 lib/bytes_heavy.pl
1423 lib/charnames.{pm,t}
1424 lib/dbm_filter_util.pl
1425 lib/deprecate.pm
2af3c4b9 1426 lib/diagnostics.{pm,t}
4f3a742d
DR
1427 lib/dumpvar.{pl,t}
1428 lib/feature.{pm,t}
1429 lib/feature/
1430 lib/filetest.{pm,t}
1431 lib/h2ph.t
1432 lib/h2xs.t
1433 lib/integer.{pm,t}
1434 lib/less.{pm,t}
1435 lib/locale.{pm,t}
1436 lib/open.{pm,t}
1437 lib/overload/numbers.pm
1438 lib/overloading.{pm,t}
2af3c4b9 1439 lib/overload{.pm,.t,64.t}
4f3a742d
DR
1440 lib/perl5db.{pl,t}
1441 lib/perl5db/
2af3c4b9 1442 lib/sigtrap.{pm,t}
4f3a742d
DR
1443 lib/sort.{pm,t}
1444 lib/strict.{pm,t}
1445 lib/subs.{pm,t}
1446 lib/unicore/
1447 lib/utf8.{pm,t}
1448 lib/utf8_heavy.pl
1449 lib/vars{.pm,.t,_carp.t}
1450 lib/vmsish.{pm,t}
1451 ],
4f3a742d 1452 },
462ea751 1453);
b128a327 1454
97556ec3 1455# legacy CPAN flag
4f3a742d 1456for ( values %Modules ) {
97556ec3
GA
1457 $_->{CPAN} = !!$_->{DISTRIBUTION};
1458}
1459
099bebb1
SH
1460# legacy UPSTREAM flag
1461for ( keys %Modules ) {
1462 # Keep any existing UPSTREAM flag so that "overrides" can be applied
1463 next if exists $Modules{$_}{UPSTREAM};
1464
1465 if ($_ eq '_PERLLIB' or $Modules{$_}{FILES} =~ m{^\s*(?:dist|ext|lib)/}) {
1466 $Modules{$_}{UPSTREAM} = 'blead';
1467 }
1468 elsif ($Modules{$_}{FILES} =~ m{^\s*cpan/}) {
1469 $Modules{$_}{UPSTREAM} = 'cpan';
1470 }
1471 else {
1472 warn "Unexpected location of FILES for module $_: $Modules{$_}{FILES}";
1473 }
1474}
1475
d350de41 1476# legacy MAINTAINER field
099bebb1 1477for ( keys %Modules ) {
b3dcf775 1478 # Keep any existing MAINTAINER flag so that "overrides" can be applied
099bebb1
SH
1479 next if exists $Modules{$_}{MAINTAINER};
1480
1481 if ($Modules{$_}{UPSTREAM} eq 'blead') {
1482 $Modules{$_}{MAINTAINER} = 'P5P';
872818ae 1483 $Maintainers{P5P} = 'perl5-porters <perl5-porters@perl.org>';
d350de41 1484 }
099bebb1
SH
1485 elsif (exists $Modules{$_}{DISTRIBUTION}) {
1486 (my $pause_id = $Modules{$_}{DISTRIBUTION}) =~ s{/.*$}{};
1487 $Modules{$_}{MAINTAINER} = $pause_id;
d350de41
SH
1488 $Maintainers{$pause_id} = "<$pause_id\@cpan.org>";
1489 }
099bebb1
SH
1490 else {
1491 warn "No DISTRIBUTION for non-blead module $_";
1492 }
d350de41
SH
1493}
1494
b128a327 14951;