Upgrade perlfaq to 5.0150041
[perl.git] / Porting / Maintainers.pl
1 # A simple listing of core files that have specific maintainers,
2 # or at least someone that can be called an "interested party".
3 # Also, a "module" does not necessarily mean a CPAN module, it
4 # might mean a file or files or a subdirectory.
5 # Most (but not all) of the modules have dual lives in the core
6 # and in CPAN.
7
8 package Maintainers;
9
10 use utf8;
11 use File::Glob qw(:case);
12
13 %Maintainers = (
14     'abergman'  => 'Arthur Bergman <abergman@cpan.org>',
15     'abigail'   => 'Abigail <abigail@abigail.be>',
16     'ambs'      => 'Alberto Simões <ambs@cpan.org>',
17     'ams'       => 'Abhijit Menon-Sen <ams@cpan.org>',
18     'andk'      => 'Andreas J. Koenig <andk@cpan.org>',
19     'andya'     => 'Andy Armstrong <andy@hexten.net>',
20     'arandal'   => 'Allison Randal <allison@perl.org>',
21     'audreyt'   => 'Audrey Tang <cpan@audreyt.org>',
22     'avar'      => 'Ævar Arnfjörð Bjarmason <avar@cpan.org>',
23     'bingos'    => 'Chris Williams <chris@bingosnet.co.uk>',
24     'chorny'    => 'Alexandr Ciornii <alexchorny@gmail.com>',
25     'corion'    => 'Max Maischein <corion@corion.net>',
26     'craig'     => 'Craig Berry <craigberry@mac.com>',
27     'dankogai'  => 'Dan Kogai <dankogai@cpan.org>',
28     'dconway'   => 'Damian Conway <dconway@cpan.org>',
29     'dland'     => 'David Landgren <dland@cpan.org>',
30     'dmanura'   => 'David Manura <dmanura@cpan.org>',
31     'drolsky'   => 'Dave Rolsky <drolsky@cpan.org>',
32     'elizabeth' => 'Elizabeth Mattijsen <liz@dijkmat.nl>',
33     'ferreira'  => 'Adriano Ferreira <ferreira@cpan.org>',
34     'gbarr'     => 'Graham Barr <gbarr@cpan.org>',
35     'gaas'      => 'Gisle Aas <gaas@cpan.org>',
36     'gsar'      => 'Gurusamy Sarathy <gsar@activestate.com>',
37     'ilyam'     => 'Ilya Martynov <ilyam@cpan.org>',
38     'ilyaz'     => 'Ilya Zakharevich <ilyaz@cpan.org>',
39     'jand'      => 'Jan Dubois <jand@activestate.com>',
40     'jdhedden'  => 'Jerry D. Hedden <jdhedden@cpan.org>',
41     'jesse'     => 'Jesse Vincent <jesse@bestpractical.com>',
42     'jhi'       => 'Jarkko Hietaniemi <jhi@cpan.org>',
43     'jjore'     => 'Joshua ben Jore <jjore@cpan.org>',
44     'jpeacock'  => 'John Peacock <jpeacock@cpan.org>',
45     'jstowe'    => 'Jonathan Stowe <jstowe@cpan.org>',
46     'jv'        => 'Johan Vromans <jv@cpan.org>',
47     'kane'      => 'Jos Boumans <kane@cpan.org>',
48     'kwilliams' => 'Ken Williams <kwilliams@cpan.org>',
49     'laun'      => 'Wolfgang Laun <Wolfgang.Laun@alcatel.at>',
50     'lstein'    => 'Lincoln D. Stein <lds@cpan.org>',
51     'lwall'     => 'Larry Wall <lwall@cpan.org>',
52     'makamaka'  => 'Makamaka Hannyaharamitu <makamaka@cpan.org>',
53     'mallen'    => 'Mark Allen <mrallen1@yahoo.com>',
54     'marekr'    => 'Marek Rouchal <marekr@cpan.org>',
55     'markm'     => 'Mark Mielke <markm@cpan.org>',
56     'mhx'       => 'Marcus Holland-Moritz <mhx@cpan.org>',
57     'mjd'       => 'Mark-Jason Dominus <mjd@plover.com>',
58     'msergeant' => 'Matt Sergeant <msergeant@cpan.org>',
59     'mshelor'   => 'Mark Shelor <mshelor@cpan.org>',
60     'muir'      => 'David Muir Sharnoff <muir@cpan.org>',
61     'neilb'     => 'Neil Bowers <neilb@cpan.org>',
62     'nuffin'    => 'Yuval Kogman <nothingmuch@woobling.org>',
63     'nwclark'   => 'Nicholas Clark <nwclark@cpan.org>',
64     'osfameron' => 'Hakim Cassimally <osfameron@perl.org>',
65     'p5p'       => 'perl5-porters <perl5-porters@perl.org>',
66     'perlfaq'   => 'perlfaq-workers <perlfaq-workers@perl.org>',
67     'petdance'  => 'Andy Lester <andy@petdance.com>',
68     'pevans'    => 'Paul Evans <leonerd@leonerd.org.uk>',
69     'pjf'       => 'Paul Fenwick <pjf@cpan.org>',
70     'pmqs'      => 'Paul Marquess <pmqs@cpan.org>',
71     'pvhp'      => 'Peter Prymmer <pvhp@best.com>',
72     'rafl'      => 'Florian Ragwitz <flora@cpan.org>',
73     'rclamp'    => 'Richard Clamp <rclamp@cpan.org>',
74     'rgarcia'   => 'Rafael Garcia-Suarez <rgarcia@cpan.org>',
75     'rkobes'    => 'Randy Kobes <rkobes@cpan.org>',
76     'rmbarker'  => 'Robin Barker <rmbarker@cpan.org>',
77     'rra'       => 'Russ Allbery <rra@cpan.org>',
78     'rurban'    => 'Reini Urban <rurban@cpan.org>',
79     'sadahiro'  => 'SADAHIRO Tomoyuki <SADAHIRO@cpan.org>',
80     'salva'     => 'Salvador Fandiño García <salva@cpan.org>',
81     'saper'     => 'Sébastien Aperghis-Tramoni <saper@cpan.org>',
82     'sartak'    => 'Shawn M Moore <sartak@gmail.com>',
83     'sbeck'     => 'Sullivan Beck <sbeck@cpan.org>',
84     'sburke'    => 'Sean Burke <sburke@cpan.org>',
85     'mschwern'  => 'Michael Schwern <mschwern@cpan.org>',
86     'simonw'    => 'Simon Wistow <simonw@cpan.org>',
87     'smccam'    => 'Stephen McCamant <smccam@cpan.org>',
88     'smpeters'  => 'Steve Peters <steve@fisharerojo.org>',
89     'smueller'  => 'Steffen Mueller <smueller@cpan.org>',
90     'tomhughes' => 'Tom Hughes <tomhughes@cpan.org>',
91     'tjenness'  => 'Tim Jenness <tjenness@cpan.org>',
92     'tyemq'     => 'Tye McQueen <tyemq@cpan.org>',
93     'yves'      => 'Yves Orton <yves@cpan.org>',
94     'zefram'    => 'Andrew Main <zefram@cpan.org>',
95 );
96
97 # IGNORABLE: files which, if they appear in the root of a CPAN
98 # distribution, need not appear in core (i.e. core-cpan-diff won't
99 # complain if it can't find them)
100
101 @IGNORABLE = qw(
102     .cvsignore .dualLivedDiffConfig .gitignore
103     ANNOUNCE Announce Artistic AUTHORS BENCHMARK BUGS Build.PL
104     CHANGELOG ChangeLog CHANGES Changes COPYING Copying CREDITS dist.ini
105     GOALS HISTORY INSTALL INSTALL.SKIP LICENSE Makefile.PL
106     MANIFEST MANIFEST.SKIP META.yml MYMETA.yml META.json MYMETA.json
107     NEW NOTES perlcritic.rc ppport.h README README.PATCHING SIGNATURE
108     THANKS TODO Todo VERSION WHATSNEW
109 );
110
111 # Each entry in the  %Modules hash roughly represents a distribution,
112 # except when DISTRIBUTION is set, where it *exactly* represents a single
113 # CPAN distribution.
114
115 # The keys of %Modules are human descriptions of the distributions, and
116 # may not exactly match a module or distribution name. Distributions
117 # which have an obvious top-level module associated with them will usually
118 # have a key named for that module, e.g. 'Archive::Extract' for
119 # Archive-Extract-N.NN.tar.gz; the remaining keys are likely to be based
120 # on the name of the distribution, e.g. 'Locale-Codes' for
121 # Locale-Codes-N.NN.tar.gz'.
122 #
123 # FILES is a list of filenames, glob patterns, and directory
124 # names to be recursed down, which collectively generate a complete list
125 # of the files associated with the distribution.
126
127 # UPSTREAM indicates where patches should go. undef implies
128 # that this hasn't been discussed for the module at hand.
129 # "blead" indicates that the copy of the module in the blead
130 # sources is to be considered canonical, "cpan" means that the
131 # module on CPAN is to be patched first. "first-come" means
132 # that blead can be patched freely if it is in sync with the
133 # latest release on CPAN.
134
135 # BUGS is an email or url to post bug reports.  For modules with
136 # UPSTREAM => 'blead', use perl5-porters@perl.org.  rt.cpan.org
137 # appears to automatically provide a URL for CPAN modules; any value
138 # given here overrides the default:
139 # http://rt.cpan.org/Public/Dist/Display.html?Name=$ModuleName
140
141 # DISTRIBUTION names the tarball on CPAN which (allegedly) the files
142 # included in core are derived from. Note that the file's version may not
143 # necessarily match the newest version on CPAN.
144
145 # EXCLUDED is a list of files to be excluded from a CPAN tarball before
146 # comparing the remaining contents with core. Each item can either be a
147 # full pathname (eg 't/foo.t') or a pattern (e.g. qr{^t/}).
148 # It defaults to the empty list.
149
150 # CUSTOMIZED is a list of files that have been customized within the
151 # Perl core.  Use this whenever patching a cpan upstream distribution
152 # or whenever we expect to have a file that differs from the tarball.
153 # If the file in blead matches the file in the tarball from CPAN,
154 # Porting/core-cpan-diff will warn about it, as it indicates an expected
155 # customization might have been lost when updating from upstream.  The
156 # path should be relative to the distribution directory.
157
158 # DEPRECATED contains the *first* version of Perl in which the module
159 # was considered deprecated.  It should only be present if the module is
160 # actually deprecated.  Such modules should use deprecated.pm to
161 # issue a warning if used.  E.g.:
162 #
163 #     use if $] >= 5.011, 'deprecate';
164 #
165
166 # MAP is a hash that maps CPAN paths to their core equivalents.
167 # Each key represents a string prefix, with longest prefixes checked
168 # first. The first match causes that prefix to be replaced with the
169 # corresponding key. For example, with the following MAP:
170 #   {
171 #     'lib/'     => 'lib/',
172 #     ''     => 'lib/Foo/',
173 #   },
174 #
175 # these files are mapped as shown:
176 #
177 #    README     becomes lib/Foo/README
178 #    lib/Foo.pm becomes lib/Foo.pm
179 #
180 # The default is dependent on the type of module.
181 # For distributions which appear to be stored under ext/, it defaults to:
182 #
183 #   { '' => 'ext/Foo-Bar/' }
184 #
185 # otherwise, it's
186 #
187 #   {
188 #     'lib/'     => 'lib/',
189 #     ''     => 'lib/Foo/Bar/',
190 #   }
191
192 %Modules = (
193
194     'AnyDBM_File' => {
195         'MAINTAINER'  => 'p5p',
196         'FILES'       => q[lib/AnyDBM_File.{pm,t}],
197         'UPSTREAM'    => 'blead',
198     },
199
200     'Archive::Extract' => {
201         'MAINTAINER'   => 'kane',
202         'DISTRIBUTION' => 'BINGOS/Archive-Extract-0.60.tar.gz',
203         'FILES'        => q[cpan/Archive-Extract],
204         'UPSTREAM'     => 'cpan',
205         'BUGS'         => 'bug-archive-extract@rt.cpan.org',
206     },
207
208     'Archive::Tar' => {
209         'MAINTAINER'   => 'kane',
210         'DISTRIBUTION' => 'BINGOS/Archive-Tar-1.88.tar.gz',
211         'FILES'        => q[cpan/Archive-Tar],
212         'EXCLUDED'     => ['Makefile.PL'],
213         'UPSTREAM'     => 'cpan',
214         'BUGS'         => 'bug-archive-tar@rt.cpan.org',
215     },
216
217     'Attribute::Handlers' => {
218         'MAINTAINER'   => 'rgarcia',
219         'DISTRIBUTION' => 'SMUELLER/Attribute-Handlers-0.93.tar.gz',
220         'FILES'        => q[dist/Attribute-Handlers],
221         'UPSTREAM'     => 'blead',
222     },
223
224     'attributes' => {
225         'MAINTAINER' => 'p5p',
226         'FILES'      => q[ext/attributes],
227         'UPSTREAM'   => 'blead',
228     },
229
230     'autodie' => {
231         'MAINTAINER'   => 'pjf',
232         'DISTRIBUTION' => 'PJF/autodie-2.12.tar.gz',
233         'FILES'        => q[cpan/autodie],
234         'EXCLUDED'     => [
235             qr{^inc/Module/},
236
237             # All these tests depend upon external
238             # modules that don't exist when we're
239             # building the core.  Hence, they can
240             # never run, and should not be merged.
241             qw( t/boilerplate.t
242                 t/critic.t
243                 t/fork.t
244                 t/kwalitee.t
245                 t/lex58.t
246                 t/pod-coverage.t
247                 t/pod.t
248                 t/socket.t
249                 t/system.t
250                 )
251         ],
252         'UPSTREAM'   => 'cpan',
253     },
254
255     'AutoLoader' => {
256         'MAINTAINER'   => 'smueller',
257         'DISTRIBUTION' => 'SMUELLER/AutoLoader-5.72.tar.gz',
258         'FILES'        => q[cpan/AutoLoader],
259         'EXCLUDED'     => ['t/00pod.t'],
260         'UPSTREAM'     => 'cpan',
261     },
262
263     'autouse' => {
264         'MAINTAINER'   => 'p5p',
265         'DISTRIBUTION' => 'FLORA/autouse-1.06.tar.gz',
266         'FILES'        => q[dist/autouse],
267         'EXCLUDED'     => [qr{^t/release-.*\.t}],
268         'UPSTREAM'     => 'blead',
269     },
270
271     'B' => {
272         'MAINTAINER' => 'p5p',
273         'FILES'      => q[ext/B],
274         'EXCLUDED'   => [
275             qw( B/Concise.pm
276                 t/concise.t
277                 ),
278         ],
279         'UPSTREAM' => 'blead',
280     },
281
282     'B::Concise' => {
283         'MAINTAINER' => 'smccam',
284         'FILES'      => q[ext/B/B/Concise.pm ext/B/t/concise.t],
285         'UPSTREAM'   => 'blead',
286     },
287
288     'B::Debug' => {
289         'MAINTAINER'   => 'rurban',
290         'DISTRIBUTION' => 'RURBAN/B-Debug-1.17.tar.gz',
291         'FILES'        => q[cpan/B-Debug],
292         'EXCLUDED'     => ['t/pod.t'],
293         'UPSTREAM'     => 'cpan',
294     },
295
296     'B::Deparse' => {
297         'MAINTAINER' => 'smccam',
298         'FILES'      => q[dist/B-Deparse],
299         'UPSTREAM'   => 'blead',
300     },
301
302     'B::Lint' => {
303         'MAINTAINER'   => 'jjore',
304         'DISTRIBUTION' => 'FLORA/B-Lint-1.13.tar.gz',
305         'FILES'        => q[dist/B-Lint],
306         'EXCLUDED'     => ['t/test.pl'],
307         'UPSTREAM'     => 'blead',
308     },
309
310     'base' => {
311         'MAINTAINER'   => 'rgarcia',
312         'DISTRIBUTION' => 'RGARCIA/base-2.18.tar.gz',
313         'FILES'        => q[dist/base],
314         'UPSTREAM'     => 'blead',
315     },
316
317     'Benchmark' => {
318         'MAINTAINER' => 'p5p',
319         'FILES'      => q[lib/Benchmark.{pm,t}],
320         'UPSTREAM'   => 'blead',
321     },
322
323     'bignum' => {
324         'MAINTAINER'   => 'rafl',
325         'DISTRIBUTION' => 'FLORA/bignum-0.29.tar.gz',
326         'FILES'        => q[dist/bignum],
327         'EXCLUDED'     => [
328             qr{^inc/Module/},
329             qw( t/pod.t
330                 t/pod_cov.t
331                 ),
332         ],
333         'UPSTREAM' => 'blead',
334     },
335
336     'Carp' => {
337         'MAINTAINER'   => 'zefram',
338         'DISTRIBUTION' => 'ZEFRAM/Carp-1.26.tar.gz',
339         'FILES'        => q[dist/Carp],
340         'UPSTREAM'     => 'blead',
341     },
342
343     'CGI' => {
344         'MAINTAINER'   => 'lstein',
345         'DISTRIBUTION' => 'MARKSTOS/CGI.pm-3.59.tar.gz',
346         'FILES'        => q[cpan/CGI],
347         'EXCLUDED'     => [
348             qr{^t/lib/Test},
349             qw( cgi-lib_porting.html
350                 cgi_docs.html
351                 examples/WORLD_WRITABLE/18.157.1.253.sav
352                 t/gen-tests/gen-start-end-tags.pl
353                 t/fast.t
354                 ),
355         ],
356         'CUSTOMIZED' => ['t/url.t'],
357         'UPSTREAM'   => 'cpan',
358     },
359
360     'Class::Struct' => {
361         'MAINTAINER' => 'p5p',
362         'FILES'      => q[lib/Class/Struct.{pm,t}],
363         'UPSTREAM'   => 'blead',
364     },
365
366     'Compress::Raw::Bzip2' => {
367         'MAINTAINER'   => 'pmqs',
368         'DISTRIBUTION' => 'PMQS/Compress-Raw-Bzip2-2.055.tar.gz',
369         'FILES'        => q[cpan/Compress-Raw-Bzip2],
370         'EXCLUDED'     => [
371             qr{^t/Test/},
372             'bzip2-src/bzip2-cpp.patch',
373         ],
374         'UPSTREAM' => 'cpan',
375     },
376
377     'Compress::Raw::Zlib' => {
378         'MAINTAINER'   => 'pmqs',
379         'DISTRIBUTION' => 'PMQS/Compress-Raw-Zlib-2.056.tar.gz',
380
381         'FILES'    => q[cpan/Compress-Raw-Zlib],
382         'EXCLUDED' => [
383             qr{^t/Test/},
384             qw( t/000prereq.t
385                 t/99pod.t
386                 ),
387         ],
388         'UPSTREAM' => 'cpan',
389     },
390
391     'constant' => {
392         'MAINTAINER'   => 'saper',
393         'DISTRIBUTION' => 'SAPER/constant-1.21.tar.gz',
394         'FILES'        => q[dist/constant],
395         'EXCLUDED'     => [
396             qw( t/00-load.t
397                 t/more-tests.t
398                 t/pod-coverage.t
399                 t/pod.t
400                 eg/synopsis.pl
401                 ),
402         ],
403         'UPSTREAM' => 'blead',
404     },
405
406     'CPAN' => {
407         'MAINTAINER'   => 'andk',
408         'DISTRIBUTION' => 'ANDK/CPAN-1.9800.tar.gz',
409         'FILES'        => q[cpan/CPAN],
410         'EXCLUDED'     => [
411             qr{^distroprefs/},
412             qr{^inc/Test/},
413             qr{^t/CPAN/authors/},
414             qw( lib/CPAN/Admin.pm
415                 Makefile.PL
416                 scripts/cpan-mirrors
417                 SlayMakefile
418                 t/00signature.t
419                 t/04clean_load.t
420                 t/12cpan.t
421                 t/13tarzip.t
422                 t/14forkbomb.t
423                 t/30shell.coverage
424                 t/30shell.t
425                 t/31sessions.t
426                 t/41distribution.t
427                 t/42distroprefs.t
428                 t/44cpanmeta.t
429                 t/43distroprefspref.t
430                 t/50pod.t
431                 t/51pod.t
432                 t/52podcover.t
433                 t/60credentials.t
434                 t/70_critic.t
435                 t/CPAN/CpanTestDummies-1.55.pm
436                 t/CPAN/TestConfig.pm
437                 t/CPAN/TestMirroredBy
438                 t/CPAN/TestPatch.txt
439                 t/CPAN/modules/02packages.details.txt
440                 t/CPAN/modules/03modlist.data
441                 t/data/META-dynamic.json
442                 t/data/META-dynamic.yml
443                 t/data/META-static.json
444                 t/data/META-static.yml
445                 t/data/MYMETA.json
446                 t/data/MYMETA.yml
447                 t/local_utils.pm
448                 t/perlcriticrc
449                 t/yaml_code.yml
450                 ),
451         ],
452         'UPSTREAM' => 'cpan',
453     },
454
455     'CPANPLUS' => {
456         'MAINTAINER'   => 'kane',
457         'DISTRIBUTION' => 'BINGOS/CPANPLUS-0.9130.tar.gz',
458         'FILES'        => q[cpan/CPANPLUS],
459         'EXCLUDED'     => [
460             qr{^inc/},
461             qr{^t/dummy-.*\.hidden$},
462             qr{^t/dummy-(cpanplus|perl|localmirror)/},
463             'bin/cpanp-boxed',
464
465             # SQLite tests would be skipped in core, and
466             # the filenames are too long for VMS!
467             qw( t/031_CPANPLUS-Internals-Source-SQLite.t
468                 t/032_CPANPLUS-Internals-Source-via-sqlite.t
469                 ),
470             'Makefile.PL',
471         ],
472         'CUSTOMIZED' => ['Makefile.PL'],
473         'UPSTREAM'   => 'cpan',
474         'BUGS'       => 'bug-cpanplus@rt.cpan.org',
475     },
476
477     'CPANPLUS::Dist::Build' => {
478         'MAINTAINER'   => 'bingos',
479         'DISTRIBUTION' => 'BINGOS/CPANPLUS-Dist-Build-0.62.tar.gz',
480         'FILES'        => q[cpan/CPANPLUS-Dist-Build],
481         'EXCLUDED'     => [
482             qr{^inc/},
483             qw( t/99_pod.t
484                 t/99_pod_coverage.t
485                 ),
486         ],
487         'UPSTREAM' => 'cpan',
488     },
489
490     'CPAN::Meta' => {
491         'MAINTAINER'   => 'dagolden',
492         'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-2.120921.tar.gz',
493         'FILES'        => q[cpan/CPAN-Meta],
494         'EXCLUDED'     => [
495             qw(t/00-compile.t),
496             qr{^xt},
497             qr{^history},
498         ],
499         'UPSTREAM' => 'cpan',
500     },
501
502     'CPAN::Meta::Requirements' => {
503         'MAINTAINER'   => 'dagolden',
504         'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-Requirements-2.122.tar.gz',
505         'FILES'        => q[cpan/CPAN-Meta-Requirements],
506         'EXCLUDED'     => [
507             qw(t/00-compile.t),
508             qr{^xt},
509             qr{^history},
510         ],
511         'UPSTREAM' => 'cpan',
512     },
513
514     'CPAN::Meta::YAML' => {
515         'MAINTAINER'   => 'dagolden',
516         'DISTRIBUTION' => 'DAGOLDEN/CPAN-Meta-YAML-0.008.tar.gz',
517         'FILES'        => q[cpan/CPAN-Meta-YAML],
518         'EXCLUDED'     => [
519             't/00-compile.t',
520             't/04_scalar.t',    # requires YAML.pm
521             qr{^xt},
522         ],
523         'UPSTREAM' => 'cpan',
524     },
525
526     'Data::Dumper' => {
527         'MAINTAINER' => 'p5p',    # Not gsar. Not ilyam. Not really smueller
528         'DISTRIBUTION' => 'SMUELLER/Data-Dumper-2.135_01.tar.gz',
529         'FILES'        => q[dist/Data-Dumper],
530         'UPSTREAM'     => 'blead',
531     },
532
533     'DB_File' => {
534         'MAINTAINER'   => 'pmqs',
535         'DISTRIBUTION' => 'PMQS/DB_File-1.826.tar.gz',
536         'FILES'        => q[cpan/DB_File],
537         'EXCLUDED'     => [
538             qr{^patches/},
539             qw( t/pod.t
540                 fallback.h
541                 fallback.xs
542                 ),
543         ],
544         'UPSTREAM' => 'cpan',
545     },
546
547     'DBM_Filter' => {
548         'MAINTAINER' => 'p5p',
549         'FILES'      => q[lib/DBM_Filter.pm lib/DBM_Filter],
550         'UPSTREAM'   => 'blead',
551     },
552
553     'Devel::SelfStubber' => {
554         'MAINTAINER'   => 'p5p',
555         'DISTRIBUTION' => 'FLORA/Devel-SelfStubber-1.05.tar.gz',
556         'FILES'        => q[dist/Devel-SelfStubber],
557         'EXCLUDED'     => [qr{^t/release-.*\.t}],
558         'UPSTREAM'     => 'blead',
559     },
560
561     'Devel::Peek' => {
562         'MAINTAINER' => 'p5p',
563         'FILES'      => q[ext/Devel-Peek],
564         'UPSTREAM'   => 'blead',
565     },
566
567     'Devel::PPPort' => {
568         'MAINTAINER'   => 'mhx',
569         'DISTRIBUTION' => 'MHX/Devel-PPPort-3.20.tar.gz',
570         'FILES'        => q[cpan/Devel-PPPort],
571         'EXCLUDED' => ['PPPort.pm'],    # we use PPPort_pm.PL instead
572         'UPSTREAM' => 'cpan',
573     },
574
575     'diagnostics' => {
576         'MAINTAINER' => 'p5p',
577         'FILES'      => q[lib/diagnostics.{pm,t}],
578         'UPSTREAM'   => 'blead',
579     },
580
581     'Digest' => {
582         'MAINTAINER'   => 'gaas',
583         'DISTRIBUTION' => 'GAAS/Digest-1.17.tar.gz',
584         'FILES'        => q[cpan/Digest],
585         'EXCLUDED'     => ['digest-bench'],
586         'UPSTREAM'     => "cpan",
587     },
588
589     'Digest::MD5' => {
590         'MAINTAINER'   => 'gaas',
591         'DISTRIBUTION' => 'GAAS/Digest-MD5-2.52.tar.gz',
592         'FILES'        => q[cpan/Digest-MD5],
593         'EXCLUDED'     => ['rfc1321.txt'],
594         'UPSTREAM'     => "cpan",
595     },
596
597     'Digest::SHA' => {
598         'MAINTAINER'   => 'mshelor',
599         'DISTRIBUTION' => 'MSHELOR/Digest-SHA-5.71.tar.gz',
600         'FILES'        => q[cpan/Digest-SHA],
601         'EXCLUDED'     => [
602             qw( t/pod.t
603                 t/podcover.t
604                 examples/dups
605                 ),
606         ],
607         'UPSTREAM' => 'cpan',
608     },
609
610     'DirHandle' => {
611         'MAINTAINER' => 'p5p',
612         'FILES'      => q[lib/DirHandle.{pm,t}],
613         'UPSTREAM'   => 'blead',
614     },
615
616     'Dumpvalue' => {
617         'MAINTAINER'   => 'p5p',
618         'DISTRIBUTION' => 'FLORA/Dumpvalue-1.16.tar.gz',
619         'FILES'        => q[dist/Dumpvalue],
620         'EXCLUDED'     => [qr{^t/release-.*\.t}],
621         'UPSTREAM'     => 'blead',
622     },
623
624     'DynaLoader' => {
625         'MAINTAINER' => 'p5p',
626         'FILES'      => q[ext/DynaLoader],
627         'UPSTREAM'   => 'blead',
628     },
629
630     'Encode' => {
631         'MAINTAINER'   => 'dankogai',
632         'DISTRIBUTION' => 'DANKOGAI/Encode-2.47.tar.gz',
633         'FILES'        => q[cpan/Encode],
634         'UPSTREAM'     => 'cpan',
635     },
636
637     'encoding::warnings' => {
638         'MAINTAINER'   => 'audreyt',
639         'DISTRIBUTION' => 'AUDREYT/encoding-warnings-0.11.tar.gz',
640         'FILES'        => q[cpan/encoding-warnings],
641         'EXCLUDED'     => [
642             qr{^inc/Module/},
643             qw( t/0-signature.t
644                 Makefile.PL
645                 MANIFEST
646                 META.yml
647                 README
648                 SIGNATURE
649                 ),
650         ],
651         'UPSTREAM' => undef,
652     },
653
654     'English' => {
655         'MAINTAINER' => 'p5p',
656         'FILES'      => q[lib/English.{pm,t}],
657         'UPSTREAM'   => 'blead',
658     },
659
660     'Env' => {
661         'MAINTAINER'   => 'p5p',
662         'DISTRIBUTION' => 'FLORA/Env-1.03.tar.gz',
663         'FILES'        => q[dist/Env],
664         'EXCLUDED'     => [qr{^t/release-.*\.t}],
665         'UPSTREAM'     => 'blead',
666     },
667
668     'Errno' => {
669         'MAINTAINER' => 'p5p',
670         'FILES'      => q[ext/Errno],
671         'UPSTREAM'   => 'blead',
672     },
673
674     'Exporter' => {
675         'MAINTAINER'   => 'ferreira',
676         'DISTRIBUTION' => 'TODDR/Exporter-5.66.tar.gz',
677         'FILES'        => q[lib/Exporter.pm
678                             lib/Exporter.t
679                             lib/Exporter/Heavy.pm
680                            ],
681         'EXCLUDED' => [
682             qw( t/pod.t
683                 t/use.t
684                 ),
685         ],
686         'MAP' => {
687             't/'   => 'lib/',
688             'lib/' => 'lib/',
689         },
690         'UPSTREAM' => 'blead',
691     },
692
693     'ExtUtils::CBuilder' => {
694         'MAINTAINER'   => 'ambs',
695         'DISTRIBUTION' => 'DAGOLDEN/ExtUtils-CBuilder-0.280205.tar.gz',
696         'FILES'        => q[dist/ExtUtils-CBuilder],
697         'UPSTREAM'     => 'blead',
698     },
699
700     'ExtUtils::Command' => {
701         'MAINTAINER'   => 'p5p',
702         'DISTRIBUTION' => 'FLORA/ExtUtils-Command-1.17.tar.gz',
703         'FILES'        => q[dist/ExtUtils-Command],
704         'EXCLUDED'     => [qr{^t/release-}],
705         'UPSTREAM'     => 'blead',
706     },
707
708     'ExtUtils::Constant' => {
709         'MAINTAINER' => 'nwclark',
710
711         # Nick has confirmed that while we have diverged from CPAN,
712         # this package isn't primarily maintained in core
713         # Another release will happen "Sometime"
714         'DISTRIBUTION' => '',    #'NWCLARK/ExtUtils-Constant-0.16.tar.gz',
715         'FILES'    => q[cpan/ExtUtils-Constant],
716         'EXCLUDED' => [
717             qw( lib/ExtUtils/Constant/Aaargh56Hash.pm
718                 examples/perl_keyword.pl
719                 examples/perl_regcomp_posix_keyword.pl
720                 ),
721         ],
722         'UPSTREAM' => undef,
723     },
724
725     'ExtUtils::Install' => {
726         'MAINTAINER'   => 'yves',
727         'DISTRIBUTION' => 'YVES/ExtUtils-Install-1.54.tar.gz',
728         'FILES'        => q[dist/ExtUtils-Install],
729         'EXCLUDED'     => [
730             qw( t/lib/Test/Builder.pm
731                 t/lib/Test/Builder/Module.pm
732                 t/lib/Test/More.pm
733                 t/lib/Test/Simple.pm
734                 t/pod-coverage.t
735                 t/pod.t
736                 ),
737         ],
738         'UPSTREAM' => 'blead',
739     },
740
741     'ExtUtils::MakeMaker' => {
742         'MAINTAINER'   => 'mschwern',
743         'DISTRIBUTION' => 'MSCHWERN/ExtUtils-MakeMaker-6.63_02.tar.gz',
744         'FILES'        => q[cpan/ExtUtils-MakeMaker],
745         'EXCLUDED'     => [
746             qr{^t/lib/Test/},
747             qr{^(bundled|my)/},
748             qr{^t/Liblist_Kid.t},
749             qr{^t/liblist/},
750         ],
751         'UPSTREAM' => 'first-come',
752     },
753
754     'ExtUtils::Manifest' => {
755         'MAINTAINER'   => 'p5p',
756         'DISTRIBUTION' => 'FLORA/ExtUtils-Manifest-1.60.tar.gz',
757         'FILES'        => q[dist/ExtUtils-Manifest],
758         'EXCLUDED'     => [qr(t/release-.*\.t)],
759         'UPSTREAM'     => 'blead',
760     },
761
762     'ExtUtils::ParseXS' => {
763         'MAINTAINER'   => 'smueller',
764         'DISTRIBUTION' => 'SMUELLER/ExtUtils-ParseXS-3.15.tar.gz',
765         'FILES'        => q[dist/ExtUtils-ParseXS],
766         'UPSTREAM'     => 'blead',
767     },
768
769     'perlfaq' => {
770         'MAINTAINER'   => 'perlfaq',
771         'DISTRIBUTION' => 'LLAP/perlfaq-5.0150041.tar.gz',
772         'FILES'        => q[cpan/perlfaq],
773         'EXCLUDED'     => [
774             qw( t/release-pod-syntax.t
775                 t/release-eol.t
776                 t/release-no-tabs.t
777                 )
778         ],
779         'UPSTREAM' => 'cpan',
780     },
781
782     'File::Basename' => {
783         'MAINTAINER' => 'p5p',
784         'FILES'      => q[lib/File/Basename.{pm,t}],
785         'UPSTREAM'   => 'blead',
786     },
787
788     'File::Compare' => {
789         'MAINTAINER' => 'p5p',
790         'FILES'      => q[lib/File/Compare.{pm,t}],
791         'UPSTREAM'   => 'blead',
792     },
793
794     'File::Copy' => {
795         'MAINTAINER' => 'p5p',
796         'FILES'      => q[lib/File/Copy.{pm,t}],
797         'UPSTREAM'   => 'blead',
798     },
799
800     'File::CheckTree' => {
801         'MAINTAINER'   => 'p5p',
802         'DISTRIBUTION' => 'FLORA/File-CheckTree-4.41.tar.gz',
803         'FILES'        => q[dist/File-CheckTree],
804         'EXCLUDED'     => [qr{^t/release-.*\.t}],
805         'UPSTREAM'     => 'blead',
806     },
807
808     'File::DosGlob' => {
809         'MAINTAINER' => 'p5p',
810         'FILES'      => q[lib/File/DosGlob.{pm,t}],
811         'UPSTREAM'   => 'blead',
812     },
813
814     'File::Fetch' => {
815         'MAINTAINER'   => 'kane',
816         'DISTRIBUTION' => 'BINGOS/File-Fetch-0.36.tar.gz',
817         'FILES'        => q[cpan/File-Fetch],
818         'UPSTREAM'     => 'cpan',
819     },
820
821     'File::Find' => {
822         'MAINTAINER' => 'p5p',
823         'FILES'      => q[lib/File/Find.pm lib/File/Find],
824         'UPSTREAM'   => 'blead',
825     },
826
827     'File::Glob' => {
828         'MAINTAINER' => 'p5p',
829         'FILES'      => q[ext/File-Glob],
830         'UPSTREAM'   => 'blead',
831     },
832
833     'File::Path' => {
834         'MAINTAINER'   => 'dland',
835         'DISTRIBUTION' => 'DLAND/File-Path-2.08.tar.gz',
836         'FILES'        => q[cpan/File-Path],
837         'EXCLUDED'     => [
838             qw( eg/setup-extra-tests
839                 t/pod.t
840                 )
841         ],
842         'MAP' => {
843             ''   => 'cpan/File-Path/lib/File/',
844             't/' => 'cpan/File-Path/t/',
845         },
846         'UPSTREAM' => undef,
847     },
848
849     'File::stat' => {
850         'MAINTAINER' => 'p5p',
851         'FILES'      => q[lib/File/stat{.pm,*.t}],
852         'UPSTREAM'   => 'blead',
853     },
854
855     'File::Temp' => {
856         'MAINTAINER'   => 'tjenness',
857         'DISTRIBUTION' => 'TJENNESS/File-Temp-0.22.tar.gz',
858         'FILES'        => q[cpan/File-Temp],
859         'EXCLUDED'     => [
860             qw( misc/benchmark.pl
861                 misc/results.txt
862                 ),
863         ],
864         'UPSTREAM' => 'cpan',
865     },
866
867     'FileCache' => {
868         'MAINTAINER' => 'p5p',
869         'FILES'      => q[ext/FileCache],
870         'UPSTREAM'   => 'blead',
871     },
872
873     'FileHandle' => {
874         'MAINTAINER' => 'p5p',
875         'FILES'      => q[lib/FileHandle.{pm,t}],
876         'UPSTREAM'   => 'blead',
877     },
878
879     'Filter::Simple' => {
880         'MAINTAINER'   => 'smueller',
881         'DISTRIBUTION' => 'SMUELLER/Filter-Simple-0.88.tar.gz',
882         'FILES'        => q[dist/Filter-Simple],
883         'EXCLUDED'     => [
884             'Makefile.PL',
885             qr{^demo/}
886         ],
887         'UPSTREAM' => 'blead',
888     },
889
890     'Filter::Util::Call' => {
891         'MAINTAINER'   => 'pmqs',
892         'DISTRIBUTION' => 'RURBAN/Filter-1.45.tar.gz',
893         'FILES'        => q[cpan/Filter-Util-Call
894                  pod/perlfilter.pod
895                 ],
896         'EXCLUDED' => [
897             qr{^decrypt/},
898             qr{^examples/},
899             qr{^Exec/},
900             qr{^lib/Filter/},
901             qr{^tee/},
902             qw( Call/Makefile.PL
903                 Call/ppport.h
904                 Call/typemap
905                 mytest
906                 t/cpp.t
907                 t/decrypt.t
908                 t/exec.t
909                 t/order.t
910                 t/pod.t
911                 t/sh.t
912                 t/tee.t
913                 ),
914         ],
915         'MAP' => {
916             'Call/'          => 'cpan/Filter-Util-Call/',
917             'filter-util.pl' => 'cpan/Filter-Util-Call/filter-util.pl',
918             'perlfilter.pod' => 'pod/perlfilter.pod',
919             ''               => 'cpan/Filter-Util-Call/',
920         },
921         'UPSTREAM' => 'cpan',
922     },
923
924     'FindBin' => {
925         'MAINTAINER' => 'p5p',
926         'FILES'      => q[lib/FindBin.{pm,t}],
927         'UPSTREAM'   => 'blead',
928     },
929
930     'GDBM_File' => {
931         'MAINTAINER' => 'p5p',
932         'FILES'      => q[ext/GDBM_File],
933         'UPSTREAM'   => 'blead',
934     },
935
936     'Fcntl' => {
937         'MAINTAINER' => 'p5p',
938         'FILES'      => q[ext/Fcntl],
939         'UPSTREAM'   => 'blead',
940     },
941
942     'Getopt::Long' => {
943         'MAINTAINER'   => 'jv',
944         'DISTRIBUTION' => 'JV/Getopt-Long-2.38.tar.gz',
945         'FILES'        => q[cpan/Getopt-Long],
946         'EXCLUDED'     => [
947             qr{^examples/},
948             qw( perl-Getopt-Long.spec
949                 lib/newgetopt.pl
950                 t/gol-compat.t
951                 ),
952         ],
953         'UPSTREAM' => 'cpan',
954     },
955
956     'Getopt::Std' => {
957         'MAINTAINER' => 'p5p',
958         'FILES'      => q[lib/Getopt/Std.{pm,t}],
959         'UPSTREAM'   => 'blead',
960     },
961
962     'Hash::Util::FieldHash' => {
963         'MAINTAINER' => 'p5p',
964         'FILES'      => q[ext/Hash-Util-FieldHash],
965         'UPSTREAM'   => 'blead',
966     },
967
968     'Hash::Util' => {
969         'MAINTAINER' => 'p5p',
970         'FILES'      => q[ext/Hash-Util],
971         'UPSTREAM'   => 'blead',
972     },
973
974     'HTTP::Tiny' => {
975         'MAINTAINER'   => 'dagolden',
976         'DISTRIBUTION' => 'DAGOLDEN/HTTP-Tiny-0.022.tar.gz',
977         'FILES'        => q[cpan/HTTP-Tiny],
978         'EXCLUDED'     => [
979             't/00-report-prereqs.t',
980             't/200_live.t',
981             't/200_live_local_ip.t',
982             't/210_live_ssl.t',
983             qr/^eg/,
984             qr/^xt/
985         ],
986         'UPSTREAM' => 'cpan',
987     },
988
989     'I18N::Collate' => {
990         'MAINTAINER'   => 'p5p',
991         'DISTRIBUTION' => 'FLORA/I18N-Collate-1.02.tar.gz',
992         'FILES'        => q[dist/I18N-Collate],
993         'EXCLUDED'     => [qr{^t/release-.*\.t}],
994         'UPSTREAM'     => 'blead',
995     },
996
997     'I18N::Langinfo' => {
998         'MAINTAINER' => 'p5p',
999         'FILES'      => q[ext/I18N-Langinfo],
1000         'UPSTREAM'   => 'blead',
1001     },
1002
1003     # Sean has donated it to us.
1004     # Nothing has changed since his last CPAN release.
1005     # (not strictly true: there have been some trivial typo fixes; DAPM 6/2009)
1006     'I18N::LangTags' => {
1007         'MAINTAINER'   => 'p5p',
1008         'DISTRIBUTION' => 'SBURKE/I18N-LangTags-0.35.tar.gz',
1009         'FILES'        => q[dist/I18N-LangTags],
1010         'UPSTREAM'     => 'blead',
1011     },
1012
1013     'if' => {
1014         'MAINTAINER'   => 'ilyaz',
1015         'DISTRIBUTION' => 'ILYAZ/modules/if-0.0601.tar.gz',
1016         'FILES'        => q[dist/if],
1017         'UPSTREAM'     => 'blead',
1018     },
1019
1020     'IO' => {
1021         'MAINTAINER'   => 'p5p',
1022         'DISTRIBUTION' => 'GBARR/IO-1.25.tar.gz',
1023         'FILES'        => q[dist/IO/],
1024         'EXCLUDED'     => ['t/test.pl'],
1025         'UPSTREAM'     => 'blead',
1026     },
1027
1028     'IO-Compress' => {
1029         'MAINTAINER'   => 'pmqs',
1030         'DISTRIBUTION' => 'PMQS/IO-Compress-2.055.tar.gz',
1031         'FILES'        => q[cpan/IO-Compress],
1032         'EXCLUDED'     => [qr{t/Test/}],
1033         'UPSTREAM'     => 'cpan',
1034     },
1035
1036     'IO::Zlib' => {
1037         'MAINTAINER'   => 'tomhughes',
1038         'DISTRIBUTION' => 'TOMHUGHES/IO-Zlib-1.10.tar.gz',
1039         'FILES'        => q[cpan/IO-Zlib],
1040         'UPSTREAM'     => undef,
1041     },
1042
1043     'IPC::Cmd' => {
1044         'MAINTAINER'   => 'kane',
1045         'DISTRIBUTION' => 'BINGOS/IPC-Cmd-0.78.tar.gz',
1046         'FILES'        => q[cpan/IPC-Cmd],
1047         'UPSTREAM'     => 'cpan',
1048     },
1049
1050     'IPC::Open3' => {
1051         'MAINTAINER' => 'p5p',
1052         'FILES'      => q[ext/IPC-Open3],
1053         'UPSTREAM'   => 'blead',
1054     },
1055
1056     'IPC::SysV' => {
1057         'MAINTAINER'   => 'mhx',
1058         'DISTRIBUTION' => 'MHX/IPC-SysV-2.03.tar.gz',
1059         'FILES'        => q[cpan/IPC-SysV],
1060         'EXCLUDED'     => [
1061             qw( const-c.inc
1062                 const-xs.inc
1063                 ),
1064         ],
1065         'UPSTREAM' => 'cpan',
1066     },
1067
1068     'JSON::PP' => {
1069         'MAINTAINER'   => 'makamaka',
1070         'DISTRIBUTION' => 'MAKAMAKA/JSON-PP-2.27200.tar.gz',
1071         'FILES'        => q[cpan/JSON-PP],
1072         'EXCLUDED'     => [
1073             't/900_pod.t',    # Pod testing
1074         ],
1075         'UPSTREAM' => 'cpan',
1076     },
1077
1078     'lib' => {
1079         'MAINTAINER'   => 'smueller',
1080         'DISTRIBUTION' => 'SMUELLER/lib-0.63.tar.gz',
1081         'FILES'        => q[dist/lib/],
1082         'EXCLUDED'     => [
1083             qw( forPAUSE/lib.pm
1084                 t/00pod.t
1085                 ),
1086         ],
1087         'UPSTREAM' => 'blead',
1088     },
1089
1090     'libnet' => {
1091         'MAINTAINER'   => 'gbarr',
1092         'DISTRIBUTION' => 'GBARR/libnet-1.22.tar.gz',
1093         'FILES'        => q[cpan/libnet],
1094         'EXCLUDED'     => [
1095             qw( Configure
1096                 install-nomake
1097                 Makefile.PL
1098                 ),
1099         ],
1100         'CUSTOMIZED' => ['Makefile.PL'],
1101         'UPSTREAM'   => undef,
1102     },
1103
1104     'Locale-Codes' => {
1105         'MAINTAINER'   => 'sbeck',
1106         'DISTRIBUTION' => 'SBECK/Locale-Codes-3.22.tar.gz',
1107         'FILES'        => q[cpan/Locale-Codes],
1108         'EXCLUDED'     => [
1109             qw( t/pod_coverage.t
1110                 t/pod.t),
1111             qr{^t/runtests},
1112             qr{^t/runtests\.bat},
1113             qr{^internal/},
1114             qr{^examples/},
1115         ],
1116         'UPSTREAM' => 'cpan',
1117     },
1118
1119     'Locale::Maketext' => {
1120         'MAINTAINER'   => 'ferreira',
1121         'DISTRIBUTION' => 'TODDR/Locale-Maketext-1.22.tar.gz',
1122         'FILES'        => q[dist/Locale-Maketext],
1123         'EXCLUDED'     => [
1124             qw(
1125                 perlcriticrc
1126                 t/00_load.t
1127                 t/pod.t
1128                 ),
1129         ],
1130         'UPSTREAM' => 'blead',
1131     },
1132
1133     'Locale::Maketext::Simple' => {
1134         'MAINTAINER'   => 'audreyt',
1135         'DISTRIBUTION' => 'JESSE/Locale-Maketext-Simple-0.21.tar.gz',
1136         'FILES'        => q[cpan/Locale-Maketext-Simple],
1137         'EXCLUDED'     => [qr{^inc/}],
1138         'UPSTREAM'     => 'cpan',
1139     },
1140
1141     'Log::Message' => {
1142         'MAINTAINER'   => 'kane',
1143         'DISTRIBUTION' => 'BINGOS/Log-Message-0.04.tar.gz',
1144         'FILES'        => q[cpan/Log-Message],
1145         'UPSTREAM'     => 'cpan',
1146     },
1147
1148     'Log::Message::Simple' => {
1149         'MAINTAINER'   => 'kane',
1150         'DISTRIBUTION' => 'BINGOS/Log-Message-Simple-0.08.tar.gz',
1151         'FILES'        => q[cpan/Log-Message-Simple],
1152         'UPSTREAM'     => 'cpan',
1153     },
1154
1155     'mad' => {
1156         'MAINTAINER' => 'lwall',
1157         'FILES'      => q[mad],
1158         'UPSTREAM'   => undef,
1159     },
1160
1161     'Math::BigInt' => {
1162         'MAINTAINER'   => 'rafl',
1163         'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-1.997.tar.gz',
1164         'FILES'        => q[dist/Math-BigInt],
1165         'EXCLUDED'     => [
1166             qr{^inc/},
1167             qr{^examples/},
1168             qw( t/00sig.t
1169                 t/01load.t
1170                 t/02pod.t
1171                 t/03podcov.t
1172                 ),
1173         ],
1174         'UPSTREAM' => 'blead',
1175     },
1176
1177     'Math::BigInt::FastCalc' => {
1178         'MAINTAINER'   => 'rafl',
1179         'DISTRIBUTION' => 'PJACKLAM/Math-BigInt-FastCalc-0.30.tar.gz',
1180         'FILES'        => q[dist/Math-BigInt-FastCalc],
1181         'EXCLUDED'     => [
1182             qr{^inc/},
1183             qw( t/00sig.t
1184                 t/01load.t
1185                 t/02pod.t
1186                 t/03podcov.t
1187                 ),
1188
1189             # instead we use the versions of these test
1190             # files that come with Math::BigInt:
1191             qw( t/bigfltpm.inc
1192                 t/bigfltpm.t
1193                 t/bigintpm.inc
1194                 t/bigintpm.t
1195                 t/mbimbf.inc
1196                 t/mbimbf.t
1197                 ),
1198         ],
1199         'UPSTREAM' => 'blead',
1200     },
1201
1202     'Math::BigRat' => {
1203         'MAINTAINER'   => 'rafl',
1204         'DISTRIBUTION' => 'PJACKLAM/Math-BigRat-0.2602.tar.gz',
1205         'FILES'        => q[dist/Math-BigRat],
1206         'EXCLUDED'     => [
1207             qr{^inc/},
1208             qw( t/00sig.t
1209                 t/01load.t
1210                 t/02pod.t
1211                 t/03podcov.t
1212                 ),
1213         ],
1214         'UPSTREAM' => 'blead',
1215     },
1216
1217     'Math::Complex' => {
1218         'MAINTAINER'   => 'zefram',
1219         'DISTRIBUTION' => 'ZEFRAM/Math-Complex-1.59.tar.gz',
1220         'FILES'        => q[cpan/Math-Complex],
1221         'EXCLUDED'     => [
1222             qw( t/pod.t
1223                 t/pod-coverage.t
1224                 ),
1225         ],
1226         'UPSTREAM' => 'cpan',
1227     },
1228
1229     'Memoize' => {
1230         'MAINTAINER'   => 'mjd',
1231         'DISTRIBUTION' => 'MJD/Memoize-1.03.tgz',
1232         'FILES'        => q[cpan/Memoize],
1233         'EXCLUDED'     => ['article.html'],
1234         'UPSTREAM'     => 'cpan',
1235     },
1236
1237     'MIME::Base64' => {
1238         'MAINTAINER'   => 'gaas',
1239         'DISTRIBUTION' => 'GAAS/MIME-Base64-3.13.tar.gz',
1240         'FILES'        => q[cpan/MIME-Base64],
1241         'EXCLUDED'     => ['t/bad-sv.t'],
1242         'UPSTREAM'     => 'cpan',
1243     },
1244
1245     #
1246     # To update Module-Build in blead see
1247     # https://github.com/Perl-Toolchain-Gang/Module-Build/blob/master/devtools/patching_blead.pod
1248     #
1249
1250     'Module::Build' => {
1251         'MAINTAINER'   => 'kwilliams',
1252         'DISTRIBUTION' => 'LEONT/Module-Build-0.4002.tar.gz',
1253         'FILES'        => q[cpan/Module-Build],
1254         'EXCLUDED'     => [
1255             qw( t/par.t
1256                 t/signature.t
1257                 ),
1258             qr{^contrib/},
1259             qr{^inc},
1260         ],
1261         'CUSTOMIZED' => ['lib/Module/Build/ConfigData.pm'],
1262         'UPSTREAM'   => 'cpan',
1263     },
1264
1265     'Module::CoreList' => {
1266         'MAINTAINER'   => 'bingos',
1267         'DISTRIBUTION' => 'BINGOS/Module-CoreList-2.70.tar.gz',
1268         'FILES'        => q[dist/Module-CoreList],
1269         'UPSTREAM'     => 'blead',
1270     },
1271
1272     'Module::Load' => {
1273         'MAINTAINER'   => 'kane',
1274         'DISTRIBUTION' => 'BINGOS/Module-Load-0.22.tar.gz',
1275         'FILES'        => q[cpan/Module-Load],
1276         'UPSTREAM'     => 'cpan',
1277     },
1278
1279     'Module::Load::Conditional' => {
1280         'MAINTAINER'   => 'kane',
1281         'DISTRIBUTION' => 'BINGOS/Module-Load-Conditional-0.54.tar.gz',
1282         'FILES'        => q[cpan/Module-Load-Conditional],
1283         'UPSTREAM'     => 'cpan',
1284     },
1285
1286     'Module::Loaded' => {
1287         'MAINTAINER'   => 'kane',
1288         'DISTRIBUTION' => 'BINGOS/Module-Loaded-0.08.tar.gz',
1289         'FILES'        => q[cpan/Module-Loaded],
1290         'UPSTREAM'     => 'cpan',
1291     },
1292
1293     'Module::Metadata' => {
1294         'MAINTAINER'   => 'dagolden',
1295         'DISTRIBUTION' => 'VPIT/Module-Metadata-1.000010.tar.gz',
1296         'FILES'        => q[cpan/Module-Metadata],
1297         'EXCLUDED'     => [
1298             qr{^maint},
1299             qr{^xt},
1300         ],
1301         'UPSTREAM' => 'cpan',
1302     },
1303
1304     'Module::Pluggable' => {
1305         'MAINTAINER'   => 'simonw',
1306         'DISTRIBUTION' => 'SIMONW/Module-Pluggable-4.2.tar.gz',
1307         'FILES'        => q[cpan/Module-Pluggable],
1308         'EXCLUDED'     => ['Build.PL'],
1309         'UPSTREAM'     => 'cpan',
1310         'CUSTOMIZED'   => ['Makefile.PL'],
1311     },
1312
1313     'mro' => {
1314         'MAINTAINER' => 'p5p',
1315         'FILES'      => q[ext/mro],
1316         'UPSTREAM'   => 'blead',
1317     },
1318
1319     'NDBM_File' => {
1320         'MAINTAINER' => 'p5p',
1321         'FILES'      => q[ext/NDBM_File],
1322         'UPSTREAM'   => 'blead',
1323     },
1324
1325     'Net::Ping' => {
1326         'MAINTAINER'   => 'smpeters',
1327         'DISTRIBUTION' => 'SMPETERS/Net-Ping-2.36.tar.gz',
1328         'FILES'        => q[dist/Net-Ping],
1329         'UPSTREAM'     => 'blead',
1330     },
1331
1332     'NEXT' => {
1333         'MAINTAINER'   => 'rafl',
1334         'DISTRIBUTION' => 'FLORA/NEXT-0.65.tar.gz',
1335         'FILES'        => q[cpan/NEXT],
1336         'EXCLUDED'     => [qr{^demo/}],
1337         'UPSTREAM'     => 'cpan',
1338     },
1339
1340     'Object::Accessor' => {
1341         'MAINTAINER'   => 'kane',
1342         'DISTRIBUTION' => 'BINGOS/Object-Accessor-0.44.tar.gz',
1343         'FILES'        => q[cpan/Object-Accessor],
1344         'UPSTREAM'     => 'cpan',
1345     },
1346
1347     'ODBM_File' => {
1348         'MAINTAINER' => 'p5p',
1349         'FILES'      => q[ext/ODBM_File],
1350         'UPSTREAM'   => 'blead',
1351     },
1352
1353     'Opcode' => {
1354         'MAINTAINER' => 'p5p',
1355         'FILES'      => q[ext/Opcode],
1356         'UPSTREAM'   => 'blead',
1357     },
1358
1359     'overload' => {
1360         'MAINTAINER' => 'p5p',
1361         'FILES'      => q[lib/overload{.pm,.t,64.t}],
1362         'UPSTREAM'   => 'blead',
1363     },
1364
1365     'Package::Constants' => {
1366         'MAINTAINER'   => 'kane',
1367         'DISTRIBUTION' => 'KANE/Package-Constants-0.02.tar.gz',
1368         'FILES'        => q[cpan/Package-Constants],
1369         'UPSTREAM'     => 'cpan',
1370     },
1371
1372     'Params::Check' => {
1373         'MAINTAINER'   => 'kane',
1374         'DISTRIBUTION' => 'BINGOS/Params-Check-0.36.tar.gz',
1375         'EXCLUDED'     => ['Params-Check-0.26.tar.gz'],
1376         'FILES'        => q[cpan/Params-Check],
1377         'UPSTREAM'     => 'cpan',
1378     },
1379
1380     'parent' => {
1381         'MAINTAINER'   => 'corion',
1382         'DISTRIBUTION' => 'CORION/parent-0.225.tar.gz',
1383         'FILES'        => q[cpan/parent],
1384         'UPSTREAM'     => undef,
1385     },
1386
1387     'Parse::CPAN::Meta' => {
1388         'MAINTAINER'   => 'dagolden',
1389         'DISTRIBUTION' => 'DAGOLDEN/Parse-CPAN-Meta-1.4404.tar.gz',
1390         'FILES'        => q[cpan/Parse-CPAN-Meta],
1391         'UPSTREAM'     => 'cpan',
1392     },
1393
1394     'PathTools' => {
1395         'MAINTAINER'   => 'kwilliams',
1396         'DISTRIBUTION' => 'SMUELLER/PathTools-3.33.tar.gz',
1397         'FILES'        => q[dist/Cwd],
1398         'EXCLUDED'     => [qr{^t/lib/Test/}],
1399         'UPSTREAM'     => "blead",
1400
1401         # NOTE: PathTools is in dist/Cwd/ instead of dist/PathTools because it
1402         # contains Cwd.xs and something, possibly Makefile.SH, makes an assumption
1403         # that the leafname of some file corresponds with the pathname of the
1404         # directory.
1405     },
1406
1407     'perldtrace' => {
1408         'MAINTAINER' => 'sartak',
1409         'FILES'      => q[pod/perldtrace.pod],
1410         'UPSTREAM'   => 'blead',
1411     },
1412
1413     'perlebcdic' => {
1414         'MAINTAINER' => 'pvhp',
1415         'FILES'      => q[pod/perlebcdic.pod],
1416         'UPSTREAM'   => undef,
1417     },
1418
1419     'PerlIO' => {
1420         'MAINTAINER' => 'p5p',
1421         'FILES'      => q[lib/PerlIO.pm],
1422         'UPSTREAM'   => undef,
1423     },
1424
1425     'PerlIO::encoding' => {
1426         'MAINTAINER' => 'p5p',
1427         'FILES'      => q[ext/PerlIO-encoding],
1428         'UPSTREAM'   => 'blead',
1429     },
1430
1431     'PerlIO::mmap' => {
1432         'MAINTAINER' => 'p5p',
1433         'FILES'      => q[ext/PerlIO-mmap],
1434         'UPSTREAM'   => 'blead',
1435     },
1436
1437     'PerlIO::scalar' => {
1438         'MAINTAINER' => 'p5p',
1439         'FILES'      => q[ext/PerlIO-scalar],
1440         'UPSTREAM'   => 'blead',
1441     },
1442
1443     'PerlIO::via' => {
1444         'MAINTAINER' => 'p5p',
1445         'FILES'      => q[ext/PerlIO-via],
1446         'UPSTREAM'   => 'blead',
1447     },
1448
1449     'PerlIO::via::QuotedPrint' => {
1450         'MAINTAINER'   => 'elizabeth',
1451         'DISTRIBUTION' => 'ELIZABETH/PerlIO-via-QuotedPrint-0.07.tar.gz',
1452         'FILES'        => q[cpan/PerlIO-via-QuotedPrint],
1453         'UPSTREAM'     => undef,
1454     },
1455
1456     'Perl::OSType' => {
1457         'MAINTAINER'   => 'dagolden',
1458         'DISTRIBUTION' => 'DAGOLDEN/Perl-OSType-1.002.tar.gz',
1459         'FILES'        => q[cpan/Perl-OSType],
1460         'EXCLUDED'     => [qr/^xt/],
1461         'UPSTREAM'     => 'cpan',
1462     },
1463
1464     'perlpacktut' => {
1465         'MAINTAINER' => 'laun',
1466         'FILES'      => q[pod/perlpacktut.pod],
1467         'UPSTREAM'   => undef,
1468     },
1469
1470     'perlpodspec' => {
1471         'MAINTAINER' => 'sburke',
1472         'FILES'      => q[pod/perlpodspec.pod],
1473         'UPSTREAM'   => undef,
1474     },
1475
1476     'perlre' => {
1477         'MAINTAINER' => 'abigail',
1478         'FILES'      => q[pod/perlrecharclass.pod
1479                  pod/perlrebackslash.pod],
1480         'UPSTREAM' => undef,
1481     },
1482
1483     'perlreapi' => {
1484         MAINTAINER => 'avar',
1485         FILES      => q[pod/perlreapi.pod],
1486         'UPSTREAM' => undef,
1487     },
1488
1489     'perlreftut' => {
1490         'MAINTAINER' => 'mjd',
1491         'FILES'      => q[pod/perlreftut.pod],
1492         'UPSTREAM'   => 'blead',
1493     },
1494
1495     'perlthrtut' => {
1496         'MAINTAINER' => 'elizabeth',
1497         'FILES'      => q[pod/perlthrtut.pod],
1498         'UPSTREAM'   => undef,
1499     },
1500
1501     'Pod::Escapes' => {
1502         'MAINTAINER'   => 'arandal',
1503         'DISTRIBUTION' => 'SBURKE/Pod-Escapes-1.04.tar.gz',
1504         'FILES'        => q[cpan/Pod-Escapes],
1505         'UPSTREAM'     => undef,
1506     },
1507
1508     'Pod::Functions' => {
1509         'MAINTAINER' => 'p5p',
1510         'FILES'      => q[ext/Pod-Functions],
1511         'UPSTREAM'   => 'blead',
1512     },
1513
1514     'Pod::Html' => {
1515         'MAINTAINER' => 'p5p',
1516         'FILES'      => q[ext/Pod-Html],
1517         'UPSTREAM'   => 'blead',
1518     },
1519
1520     'Pod::LaTeX' => {
1521         'MAINTAINER'   => 'tjenness',
1522         'DISTRIBUTION' => 'TJENNESS/Pod-LaTeX-0.60.tar.gz',
1523         'FILES'        => q[cpan/Pod-LaTeX],
1524         'EXCLUDED'     => ['t/require.t'],
1525         'UPSTREAM'     => undef,
1526     },
1527
1528     'Pod::Parser' => {
1529         'MAINTAINER' => 'marekr',
1530         'DISTRIBUTION' => 'MAREKR/Pod-Parser-1.51.tar.gz',
1531         'FILES'        => q[cpan/Pod-Parser],
1532         'UPSTREAM'     => 'cpan',
1533     },
1534
1535     'Pod::Perldoc' => {
1536         'MAINTAINER'   => 'mallen',
1537         'DISTRIBUTION' => 'MALLEN/Pod-Perldoc-3.17.tar.gz',
1538         'FILES'        => q[cpan/Pod-Perldoc],
1539
1540         # in blead, the perldoc executable is generated by perldoc.PL
1541         # instead
1542         # XXX We can and should fix this, but clean up the DRY-failure in utils
1543         # first
1544         'EXCLUDED' => ['perldoc'],
1545         'UPSTREAM' => 'cpan',
1546     },
1547
1548     'Pod::Simple' => {
1549         'MAINTAINER'   => 'arandal',
1550         'DISTRIBUTION' => 'DWHEELER/Pod-Simple-3.23.tar.gz',
1551         'FILES'        => q[cpan/Pod-Simple],
1552         'UPSTREAM'     => 'cpan',
1553     },
1554
1555     'podlators' => {
1556         'MAINTAINER'   => 'rra',
1557         'DISTRIBUTION' => 'RRA/podlators-2.4.2.tar.gz',
1558         'FILES'        => q[cpan/podlators pod/perlpodstyle.pod],
1559
1560         # The perl distribution has pod2man.PL and pod2text.PL,  which are
1561         # run to create pod2man and pod2text, while the CPAN distribution
1562         # just has the post-generated pod2man and pod2text files.
1563         # The following entries attempt to codify that odd fact.
1564         'CUSTOMIZED' => [
1565             qw( scripts/pod2man.PL
1566                 scripts/pod2text.PL
1567                 ),
1568         ],
1569         'MAP' => {
1570             ''                 => 'cpan/podlators/',
1571             'scripts/pod2man'  => 'cpan/podlators/scripts/pod2man.PL',
1572             'scripts/pod2text' => 'cpan/podlators/scripts/pod2text.PL',
1573
1574             # this file lives outside the cpan/ directory
1575             'pod/perlpodstyle.pod' => 'pod/perlpodstyle.pod',
1576         },
1577         'UPSTREAM' => 'cpan',
1578     },
1579
1580     'POSIX' => {
1581         'MAINTAINER' => 'p5p',
1582         'FILES'      => q[ext/POSIX],
1583         'UPSTREAM'   => 'blead',
1584     },
1585
1586     're' => {
1587         'MAINTAINER' => 'p5p',
1588         'FILES'      => q[ext/re],
1589         'UPSTREAM'   => 'blead',
1590     },
1591
1592     'Safe' => {
1593         'MAINTAINER'   => 'rgarcia',
1594         'DISTRIBUTION' => 'RGARCIA/Safe-2.33.tar.gz',
1595         'FILES'        => q[dist/Safe],
1596         'UPSTREAM'     => 'blead',
1597     },
1598
1599     'Scalar-List-Utils' => {
1600         'MAINTAINER'   => 'gbarr',
1601         'DISTRIBUTION' => 'PEVANS/Scalar-List-Utils-1.25.tar.gz',
1602
1603         # Note that perl uses its own version of Makefile.PL
1604         'FILES'    => q[cpan/List-Util],
1605         'EXCLUDED' => [
1606             qr{^inc/Module/},
1607             qr{^inc/Test/},
1608             'mytypemap',
1609         ],
1610         'UPSTREAM' => 'cpan',
1611     },
1612
1613     'SDBM_File' => {
1614         'MAINTAINER' => 'p5p',
1615         'FILES'      => q[ext/SDBM_File],
1616         'UPSTREAM'   => 'blead',
1617     },
1618
1619     'Search::Dict' => {
1620         'MAINTAINER'   => 'p5p',
1621         'DISTRIBUTION' => 'DAGOLDEN/Search-Dict-1.07.tar.gz',
1622         'FILES'        => q[dist/Search-Dict],
1623         'EXCLUDED'     => [qr{^t/release-.*\.t},qr{^README\..*}],
1624         'UPSTREAM'     => 'blead',
1625     },
1626
1627     'SelfLoader' => {
1628         'MAINTAINER'   => 'smueller',
1629         'DISTRIBUTION' => 'SMUELLER/SelfLoader-1.20.tar.gz',
1630         'FILES'        => q[dist/SelfLoader],
1631         'EXCLUDED'     => ['t/00pod.t'],
1632         'UPSTREAM'     => 'blead',
1633     },
1634
1635     'sigtrap' => {
1636         'MAINTAINER' => 'p5p',
1637         'FILES'      => q[lib/sigtrap.{pm,t}],
1638         'UPSTREAM'   => 'blead',
1639     },
1640
1641     'Socket' => {
1642         'MAINTAINER'   => 'pevans',
1643         'DISTRIBUTION' => 'PEVANS/Socket-2.004.tar.gz',
1644         'FILES'        => q[cpan/Socket],
1645         'UPSTREAM'     => 'cpan',
1646     },
1647
1648     'Storable' => {
1649         'MAINTAINER'   => 'ams',
1650         'DISTRIBUTION' => 'AMS/Storable-2.35.tar.gz',
1651         'FILES'        => q[dist/Storable],
1652         'EXCLUDED'     => [qr{^t/Test/}],
1653         'UPSTREAM'     => 'blead',
1654     },
1655
1656     'Sys::Hostname' => {
1657         'MAINTAINER' => 'p5p',
1658         'FILES'      => q[ext/Sys-Hostname],
1659         'UPSTREAM'   => 'blead',
1660     },
1661
1662     'Sys::Syslog' => {
1663         'MAINTAINER'   => 'saper',
1664         'DISTRIBUTION' => 'SAPER/Sys-Syslog-0.30.tar.gz',
1665         'FILES'        => q[cpan/Sys-Syslog],
1666         'EXCLUDED'     => [
1667             qr{^eg/},
1668             qw( t/data-validation.t
1669                 t/distchk.t
1670                 t/pod.t
1671                 t/podcover.t
1672                 t/podspell.t
1673                 t/portfs.t
1674                 win32/PerlLog.RES
1675                 ),
1676         ],
1677         'UPSTREAM'   => 'cpan',
1678     },
1679
1680     'Term::ANSIColor' => {
1681         'MAINTAINER'   => 'rra',
1682         'DISTRIBUTION' => 'RRA/Term-ANSIColor-3.02.tar.gz',
1683         'FILES'        => q[cpan/Term-ANSIColor],
1684         'EXCLUDED'     => [
1685             qr{^tests/},
1686             qw( t/pod-spelling.t
1687                 t/pod.t
1688                 ),
1689         ],
1690         'UPSTREAM' => 'cpan',
1691     },
1692
1693     'Term::Cap' => {
1694         'MAINTAINER'   => 'jstowe',
1695         'DISTRIBUTION' => 'JSTOWE/Term-Cap-1.12.tar.gz',
1696         'FILES'        => q[cpan/Term-Cap],
1697         'UPSTREAM'     => undef,
1698     },
1699
1700     'Term::Complete' => {
1701         'MAINTAINER'   => 'p5p',
1702         'DISTRIBUTION' => 'FLORA/Term-Complete-1.402.tar.gz',
1703         'FILES'        => q[dist/Term-Complete],
1704         'EXCLUDED'     => [qr{^t/release-.*\.t}],
1705         'UPSTREAM'     => 'blead',
1706     },
1707
1708     'Term::ReadLine' => {
1709         'MAINTAINER'   => 'p5p',
1710         'DISTRIBUTION' => 'FLORA/Term-ReadLine-1.09.tar.gz',
1711         'FILES'        => q[dist/Term-ReadLine],
1712         'EXCLUDED'     => [qr{^t/release-.*\.t}],
1713         'UPSTREAM'     => 'blead',
1714     },
1715
1716     'Term::UI' => {
1717         'MAINTAINER'   => 'kane',
1718         'DISTRIBUTION' => 'BINGOS/Term-UI-0.30.tar.gz',
1719         'FILES'        => q[cpan/Term-UI],
1720         'UPSTREAM'     => 'cpan',
1721     },
1722
1723     'Test' => {
1724         'MAINTAINER'   => 'jesse',
1725         'DISTRIBUTION' => 'JESSE/Test-1.25_02.tar.gz',
1726         'FILES'        => q[cpan/Test],
1727         'UPSTREAM'     => 'cpan',
1728     },
1729
1730     'Test::Harness' => {
1731         'MAINTAINER'   => 'andya',
1732         'DISTRIBUTION' => 'OVID/Test-Harness-3.25.tar.gz',
1733         'FILES'        => q[cpan/Test-Harness],
1734         'EXCLUDED'     => [
1735             qr{^examples/},
1736             qr{^inc/},
1737             qr{^t/lib/Test/},
1738             qr{^xt/},
1739             qw( Changes-2.64
1740                 NotBuild.PL
1741                 HACKING.pod
1742                 perlcriticrc
1743                 t/lib/if.pm
1744                 ),
1745         ],
1746         'MAP'        => {
1747             ''                    => 'cpan/Test-Harness/',
1748             't/compat/env.opts.t' => 'cpan/Test-Harness/t/compat/env_opts.t'
1749         },
1750         'UPSTREAM'   => 'cpan',
1751         'CUSTOMIZED' => [
1752             qw( lib/App/Prove.pm
1753                 lib/App/Prove/State.pm
1754                 lib/App/Prove/State/Result.pm
1755                 lib/App/Prove/State/Result/Test.pm
1756                 lib/TAP/Base.pm
1757                 lib/TAP/Formatter/Base.pm
1758                 lib/TAP/Formatter/Color.pm
1759                 lib/TAP/Formatter/Console.pm
1760                 lib/TAP/Formatter/Console/ParallelSession.pm
1761                 lib/TAP/Formatter/Console/Session.pm
1762                 lib/TAP/Formatter/File.pm
1763                 lib/TAP/Formatter/File/Session.pm
1764                 lib/TAP/Formatter/Session.pm
1765                 lib/TAP/Harness.pm
1766                 lib/TAP/Object.pm
1767                 lib/TAP/Parser.pm
1768                 lib/TAP/Parser/Aggregator.pm
1769                 lib/TAP/Parser/Grammar.pm
1770                 lib/TAP/Parser/Iterator.pm
1771                 lib/TAP/Parser/Iterator/Array.pm
1772                 lib/TAP/Parser/Iterator/Process.pm
1773                 lib/TAP/Parser/Iterator/Stream.pm
1774                 lib/TAP/Parser/IteratorFactory.pm
1775                 lib/TAP/Parser/Multiplexer.pm
1776                 lib/TAP/Parser/Result.pm
1777                 lib/TAP/Parser/Result/Bailout.pm
1778                 lib/TAP/Parser/Result/Comment.pm
1779                 lib/TAP/Parser/Result/Plan.pm
1780                 lib/TAP/Parser/Result/Pragma.pm
1781                 lib/TAP/Parser/Result/Test.pm
1782                 lib/TAP/Parser/Result/Unknown.pm
1783                 lib/TAP/Parser/Result/Version.pm
1784                 lib/TAP/Parser/Result/YAML.pm
1785                 lib/TAP/Parser/ResultFactory.pm
1786                 lib/TAP/Parser/Scheduler.pm
1787                 lib/TAP/Parser/Scheduler/Job.pm
1788                 lib/TAP/Parser/Scheduler/Spinner.pm
1789                 lib/TAP/Parser/Source.pm
1790                 lib/TAP/Parser/SourceHandler.pm
1791                 lib/TAP/Parser/SourceHandler/Executable.pm
1792                 lib/TAP/Parser/SourceHandler/File.pm
1793                 lib/TAP/Parser/SourceHandler/Handle.pm
1794                 lib/TAP/Parser/SourceHandler/Perl.pm
1795                 lib/TAP/Parser/SourceHandler/RawTAP.pm
1796                 lib/TAP/Parser/Utils.pm
1797                 lib/TAP/Parser/YAMLish/Reader.pm
1798                 lib/TAP/Parser/YAMLish/Writer.pm
1799                 lib/Test/Harness.pm
1800                 t/source.t
1801                 ),
1802         ],
1803     },
1804
1805     'Test::Simple' => {
1806         'MAINTAINER'   => 'mschwern',
1807         'DISTRIBUTION' => 'MSCHWERN/Test-Simple-0.98.tar.gz',
1808         'FILES'        => q[cpan/Test-Simple],
1809         'EXCLUDED'     => [
1810             qw( .perlcriticrc
1811                 .perltidyrc
1812                 t/00compile.t
1813                 t/pod.t
1814                 t/pod-coverage.t
1815                 t/Builder/reset_outputs.t
1816                 lib/Test/Builder/IO/Scalar.pm
1817                 ),
1818         ],
1819         'UPSTREAM' => 'cpan',
1820     },
1821
1822     'Text::Abbrev' => {
1823         'MAINTAINER'   => 'p5p',
1824         'DISTRIBUTION' => 'FLORA/Text-Abbrev-1.01.tar.gz',
1825         'FILES'        => q[dist/Text-Abbrev],
1826         'EXCLUDED'     => [qr{^t/release-.*\.t}],
1827         'UPSTREAM'     => 'blead',
1828     },
1829
1830     'Text::Balanced' => {
1831         'MAINTAINER'   => 'dmanura',
1832         'DISTRIBUTION' => 'ADAMK/Text-Balanced-2.02.tar.gz',
1833         'FILES'        => q[cpan/Text-Balanced],
1834         'EXCLUDED'     => [
1835             qw( t/97_meta.t
1836                 t/98_pod.t
1837                 t/99_pmv.t
1838                 ),
1839         ],
1840         'CUSTOMIZED'   => [
1841             qw( t/01_compile.t
1842                 t/02_extbrk.t
1843                 t/03_extcbk.t
1844                 t/04_extdel.t
1845                 t/05_extmul.t
1846                 t/06_extqlk.t
1847                 t/07_exttag.t
1848                 t/08_extvar.t
1849                 t/09_gentag.t
1850                 ),
1851         ],
1852         'UPSTREAM' => 'cpan',
1853     },
1854
1855     'Text::ParseWords' => {
1856         'MAINTAINER'   => 'chorny',
1857         'DISTRIBUTION' => 'CHORNY/Text-ParseWords-3.27.zip',
1858         'FILES'        => q[cpan/Text-ParseWords],
1859         'EXCLUDED'     => ['t/pod.t'],
1860
1861         # For the benefit of make_ext.pl, we have to have this accessible:
1862         'MAP' => {
1863             'ParseWords.pm' => 'cpan/Text-ParseWords/lib/Text/ParseWords.pm',
1864             ''              => 'cpan/Text-ParseWords/',
1865         },
1866         'UPSTREAM' => undef,
1867     },
1868
1869     'Text::Soundex' => {
1870         'MAINTAINER'   => 'markm',
1871         'DISTRIBUTION' => 'MARKM/Text-Soundex-3.03.tar.gz',
1872         'FILES'        => q[cpan/Text-Soundex],
1873         'MAP'          => {
1874             '' => 'cpan/Text-Soundex/',
1875
1876             # XXX these two files are clearly related,
1877             # but they appear to have diverged
1878             # considerably over the years
1879             'test.pl' => 'cpan/Text-Soundex/t/Soundex.t',
1880         },
1881         'UPSTREAM' => undef,
1882     },
1883
1884     'Text-Tabs+Wrap' => {
1885         'MAINTAINER'   => 'muir',
1886         'DISTRIBUTION' => 'MUIR/modules/Text-Tabs+Wrap-2009.0305.tar.gz',
1887         'FILES'        => q[cpan/Text-Tabs],
1888         'EXCLUDED'   => ['t/dnsparks.t'],    # see af6492bf9e
1889         'UPSTREAM'   => 'cpan',
1890         'CUSTOMIZED' => [
1891             qw( t/fill.t
1892                 t/tabs.t
1893                 ),
1894         ],
1895     },
1896
1897     'Thread::Queue' => {
1898         'MAINTAINER'   => 'jdhedden',
1899         'DISTRIBUTION' => 'JDHEDDEN/Thread-Queue-2.12.tar.gz',
1900         'FILES'        => q[dist/Thread-Queue],
1901         'EXCLUDED'     => [
1902             qw( examples/queue.pl
1903                 t/00_load.t
1904                 t/99_pod.t
1905                 t/test.pl
1906                 ),
1907         ],
1908         'UPSTREAM' => 'blead',
1909     },
1910
1911     'Thread::Semaphore' => {
1912         'MAINTAINER'   => 'jdhedden',
1913         'DISTRIBUTION' => 'JDHEDDEN/Thread-Semaphore-2.12.tar.gz',
1914         'FILES'        => q[dist/Thread-Semaphore],
1915         'EXCLUDED'     => [
1916             qw( examples/semaphore.pl
1917                 t/00_load.t
1918                 t/99_pod.t
1919                 t/test.pl
1920                 ),
1921         ],
1922         'UPSTREAM' => 'blead',
1923     },
1924
1925     'threads' => {
1926         'MAINTAINER'   => 'jdhedden',
1927         'DISTRIBUTION' => 'JDHEDDEN/threads-1.86.tar.gz',
1928         'FILES'        => q[dist/threads],
1929         'EXCLUDED'     => [
1930             qr{^examples/},
1931             qw( t/pod.t
1932                 t/test.pl
1933                 threads.h
1934                 ),
1935         ],
1936         'UPSTREAM' => 'blead',
1937     },
1938
1939     'threads::shared' => {
1940         'MAINTAINER'   => 'jdhedden',
1941         'DISTRIBUTION' => 'JDHEDDEN/threads-shared-1.40.tar.gz',
1942         'FILES'        => q[dist/threads-shared],
1943         'EXCLUDED'     => [
1944             qw( examples/class.pl
1945                 shared.h
1946                 t/pod.t
1947                 t/test.pl
1948                 ),
1949         ],
1950         'UPSTREAM' => 'blead',
1951     },
1952
1953     'Tie::File' => {
1954         'MAINTAINER'   => 'mjd',
1955         'DISTRIBUTION' => 'TODDR/Tie-File-0.98.tar.gz',
1956         'FILES'        => q[dist/Tie-File],
1957         'UPSTREAM'     => 'blead',
1958     },
1959
1960     'Tie::Hash' => {
1961         'MAINTAINER' => 'p5p',
1962         'FILES'      => q[lib/Tie/Hash.{pm,t}],
1963         'UPSTREAM'   => 'blead',
1964     },
1965
1966     'Tie::Hash::NamedCapture' => {
1967         'MAINTAINER' => 'p5p',
1968         'FILES'      => q[ext/Tie-Hash-NamedCapture],
1969         'UPSTREAM'   => 'blead',
1970     },
1971
1972     'Tie::Memoize' => {
1973         'MAINTAINER' => 'p5p',
1974         'FILES'      => q[ext/Tie-Memoize],
1975         'UPSTREAM'   => 'blead',
1976     },
1977
1978     'Tie::RefHash' => {
1979         'MAINTAINER'   => 'nuffin',
1980         'DISTRIBUTION' => 'FLORA/Tie-RefHash-1.39.tar.gz',
1981         'FILES'        => q[cpan/Tie-RefHash],
1982         'UPSTREAM'     => 'cpan',
1983     },
1984
1985     'Time::HiRes' => {
1986         'MAINTAINER'   => 'zefram',
1987         'DISTRIBUTION' => 'ZEFRAM/Time-HiRes-1.9725.tar.gz',
1988         'FILES'        => q[cpan/Time-HiRes],
1989         'UPSTREAM'     => 'cpan',
1990     },
1991
1992     'Time::Local' => {
1993         'MAINTAINER'   => 'drolsky',
1994         'DISTRIBUTION' => 'DROLSKY/Time-Local-1.2300.tar.gz',
1995         'FILES'        => q[cpan/Time-Local],
1996         'EXCLUDED'     => [
1997             qw( t/pod-coverage.t
1998                 t/pod.t
1999                 ),
2000             qr{^t/release-.*\.t},
2001         ],
2002         'UPSTREAM' => 'cpan',
2003     },
2004
2005     'Time::Piece' => {
2006         'MAINTAINER'   => 'msergeant',
2007         'DISTRIBUTION' => 'MSERGEANT/Time-Piece-1.20.tar.gz',
2008         'FILES'        => q[cpan/Time-Piece],
2009         'UPSTREAM'     => undef,
2010     },
2011
2012     'Unicode::Collate' => {
2013         'MAINTAINER'   => 'sadahiro',
2014         'DISTRIBUTION' => 'SADAHIRO/Unicode-Collate-0.89.tar.gz',
2015         'FILES'        => q[cpan/Unicode-Collate],
2016         'EXCLUDED'     => [
2017             qr{N$},
2018             qr{^data/},
2019             qr{^gendata/},
2020             qw( disableXS
2021                 enableXS
2022                 mklocale
2023                 ),
2024         ],
2025         'UPSTREAM' => 'first-come',
2026     },
2027
2028     'Unicode::Normalize' => {
2029         'MAINTAINER'   => 'sadahiro',
2030         'DISTRIBUTION' => 'SADAHIRO/Unicode-Normalize-1.14.tar.gz',
2031         'FILES'        => q[cpan/Unicode-Normalize],
2032         'EXCLUDED'     => [
2033             qw( MANIFEST.N
2034                 Normalize.pmN
2035                 disableXS
2036                 enableXS
2037                 ),
2038         ],
2039         'UPSTREAM' => 'first-come',
2040     },
2041
2042     'Unicode::UCD' => {
2043         'MAINTAINER' => 'blead',
2044         'FILES'      => q[lib/Unicode/UCD.{pm,t}],
2045         'UPSTREAM'   => 'blead',
2046     },
2047
2048     'version' => {
2049         'MAINTAINER'   => 'jpeacock',
2050         'DISTRIBUTION' => 'JPEACOCK/version-0.99.tar.gz',
2051         'FILES'        => q[lib/version.pm lib/version.pod lib/version],
2052         'EXCLUDED' => [
2053             qr{^t/.*\.t$},
2054             qr{^vutil/},
2055             'lib/version/typemap',
2056             't/survey_locales',
2057             'vperl/vpp.pm',
2058         ],
2059         'MAP' => {
2060             'lib/'           => 'lib/',
2061             't/'             => 'lib/version/t/'
2062         },
2063         'UPSTREAM' => undef,
2064     },
2065
2066     'vms' => {
2067         'MAINTAINER' => 'craig',
2068         'FILES'      => q[vms configure.com README.vms],
2069         'UPSTREAM'   => undef,
2070     },
2071
2072     'VMS::DCLsym' => {
2073         'MAINTAINER' => 'craig',
2074         'FILES'      => q[ext/VMS-DCLsym],
2075         'UPSTREAM'   => undef,
2076     },
2077
2078     'VMS::Stdio' => {
2079         'MAINTAINER' => 'craig',
2080         'FILES'      => q[ext/VMS-Stdio],
2081         'UPSTREAM'   => undef,
2082     },
2083
2084     'warnings' => {
2085         'MAINTAINER' => 'pmqs',
2086         'FILES'      => q[regen/warnings.pl
2087                  lib/warnings.{pm,t}
2088                  lib/warnings
2089                  t/lib/warnings
2090                 ],
2091         'UPSTREAM' => 'blead',
2092     },
2093
2094     'win32' => {
2095         'MAINTAINER' => 'jand',
2096         'FILES'      => q[win32 t/win32 README.win32 ext/Win32CORE],
2097         'UPSTREAM'   => undef,
2098     },
2099
2100     'Win32' => {
2101         'MAINTAINER'   => 'jand',
2102         'DISTRIBUTION' => "JDB/Win32-0.45.tar.gz",
2103         'FILES'        => q[cpan/Win32],
2104         'UPSTREAM'     => 'cpan',
2105     },
2106
2107     'Win32API::File' => {
2108         'MAINTAINER'   => 'chorny',
2109         'DISTRIBUTION' => 'CHORNY/Win32API-File-0.1200.tar.gz',
2110         'FILES'        => q[cpan/Win32API-File],
2111         'EXCLUDED'     => [
2112             qr{^ex/},
2113             't/pod.t',
2114         ],
2115         'UPSTREAM' => 'cpan',
2116     },
2117
2118     'XS::Typemap' => {
2119         'MAINTAINER' => 'p5p',
2120         'FILES'      => q[ext/XS-Typemap],
2121         'UPSTREAM'   => 'blead',
2122     },
2123
2124     'XSLoader' => {
2125         'MAINTAINER'   => 'saper',
2126         'DISTRIBUTION' => 'SAPER/XSLoader-0.15.tar.gz',
2127         'FILES'        => q[dist/XSLoader],
2128         'EXCLUDED'     => [
2129             qr{^eg/},
2130             qw( t/pod.t
2131                 t/podcover.t
2132                 t/portfs.t
2133                 ),
2134             'XSLoader.pm',    # we use XSLoader_pm.PL
2135         ],
2136         'UPSTREAM' => 'blead',
2137     },
2138
2139     's2p' => {
2140         'MAINTAINER' => 'laun',
2141         'FILES'      => q[x2p/s2p.PL],
2142         'UPSTREAM'   => undef,
2143     },
2144
2145     # this pseudo-module represents all the files under ext/ and lib/
2146     # that aren't otherwise claimed. This means that the following two
2147     # commands will check that every file under ext/ and lib/ is
2148     # accounted for, and that there are no duplicates:
2149     #
2150     #    perl Porting/Maintainers --checkmani lib ext
2151     #    perl Porting/Maintainers --checkmani
2152
2153     '_PERLLIB' => {
2154         'MAINTAINER' => 'p5p',
2155         'FILES'      => q[
2156                 ext/arybase/
2157                 ext/XS-APItest/
2158                 lib/CORE.pod
2159                 lib/Config.t
2160                 lib/Config/Extensions.{pm,t}
2161                 lib/DB.{pm,t}
2162                 lib/ExtUtils/Embed.pm
2163                 lib/ExtUtils/XSSymSet.pm
2164                 lib/ExtUtils/t/Embed.t
2165                 lib/ExtUtils/typemap
2166                 lib/Internals.t
2167                 lib/Net/hostent.{pm,t}
2168                 lib/Net/netent.{pm,t}
2169                 lib/Net/protoent.{pm,t}
2170                 lib/Net/servent.{pm,t}
2171                 lib/Pod/t/InputObjects.t
2172                 lib/Pod/t/Select.t
2173                 lib/Pod/t/Usage.t
2174                 lib/Pod/t/utils.t
2175                 lib/SelectSaver.{pm,t}
2176                 lib/Symbol.{pm,t}
2177                 lib/Thread.{pm,t}
2178                 lib/Tie/Array.pm
2179                 lib/Tie/Array/
2180                 lib/Tie/ExtraHash.t
2181                 lib/Tie/Handle.pm
2182                 lib/Tie/Handle/
2183                 lib/Tie/Scalar.{pm,t}
2184                 lib/Tie/StdHandle.pm
2185                 lib/Tie/SubstrHash.{pm,t}
2186                 lib/Time/gmtime.{pm,t}
2187                 lib/Time/localtime.{pm,t}
2188                 lib/Time/tm.pm
2189                 lib/UNIVERSAL.pm
2190                 lib/Unicode/README
2191                 lib/User/grent.{pm,t}
2192                 lib/User/pwent.{pm,t}
2193                 lib/blib.{pm,t}
2194                 lib/bytes.{pm,t}
2195                 lib/bytes_heavy.pl
2196                 lib/_charnames.pm
2197                 lib/charnames.{pm,t}
2198                 lib/dbm_filter_util.pl
2199                 lib/deprecate.pm
2200                 lib/dumpvar.{pl,t}
2201                 lib/feature.{pm,t}
2202                 lib/feature/
2203                 lib/filetest.{pm,t}
2204                 lib/h2ph.t
2205                 lib/h2xs.t
2206                 lib/integer.{pm,t}
2207                 lib/less.{pm,t}
2208                 lib/locale.{pm,t}
2209                 lib/open.{pm,t}
2210                 lib/overload/numbers.pm
2211                 lib/overloading.{pm,t}
2212                 lib/perl5db.{pl,t}
2213                 lib/perl5db/
2214                 lib/sort.{pm,t}
2215                 lib/strict.{pm,t}
2216                 lib/subs.{pm,t}
2217                 lib/unicore/
2218                 lib/utf8.{pm,t}
2219                 lib/utf8_heavy.pl
2220                 lib/vars{.pm,.t,_carp.t}
2221                 lib/vmsish.{pm,t}
2222                 ],
2223         'UPSTREAM' => 'blead',
2224     },
2225 );
2226
2227 # legacy CPAN flag
2228 for ( values %Modules ) {
2229     $_->{CPAN} = !!$_->{DISTRIBUTION};
2230 }
2231
2232 1;