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