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