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