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