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