This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
Exclude new vutil/Makefile.PL in cpan/version/
[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(
19 .cvsignore .dualLivedDiffConfig .gitignore
20 ANNOUNCE Announce Artistic AUTHORS BENCHMARK BUGS Build.PL
d4e90f16 21 CHANGELOG ChangeLog Changelog CHANGES Changes CONTRIBUTING COPYING Copying
01b177dd
CBW
22 cpanfile CREDITS dist.ini GOALS HISTORY INSTALL INSTALL.SKIP LICENSE
23 Makefile.PL MANIFEST MANIFEST.SKIP META.json META.yml MYMETA.json
24 MYMETA.yml NEW NOTES perlcritic.rc ppport.h README README.PATCHING
6dab8563 25 SIGNATURE THANKS TODO Todo VERSION WHATSNEW .perlcriticrc.perltidyrc
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
501bd44a 51# value, e.g. 'BINGOS' in the case of 'BINGOS/Archive-Tar-1.96.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' => {
501bd44a 122 'DISTRIBUTION' => 'BINGOS/Archive-Tar-1.96.tar.gz',
4f3a742d 123 'FILES' => q[cpan/Archive-Tar],
4f3a742d
DR
124 'BUGS' => 'bug-archive-tar@rt.cpan.org',
125 },
126
127 'Attribute::Handlers' => {
e9742164 128 'DISTRIBUTION' => 'SMUELLER/Attribute-Handlers-0.93.tar.gz',
4f3a742d 129 'FILES' => q[dist/Attribute-Handlers],
4f3a742d
DR
130 },
131
4f3a742d 132 'autodie' => {
c7e47358 133 'DISTRIBUTION' => 'PJF/autodie-2.23.tar.gz',
4f3a742d
DR
134 'FILES' => q[cpan/autodie],
135 'EXCLUDED' => [
273225d4 136 qr{benchmarks},
4f3a742d
DR
137 # All these tests depend upon external
138 # modules that don't exist when we're
139 # building the core. Hence, they can
140 # never run, and should not be merged.
ff4ad1c0
SH
141 qw( t/author-critic.t
142 t/boilerplate.t
4f3a742d
DR
143 t/critic.t
144 t/fork.t
145 t/kwalitee.t
146 t/lex58.t
147 t/pod-coverage.t
148 t/pod.t
273225d4
CBW
149 t/release-pod-coverage.t
150 t/release-pod-syntax.t
4f3a742d
DR
151 t/socket.t
152 t/system.t
153 )
154 ],
a1a6b6b3 155 'CUSTOMIZED' => [
dd9a180e
CB
156 # Waiting to be merged upstream: see CPAN RT#87237
157 qw( t/utf8_open.t ),
a1a6b6b3 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' => {
adac38df 168 'DISTRIBUTION' => 'FLORA/autouse-1.07.tar.gz',
4f3a742d
DR
169 'FILES' => q[dist/autouse],
170 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
171 },
172
4f3a742d 173 'B::Debug' => {
b8e5d789 174 'DISTRIBUTION' => 'RURBAN/B-Debug-1.19.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' => {
168d28a2 185 'DISTRIBUTION' => 'FLORA/bignum-0.32.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' => {
cc24d4fc 196 'DISTRIBUTION' => 'ZEFRAM/Carp-1.32.tar.gz',
4f3a742d 197 'FILES' => q[dist/Carp],
4f3a742d
DR
198 },
199
200 'CGI' => {
d5d60e0a 201 'DISTRIBUTION' => 'MARKSTOS/CGI.pm-3.64.tar.gz',
4f3a742d
DR
202 'FILES' => q[cpan/CGI],
203 'EXCLUDED' => [
84c82da4 204 qr{^examples/},
a506842e 205 qw( cgi_docs.html
4f3a742d
DR
206 t/gen-tests/gen-start-end-tags.pl
207 t/fast.t
208 ),
209 ],
ee3ee04b 210 'DEPRECATED' => '5.019007',
4f3a742d
DR
211 },
212
4f3a742d 213 'Compress::Raw::Bzip2' => {
fdaa82e4 214 'DISTRIBUTION' => 'PMQS/Compress-Raw-Bzip2-2.064.tar.gz',
4f3a742d
DR
215 'FILES' => q[cpan/Compress-Raw-Bzip2],
216 'EXCLUDED' => [
217 qr{^t/Test/},
218 'bzip2-src/bzip2-cpp.patch',
219 ],
4f3a742d
DR
220 },
221
222 'Compress::Raw::Zlib' => {
a69492f5 223 'DISTRIBUTION' => 'PMQS/Compress-Raw-Zlib-2.065.tar.gz',
4f3a742d
DR
224
225 'FILES' => q[cpan/Compress-Raw-Zlib],
226 'EXCLUDED' => [
84c82da4 227 qr{^examples/},
4f3a742d
DR
228 qr{^t/Test/},
229 qw( t/000prereq.t
230 t/99pod.t
231 ),
232 ],
4f3a742d
DR
233 },
234
4b07058c 235 'Config::Perl::V' => {
89e01640 236 'DISTRIBUTION' => 'HMBRAND/Config-Perl-V-0.19.tgz',
4b07058c 237 'FILES' => q[cpan/Config-Perl-V],
1fe0c842 238 'EXCLUDED' => ['examples/show-v.pl'],
cd99f861
SH
239 # Waiting to be merged upstream: see CPAN RT#92534
240 'CUSTOMIZED' => ['t/20_plv510.t', 't/21_plv518.t'],
4b07058c
RS
241 },
242
4f3a742d 243 'constant' => {
e2943784 244 'DISTRIBUTION' => 'SAPER/constant-1.27.tar.gz',
4f3a742d
DR
245 'FILES' => q[dist/constant],
246 'EXCLUDED' => [
247 qw( t/00-load.t
248 t/more-tests.t
249 t/pod-coverage.t
250 t/pod.t
251 eg/synopsis.pl
252 ),
253 ],
4f3a742d
DR
254 },
255
256 'CPAN' => {
bfae5bde 257 'DISTRIBUTION' => 'ANDK/CPAN-2.03-TRIAL.tar.gz',
4f3a742d
DR
258 'FILES' => q[cpan/CPAN],
259 'EXCLUDED' => [
260 qr{^distroprefs/},
261 qr{^inc/Test/},
262 qr{^t/CPAN/authors/},
263 qw( lib/CPAN/Admin.pm
6156383d 264 scripts/cpan-mirrors
bfae5bde 265 PAUSE2015.pub
4f3a742d
DR
266 SlayMakefile
267 t/00signature.t
268 t/04clean_load.t
269 t/12cpan.t
270 t/13tarzip.t
271 t/14forkbomb.t
272 t/30shell.coverage
273 t/30shell.t
274 t/31sessions.t
275 t/41distribution.t
276 t/42distroprefs.t
6156383d 277 t/44cpanmeta.t
4f3a742d
DR
278 t/43distroprefspref.t
279 t/50pod.t
280 t/51pod.t
281 t/52podcover.t
282 t/60credentials.t
283 t/70_critic.t
bfae5bde 284 t/71_minimumversion.t
4f3a742d
DR
285 t/CPAN/CpanTestDummies-1.55.pm
286 t/CPAN/TestConfig.pm
287 t/CPAN/TestMirroredBy
288 t/CPAN/TestPatch.txt
289 t/CPAN/modules/02packages.details.txt
290 t/CPAN/modules/03modlist.data
6156383d 291 t/data/META-dynamic.json
4f3a742d 292 t/data/META-dynamic.yml
6156383d 293 t/data/META-static.json
4f3a742d 294 t/data/META-static.yml
6156383d
SH
295 t/data/MYMETA.json
296 t/data/MYMETA.yml
4f3a742d
DR
297 t/local_utils.pm
298 t/perlcriticrc
299 t/yaml_code.yml
300 ),
301 ],
4f3a742d
DR
302 },
303
278337cd
CBW
304 # Note: When updating CPAN-Meta the META.* files will need to be regenerated
305 # perl -Icpan/CPAN-Meta/lib Porting/makemeta
4f3a742d 306 'CPAN::Meta' => {
2cb1ad0a 307 'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-2.133380.tar.gz',
4f3a742d
DR
308 'FILES' => q[cpan/CPAN-Meta],
309 'EXCLUDED' => [
ecaff076 310 qw(t/00-compile.t),
7f6e6ca2 311 qw[t/00-report-prereqs.t],
229563a9 312 qr{t/README-data.txt},
4f3a742d
DR
313 qr{^xt},
314 qr{^history},
315 ],
4f3a742d
DR
316 },
317
b6ae0ea7 318 'CPAN::Meta::Requirements' => {
56284aa9 319 'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-Requirements-2.125.tar.gz',
b6ae0ea7
CBW
320 'FILES' => q[cpan/CPAN-Meta-Requirements],
321 'EXCLUDED' => [
322 qw(t/00-compile.t),
c4814040 323 qw(t/00-report-prereqs.t),
b6ae0ea7 324 qr{^xt},
b6ae0ea7 325 ],
b6ae0ea7
CBW
326 },
327
4f3a742d 328 'CPAN::Meta::YAML' => {
9c5cc6d5 329 'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-YAML-0.010.tar.gz',
4f3a742d
DR
330 'FILES' => q[cpan/CPAN-Meta-YAML],
331 'EXCLUDED' => [
b3100a1d 332 't/00-compile.t',
4f3a742d
DR
333 't/04_scalar.t', # requires YAML.pm
334 qr{^xt},
335 ],
4f3a742d
DR
336 },
337
338 'Data::Dumper' => {
0fcd5a59 339 'DISTRIBUTION' => 'SMUELLER/Data-Dumper-2.145.tar.gz',
4f3a742d 340 'FILES' => q[dist/Data-Dumper],
4f3a742d
DR
341 },
342
343 'DB_File' => {
16f3356e 344 'DISTRIBUTION' => 'PMQS/DB_File-1.831.tar.gz',
4f3a742d
DR
345 'FILES' => q[cpan/DB_File],
346 'EXCLUDED' => [
347 qr{^patches/},
348 qw( t/pod.t
349 fallback.h
350 fallback.xs
351 ),
352 ],
4f3a742d
DR
353 },
354
4f3a742d 355 'Devel::PPPort' => {
c74cf62f 356 'DISTRIBUTION' => 'MHX/Devel-PPPort-3.21.tar.gz',
099bebb1
SH
357 # RJBS has asked MHX to have UPSTREAM be 'blead'
358 # (i.e. move this from cpan/ to dist/)
4f3a742d 359 'FILES' => q[cpan/Devel-PPPort],
84c82da4
SH
360 'EXCLUDED' => [
361 'PPPort.pm', # we use PPPort_pm.PL instead
362 'README.md',
363 ]
4f3a742d
DR
364 },
365
97b1d6e6 366 'Devel::SelfStubber' => {
97b1d6e6
SH
367 'DISTRIBUTION' => 'FLORA/Devel-SelfStubber-1.05.tar.gz',
368 'FILES' => q[dist/Devel-SelfStubber],
369 'EXCLUDED' => [qr{^t/release-.*\.t}],
97b1d6e6
SH
370 },
371
4f3a742d 372 'Digest' => {
4f3a742d
DR
373 'DISTRIBUTION' => 'GAAS/Digest-1.17.tar.gz',
374 'FILES' => q[cpan/Digest],
375 'EXCLUDED' => ['digest-bench'],
4f3a742d
DR
376 },
377
378 'Digest::MD5' => {
aeb2a38c 379 'DISTRIBUTION' => 'GAAS/Digest-MD5-2.53.tar.gz',
4f3a742d
DR
380 'FILES' => q[cpan/Digest-MD5],
381 'EXCLUDED' => ['rfc1321.txt'],
4457d8d1 382 # Waiting to be merged upstream: see CPAN RT#89612
8db65552 383 'CUSTOMIZED' => ['t/files.t'],
4f3a742d
DR
384 },
385
386 'Digest::SHA' => {
e80e3195 387 'DISTRIBUTION' => 'MSHELOR/Digest-SHA-5.86.tar.gz',
4f3a742d
DR
388 'FILES' => q[cpan/Digest-SHA],
389 'EXCLUDED' => [
390 qw( t/pod.t
391 t/podcover.t
392 examples/dups
393 ),
394 ],
4f3a742d
DR
395 },
396
4f3a742d 397 'Dumpvalue' => {
f6e46c4d 398 'DISTRIBUTION' => 'FLORA/Dumpvalue-1.17.tar.gz',
4f3a742d
DR
399 'FILES' => q[dist/Dumpvalue],
400 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
401 },
402
4f3a742d 403 'Encode' => {
3cd3edd2 404 'DISTRIBUTION' => 'DANKOGAI/Encode-2.57.tar.gz',
4f3a742d 405 'FILES' => q[cpan/Encode],
4f3a742d
DR
406 },
407
408 'encoding::warnings' => {
4f3a742d
DR
409 'DISTRIBUTION' => 'AUDREYT/encoding-warnings-0.11.tar.gz',
410 'FILES' => q[cpan/encoding-warnings],
411 'EXCLUDED' => [
412 qr{^inc/Module/},
94c85d8e 413 qw(t/0-signature.t),
4f3a742d 414 ],
4f3a742d
DR
415 },
416
4f3a742d 417 'Env' => {
126fc07f 418 'DISTRIBUTION' => 'FLORA/Env-1.04.tar.gz',
4f3a742d
DR
419 'FILES' => q[dist/Env],
420 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
421 },
422
4f3a742d 423 'Exporter' => {
b5de49e5 424 'DISTRIBUTION' => 'TODDR/Exporter-5.68.tar.gz',
3110a055 425 'FILES' => q[dist/Exporter],
4f3a742d
DR
426 'EXCLUDED' => [
427 qw( t/pod.t
428 t/use.t
429 ),
430 ],
4f3a742d
DR
431 },
432
433 'ExtUtils::CBuilder' => {
a0e78e9f 434 'DISTRIBUTION' => 'AMBS/ExtUtils/ExtUtils-CBuilder-0.280212.tar.gz',
4f3a742d 435 'FILES' => q[dist/ExtUtils-CBuilder],
a0e78e9f
SH
436 'EXCLUDED' => [
437 qw(README.mkdn),
438 qr{^xt},
439 ],
4f3a742d
DR
440 },
441
442 'ExtUtils::Command' => {
044aa601 443 'DISTRIBUTION' => 'FLORA/ExtUtils-Command-1.18.tar.gz',
4f3a742d
DR
444 'FILES' => q[dist/ExtUtils-Command],
445 'EXCLUDED' => [qr{^t/release-}],
4f3a742d
DR
446 },
447
448 'ExtUtils::Constant' => {
4f3a742d
DR
449
450 # Nick has confirmed that while we have diverged from CPAN,
451 # this package isn't primarily maintained in core
452 # Another release will happen "Sometime"
453 'DISTRIBUTION' => '', #'NWCLARK/ExtUtils-Constant-0.16.tar.gz',
454 'FILES' => q[cpan/ExtUtils-Constant],
455 'EXCLUDED' => [
456 qw( lib/ExtUtils/Constant/Aaargh56Hash.pm
457 examples/perl_keyword.pl
458 examples/perl_regcomp_posix_keyword.pl
459 ),
460 ],
4f3a742d
DR
461 },
462
463 'ExtUtils::Install' => {
4f3a742d
DR
464 'DISTRIBUTION' => 'YVES/ExtUtils-Install-1.54.tar.gz',
465 'FILES' => q[dist/ExtUtils-Install],
466 'EXCLUDED' => [
467 qw( t/lib/Test/Builder.pm
468 t/lib/Test/Builder/Module.pm
469 t/lib/Test/More.pm
470 t/lib/Test/Simple.pm
471 t/pod-coverage.t
472 t/pod.t
473 ),
474 ],
4f3a742d
DR
475 },
476
477 'ExtUtils::MakeMaker' => {
b33b7abd 478 'DISTRIBUTION' => 'BINGOS/ExtUtils-MakeMaker-6.88.tar.gz',
4f3a742d
DR
479 'FILES' => q[cpan/ExtUtils-MakeMaker],
480 'EXCLUDED' => [
481 qr{^t/lib/Test/},
482 qr{^(bundled|my)/},
483 qr{^t/Liblist_Kid.t},
484 qr{^t/liblist/},
78fd4358 485 qr{^\.perlcriticrc},
84c82da4
SH
486 'PATCHING',
487 'README.packaging',
4f3a742d 488 ],
4f3a742d
DR
489 },
490
491 'ExtUtils::Manifest' => {
6db8f88e 492 'DISTRIBUTION' => 'FLORA/ExtUtils-Manifest-1.63.tar.gz',
4f3a742d
DR
493 'FILES' => q[dist/ExtUtils-Manifest],
494 'EXCLUDED' => [qr(t/release-.*\.t)],
4f3a742d
DR
495 },
496
497 'ExtUtils::ParseXS' => {
c0bf20e0 498 'DISTRIBUTION' => 'SMUELLER/ExtUtils-ParseXS-3.22.tar.gz',
4f3a742d 499 'FILES' => q[dist/ExtUtils-ParseXS],
4f3a742d
DR
500 },
501
4f3a742d 502 'File::Fetch' => {
9d56ca6f 503 'DISTRIBUTION' => 'BINGOS/File-Fetch-0.48.tar.gz',
4f3a742d 504 'FILES' => q[cpan/File-Fetch],
4f3a742d
DR
505 },
506
4f3a742d 507 'File::Path' => {
8f65b4cd 508 'DISTRIBUTION' => 'DLAND/File-Path-2.09.tar.gz',
4f3a742d
DR
509 'FILES' => q[cpan/File-Path],
510 'EXCLUDED' => [
511 qw( eg/setup-extra-tests
512 t/pod.t
513 )
514 ],
515 'MAP' => {
516 '' => 'cpan/File-Path/lib/File/',
517 't/' => 'cpan/File-Path/t/',
518 },
4f3a742d
DR
519 },
520
4f3a742d 521 'File::Temp' => {
3d5f905f 522 'DISTRIBUTION' => 'DAGOLDEN/File-Temp-0.2304.tar.gz',
4f3a742d
DR
523 'FILES' => q[cpan/File-Temp],
524 'EXCLUDED' => [
525 qw( misc/benchmark.pl
526 misc/results.txt
527 ),
814e893f
CBW
528 qw[t/00-report-prereqs.t],
529 qr{^xt},
4f3a742d 530 ],
4f3a742d
DR
531 },
532
4f3a742d 533 'Filter::Simple' => {
c3958279 534 'DISTRIBUTION' => 'SMUELLER/Filter-Simple-0.88.tar.gz',
4f3a742d
DR
535 'FILES' => q[dist/Filter-Simple],
536 'EXCLUDED' => [
4f3a742d
DR
537 qr{^demo/}
538 ],
4f3a742d
DR
539 },
540
541 'Filter::Util::Call' => {
d8b87a9b 542 'DISTRIBUTION' => 'RURBAN/Filter-1.49.tar.gz',
4f3a742d
DR
543 'FILES' => q[cpan/Filter-Util-Call
544 pod/perlfilter.pod
545 ],
546 'EXCLUDED' => [
547 qr{^decrypt/},
548 qr{^examples/},
549 qr{^Exec/},
550 qr{^lib/Filter/},
551 qr{^tee/},
552 qw( Call/Makefile.PL
553 Call/ppport.h
554 Call/typemap
555 mytest
556 t/cpp.t
557 t/decrypt.t
558 t/exec.t
559 t/order.t
4f3a742d
DR
560 t/sh.t
561 t/tee.t
533d93cc
SH
562 t/z_kwalitee.t
563 t/z_meta.t
564 t/z_perl_minimum_version.t
565 t/z_pod-coverage.t
566 t/z_pod.t
4f3a742d
DR
567 ),
568 ],
569 'MAP' => {
570 'Call/' => 'cpan/Filter-Util-Call/',
571 'filter-util.pl' => 'cpan/Filter-Util-Call/filter-util.pl',
572 'perlfilter.pod' => 'pod/perlfilter.pod',
573 '' => 'cpan/Filter-Util-Call/',
574 },
4f3a742d
DR
575 },
576
4f3a742d 577 'Getopt::Long' => {
7867c822 578 'DISTRIBUTION' => 'JV/Getopt-Long-2.42.tar.gz',
4f3a742d
DR
579 'FILES' => q[cpan/Getopt-Long],
580 'EXCLUDED' => [
581 qr{^examples/},
582 qw( perl-Getopt-Long.spec
583 lib/newgetopt.pl
974d5816 584 t/gol-compat.t
4f3a742d
DR
585 ),
586 ],
4f3a742d
DR
587 },
588
4f3a742d 589 'HTTP::Tiny' => {
1818d3ca 590 'DISTRIBUTION' => 'DAGOLDEN/HTTP-Tiny-0.039.tar.gz',
4f3a742d
DR
591 'FILES' => q[cpan/HTTP-Tiny],
592 'EXCLUDED' => [
4403b774 593 't/00-compile.t',
fcfb9f49 594 't/00-report-prereqs.t',
4f3a742d 595 't/200_live.t',
44347bc3 596 't/200_live_local_ip.t',
fcfb9f49 597 't/210_live_ssl.t',
4f3a742d
DR
598 qr/^eg/,
599 qr/^xt/
600 ],
4f3a742d
DR
601 },
602
603 'I18N::Collate' => {
4f3a742d
DR
604 'DISTRIBUTION' => 'FLORA/I18N-Collate-1.02.tar.gz',
605 'FILES' => q[dist/I18N-Collate],
606 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
607 },
608
4f3a742d 609 'I18N::LangTags' => {
4f3a742d 610 'FILES' => q[dist/I18N-LangTags],
4f3a742d
DR
611 },
612
613 'if' => {
4f3a742d
DR
614 'DISTRIBUTION' => 'ILYAZ/modules/if-0.0601.tar.gz',
615 'FILES' => q[dist/if],
4f3a742d
DR
616 },
617
618 'IO' => {
4f3a742d
DR
619 'DISTRIBUTION' => 'GBARR/IO-1.25.tar.gz',
620 'FILES' => q[dist/IO/],
621 'EXCLUDED' => ['t/test.pl'],
4f3a742d
DR
622 },
623
624 'IO-Compress' => {
149b3664 625 'DISTRIBUTION' => 'PMQS/IO-Compress-2.064.tar.gz',
4f3a742d 626 'FILES' => q[cpan/IO-Compress],
84c82da4
SH
627 'EXCLUDED' => [
628 qr{^examples/},
629 qr{^t/Test/},
630 't/010examples-bzip2.t',
631 't/010examples-zlib.t',
632 't/cz-05examples.t',
633 ],
4f3a742d
DR
634 },
635
636 'IO::Zlib' => {
4f3a742d
DR
637 'DISTRIBUTION' => 'TOMHUGHES/IO-Zlib-1.10.tar.gz',
638 'FILES' => q[cpan/IO-Zlib],
4f3a742d
DR
639 },
640
641 'IPC::Cmd' => {
9c213c25 642 'DISTRIBUTION' => 'BINGOS/IPC-Cmd-0.92.tar.gz',
4f3a742d 643 'FILES' => q[cpan/IPC-Cmd],
4f3a742d
DR
644 },
645
4f3a742d 646 'IPC::SysV' => {
dd0df890 647 'DISTRIBUTION' => 'MHX/IPC-SysV-2.04.tar.gz',
4f3a742d
DR
648 'FILES' => q[cpan/IPC-SysV],
649 'EXCLUDED' => [
650 qw( const-c.inc
651 const-xs.inc
652 ),
653 ],
4f3a742d
DR
654 },
655
656 'JSON::PP' => {
be08498a 657 'DISTRIBUTION' => 'MAKAMAKA/JSON-PP-2.27203.tar.gz',
4f3a742d 658 'FILES' => q[cpan/JSON-PP],
4f3a742d
DR
659 },
660
661 'lib' => {
4f3a742d
DR
662 'DISTRIBUTION' => 'SMUELLER/lib-0.63.tar.gz',
663 'FILES' => q[dist/lib/],
664 'EXCLUDED' => [
665 qw( forPAUSE/lib.pm
666 t/00pod.t
667 ),
668 ],
4f3a742d
DR
669 },
670
671 'libnet' => {
0d0bc230 672 'DISTRIBUTION' => 'SHAY/libnet-1.24.tar.gz',
4f3a742d
DR
673 'FILES' => q[cpan/libnet],
674 'EXCLUDED' => [
675 qw( Configure
676 install-nomake
4f3a742d 677 ),
84c82da4 678 qr(^demos/),
4f3a742d 679 ],
f81a37f2
SH
680 # Customized for perl since we cannot use either an auto-generated
681 # script or the version in the CPAN distro.
4f3a742d 682 'CUSTOMIZED' => ['Makefile.PL'],
4f3a742d
DR
683 },
684
685 'Locale-Codes' => {
e744ae18 686 'DISTRIBUTION' => 'SBECK/Locale-Codes-3.29.tar.gz',
4f3a742d
DR
687 'FILES' => q[cpan/Locale-Codes],
688 'EXCLUDED' => [
84c82da4
SH
689 qw( README.first
690 t/pod_coverage.t
4f3a742d
DR
691 t/pod.t),
692 qr{^t/runtests},
693 qr{^t/runtests\.bat},
694 qr{^internal/},
695 qr{^examples/},
696 ],
4f3a742d
DR
697 },
698
699 'Locale::Maketext' => {
f318c24d 700 'DISTRIBUTION' => 'TODDR/Locale-Maketext-1.23.tar.gz',
4f3a742d
DR
701 'FILES' => q[dist/Locale-Maketext],
702 'EXCLUDED' => [
703 qw(
704 perlcriticrc
705 t/00_load.t
706 t/pod.t
707 ),
708 ],
4f3a742d
DR
709 },
710
711 'Locale::Maketext::Simple' => {
4f3a742d
DR
712 'DISTRIBUTION' => 'JESSE/Locale-Maketext-Simple-0.21.tar.gz',
713 'FILES' => q[cpan/Locale-Maketext-Simple],
4f3a742d
DR
714 },
715
4f3a742d 716 'Math::BigInt' => {
4f3a742d
DR
717 'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-1.997.tar.gz',
718 'FILES' => q[dist/Math-BigInt],
719 'EXCLUDED' => [
720 qr{^inc/},
721 qr{^examples/},
722 qw( t/00sig.t
723 t/01load.t
724 t/02pod.t
725 t/03podcov.t
726 ),
727 ],
4f3a742d
DR
728 },
729
730 'Math::BigInt::FastCalc' => {
4f3a742d
DR
731 'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-FastCalc-0.30.tar.gz',
732 'FILES' => q[dist/Math-BigInt-FastCalc],
733 'EXCLUDED' => [
734 qr{^inc/},
735 qw( t/00sig.t
736 t/01load.t
737 t/02pod.t
738 t/03podcov.t
739 ),
740
741 # instead we use the versions of these test
742 # files that come with Math::BigInt:
743 qw( t/bigfltpm.inc
744 t/bigfltpm.t
745 t/bigintpm.inc
746 t/bigintpm.t
747 t/mbimbf.inc
748 t/mbimbf.t
749 ),
750 ],
4f3a742d
DR
751 },
752
753 'Math::BigRat' => {
4f3a742d
DR
754 'DISTRIBUTION' => 'PJACKLAM/Math-BigRat-0.2602.tar.gz',
755 'FILES' => q[dist/Math-BigRat],
756 'EXCLUDED' => [
757 qr{^inc/},
758 qw( t/00sig.t
759 t/01load.t
760 t/02pod.t
761 t/03podcov.t
762 ),
763 ],
4f3a742d
DR
764 },
765
766 'Math::Complex' => {
04ae1553 767 'DISTRIBUTION' => 'ZEFRAM/Math-Complex-1.59.tar.gz',
4f3a742d
DR
768 'FILES' => q[cpan/Math-Complex],
769 'EXCLUDED' => [
770 qw( t/pod.t
771 t/pod-coverage.t
772 ),
773 ],
4f3a742d
DR
774 },
775
776 'Memoize' => {
8114efa0 777 'DISTRIBUTION' => 'MJD/Memoize-1.03.tgz',
4f3a742d
DR
778 'FILES' => q[cpan/Memoize],
779 'EXCLUDED' => ['article.html'],
4f3a742d
DR
780 },
781
782 'MIME::Base64' => {
43f93048 783 'DISTRIBUTION' => 'GAAS/MIME-Base64-3.14.tar.gz',
4f3a742d
DR
784 'FILES' => q[cpan/MIME-Base64],
785 'EXCLUDED' => ['t/bad-sv.t'],
4f3a742d
DR
786 },
787
788 #
789 # To update Module-Build in blead see
236cbe8d 790 # https://github.com/Perl-Toolchain-Gang/Module-Build/blob/master/devtools/patching_blead.pod
4f3a742d 791 #
462ea751 792
4f3a742d 793 'Module::Build' => {
71213e49 794 'DISTRIBUTION' => 'LEONT/Module-Build-0.4204.tar.gz',
4f3a742d
DR
795 'FILES' => q[cpan/Module-Build],
796 'EXCLUDED' => [
797 qw( t/par.t
798 t/signature.t
799 ),
800 qr{^contrib/},
4f3a742d
DR
801 qr{^inc},
802 ],
f81a37f2 803 # Generated file, not part of the CPAN distro:
fae38280 804 'CUSTOMIZED' => ['lib/Module/Build/ConfigData.pm'],
47369ecd 805 'DEPRECATED' => '5.019000',
4f3a742d
DR
806 },
807
808 'Module::CoreList' => {
056e7cc2 809 'DISTRIBUTION' => 'BINGOS/Module-CoreList-3.04.tar.gz',
4f3a742d 810 'FILES' => q[dist/Module-CoreList],
4f3a742d
DR
811 },
812
813 'Module::Load' => {
2cf6a769 814 'DISTRIBUTION' => 'BINGOS/Module-Load-0.30.tar.gz',
4f3a742d 815 'FILES' => q[cpan/Module-Load],
4f3a742d
DR
816 },
817
818 'Module::Load::Conditional' => {
05553066 819 'DISTRIBUTION' => 'BINGOS/Module-Load-Conditional-0.62.tar.gz',
4f3a742d 820 'FILES' => q[cpan/Module-Load-Conditional],
4f3a742d
DR
821 },
822
823 'Module::Loaded' => {
4f3a742d
DR
824 'DISTRIBUTION' => 'BINGOS/Module-Loaded-0.08.tar.gz',
825 'FILES' => q[cpan/Module-Loaded],
4f3a742d
DR
826 },
827
828 'Module::Metadata' => {
d477c82b 829 'DISTRIBUTION' => 'ETHER/Module-Metadata-1.000019.tar.gz',
4f3a742d
DR
830 'FILES' => q[cpan/Module-Metadata],
831 'EXCLUDED' => [
832 qr{^maint},
833 qr{^xt},
834 ],
4f3a742d
DR
835 },
836
4f3a742d 837 'Net::Ping' => {
4e0aac35 838 'DISTRIBUTION' => 'SMPETERS/Net-Ping-2.41.tar.gz',
4f3a742d 839 'FILES' => q[dist/Net-Ping],
4e0aac35
MM
840 'EXCLUDED' => [
841 qr{^.travis.yml},
842 qr{^README.md},
843 ],
4f3a742d
DR
844 },
845
846 'NEXT' => {
4f3a742d
DR
847 'DISTRIBUTION' => 'FLORA/NEXT-0.65.tar.gz',
848 'FILES' => q[cpan/NEXT],
849 'EXCLUDED' => [qr{^demo/}],
4f3a742d
DR
850 },
851
4f3a742d 852 'Package::Constants' => {
348e937b 853 'DISTRIBUTION' => 'BINGOS/Package-Constants-0.04.tar.gz',
4f3a742d 854 'FILES' => q[cpan/Package-Constants],
23b56f29 855 'DEPRECATED' => '5.019006',
4f3a742d
DR
856 },
857
858 'Params::Check' => {
8b21fa03 859 'DISTRIBUTION' => 'BINGOS/Params-Check-0.38.tar.gz',
4f3a742d 860 'FILES' => q[cpan/Params-Check],
4f3a742d
DR
861 },
862
863 'parent' => {
11100026 864 'DISTRIBUTION' => 'CORION/parent-0.228.tar.gz',
4f3a742d 865 'FILES' => q[cpan/parent],
4f3a742d
DR
866 },
867
868 'Parse::CPAN::Meta' => {
7d7e3722 869 'DISTRIBUTION' => 'DAGOLDEN/Parse-CPAN-Meta-1.4409.tar.gz',
4f3a742d 870 'FILES' => q[cpan/Parse-CPAN-Meta],
342e4710
CBW
871 'EXCLUDED' => [
872 qw(t/00-compile.t),
873 qw[t/00-report-prereqs.t],
874 qr{^xt},
875 ],
4f3a742d
DR
876 },
877
878 'PathTools' => {
061a8e13 879 'DISTRIBUTION' => 'SMUELLER/PathTools-3.40.tar.gz',
cb8c8458 880 'FILES' => q[dist/PathTools],
4f3a742d 881 'EXCLUDED' => [qr{^t/lib/Test/}],
4f3a742d
DR
882 },
883
97b1d6e6 884 'Perl::OSType' => {
6f974f68 885 'DISTRIBUTION' => 'DAGOLDEN/Perl-OSType-1.007.tar.gz',
97b1d6e6 886 'FILES' => q[cpan/Perl-OSType],
765955c0 887 'EXCLUDED' => [qw(tidyall.ini), qr/^xt/, qr{^t/00-}],
97b1d6e6
SH
888 },
889
97b1d6e6 890 'perlfaq' => {
97b1d6e6
SH
891 'DISTRIBUTION' => 'LLAP/perlfaq-5.0150044.tar.gz',
892 'FILES' => q[cpan/perlfaq],
893 'EXCLUDED' => [
894 qw( t/release-pod-syntax.t
895 t/release-eol.t
896 t/release-no-tabs.t
897 )
898 ],
97b1d6e6
SH
899 },
900
4f3a742d 901 'PerlIO::via::QuotedPrint' => {
7e286960 902 'DISTRIBUTION' => 'ELIZABETH/PerlIO-via-QuotedPrint-0.07.tar.gz',
4f3a742d 903 'FILES' => q[cpan/PerlIO-via-QuotedPrint],
f81a37f2
SH
904
905 # Waiting to be merged upstream: see CPAN RT#54047
906 'CUSTOMIZED' => [
907 qw( t/QuotedPrint.t
908 ),
909 ],
910
4f3a742d
DR
911 },
912
0c501878 913 'Pod::Checker' => {
0c501878
CBW
914 'DISTRIBUTION' => 'MAREKR/Pod-Checker-1.60.tar.gz',
915 'FILES' => q[cpan/Pod-Checker],
0c501878
CBW
916 },
917
4f3a742d 918 'Pod::Escapes' => {
4f3a742d
DR
919 'DISTRIBUTION' => 'SBURKE/Pod-Escapes-1.04.tar.gz',
920 'FILES' => q[cpan/Pod-Escapes],
4f3a742d
DR
921 },
922
4f3a742d 923 'Pod::Parser' => {
299a4f3d 924 'DISTRIBUTION' => 'MAREKR/Pod-Parser-1.62.tar.gz',
4f3a742d 925 'FILES' => q[cpan/Pod-Parser],
4f3a742d
DR
926 },
927
928 'Pod::Perldoc' => {
37279817 929 'DISTRIBUTION' => 'MALLEN/Pod-Perldoc-3.21.tar.gz',
00e518b3 930 'FILES' => q[cpan/Pod-Perldoc],
4f3a742d 931
fa884b76
DM
932 # Note that we use the CPAN-provided Makefile.PL, since it
933 # contains special handling of the installation of perldoc.pod
934
935 # In blead, the perldoc executable is generated by perldoc.PL
4f3a742d
DR
936 # instead
937 # XXX We can and should fix this, but clean up the DRY-failure in utils
938 # first
939 'EXCLUDED' => ['perldoc'],
4f3a742d
DR
940 },
941
942 'Pod::Simple' => {
b5ae6e74 943 'DISTRIBUTION' => 'DWHEELER/Pod-Simple-3.28.tar.gz',
4f3a742d 944 'FILES' => q[cpan/Pod-Simple],
4f3a742d
DR
945 },
946
0c501878 947 'Pod::Usage' => {
2ed39982 948 'DISTRIBUTION' => 'MAREKR/Pod-Usage-1.63.tar.gz',
0c501878 949 'FILES' => q[cpan/Pod-Usage],
0c501878
CBW
950 },
951
4f3a742d 952 'podlators' => {
b52cde68 953 'DISTRIBUTION' => 'RRA/podlators-2.5.3.tar.gz',
4f3a742d
DR
954 'FILES' => q[cpan/podlators pod/perlpodstyle.pod],
955
956 # The perl distribution has pod2man.PL and pod2text.PL, which are
957 # run to create pod2man and pod2text, while the CPAN distribution
958 # just has the post-generated pod2man and pod2text files.
959 # The following entries attempt to codify that odd fact.
960 'CUSTOMIZED' => [
961 qw( scripts/pod2man.PL
962 scripts/pod2text.PL
4f3a742d
DR
963 ),
964 ],
965 'MAP' => {
966 '' => 'cpan/podlators/',
967 'scripts/pod2man' => 'cpan/podlators/scripts/pod2man.PL',
968 'scripts/pod2text' => 'cpan/podlators/scripts/pod2text.PL',
969
970 # this file lives outside the cpan/ directory
971 'pod/perlpodstyle.pod' => 'pod/perlpodstyle.pod',
972 },
4f3a742d
DR
973 },
974
4f3a742d 975 'Safe' => {
e739c653 976 'DISTRIBUTION' => 'RGARCIA/Safe-2.35.tar.gz',
4f3a742d 977 'FILES' => q[dist/Safe],
4f3a742d
DR
978 },
979
980 'Scalar-List-Utils' => {
6fbeaf2c 981 'DISTRIBUTION' => 'PEVANS/Scalar-List-Utils-1.38.tar.gz',
cb8c8458 982 'FILES' => q[cpan/Scalar-List-Utils],
4f3a742d
DR
983 },
984
4f3a742d 985 'Search::Dict' => {
0b0a7092 986 'DISTRIBUTION' => 'DAGOLDEN/Search-Dict-1.07.tar.gz',
4f3a742d 987 'FILES' => q[dist/Search-Dict],
4f3a742d
DR
988 },
989
990 'SelfLoader' => {
c3958279 991 'DISTRIBUTION' => 'SMUELLER/SelfLoader-1.20.tar.gz',
4f3a742d
DR
992 'FILES' => q[dist/SelfLoader],
993 'EXCLUDED' => ['t/00pod.t'],
4f3a742d
DR
994 },
995
4f3a742d 996 'Socket' => {
538c5178 997 'DISTRIBUTION' => 'PEVANS/Socket-2.013.tar.gz',
4f3a742d 998 'FILES' => q[cpan/Socket],
4f3a742d
DR
999 },
1000
1001 'Storable' => {
8371a44d 1002 'DISTRIBUTION' => 'AMS/Storable-2.45.tar.gz',
4f3a742d 1003 'FILES' => q[dist/Storable],
4f3a742d
DR
1004 },
1005
4f3a742d 1006 'Sys::Syslog' => {
848ca32c 1007 'DISTRIBUTION' => 'SAPER/Sys-Syslog-0.33.tar.gz',
4f3a742d
DR
1008 'FILES' => q[cpan/Sys-Syslog],
1009 'EXCLUDED' => [
1010 qr{^eg/},
84c82da4
SH
1011 qw( README.win32
1012 t/data-validation.t
4f3a742d
DR
1013 t/distchk.t
1014 t/pod.t
1015 t/podcover.t
1016 t/podspell.t
1017 t/portfs.t
1018 win32/PerlLog.RES
4f3a742d
DR
1019 ),
1020 ],
4f3a742d
DR
1021 },
1022
1023 'Term::ANSIColor' => {
522ce57f 1024 'DISTRIBUTION' => 'RRA/Term-ANSIColor-4.02.tar.gz',
4f3a742d
DR
1025 'FILES' => q[cpan/Term-ANSIColor],
1026 'EXCLUDED' => [
92f80b37
CBW
1027 qr{^examples/},
1028 qr{^t/data/},
1029 qw( t/aliases-env.t
1030 t/critic.t
1031 t/minimum-version.t
1032 t/pod-spelling.t
1033 t/pod-coverage.t
4f3a742d 1034 t/pod.t
92f80b37
CBW
1035 t/strict.t
1036 t/synopsis.t
4f3a742d
DR
1037 ),
1038 ],
4f3a742d
DR
1039 },
1040
1041 'Term::Cap' => {
63dc8a94 1042 'DISTRIBUTION' => 'JSTOWE/Term-Cap-1.15.tar.gz',
4f3a742d 1043 'FILES' => q[cpan/Term-Cap],
4f3a742d
DR
1044 },
1045
1046 'Term::Complete' => {
4f3a742d
DR
1047 'DISTRIBUTION' => 'FLORA/Term-Complete-1.402.tar.gz',
1048 'FILES' => q[dist/Term-Complete],
1049 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1050 },
1051
1052 'Term::ReadLine' => {
75ad3638 1053 'DISTRIBUTION' => 'FLORA/Term-ReadLine-1.14.tar.gz',
4f3a742d
DR
1054 'FILES' => q[dist/Term-ReadLine],
1055 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1056 },
1057
4f3a742d 1058 'Test' => {
1c22e001 1059 'DISTRIBUTION' => 'JESSE/Test-1.26.tar.gz',
4f3a742d 1060 'FILES' => q[cpan/Test],
4f3a742d
DR
1061 },
1062
1063 'Test::Harness' => {
406e3fef 1064 'DISTRIBUTION' => 'LEONT/Test-Harness-3.30.tar.gz',
4f3a742d
DR
1065 'FILES' => q[cpan/Test-Harness],
1066 'EXCLUDED' => [
1067 qr{^examples/},
1068 qr{^inc/},
1069 qr{^t/lib/Test/},
1070 qr{^xt/},
1071 qw( Changes-2.64
8db65552 1072 MANIFEST.CUMMULATIVE
4f3a742d
DR
1073 NotBuild.PL
1074 HACKING.pod
1075 perlcriticrc
8db65552 1076 t/000-load.t
4f3a742d
DR
1077 t/lib/if.pm
1078 ),
1079 ],
4f3a742d
DR
1080 },
1081
1082 'Test::Simple' => {
6dab8563 1083 'DISTRIBUTION' => 'RJBS/Test-Simple-1.001002.tar.gz',
4f3a742d
DR
1084 'FILES' => q[cpan/Test-Simple],
1085 'EXCLUDED' => [
6dab8563 1086 qr{^t/xt},
4f3a742d
DR
1087 qw( .perlcriticrc
1088 .perltidyrc
84c82da4
SH
1089 examples/indent.pl
1090 examples/subtest.t
4f3a742d
DR
1091 t/00compile.t
1092 t/pod.t
1093 t/pod-coverage.t
1094 t/Builder/reset_outputs.t
1095 lib/Test/Builder/IO/Scalar.pm
1096 ),
1097 ],
4f3a742d
DR
1098 },
1099
1100 'Text::Abbrev' => {
5e96eee9 1101 'DISTRIBUTION' => 'FLORA/Text-Abbrev-1.02.tar.gz',
4f3a742d
DR
1102 'FILES' => q[dist/Text-Abbrev],
1103 'EXCLUDED' => [qr{^t/release-.*\.t}],
4f3a742d
DR
1104 },
1105
1106 'Text::Balanced' => {
4f3a742d
DR
1107 'DISTRIBUTION' => 'ADAMK/Text-Balanced-2.02.tar.gz',
1108 'FILES' => q[cpan/Text-Balanced],
1109 'EXCLUDED' => [
1110 qw( t/97_meta.t
1111 t/98_pod.t
1112 t/99_pmv.t
1113 ),
1114 ],
f81a37f2
SH
1115
1116 # Waiting to be merged upstream: see CPAN RT#87788
b5d178c9
SH
1117 'CUSTOMIZED' => [
1118 qw( t/01_compile.t
1119 t/02_extbrk.t
1120 t/03_extcbk.t
1121 t/04_extdel.t
1122 t/05_extmul.t
1123 t/06_extqlk.t
1124 t/07_exttag.t
1125 t/08_extvar.t
1126 t/09_gentag.t
1127 ),
1128 ],
f81a37f2 1129
4f3a742d
DR
1130 },
1131
1132 'Text::ParseWords' => {
33954ec3 1133 'DISTRIBUTION' => 'CHORNY/Text-ParseWords-3.29.tar.gz',
4f3a742d 1134 'FILES' => q[cpan/Text-ParseWords],
4f3a742d 1135
f81a37f2
SH
1136 # Waiting to be merged upstream: see CPAN RT#50929
1137 'CUSTOMIZED' => [
1138 qw( t/ParseWords.t
1139 t/taint.t
1140 ),
1141 ],
1142
4f3a742d
DR
1143 # For the benefit of make_ext.pl, we have to have this accessible:
1144 'MAP' => {
1145 'ParseWords.pm' => 'cpan/Text-ParseWords/lib/Text/ParseWords.pm',
1146 '' => 'cpan/Text-ParseWords/',
1147 },
4f3a742d
DR
1148 },
1149
4f3a742d 1150 'Text-Tabs+Wrap' => {
83aea42c 1151 'DISTRIBUTION' => 'MUIR/modules/Text-Tabs+Wrap-2013.0523.tar.gz',
4f3a742d 1152 'FILES' => q[cpan/Text-Tabs],
e7b92d54
SH
1153 'EXCLUDED' => [
1154 qr/^lib\.old/,
1155 't/dnsparks.t', # see af6492bf9e
4f3a742d 1156 ],
e7b92d54
SH
1157 'MAP' => {
1158 '' => 'cpan/Text-Tabs/',
ab2a3ce2
SH
1159 'lib.modern/Text/Tabs.pm' => 'cpan/Text-Tabs/lib/Text/Tabs.pm',
1160 'lib.modern/Text/Wrap.pm' => 'cpan/Text-Tabs/lib/Text/Wrap.pm',
e7b92d54 1161 },
4f3a742d
DR
1162 },
1163
1164 'Thread::Queue' => {
c7bac10a 1165 'DISTRIBUTION' => 'JDHEDDEN/Thread-Queue-3.02.tar.gz',
4f3a742d
DR
1166 'FILES' => q[dist/Thread-Queue],
1167 'EXCLUDED' => [
1fd4700e
JH
1168 qr{^examples/},
1169 qw( t/00_load.t
4f3a742d
DR
1170 t/99_pod.t
1171 t/test.pl
1172 ),
1173 ],
4f3a742d
DR
1174 },
1175
1176 'Thread::Semaphore' => {
4f3a742d
DR
1177 'DISTRIBUTION' => 'JDHEDDEN/Thread-Semaphore-2.12.tar.gz',
1178 'FILES' => q[dist/Thread-Semaphore],
1179 'EXCLUDED' => [
1180 qw( examples/semaphore.pl
1181 t/00_load.t
1182 t/99_pod.t
1183 t/test.pl
1184 ),
1185 ],
4f3a742d
DR
1186 },
1187
1188 'threads' => {
6d76e7fc 1189 'DISTRIBUTION' => 'JDHEDDEN/threads-1.89.tar.gz',
4f3a742d
DR
1190 'FILES' => q[dist/threads],
1191 'EXCLUDED' => [
1192 qr{^examples/},
1193 qw( t/pod.t
1194 t/test.pl
1195 threads.h
1196 ),
1197 ],
4f3a742d
DR
1198 },
1199
1200 'threads::shared' => {
4a557207 1201 'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.45.tar.gz',
4f3a742d
DR
1202 'FILES' => q[dist/threads-shared],
1203 'EXCLUDED' => [
1204 qw( examples/class.pl
1205 shared.h
1206 t/pod.t
1207 t/test.pl
1208 ),
1209 ],
4f3a742d
DR
1210 },
1211
1212 'Tie::File' => {
c0504019
TR
1213 'DISTRIBUTION' => 'TODDR/Tie-File-0.98.tar.gz',
1214 'FILES' => q[dist/Tie-File],
4f3a742d
DR
1215 },
1216
4f3a742d 1217 'Tie::RefHash' => {
4f3a742d
DR
1218 'DISTRIBUTION' => 'FLORA/Tie-RefHash-1.39.tar.gz',
1219 'FILES' => q[cpan/Tie-RefHash],
4f3a742d
DR
1220 },
1221
1222 'Time::HiRes' => {
0f0eae2c 1223 'DISTRIBUTION' => 'ZEFRAM/Time-HiRes-1.9726.tar.gz',
4f3a742d 1224 'FILES' => q[cpan/Time-HiRes],
4f3a742d
DR
1225 },
1226
1227 'Time::Local' => {
62e824cf 1228 'DISTRIBUTION' => 'DROLSKY/Time-Local-1.2300.tar.gz',
4f3a742d
DR
1229 'FILES' => q[cpan/Time-Local],
1230 'EXCLUDED' => [
62e824cf 1231 qr{^t/release-.*\.t},
4f3a742d 1232 ],
4f3a742d
DR
1233 },
1234
1235 'Time::Piece' => {
933a2256 1236 'DISTRIBUTION' => 'RJBS/Time-Piece-1.27.tar.gz',
4f3a742d 1237 'FILES' => q[cpan/Time-Piece],
4f3a742d
DR
1238 },
1239
1240 'Unicode::Collate' => {
d2309057 1241 'DISTRIBUTION' => 'SADAHIRO/Unicode-Collate-1.04.tar.gz',
4f3a742d
DR
1242 'FILES' => q[cpan/Unicode-Collate],
1243 'EXCLUDED' => [
1244 qr{N$},
1245 qr{^data/},
1246 qr{^gendata/},
1247 qw( disableXS
1248 enableXS
1249 mklocale
1250 ),
1251 ],
4f3a742d
DR
1252 },
1253
1254 'Unicode::Normalize' => {
65e3945f 1255 'DISTRIBUTION' => 'SADAHIRO/Unicode-Normalize-1.17.tar.gz',
4f3a742d
DR
1256 'FILES' => q[cpan/Unicode-Normalize],
1257 'EXCLUDED' => [
1258 qw( MANIFEST.N
1259 Normalize.pmN
1260 disableXS
1261 enableXS
1262 ),
1263 ],
4f3a742d
DR
1264 },
1265
4f3a742d 1266 'version' => {
f25474b0 1267 'DISTRIBUTION' => 'JPEACOCK/version-0.9908.tar.gz',
4fa93b19 1268 'FILES' => q[cpan/version vutil.c vutil.h vxs.inc],
4f3a742d 1269 'EXCLUDED' => [
df3ba8e7 1270 qr{^vutil/lib/},
c60b4fa6 1271 'vutil/Makefile.PL',
df3ba8e7
FC
1272 'vutil/ppport.h',
1273 'vutil/vxs.xs',
4f3a742d 1274 't/survey_locales',
4f3a742d 1275 ],
f81a37f2 1276
c872d591
SH
1277 # When adding the CPAN-distributed files for version.pm, it is necessary
1278 # to delete an entire block out of lib/version.pm, since that code is
1279 # only necessary with the CPAN release.
f81a37f2
SH
1280 'CUSTOMIZED' => [
1281 qw( lib/version.pm
f81a37f2
SH
1282 ),
1283 ],
1284
df3ba8e7 1285 'MAP' => {
4fa93b19
SH
1286 'vperl/' => 'cpan/version/lib/version/',
1287 'vutil/' => '',
df3ba8e7
FC
1288 '' => 'cpan/version/',
1289 },
4f3a742d
DR
1290 },
1291
4f3a742d 1292 'warnings' => {
099bebb1 1293 'FILES' => q[
4f3a742d 1294 lib/warnings
099bebb1
SH
1295 lib/warnings.{pm,t}
1296 regen/warnings.pl
4f3a742d 1297 t/lib/warnings
099bebb1 1298 ],
4f3a742d
DR
1299 },
1300
4f3a742d 1301 'Win32' => {
133b11f9 1302 'DISTRIBUTION' => "JDB/Win32-0.48.tar.gz",
4f3a742d 1303 'FILES' => q[cpan/Win32],
4f3a742d
DR
1304 },
1305
1306 'Win32API::File' => {
113b1f2c 1307 'DISTRIBUTION' => 'CHORNY/Win32API-File-0.1201.tar.gz',
4f3a742d
DR
1308 'FILES' => q[cpan/Win32API-File],
1309 'EXCLUDED' => [
1310 qr{^ex/},
1311 't/pod.t',
1312 ],
4f3a742d
DR
1313 },
1314
4f3a742d 1315 'XSLoader' => {
681a49bf 1316 'DISTRIBUTION' => 'SAPER/XSLoader-0.16.tar.gz',
4f3a742d
DR
1317 'FILES' => q[dist/XSLoader],
1318 'EXCLUDED' => [
1319 qr{^eg/},
57f9caa0
SH
1320 qw( t/00-load.t
1321 t/01-api.t
1322 t/distchk.t
1323 t/pod.t
4f3a742d
DR
1324 t/podcover.t
1325 t/portfs.t
1326 ),
1327 'XSLoader.pm', # we use XSLoader_pm.PL
1328 ],
4f3a742d
DR
1329 },
1330
462ea751
DM
1331 # this pseudo-module represents all the files under ext/ and lib/
1332 # that aren't otherwise claimed. This means that the following two
1333 # commands will check that every file under ext/ and lib/ is
1334 # accounted for, and that there are no duplicates:
1335 #
1336 # perl Porting/Maintainers --checkmani lib ext
d8ada404 1337 # perl Porting/Maintainers --checkmani
462ea751 1338
4f3a742d 1339 '_PERLLIB' => {
2af3c4b9 1340 'FILES' => q[
09213599 1341 ext/B/
2af3c4b9
SH
1342 ext/Devel-Peek/
1343 ext/DynaLoader/
1344 ext/Errno/
7b4d95f7 1345 ext/ExtUtils-Miniperl/
2af3c4b9
SH
1346 ext/Fcntl/
1347 ext/File-DosGlob/
1348 ext/File-Find/
1349 ext/File-Glob/
1350 ext/FileCache/
1351 ext/GDBM_File/
1352 ext/Hash-Util-FieldHash/
1353 ext/Hash-Util/
1354 ext/I18N-Langinfo/
1355 ext/IPC-Open3/
1356 ext/NDBM_File/
1357 ext/ODBM_File/
1358 ext/Opcode/
1359 ext/POSIX/
1360 ext/PerlIO-encoding/
1361 ext/PerlIO-mmap/
1362 ext/PerlIO-scalar/
1363 ext/PerlIO-via/
1364 ext/Pod-Functions/
1365 ext/Pod-Html/
1366 ext/SDBM_File/
1367 ext/Sys-Hostname/
1368 ext/Tie-Hash-NamedCapture/
1369 ext/Tie-Memoize/
b3dcf775 1370 ext/VMS-DCLsym/
2af3c4b9 1371 ext/VMS-Filespec/
b3dcf775
SH
1372 ext/VMS-Stdio/
1373 ext/Win32CORE/
4f3a742d 1374 ext/XS-APItest/
2af3c4b9
SH
1375 ext/XS-Typemap/
1376 ext/arybase/
1377 ext/attributes/
1378 ext/mro/
1379 ext/re/
1380 lib/AnyDBM_File.{pm,t}
1381 lib/Benchmark.{pm,t}
7263d211 1382 lib/B/Deparse{.pm,.t,-core.t}
4f3a742d 1383 lib/CORE.pod
2af3c4b9 1384 lib/Class/Struct.{pm,t}
4f3a742d
DR
1385 lib/Config.t
1386 lib/Config/Extensions.{pm,t}
1387 lib/DB.{pm,t}
2af3c4b9
SH
1388 lib/DBM_Filter.pm
1389 lib/DBM_Filter/
1390 lib/DirHandle.{pm,t}
1391 lib/English.{pm,t}
4f3a742d
DR
1392 lib/ExtUtils/Embed.pm
1393 lib/ExtUtils/XSSymSet.pm
1394 lib/ExtUtils/t/Embed.t
1395 lib/ExtUtils/typemap
2af3c4b9
SH
1396 lib/File/Basename.{pm,t}
1397 lib/File/Compare.{pm,t}
1398 lib/File/Copy.{pm,t}
1399 lib/File/stat{.pm,.t,-7896.t}
1400 lib/FileHandle.{pm,t}
1401 lib/FindBin.{pm,t}
1402 lib/Getopt/Std.{pm,t}
4f3a742d
DR
1403 lib/Internals.t
1404 lib/Net/hostent.{pm,t}
1405 lib/Net/netent.{pm,t}
1406 lib/Net/protoent.{pm,t}
1407 lib/Net/servent.{pm,t}
2af3c4b9 1408 lib/PerlIO.pm
4f3a742d
DR
1409 lib/Pod/t/InputObjects.t
1410 lib/Pod/t/Select.t
1411 lib/Pod/t/Usage.t
4f3a742d
DR
1412 lib/Pod/t/utils.t
1413 lib/SelectSaver.{pm,t}
1414 lib/Symbol.{pm,t}
1415 lib/Thread.{pm,t}
1416 lib/Tie/Array.pm
1417 lib/Tie/Array/
1418 lib/Tie/ExtraHash.t
1419 lib/Tie/Handle.pm
1420 lib/Tie/Handle/
2af3c4b9 1421 lib/Tie/Hash.{pm,t}
4f3a742d
DR
1422 lib/Tie/Scalar.{pm,t}
1423 lib/Tie/StdHandle.pm
1424 lib/Tie/SubstrHash.{pm,t}
1425 lib/Time/gmtime.{pm,t}
1426 lib/Time/localtime.{pm,t}
1427 lib/Time/tm.pm
1428 lib/UNIVERSAL.pm
1429 lib/Unicode/README
2af3c4b9 1430 lib/Unicode/UCD.{pm,t}
4f3a742d
DR
1431 lib/User/grent.{pm,t}
1432 lib/User/pwent.{pm,t}
2af3c4b9 1433 lib/_charnames.pm
4f3a742d
DR
1434 lib/blib.{pm,t}
1435 lib/bytes.{pm,t}
1436 lib/bytes_heavy.pl
1437 lib/charnames.{pm,t}
1438 lib/dbm_filter_util.pl
1439 lib/deprecate.pm
2af3c4b9 1440 lib/diagnostics.{pm,t}
4f3a742d
DR
1441 lib/dumpvar.{pl,t}
1442 lib/feature.{pm,t}
1443 lib/feature/
1444 lib/filetest.{pm,t}
1445 lib/h2ph.t
1446 lib/h2xs.t
1447 lib/integer.{pm,t}
1448 lib/less.{pm,t}
1449 lib/locale.{pm,t}
1450 lib/open.{pm,t}
1451 lib/overload/numbers.pm
1452 lib/overloading.{pm,t}
2af3c4b9 1453 lib/overload{.pm,.t,64.t}
4f3a742d
DR
1454 lib/perl5db.{pl,t}
1455 lib/perl5db/
2af3c4b9 1456 lib/sigtrap.{pm,t}
4f3a742d
DR
1457 lib/sort.{pm,t}
1458 lib/strict.{pm,t}
1459 lib/subs.{pm,t}
1460 lib/unicore/
1461 lib/utf8.{pm,t}
1462 lib/utf8_heavy.pl
1463 lib/vars{.pm,.t,_carp.t}
1464 lib/vmsish.{pm,t}
1465 ],
4f3a742d 1466 },
462ea751 1467);
b128a327 1468
97556ec3 1469# legacy CPAN flag
4f3a742d 1470for ( values %Modules ) {
97556ec3
GA
1471 $_->{CPAN} = !!$_->{DISTRIBUTION};
1472}
1473
099bebb1
SH
1474# legacy UPSTREAM flag
1475for ( keys %Modules ) {
1476 # Keep any existing UPSTREAM flag so that "overrides" can be applied
1477 next if exists $Modules{$_}{UPSTREAM};
1478
1479 if ($_ eq '_PERLLIB' or $Modules{$_}{FILES} =~ m{^\s*(?:dist|ext|lib)/}) {
1480 $Modules{$_}{UPSTREAM} = 'blead';
1481 }
1482 elsif ($Modules{$_}{FILES} =~ m{^\s*cpan/}) {
1483 $Modules{$_}{UPSTREAM} = 'cpan';
1484 }
1485 else {
1486 warn "Unexpected location of FILES for module $_: $Modules{$_}{FILES}";
1487 }
1488}
1489
d350de41 1490# legacy MAINTAINER field
099bebb1 1491for ( keys %Modules ) {
b3dcf775 1492 # Keep any existing MAINTAINER flag so that "overrides" can be applied
099bebb1
SH
1493 next if exists $Modules{$_}{MAINTAINER};
1494
1495 if ($Modules{$_}{UPSTREAM} eq 'blead') {
1496 $Modules{$_}{MAINTAINER} = 'P5P';
872818ae 1497 $Maintainers{P5P} = 'perl5-porters <perl5-porters@perl.org>';
d350de41 1498 }
099bebb1
SH
1499 elsif (exists $Modules{$_}{DISTRIBUTION}) {
1500 (my $pause_id = $Modules{$_}{DISTRIBUTION}) =~ s{/.*$}{};
1501 $Modules{$_}{MAINTAINER} = $pause_id;
d350de41
SH
1502 $Maintainers{$pause_id} = "<$pause_id\@cpan.org>";
1503 }
099bebb1
SH
1504 else {
1505 warn "No DISTRIBUTION for non-blead module $_";
1506 }
d350de41
SH
1507}
1508
b128a327 15091;