This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Upgrade Module-Metadata from version 1.000026 to 1.000027
[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
73c832e4 23 LICENSE Makefile.PL MANIFEST MANIFEST.SKIP META.json META.yml MYMETA.json
53bf589c 24 MYMETA.yml NEW NEWS NOTES perlcritic.rc ppport.h README README.PATCHING
d3bd9fae 25 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',
99527ef1 622 qr/^corpus/,
4f3a742d
DR
623 qr/^eg/,
624 qr/^xt/
625 ],
4f3a742d
DR
626 },
627
628 'I18N::Collate' => {
4f3a742d
DR
629 'DISTRIBUTION' => 'FLORA/I18N-Collate-1.02.tar.gz',
630 'FILES' => q[dist/I18N-Collate],
631 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
632 },
633
4f3a742d 634 'I18N::LangTags' => {
4f3a742d 635 'FILES' => q[dist/I18N-LangTags],
4f3a742d
DR
636 },
637
638 'if' => {
4f3a742d
DR
639 'DISTRIBUTION' => 'ILYAZ/modules/if-0.0601.tar.gz',
640 'FILES' => q[dist/if],
4f3a742d
DR
641 },
642
643 'IO' => {
4f3a742d
DR
644 'DISTRIBUTION' => 'GBARR/IO-1.25.tar.gz',
645 'FILES' => q[dist/IO/],
646 'EXCLUDED' => ['t/test.pl'],
4f3a742d
DR
647 },
648
649 'IO-Compress' => {
3acdfe42 650 'DISTRIBUTION' => 'PMQS/IO-Compress-2.068.tar.gz',
4f3a742d 651 'FILES' => q[cpan/IO-Compress],
84c82da4
SH
652 'EXCLUDED' => [
653 qr{^examples/},
654 qr{^t/Test/},
655 't/010examples-bzip2.t',
656 't/010examples-zlib.t',
657 't/cz-05examples.t',
658 ],
4f3a742d
DR
659 },
660
74a30e96 661 'IO::Socket::IP' => {
be3cfe4c 662 'DISTRIBUTION' => 'PEVANS/IO-Socket-IP-0.37.tar.gz',
74a30e96
CBW
663 'FILES' => q[cpan/IO-Socket-IP],
664 'EXCLUDED' => [
665 qr{^examples/},
666 ],
667 },
668
4f3a742d 669 'IO::Zlib' => {
4f3a742d
DR
670 'DISTRIBUTION' => 'TOMHUGHES/IO-Zlib-1.10.tar.gz',
671 'FILES' => q[cpan/IO-Zlib],
4f3a742d
DR
672 },
673
674 'IPC::Cmd' => {
9c213c25 675 'DISTRIBUTION' => 'BINGOS/IPC-Cmd-0.92.tar.gz',
4f3a742d 676 'FILES' => q[cpan/IPC-Cmd],
4f3a742d
DR
677 },
678
4f3a742d 679 'IPC::SysV' => {
dd0df890 680 'DISTRIBUTION' => 'MHX/IPC-SysV-2.04.tar.gz',
4f3a742d
DR
681 'FILES' => q[cpan/IPC-SysV],
682 'EXCLUDED' => [
683 qw( const-c.inc
684 const-xs.inc
685 ),
686 ],
4f3a742d
DR
687 },
688
689 'JSON::PP' => {
87f3ebe4 690 'DISTRIBUTION' => 'MAKAMAKA/JSON-PP-2.27300.tar.gz',
4f3a742d 691 'FILES' => q[cpan/JSON-PP],
4f3a742d
DR
692 },
693
694 'lib' => {
4f3a742d
DR
695 'DISTRIBUTION' => 'SMUELLER/lib-0.63.tar.gz',
696 'FILES' => q[dist/lib/],
697 'EXCLUDED' => [
698 qw( forPAUSE/lib.pm
699 t/00pod.t
700 ),
701 ],
4f3a742d
DR
702 },
703
704 'libnet' => {
a4f8ff46 705 'DISTRIBUTION' => 'SHAY/libnet-3.06.tar.gz',
4f3a742d
DR
706 'FILES' => q[cpan/libnet],
707 'EXCLUDED' => [
708 qw( Configure
2901a52f 709 t/changes.t
59e3cdd4
SH
710 t/critic.t
711 t/pod.t
712 t/pod_coverage.t
4f3a742d 713 ),
84c82da4 714 qr(^demos/),
dadfa42f 715 qr(^t/external/),
4f3a742d 716 ],
4f3a742d
DR
717 },
718
719 'Locale-Codes' => {
68bfa5ea 720 'DISTRIBUTION' => 'SBECK/Locale-Codes-3.35.tar.gz',
4f3a742d
DR
721 'FILES' => q[cpan/Locale-Codes],
722 'EXCLUDED' => [
84c82da4 723 qw( README.first
8eadc45b 724 t/pod_coverage.ign
84c82da4 725 t/pod_coverage.t
4f3a742d
DR
726 t/pod.t),
727 qr{^t/runtests},
728 qr{^t/runtests\.bat},
729 qr{^internal/},
730 qr{^examples/},
731 ],
4f3a742d
DR
732 },
733
734 'Locale::Maketext' => {
2310e174 735 'DISTRIBUTION' => 'TODDR/Locale-Maketext-1.26.tar.gz',
4f3a742d
DR
736 'FILES' => q[dist/Locale-Maketext],
737 'EXCLUDED' => [
738 qw(
739 perlcriticrc
740 t/00_load.t
741 t/pod.t
742 ),
743 ],
4f3a742d
DR
744 },
745
746 'Locale::Maketext::Simple' => {
4f3a742d
DR
747 'DISTRIBUTION' => 'JESSE/Locale-Maketext-Simple-0.21.tar.gz',
748 'FILES' => q[cpan/Locale-Maketext-Simple],
4f3a742d
DR
749 },
750
4f3a742d 751 'Math::BigInt' => {
4ac9c666 752 'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-1.9993.tar.gz',
4f3a742d
DR
753 'FILES' => q[dist/Math-BigInt],
754 'EXCLUDED' => [
755 qr{^inc/},
756 qr{^examples/},
757 qw( t/00sig.t
758 t/01load.t
759 t/02pod.t
760 t/03podcov.t
761 ),
762 ],
4f3a742d
DR
763 },
764
765 'Math::BigInt::FastCalc' => {
4ac9c666 766 'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-FastCalc-0.31.tar.gz',
4f3a742d
DR
767 'FILES' => q[dist/Math-BigInt-FastCalc],
768 'EXCLUDED' => [
769 qr{^inc/},
770 qw( t/00sig.t
771 t/01load.t
772 t/02pod.t
773 t/03podcov.t
774 ),
775
776 # instead we use the versions of these test
777 # files that come with Math::BigInt:
778 qw( t/bigfltpm.inc
779 t/bigfltpm.t
780 t/bigintpm.inc
781 t/bigintpm.t
782 t/mbimbf.inc
783 t/mbimbf.t
784 ),
785 ],
4f3a742d
DR
786 },
787
788 'Math::BigRat' => {
4ac9c666 789 'DISTRIBUTION' => 'PJACKLAM/Math-BigRat-0.2606.tar.gz',
4f3a742d
DR
790 'FILES' => q[dist/Math-BigRat],
791 'EXCLUDED' => [
792 qr{^inc/},
793 qw( t/00sig.t
794 t/01load.t
795 t/02pod.t
796 t/03podcov.t
797 ),
798 ],
4f3a742d
DR
799 },
800
801 'Math::Complex' => {
04ae1553 802 'DISTRIBUTION' => 'ZEFRAM/Math-Complex-1.59.tar.gz',
4f3a742d
DR
803 'FILES' => q[cpan/Math-Complex],
804 'EXCLUDED' => [
805 qw( t/pod.t
806 t/pod-coverage.t
807 ),
808 ],
4f3a742d
DR
809 },
810
811 'Memoize' => {
8114efa0 812 'DISTRIBUTION' => 'MJD/Memoize-1.03.tgz',
4f3a742d
DR
813 'FILES' => q[cpan/Memoize],
814 'EXCLUDED' => ['article.html'],
4f3a742d
DR
815 },
816
817 'MIME::Base64' => {
6b10655d 818 'DISTRIBUTION' => 'GAAS/MIME-Base64-3.15.tar.gz',
4f3a742d
DR
819 'FILES' => q[cpan/MIME-Base64],
820 'EXCLUDED' => ['t/bad-sv.t'],
4f3a742d
DR
821 },
822
4f3a742d 823 'Module::CoreList' => {
45d9e107 824 'DISTRIBUTION' => 'BINGOS/Module-CoreList-5.20150520.tar.gz',
4f3a742d 825 'FILES' => q[dist/Module-CoreList],
4f3a742d
DR
826 },
827
828 'Module::Load' => {
58572ed8 829 'DISTRIBUTION' => 'BINGOS/Module-Load-0.32.tar.gz',
4f3a742d 830 'FILES' => q[cpan/Module-Load],
4f3a742d
DR
831 },
832
833 'Module::Load::Conditional' => {
a1f2a8e1 834 'DISTRIBUTION' => 'BINGOS/Module-Load-Conditional-0.64.tar.gz',
4f3a742d 835 'FILES' => q[cpan/Module-Load-Conditional],
4f3a742d
DR
836 },
837
838 'Module::Loaded' => {
4f3a742d
DR
839 'DISTRIBUTION' => 'BINGOS/Module-Loaded-0.08.tar.gz',
840 'FILES' => q[cpan/Module-Loaded],
4f3a742d
DR
841 },
842
843 'Module::Metadata' => {
72b8c7a2 844 'DISTRIBUTION' => 'ETHER/Module-Metadata-1.000027.tar.gz',
4f3a742d
DR
845 'FILES' => q[cpan/Module-Metadata],
846 'EXCLUDED' => [
b9beed70
SH
847 qw(README.md),
848 qw(t/00-report-prereqs.t),
adc2cdfb 849 qw(t/00-report-prereqs.dd),
4f3a742d
DR
850 qr{^xt},
851 ],
4f3a742d
DR
852 },
853
4f3a742d 854 'Net::Ping' => {
4e0aac35 855 'DISTRIBUTION' => 'SMPETERS/Net-Ping-2.41.tar.gz',
4f3a742d 856 'FILES' => q[dist/Net-Ping],
4e0aac35 857 'EXCLUDED' => [
4e0aac35
MM
858 qr{^README.md},
859 ],
4f3a742d
DR
860 },
861
862 'NEXT' => {
4f3a742d
DR
863 'DISTRIBUTION' => 'FLORA/NEXT-0.65.tar.gz',
864 'FILES' => q[cpan/NEXT],
865 'EXCLUDED' => [qr{^demo/}],
4f3a742d
DR
866 },
867
4f3a742d 868 'Params::Check' => {
8b21fa03 869 'DISTRIBUTION' => 'BINGOS/Params-Check-0.38.tar.gz',
4f3a742d 870 'FILES' => q[cpan/Params-Check],
4f3a742d
DR
871 },
872
873 'parent' => {
b367c45d 874 'DISTRIBUTION' => 'CORION/parent-0.232.tar.gz',
4f3a742d 875 'FILES' => q[cpan/parent],
4f3a742d
DR
876 },
877
878 'Parse::CPAN::Meta' => {
a2fd2fa0 879 'DISTRIBUTION' => 'DAGOLDEN/Parse-CPAN-Meta-1.4414.tar.gz',
4f3a742d 880 'FILES' => q[cpan/Parse-CPAN-Meta],
342e4710 881 'EXCLUDED' => [
342e4710
CBW
882 qw[t/00-report-prereqs.t],
883 qr{^xt},
884 ],
4f3a742d
DR
885 },
886
887 'PathTools' => {
4d90bfb5 888 'DISTRIBUTION' => 'SMUELLER/PathTools-3.47.tar.gz',
cb8c8458 889 'FILES' => q[dist/PathTools],
4f3a742d 890 'EXCLUDED' => [qr{^t/lib/Test/}],
4f3a742d
DR
891 },
892
97b1d6e6 893 'Perl::OSType' => {
819b03e2 894 'DISTRIBUTION' => 'DAGOLDEN/Perl-OSType-1.008.tar.gz',
97b1d6e6 895 'FILES' => q[cpan/Perl-OSType],
765955c0 896 'EXCLUDED' => [qw(tidyall.ini), qr/^xt/, qr{^t/00-}],
97b1d6e6
SH
897 },
898
97b1d6e6 899 'perlfaq' => {
c57d3fcc 900 'DISTRIBUTION' => 'ETHER/perlfaq-5.021009.tar.gz',
97b1d6e6
SH
901 'FILES' => q[cpan/perlfaq],
902 'EXCLUDED' => [
4d25f022 903 qw( inc/CreateQuestionList.pm
e3ef4406 904 inc/perlfaq.tt
4d25f022
SH
905 t/00-compile.t),
906 qr{^xt/},
97b1d6e6 907 ],
97b1d6e6
SH
908 },
909
4f3a742d 910 'PerlIO::via::QuotedPrint' => {
96623e31 911 'DISTRIBUTION' => 'SHAY/PerlIO-via-QuotedPrint-0.08.tar.gz',
4f3a742d 912 'FILES' => q[cpan/PerlIO-via-QuotedPrint],
4f3a742d
DR
913 },
914
0c501878 915 'Pod::Checker' => {
0c501878
CBW
916 'DISTRIBUTION' => 'MAREKR/Pod-Checker-1.60.tar.gz',
917 'FILES' => q[cpan/Pod-Checker],
0c501878
CBW
918 },
919
4f3a742d 920 'Pod::Escapes' => {
f347d3e3 921 'DISTRIBUTION' => 'NEILB/Pod-Escapes-1.07.tar.gz',
4f3a742d 922 'FILES' => q[cpan/Pod-Escapes],
4f3a742d
DR
923 },
924
4f3a742d 925 'Pod::Parser' => {
534577b2 926 'DISTRIBUTION' => 'MAREKR/Pod-Parser-1.63.tar.gz',
4f3a742d 927 'FILES' => q[cpan/Pod-Parser],
4f3a742d
DR
928 },
929
930 'Pod::Perldoc' => {
96f13870 931 'DISTRIBUTION' => 'MALLEN/Pod-Perldoc-3.25.tar.gz',
00e518b3 932 'FILES' => q[cpan/Pod-Perldoc],
4f3a742d 933
fa884b76
DM
934 # Note that we use the CPAN-provided Makefile.PL, since it
935 # contains special handling of the installation of perldoc.pod
936
937 # In blead, the perldoc executable is generated by perldoc.PL
4f3a742d
DR
938 # instead
939 # XXX We can and should fix this, but clean up the DRY-failure in utils
940 # first
941 'EXCLUDED' => ['perldoc'],
4f3a742d
DR
942 },
943
944 'Pod::Simple' => {
f23676cb 945 'DISTRIBUTION' => 'DWHEELER/Pod-Simple-3.29.tar.gz',
4f3a742d 946 'FILES' => q[cpan/Pod-Simple],
4f3a742d
DR
947 },
948
0c501878 949 'Pod::Usage' => {
5b597d1b 950 'DISTRIBUTION' => 'MAREKR/Pod-Usage-1.64.tar.gz',
0c501878 951 'FILES' => q[cpan/Pod-Usage],
0c501878
CBW
952 },
953
4f3a742d 954 'podlators' => {
b52cde68 955 'DISTRIBUTION' => 'RRA/podlators-2.5.3.tar.gz',
4f3a742d
DR
956 'FILES' => q[cpan/podlators pod/perlpodstyle.pod],
957
958 # The perl distribution has pod2man.PL and pod2text.PL, which are
959 # run to create pod2man and pod2text, while the CPAN distribution
960 # just has the post-generated pod2man and pod2text files.
961 # The following entries attempt to codify that odd fact.
962 'CUSTOMIZED' => [
963 qw( scripts/pod2man.PL
964 scripts/pod2text.PL
4f3a742d
DR
965 ),
966 ],
967 'MAP' => {
968 '' => 'cpan/podlators/',
969 'scripts/pod2man' => 'cpan/podlators/scripts/pod2man.PL',
970 'scripts/pod2text' => 'cpan/podlators/scripts/pod2text.PL',
971
972 # this file lives outside the cpan/ directory
973 'pod/perlpodstyle.pod' => 'pod/perlpodstyle.pod',
974 },
4f3a742d
DR
975 },
976
4f3a742d 977 'Safe' => {
e739c653 978 'DISTRIBUTION' => 'RGARCIA/Safe-2.35.tar.gz',
4f3a742d 979 'FILES' => q[dist/Safe],
4f3a742d
DR
980 },
981
982 'Scalar-List-Utils' => {
46274848 983 'DISTRIBUTION' => 'PEVANS/Scalar-List-Utils-1.41.tar.gz',
cb8c8458 984 'FILES' => q[cpan/Scalar-List-Utils],
4f3a742d
DR
985 },
986
4f3a742d 987 'Search::Dict' => {
0b0a7092 988 'DISTRIBUTION' => 'DAGOLDEN/Search-Dict-1.07.tar.gz',
4f3a742d 989 'FILES' => q[dist/Search-Dict],
4f3a742d
DR
990 },
991
992 'SelfLoader' => {
c3958279 993 'DISTRIBUTION' => 'SMUELLER/SelfLoader-1.20.tar.gz',
4f3a742d
DR
994 'FILES' => q[dist/SelfLoader],
995 'EXCLUDED' => ['t/00pod.t'],
4f3a742d
DR
996 },
997
4f3a742d 998 'Socket' => {
0d06df21 999 'DISTRIBUTION' => 'PEVANS/Socket-2.019.tar.gz',
4f3a742d 1000 'FILES' => q[cpan/Socket],
4f3a742d
DR
1001 },
1002
1003 'Storable' => {
5f4b5e0f 1004 'DISTRIBUTION' => 'AMS/Storable-2.51.tar.gz',
4f3a742d 1005 'FILES' => q[dist/Storable],
4f3a742d
DR
1006 },
1007
4f3a742d 1008 'Sys::Syslog' => {
848ca32c 1009 'DISTRIBUTION' => 'SAPER/Sys-Syslog-0.33.tar.gz',
4f3a742d
DR
1010 'FILES' => q[cpan/Sys-Syslog],
1011 'EXCLUDED' => [
1012 qr{^eg/},
84c82da4
SH
1013 qw( README.win32
1014 t/data-validation.t
4f3a742d
DR
1015 t/distchk.t
1016 t/pod.t
1017 t/podcover.t
1018 t/podspell.t
1019 t/portfs.t
1020 win32/PerlLog.RES
4f3a742d
DR
1021 ),
1022 ],
4f3a742d
DR
1023 },
1024
1025 'Term::ANSIColor' => {
5e64492f 1026 'DISTRIBUTION' => 'RRA/Term-ANSIColor-4.03.tar.gz',
4f3a742d
DR
1027 'FILES' => q[cpan/Term-ANSIColor],
1028 'EXCLUDED' => [
92f80b37
CBW
1029 qr{^examples/},
1030 qr{^t/data/},
5e64492f
CBW
1031 qr{^t/docs/},
1032 qr{^t/style/},
1033 qw( t/module/aliases-env.t ),
4f3a742d 1034 ],
4f3a742d
DR
1035 },
1036
1037 'Term::Cap' => {
663bce88 1038 'DISTRIBUTION' => 'JSTOWE/Term-Cap-1.15.tar.gz',
4f3a742d 1039 'FILES' => q[cpan/Term-Cap],
4f3a742d
DR
1040 },
1041
1042 'Term::Complete' => {
4f3a742d
DR
1043 'DISTRIBUTION' => 'FLORA/Term-Complete-1.402.tar.gz',
1044 'FILES' => q[dist/Term-Complete],
1045 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1046 },
1047
1048 'Term::ReadLine' => {
75ad3638 1049 'DISTRIBUTION' => 'FLORA/Term-ReadLine-1.14.tar.gz',
4f3a742d
DR
1050 'FILES' => q[dist/Term-ReadLine],
1051 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1052 },
1053
4f3a742d 1054 'Test' => {
1c22e001 1055 'DISTRIBUTION' => 'JESSE/Test-1.26.tar.gz',
4f3a742d 1056 'FILES' => q[cpan/Test],
4f3a742d
DR
1057 },
1058
1059 'Test::Harness' => {
2cc1a90a 1060 'DISTRIBUTION' => 'LEONT/Test-Harness-3.35.tar.gz',
4f3a742d
DR
1061 'FILES' => q[cpan/Test-Harness],
1062 'EXCLUDED' => [
1063 qr{^examples/},
1064 qr{^inc/},
1065 qr{^t/lib/Test/},
1066 qr{^xt/},
1067 qw( Changes-2.64
8db65552 1068 MANIFEST.CUMMULATIVE
4f3a742d
DR
1069 NotBuild.PL
1070 HACKING.pod
1071 perlcriticrc
8db65552 1072 t/000-load.t
4f3a742d
DR
1073 t/lib/if.pm
1074 ),
1075 ],
4f3a742d
DR
1076 },
1077
1078 'Test::Simple' => {
80a7dd19 1079 'DISTRIBUTION' => 'EXODIST/Test-Simple-1.001014.tar.gz',
4f3a742d
DR
1080 'FILES' => q[cpan/Test-Simple],
1081 'EXCLUDED' => [
6dab8563 1082 qr{^t/xt},
86e082c9 1083 qr{^xt},
4f3a742d
DR
1084 qw( .perlcriticrc
1085 .perltidyrc
84c82da4
SH
1086 examples/indent.pl
1087 examples/subtest.t
80a7dd19 1088 t/00compile.t
18864292 1089 t/xxx-changes_updated.t
4f3a742d
DR
1090 ),
1091 ],
f266b743 1092 },
4f3a742d
DR
1093
1094 'Text::Abbrev' => {
5e96eee9 1095 'DISTRIBUTION' => 'FLORA/Text-Abbrev-1.02.tar.gz',
4f3a742d
DR
1096 'FILES' => q[dist/Text-Abbrev],
1097 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1098 },
1099
1100 'Text::Balanced' => {
03a97c81 1101 'DISTRIBUTION' => 'SHAY/Text-Balanced-2.03.tar.gz',
4f3a742d
DR
1102 'FILES' => q[cpan/Text-Balanced],
1103 'EXCLUDED' => [
1104 qw( t/97_meta.t
1105 t/98_pod.t
1106 t/99_pmv.t
1107 ),
1108 ],
4f3a742d
DR
1109 },
1110
1111 'Text::ParseWords' => {
a790e348 1112 'DISTRIBUTION' => 'CHORNY/Text-ParseWords-3.30.tar.gz',
4f3a742d 1113 'FILES' => q[cpan/Text-ParseWords],
4f3a742d 1114
a790e348
SH
1115 # Waiting to be merged upstream:
1116 # see https://github.com/chorny/Text-ParseWords/pull/6
f81a37f2
SH
1117 'CUSTOMIZED' => [
1118 qw( t/ParseWords.t
f81a37f2
SH
1119 ),
1120 ],
4f3a742d
DR
1121 },
1122
4f3a742d 1123 'Text-Tabs+Wrap' => {
83aea42c 1124 'DISTRIBUTION' => 'MUIR/modules/Text-Tabs+Wrap-2013.0523.tar.gz',
4f3a742d 1125 'FILES' => q[cpan/Text-Tabs],
e7b92d54
SH
1126 'EXCLUDED' => [
1127 qr/^lib\.old/,
1128 't/dnsparks.t', # see af6492bf9e
4f3a742d 1129 ],
e7b92d54
SH
1130 'MAP' => {
1131 '' => 'cpan/Text-Tabs/',
ab2a3ce2
SH
1132 'lib.modern/Text/Tabs.pm' => 'cpan/Text-Tabs/lib/Text/Tabs.pm',
1133 'lib.modern/Text/Wrap.pm' => 'cpan/Text-Tabs/lib/Text/Wrap.pm',
e7b92d54 1134 },
4f3a742d
DR
1135 },
1136
4e75700d
AC
1137 # Jerry Hedden does take patches that are applied to blead first, even
1138 # though that can be hard to discern from the Git history; so it's
1139 # correct for this (and Thread::Semaphore, threads, and threads::shared)
1140 # to be under dist/ rather than cpan/
4f3a742d 1141 'Thread::Queue' => {
4e75700d 1142 'DISTRIBUTION' => 'JDHEDDEN/Thread-Queue-3.05.tar.gz',
4f3a742d
DR
1143 'FILES' => q[dist/Thread-Queue],
1144 'EXCLUDED' => [
1fd4700e
JH
1145 qr{^examples/},
1146 qw( t/00_load.t
4f3a742d
DR
1147 t/99_pod.t
1148 t/test.pl
1149 ),
1150 ],
4f3a742d
DR
1151 },
1152
1153 'Thread::Semaphore' => {
4f3a742d
DR
1154 'DISTRIBUTION' => 'JDHEDDEN/Thread-Semaphore-2.12.tar.gz',
1155 'FILES' => q[dist/Thread-Semaphore],
1156 'EXCLUDED' => [
1157 qw( examples/semaphore.pl
1158 t/00_load.t
1159 t/99_pod.t
1160 t/test.pl
1161 ),
1162 ],
4f3a742d
DR
1163 },
1164
1165 'threads' => {
375a183d 1166 'DISTRIBUTION' => 'JDHEDDEN/threads-2.01.tar.gz',
4f3a742d
DR
1167 'FILES' => q[dist/threads],
1168 'EXCLUDED' => [
1169 qr{^examples/},
1170 qw( t/pod.t
1171 t/test.pl
1172 threads.h
1173 ),
1174 ],
4f3a742d
DR
1175 },
1176
1177 'threads::shared' => {
a5368aeb 1178 'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.46.tar.gz',
4f3a742d
DR
1179 'FILES' => q[dist/threads-shared],
1180 'EXCLUDED' => [
1181 qw( examples/class.pl
1182 shared.h
1183 t/pod.t
1184 t/test.pl
1185 ),
1186 ],
4f3a742d
DR
1187 },
1188
1189 'Tie::File' => {
4ac9c666 1190 'DISTRIBUTION' => 'TODDR/Tie-File-1.00.tar.gz',
c0504019 1191 'FILES' => q[dist/Tie-File],
4f3a742d
DR
1192 },
1193
4f3a742d 1194 'Tie::RefHash' => {
4f3a742d
DR
1195 'DISTRIBUTION' => 'FLORA/Tie-RefHash-1.39.tar.gz',
1196 'FILES' => q[cpan/Tie-RefHash],
4f3a742d
DR
1197 },
1198
1199 'Time::HiRes' => {
0f0eae2c 1200 'DISTRIBUTION' => 'ZEFRAM/Time-HiRes-1.9726.tar.gz',
4f3a742d 1201 'FILES' => q[cpan/Time-HiRes],
4f3a742d
DR
1202 },
1203
1204 'Time::Local' => {
62e824cf 1205 'DISTRIBUTION' => 'DROLSKY/Time-Local-1.2300.tar.gz',
4f3a742d
DR
1206 'FILES' => q[cpan/Time-Local],
1207 'EXCLUDED' => [
62e824cf 1208 qr{^t/release-.*\.t},
4f3a742d 1209 ],
4f3a742d
DR
1210 },
1211
1212 'Time::Piece' => {
12bbe8b8 1213 'DISTRIBUTION' => 'RJBS/Time-Piece-1.30.tar.gz',
4f3a742d 1214 'FILES' => q[cpan/Time-Piece],
4f3a742d
DR
1215 },
1216
1217 'Unicode::Collate' => {
b679d913 1218 'DISTRIBUTION' => 'SADAHIRO/Unicode-Collate-1.12.tar.gz',
4f3a742d
DR
1219 'FILES' => q[cpan/Unicode-Collate],
1220 'EXCLUDED' => [
1221 qr{N$},
1222 qr{^data/},
1223 qr{^gendata/},
1224 qw( disableXS
1225 enableXS
1226 mklocale
1227 ),
1228 ],
4f3a742d
DR
1229 },
1230
1231 'Unicode::Normalize' => {
95f3e8d2 1232 'DISTRIBUTION' => 'SADAHIRO/Unicode-Normalize-1.18.tar.gz',
4f3a742d 1233 'FILES' => q[cpan/Unicode-Normalize],
4f3a742d
DR
1234 },
1235
4f3a742d 1236 'version' => {
da891a41 1237 'DISTRIBUTION' => 'JPEACOCK/version-0.9909.tar.gz',
4fa93b19 1238 'FILES' => q[cpan/version vutil.c vutil.h vxs.inc],
4f3a742d 1239 'EXCLUDED' => [
df3ba8e7 1240 qr{^vutil/lib/},
c60b4fa6 1241 'vutil/Makefile.PL',
df3ba8e7
FC
1242 'vutil/ppport.h',
1243 'vutil/vxs.xs',
4f3a742d 1244 't/survey_locales',
4f3a742d 1245 ],
f81a37f2 1246
c872d591
SH
1247 # When adding the CPAN-distributed files for version.pm, it is necessary
1248 # to delete an entire block out of lib/version.pm, since that code is
1249 # only necessary with the CPAN release.
f81a37f2
SH
1250 'CUSTOMIZED' => [
1251 qw( lib/version.pm
f81a37f2 1252 ),
4637d007
SH
1253
1254 # Merged upstream, waiting for new CPAN release: see CPAN RT#92721
1255 qw( vutil.c
4637d007 1256 ),
f81a37f2
SH
1257 ],
1258
df3ba8e7 1259 'MAP' => {
4fa93b19
SH
1260 'vperl/' => 'cpan/version/lib/version/',
1261 'vutil/' => '',
df3ba8e7
FC
1262 '' => 'cpan/version/',
1263 },
4f3a742d
DR
1264 },
1265
4f3a742d 1266 'warnings' => {
099bebb1 1267 'FILES' => q[
4f3a742d 1268 lib/warnings
099bebb1
SH
1269 lib/warnings.{pm,t}
1270 regen/warnings.pl
4f3a742d 1271 t/lib/warnings
099bebb1 1272 ],
4f3a742d
DR
1273 },
1274
4f3a742d 1275 'Win32' => {
1ead70b6 1276 'DISTRIBUTION' => "JDB/Win32-0.51.tar.gz",
4f3a742d 1277 'FILES' => q[cpan/Win32],
4f3a742d
DR
1278 },
1279
1280 'Win32API::File' => {
e5240100 1281 'DISTRIBUTION' => 'CHORNY/Win32API-File-0.1202.tar.gz',
4f3a742d
DR
1282 'FILES' => q[cpan/Win32API-File],
1283 'EXCLUDED' => [
1284 qr{^ex/},
4f3a742d 1285 ],
9d20b1d3
SH
1286
1287 # Currently all EOL differences. Waiting for a new upstream release:
1288 # All the files in the GitHub repo have UNIX EOLs already.
1289 'CUSTOMIZED' => [
1290 qw( ExtUtils/Myconst2perl.pm
1291 Makefile.PL
1292 buffers.h
1293 cFile.h
1294 cFile.pc
1295 const2perl.h
1296 t/file.t
1297 t/tie.t
1298 typemap
1299 ),
1300 ],
4f3a742d
DR
1301 },
1302
4f3a742d 1303 'XSLoader' => {
681a49bf 1304 'DISTRIBUTION' => 'SAPER/XSLoader-0.16.tar.gz',
4f3a742d
DR
1305 'FILES' => q[dist/XSLoader],
1306 'EXCLUDED' => [
1307 qr{^eg/},
57f9caa0
SH
1308 qw( t/00-load.t
1309 t/01-api.t
1310 t/distchk.t
1311 t/pod.t
4f3a742d
DR
1312 t/podcover.t
1313 t/portfs.t
1314 ),
1315 'XSLoader.pm', # we use XSLoader_pm.PL
1316 ],
4f3a742d
DR
1317 },
1318
462ea751
DM
1319 # this pseudo-module represents all the files under ext/ and lib/
1320 # that aren't otherwise claimed. This means that the following two
1321 # commands will check that every file under ext/ and lib/ is
1322 # accounted for, and that there are no duplicates:
1323 #
1324 # perl Porting/Maintainers --checkmani lib ext
d8ada404 1325 # perl Porting/Maintainers --checkmani
462ea751 1326
4f3a742d 1327 '_PERLLIB' => {
2af3c4b9 1328 'FILES' => q[
09213599 1329 ext/B/
2af3c4b9
SH
1330 ext/Devel-Peek/
1331 ext/DynaLoader/
1332 ext/Errno/
7b4d95f7 1333 ext/ExtUtils-Miniperl/
2af3c4b9
SH
1334 ext/Fcntl/
1335 ext/File-DosGlob/
1336 ext/File-Find/
1337 ext/File-Glob/
1338 ext/FileCache/
1339 ext/GDBM_File/
1340 ext/Hash-Util-FieldHash/
1341 ext/Hash-Util/
1342 ext/I18N-Langinfo/
1343 ext/IPC-Open3/
1344 ext/NDBM_File/
1345 ext/ODBM_File/
1346 ext/Opcode/
1347 ext/POSIX/
1348 ext/PerlIO-encoding/
1349 ext/PerlIO-mmap/
1350 ext/PerlIO-scalar/
1351 ext/PerlIO-via/
1352 ext/Pod-Functions/
1353 ext/Pod-Html/
1354 ext/SDBM_File/
1355 ext/Sys-Hostname/
1356 ext/Tie-Hash-NamedCapture/
1357 ext/Tie-Memoize/
b3dcf775 1358 ext/VMS-DCLsym/
2af3c4b9 1359 ext/VMS-Filespec/
b3dcf775
SH
1360 ext/VMS-Stdio/
1361 ext/Win32CORE/
4f3a742d 1362 ext/XS-APItest/
2af3c4b9
SH
1363 ext/XS-Typemap/
1364 ext/arybase/
1365 ext/attributes/
1366 ext/mro/
1367 ext/re/
1368 lib/AnyDBM_File.{pm,t}
1369 lib/Benchmark.{pm,t}
38eca645 1370 lib/B/Deparse{.pm,.t,-*.t}
f3574cc6 1371 lib/B/Op_private.pm
4f3a742d 1372 lib/CORE.pod
2af3c4b9 1373 lib/Class/Struct.{pm,t}
4f3a742d
DR
1374 lib/Config.t
1375 lib/Config/Extensions.{pm,t}
1376 lib/DB.{pm,t}
2af3c4b9
SH
1377 lib/DBM_Filter.pm
1378 lib/DBM_Filter/
1379 lib/DirHandle.{pm,t}
1380 lib/English.{pm,t}
4f3a742d
DR
1381 lib/ExtUtils/Embed.pm
1382 lib/ExtUtils/XSSymSet.pm
1383 lib/ExtUtils/t/Embed.t
1384 lib/ExtUtils/typemap
2af3c4b9
SH
1385 lib/File/Basename.{pm,t}
1386 lib/File/Compare.{pm,t}
1387 lib/File/Copy.{pm,t}
1388 lib/File/stat{.pm,.t,-7896.t}
1389 lib/FileHandle.{pm,t}
1390 lib/FindBin.{pm,t}
1391 lib/Getopt/Std.{pm,t}
4f3a742d 1392 lib/Internals.t
4b6af431 1393 lib/meta_notation.{pm,t}
4f3a742d
DR
1394 lib/Net/hostent.{pm,t}
1395 lib/Net/netent.{pm,t}
1396 lib/Net/protoent.{pm,t}
1397 lib/Net/servent.{pm,t}
2af3c4b9 1398 lib/PerlIO.pm
4f3a742d
DR
1399 lib/Pod/t/InputObjects.t
1400 lib/Pod/t/Select.t
1401 lib/Pod/t/Usage.t
4f3a742d
DR
1402 lib/Pod/t/utils.t
1403 lib/SelectSaver.{pm,t}
1404 lib/Symbol.{pm,t}
1405 lib/Thread.{pm,t}
1406 lib/Tie/Array.pm
1407 lib/Tie/Array/
1408 lib/Tie/ExtraHash.t
1409 lib/Tie/Handle.pm
1410 lib/Tie/Handle/
2af3c4b9 1411 lib/Tie/Hash.{pm,t}
4f3a742d
DR
1412 lib/Tie/Scalar.{pm,t}
1413 lib/Tie/StdHandle.pm
1414 lib/Tie/SubstrHash.{pm,t}
1415 lib/Time/gmtime.{pm,t}
1416 lib/Time/localtime.{pm,t}
1417 lib/Time/tm.pm
1418 lib/UNIVERSAL.pm
1419 lib/Unicode/README
2af3c4b9 1420 lib/Unicode/UCD.{pm,t}
4f3a742d
DR
1421 lib/User/grent.{pm,t}
1422 lib/User/pwent.{pm,t}
2af3c4b9 1423 lib/_charnames.pm
4f3a742d
DR
1424 lib/blib.{pm,t}
1425 lib/bytes.{pm,t}
1426 lib/bytes_heavy.pl
1427 lib/charnames.{pm,t}
1428 lib/dbm_filter_util.pl
1429 lib/deprecate.pm
2af3c4b9 1430 lib/diagnostics.{pm,t}
4f3a742d
DR
1431 lib/dumpvar.{pl,t}
1432 lib/feature.{pm,t}
1433 lib/feature/
1434 lib/filetest.{pm,t}
1435 lib/h2ph.t
1436 lib/h2xs.t
1437 lib/integer.{pm,t}
1438 lib/less.{pm,t}
1439 lib/locale.{pm,t}
1440 lib/open.{pm,t}
1441 lib/overload/numbers.pm
1442 lib/overloading.{pm,t}
2af3c4b9 1443 lib/overload{.pm,.t,64.t}
4f3a742d
DR
1444 lib/perl5db.{pl,t}
1445 lib/perl5db/
2af3c4b9 1446 lib/sigtrap.{pm,t}
4f3a742d
DR
1447 lib/sort.{pm,t}
1448 lib/strict.{pm,t}
1449 lib/subs.{pm,t}
1450 lib/unicore/
1451 lib/utf8.{pm,t}
1452 lib/utf8_heavy.pl
1453 lib/vars{.pm,.t,_carp.t}
1454 lib/vmsish.{pm,t}
1455 ],
4f3a742d 1456 },
462ea751 1457);
b128a327 1458
97556ec3 1459# legacy CPAN flag
4f3a742d 1460for ( values %Modules ) {
97556ec3
GA
1461 $_->{CPAN} = !!$_->{DISTRIBUTION};
1462}
1463
099bebb1
SH
1464# legacy UPSTREAM flag
1465for ( keys %Modules ) {
1466 # Keep any existing UPSTREAM flag so that "overrides" can be applied
1467 next if exists $Modules{$_}{UPSTREAM};
1468
1469 if ($_ eq '_PERLLIB' or $Modules{$_}{FILES} =~ m{^\s*(?:dist|ext|lib)/}) {
1470 $Modules{$_}{UPSTREAM} = 'blead';
1471 }
1472 elsif ($Modules{$_}{FILES} =~ m{^\s*cpan/}) {
1473 $Modules{$_}{UPSTREAM} = 'cpan';
1474 }
1475 else {
1476 warn "Unexpected location of FILES for module $_: $Modules{$_}{FILES}";
1477 }
1478}
1479
d350de41 1480# legacy MAINTAINER field
099bebb1 1481for ( keys %Modules ) {
b3dcf775 1482 # Keep any existing MAINTAINER flag so that "overrides" can be applied
099bebb1
SH
1483 next if exists $Modules{$_}{MAINTAINER};
1484
1485 if ($Modules{$_}{UPSTREAM} eq 'blead') {
1486 $Modules{$_}{MAINTAINER} = 'P5P';
872818ae 1487 $Maintainers{P5P} = 'perl5-porters <perl5-porters@perl.org>';
d350de41 1488 }
099bebb1
SH
1489 elsif (exists $Modules{$_}{DISTRIBUTION}) {
1490 (my $pause_id = $Modules{$_}{DISTRIBUTION}) =~ s{/.*$}{};
1491 $Modules{$_}{MAINTAINER} = $pause_id;
d350de41
SH
1492 $Maintainers{$pause_id} = "<$pause_id\@cpan.org>";
1493 }
099bebb1
SH
1494 else {
1495 warn "No DISTRIBUTION for non-blead module $_";
1496 }
d350de41
SH
1497}
1498
b128a327 14991;