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