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