Bug 11559: (QA followup) switch to new delimiter, fix minor issues
[koha.git] / C4 / Installer / PerlDependencies.pm
1 package C4::Installer::PerlDependencies;
2
3 use warnings;
4 use strict;
5
6 our $PERL_DEPS = {
7     'Plack::Middleware::ReverseProxy' => {
8         'usage'    => 'Plack',
9         'required' => '1',
10         'min_ver'  => '0.14'
11     },
12     'XML::LibXSLT' => {
13         'usage'    => 'Core',
14         'required' => '1',
15         'min_ver'  => '1.59'
16     },
17     'Text::CSV::Encoded' => {
18         'usage'    => 'Core',
19         'required' => '1',
20         'min_ver'  => '0.09'
21     },
22     'Storable' => {
23         'usage'    => 'Core',
24         'required' => '1',
25         'min_ver'  => '2.20'
26     },
27     'PDF::API2' => {
28         'usage'    => 'Core',
29         'required' => '1',
30         'min_ver'  => '2'
31     },
32     'Text::CSV_XS' => {
33         'usage'    => 'Core',
34         'required' => '1',
35         'min_ver'  => '0.32'
36     },
37     'Schedule::At' => {
38         'usage'    => 'Core',
39         'required' => '1',
40         'min_ver'  => '1.06'
41     },
42     'MIME::Lite' => {
43         'usage'    => 'Core',
44         'required' => '1',
45         'min_ver'  => '3'
46     },
47     'GD' => {
48         'usage'    => 'Patron Images Feature',
49         'required' => '0',
50         'min_ver'  => '2.39'
51     },
52     'List::MoreUtils' => {
53         'usage'    => 'Core',
54         'required' => '1',
55         'min_ver'  => '0.21'
56     },
57     'DBI' => {
58         'usage'    => 'Core',
59         'required' => '1',
60         'min_ver'  => '1.53'
61     },
62     'DBIx::Class::Schema::Loader' => {
63         'usage'    => 'Core',
64         'required' => '1',
65         'min_ver'  => '0.07039'
66     },
67     'Net::Z3950::ZOOM' => {
68         'usage'    => 'Core',
69         'required' => '1',
70         'min_ver'  => '1.16'
71     },
72     'Biblio::EndnoteStyle' => {
73         'usage'    => 'Core',
74         'required' => '1',
75         'min_ver'  => '0.05'
76     },
77     'Date::Calc' => {
78         'usage'    => 'Core',
79         'required' => '1',
80         'min_ver'  => '5.4'
81     },
82     'Mail::Sendmail' => {
83         'usage'    => 'Core',
84         'required' => '1',
85         'min_ver'  => '0.79'
86     },
87     'DBD::mysql' => {
88         'usage'    => 'Core',
89         'required' => '1',
90         'min_ver'  => '4.004'
91     },
92     'XML::LibXML' => {
93         'usage'    => 'Core',
94         'required' => '1',
95         'min_ver'  => '1.59'
96     },
97     'Email::Date' => {
98         'usage'    => 'Core',
99         'required' => '1',
100         'min_ver'  => '1.103'
101     },
102     'HTML::Scrubber' => {
103         'usage'    => 'Core',
104         'required' => '1',
105         'min_ver'  => '0.08'
106     },
107     'XML::Dumper' => {
108         'usage'    => 'Core',
109         'required' => '1',
110         'min_ver'  => '0.81'
111     },
112     'URI::Escape' => {
113         'usage'    => 'Core',
114         'required' => '1',
115         'min_ver'  => '3.31'
116     },
117     'Unicode::Normalize' => {
118         'usage'    => 'Core',
119         'required' => '1',
120         'min_ver'  => '0.32'
121     },
122     'Text::Wrap' => {
123         'usage'    => 'Core',
124         'required' => '1',
125         'min_ver'  => '2005.082401'
126     },
127     'Test' => {
128         'usage'    => 'Core',
129         'required' => '1',
130         'min_ver'  => '1.25'
131     },
132     'Locale::PO' => {
133         'usage'    => 'Core',
134         'required' => '1',
135         'min_ver'  => '0.17'
136     },
137     'LWP::Simple' => {
138         'usage'    => 'Core',
139         'required' => '1',
140         'min_ver'  => '1.41'
141     },
142     'DBD::SQLite2' => {
143         'usage'    => 'Offline Circulation Feature',
144         'required' => '0',
145         'min_ver'  => '0.33'
146     },
147     'SMS::Send' => {
148         'usage'    => 'SMS Messaging Feature',
149         'required' => '0',
150         'min_ver'  => '0.05'
151     },
152     'XML::SAX::ParserFactory' => {
153         'usage'    => 'Core',
154         'required' => '1',
155         'min_ver'  => '1.01'
156     },
157     'Test::Harness' => {
158         'usage'    => 'Core',
159         'required' => '1',
160         'min_ver'  => '2.56'
161     },
162     'PDF::API2::Util' => {
163         'usage'    => 'Core',
164         'required' => '1',
165         'min_ver'  => '2'
166     },
167     'Class::Accessor' => {
168         'usage'    => 'Core',
169         'required' => '1',
170         'min_ver'  => '0.3'
171     },
172     'HTTP::OAI' => {
173         'usage'    => 'Core',
174         'required' => '1',
175         'min_ver'  => '3.2'
176     },
177     'LWP::UserAgent' => {
178         'usage'    => 'Core',
179         'required' => '1',
180         'min_ver'  => '2.033'
181     },
182     'MIME::Base64' => {
183         'usage'    => 'Core',
184         'required' => '1',
185         'min_ver'  => '3.07'
186     },
187     'Algorithm::CheckDigits' => {
188         'usage'    => 'Core',
189         'required' => '1',
190         'min_ver'  => '0.5'
191     },
192     'Net::LDAP' => {
193         'usage'    => 'LDAP Interface Feature',
194         'required' => '0',
195         'min_ver'  => '0.33'
196     },
197     'PDF::Reuse' => {
198         'usage'    => 'Core',
199         'required' => '1',
200         'min_ver'  => '0.36'
201     },
202     'Text::PDF' => {
203         'usage'    => 'Core',
204         'required' => '1',
205         'min_ver'  => '0.29',
206         # We don't use this directly, but it's not a required dependency for
207         # PDF::Reuse however we need it via that or tests fail.
208     },
209     'Font::TTF' => {
210         'usage'    => 'Core',
211         'required' => '1',
212         'min_ver'  => '0.45',
213         # Also needed for our use of PDF::Reuse
214     },
215     'DateTime' => {
216         'usage'    => 'Core',
217         'required' => '1',
218         'min_ver'  => '0.58'
219     },
220     'DateTime::TimeZone' => {
221         'usage'    => 'Core',
222         'required' => '1',
223         'min_ver'  => '1.20'
224     },
225     'DateTime::Format::MySQL' => {
226         'usage'    => 'Core',
227         'required' => '1',
228         'min_ver'  => '0.04'
229     },
230     'DateTime::Set' => {
231         'usage'    => 'Core',
232         'required' => '1',
233         'min_ver'  => '0.28'
234     },
235     'DateTime::Event::ICal' => {
236         'usage'    => 'Core',
237         'required' => '1',
238         'min_ver'  => '0.08'
239     },
240     'Graphics::Magick' => {
241         'usage'    => 'Patron Card Creator Feature',
242         'required' => '0',
243         'min_ver'  => '1.3.05'
244     },
245     'MARC::Charset' => {
246         'usage'    => 'Core',
247         'required' => '1',
248         'min_ver'  => '0.98'
249     },
250     'Memoize::Memcached' => {
251         'usage'    => 'Memcached Feature (Experimental)',
252         'required' => '0',
253         'min_ver'  => '0.03'
254     },
255     'Cache::Memcached::Fast' => {
256         'usage'    => 'Caching',
257         'required' => '0',
258         'min_ver'  => '0.17'
259     },
260     'Cache::FastMmap' => {
261         'usage'    => 'Caching',
262         'required' => '0',
263         'min_ver'  => '1.34'
264     },
265     'Cache::Memory' => {
266         'usage'    => 'Caching',
267         'required' => '0',
268         'min_ver'  => '2.04'
269     },
270     'Net::LDAP::Filter' => {
271         'usage'    => 'LDAP Interface Feature',
272         'required' => '0',
273         'min_ver'  => '0.14'
274     },
275     'Text::CSV' => {
276         'usage'    => 'Core',
277         'required' => '1',
278         'min_ver'  => '0.01'
279     },
280     'PDF::Table' => {
281         'usage'    => 'Core',
282         'required' => '1',
283         'min_ver'  => '0.9.3'
284     },
285     'CGI' => {
286         'usage'    => 'Core',
287         'required' => '1',
288         'min_ver'  => '3.15'
289     },
290     'Class::Factory::Util' => {
291         'usage'    => 'Core',
292         'required' => '1',
293         'min_ver'  => '1.6'
294     },
295     'List::Util' => {
296         'usage'    => 'Core',
297         'required' => '1',
298         'min_ver'  => '1.18'
299     },
300     'Lingua::Stem::Snowball' => {
301         'usage'    => 'Core',
302         'required' => '1',
303         'min_ver'  => '0.952'
304     },
305     'Time::localtime' => {
306         'usage'    => 'Core',
307         'required' => '1',
308         'min_ver'  => '1.02'
309     },
310     'Digest::SHA' => {
311         'usage'    => 'Core',
312         'required' => '1',
313         'min_ver'  => '5.43'
314     },
315     'MARC::Crosswalk::DublinCore' => {
316         'usage'    => 'Core',
317         'required' => '1',
318         'min_ver'  => '0.02'
319     },
320     'CGI::Session::Serialize::yaml' => {
321         'usage'    => 'Core',
322         'required' => '1',
323         'min_ver'  => '4.2'
324     },
325     'CGI::Carp' => {
326         'usage'    => 'Core',
327         'required' => '1',
328         'min_ver'  => '1.29'
329     },
330     'Getopt::Long' => {
331         'usage'    => 'Core',
332         'required' => '1',
333         'min_ver'  => '2.35'
334     },
335     'Term::ANSIColor' => {
336         'usage'    => 'Core',
337         'required' => '1',
338         'min_ver'  => '1.1'
339     },
340     'Getopt::Std' => {
341         'usage'    => 'Core',
342         'required' => '1',
343         'min_ver'  => '1.05'
344     },
345     'Data::Dumper' => {
346         'usage'    => 'Core',
347         'required' => '1',
348         'min_ver'  => '2.121'
349     },
350     'Lingua::Stem' => {
351         'usage'    => 'Core',
352         'required' => '1',
353         'min_ver'  => '0.82'
354     },
355     'MIME::QuotedPrint' => {
356         'usage'    => 'Core',
357         'required' => '1',
358         'min_ver'  => '3.07'
359     },
360     'IPC::Cmd' => {
361         'usage'    => 'Core',
362         'required' => '1',
363         'min_ver'  => '0.46'
364     },
365     'HTTP::Cookies' => {
366         'usage'    => 'Core',
367         'required' => '1',
368         'min_ver'  => '1.39'
369     },
370     'HTTP::Request::Common' => {
371         'usage'    => 'Core',
372         'required' => '1',
373         'min_ver'  => '1.26'
374     },
375     'PDF::Reuse::Barcode' => {
376         'usage'    => 'Core',
377         'required' => '1',
378         'min_ver'  => '0.05'
379     },
380     'Test::More' => {
381         'usage'    => 'Core',
382         'required' => '1',
383         'min_ver'  => '0.8'
384     },
385     'GD::Barcode::UPCE' => {
386         'usage'    => 'Core',
387         'required' => '1',
388         'min_ver'  => '1.1'
389     },
390     'Text::Iconv' => {
391         'usage'    => 'Core',
392         'required' => '1',
393         'min_ver'  => '1.7'
394     },
395     'File::Temp' => {
396         'usage'    => 'Core',
397         'required' => '1',
398         'min_ver'  => '0.16'
399     },
400     'Date::Manip' => {
401         'usage'    => 'Core',
402         'required' => '1',
403         'min_ver'  => '5.44'
404     },
405     'Locale::Language' => {
406         'usage'    => 'Core',
407         'required' => '1',
408         'min_ver'  => '2.07'
409     },
410     'PDF::API2::Simple' => {
411         'usage'    => 'Core',
412         'required' => '1',
413         'min_ver'  => '1'
414     },
415     'XML::RSS' => {
416         'usage'    => 'Core',
417         'required' => '1',
418         'min_ver'  => '1.31'
419     },
420     'XML::Simple' => {
421         'usage'    => 'Core',
422         'required' => '1',
423         'min_ver'  => '2.14'
424     },
425     'PDF::API2::Page' => {
426         'usage'    => 'Core',
427         'required' => '1',
428         'min_ver'  => '2'
429     },
430     'CGI::Session' => {
431         'usage'    => 'Core',
432         'required' => '1',
433         'min_ver'  => '4.2'
434     },
435     'CGI::Session::Driver::memcached' => {
436         'usage'    => 'Memcached Feature (Experimental)',
437         'required' => '0',
438         'min_ver'  => '0.04',
439     },
440     'POSIX' => {
441         'usage'    => 'Core',
442         'required' => '1',
443         'min_ver'  => '1.09'
444     },
445     'Digest::MD5' => {
446         'usage'    => 'Core',
447         'required' => '1',
448         'min_ver'  => '2.36'
449     },
450     'Authen::CAS::Client' => {
451         'usage'    => 'Core',
452         'required' => '1',
453         'min_ver'  => '0.05'
454     },
455     'Data::ICal' => {
456         'usage'    => 'Core',
457         'required' => '1',
458         'min_ver'  => '0.13'
459     },
460     'MARC::Record' => {
461         'usage'    => 'Core',
462         'required' => '1',
463         'min_ver'  => '2.0.6'
464     },
465     'Locale::Currency::Format' => {
466         'usage'    => 'Core',
467         'required' => '1',
468         'min_ver'  => '1.28'
469     },
470     'Number::Format' => {
471         'usage'    => 'Core',
472         'required' => '1',
473         'min_ver'  => '1.52'
474     },
475     'YAML::Syck' => {
476         'usage'    => 'Core',
477         'required' => '1',
478         'min_ver'  => '0.71'
479     },
480     'Time::HiRes' => {
481         'usage'    => 'Core',
482         'required' => '1',
483         'min_ver'  => '1.86'
484     },
485     'MARC::File::XML' => {
486         'usage'    => 'Core',
487         'required' => '1',
488         'min_ver'  => '1.0.1'
489     },
490     'XML::SAX::Writer' => {
491         'usage'    => 'Core',
492         'required' => '1',
493         'min_ver'  => '0.44'
494     },
495     'JSON' => {
496         'usage'    => 'Core',
497         'required' => '1',
498         'min_ver'  => '2.07'
499     },
500     'YAML' => {
501         'usage'    => 'Core',
502         'required' => '1',
503         'min_ver'  => '0.71'
504     },
505     'UNIVERSAL::require' => {
506         'usage'    => 'SipServer',
507         'required' => '0',
508         'min_ver'  => '0.13',
509     },
510     'Net::Server' => {
511         'usage'    => 'SipServer',
512         'required' => '0',
513         'min_ver'  => '0.97',
514     },
515     'Business::ISBN' => {
516         'usage'    => 'Core',
517         'required' => '1',
518         'min_ver'  => '2.05',
519     },
520     'Template' => {
521         'usage'    => 'Core',
522         'required' => '1',
523         'min_ver'  => '2.22',
524       },
525     'Template::Plugin::Stash' => {
526         'usage'    => 'Debugging',
527         'required' => '0',
528         'min_ver'  => '1.006',
529       },
530     'Gravatar::URL' => {
531         'usage'    => 'Photos in OPAC reviews',
532         'required' => '0',
533         'min_ver'  => '1.03',
534     },
535     'Modern::Perl' => {
536         'usage'    => 'Core',
537         'required' => '1',
538         'min_ver'  => '1.03',
539     },
540     'DateTime::Format::ICal' => {
541         'usage'    => 'Core',
542         'required' => '1',
543         'min_ver'  => '0.09',
544     },
545     'Template::Plugin::HtmlToText' => {
546         'usage'    => 'Core',
547         'required' => '1',
548         'min_ver'  => '0.03',
549     },
550     'Template::Plugin::JSON::Escape' => {
551         'usage'    => 'Core',
552         'required' => '1',
553         'min_ver'  => '0.02',
554     },
555     'DBD::Mock' => {
556         'usage'    => 'Core',
557         'required' => '1',
558         'min_ver'  => '1.39'
559     },
560     'Test::MockObject' => {
561         'usage'    => 'Core',
562         'required' => '0',
563         'min_ver'  => '1.09',
564     },
565     'Test::MockModule' => {
566         'usage'    => 'Core',
567         'required' => '1',
568         'min_ver'  => '0.05',
569     },
570     'Test::Warn' => {
571         'usage'    => 'Core',
572         'required' => '0',
573         'min_ver'  => '0.21',
574     },
575     'Test::Strict' => {
576         'usage'    => 'Core',
577         'required' => '0',
578         'min_ver'  => '0.14',
579     },
580     'Test::Deep' => {
581         'usage'    => 'Core',
582         'required' => '0',
583         'min_ver'  => '0.106',
584     },
585     'Test::YAML::Valid' => {
586         'usage'    => 'Core',
587         'required' => '0',
588         'min_ver'  => '0.04',
589     },
590     'Text::Unaccent' => {
591         'usage'    => 'Core',
592         'required' => '1',
593         'min_ver'  => '1.08',
594     },
595     'HTML::FormatText' => {
596         'usage'    => 'Core',
597         'required' => '1',
598         'min_ver'  => '1.23',
599     },
600     'AnyEvent' => {
601         'usage'    => 'Command line scripts',
602         'required' => '0',
603         'min_ver'  => '5.0',
604     },
605     'AnyEvent::HTTP' => {
606         'usage'    => 'Command line scripts',
607         'required' => '0',
608         'min_ver'  => '2.13',
609     },
610     'Moo' => {
611         'usage'    => 'Core',
612         'required' => '0',
613         'min_ver'  => '1',
614     },
615     'String::Random' => {
616         'usage'    => 'OpacSelfRegistration',
617         'required' => '1',
618         'min_ver'  => '0.22',
619     },
620     'File::Temp' => {
621         'usage'    => 'Plugins',
622         'required' => '0',
623         'min_ver'  => '0.22',
624     },
625     'File::Copy' => {
626         'usage'    => 'Plugins',
627         'required' => '0',
628         'min_ver'  => '2.08',
629     },
630     'File::Path' => {
631         'usage'    => 'Plugins',
632         'required' => '0',
633         'min_ver'  => '2.07',
634     },
635     'Archive::Extract' => {
636         'usage'    => 'Plugins',
637         'required' => '0',
638         'min_ver'  => '0.60',
639     },
640     'Archive::Zip' => {
641         'usage'    => 'Plugins',
642         'required' => '0',
643         'min_ver'  => '1.30',
644     },
645     'Module::Load::Conditional' => {
646         'usage'    => 'Plugins',
647         'required' => '0',
648         'min_ver'  => '0.38',
649     },
650     'Module::Bundled::Files' => {
651         'usage'    => 'Plugins',
652         'required' => '0',
653         'min_ver'  => '0.03',
654     },
655     'Module::Pluggable' => {
656         'usage'    => 'Plugins',
657         'required' => '0',
658         'min_ver'  => '3.9',
659     },
660     'File::Slurp' => {
661         'usage'    => 'Command line scripts',
662         'required' => '0',
663         'min_ver'  => '9999.13',
664     },
665     'Test::WWW::Mechanize' => {
666         'usage'    => 'Testing suite',
667         'required' => '0',
668         'min_ver'  => '1.44',
669     },
670     'Library::CallNumber::LC' => {
671         'usage'    => 'Core',
672         'required' => '1',
673         'min_ver'  => '0.22',
674     },
675     'Crypt::Eksblowfish::Bcrypt' => {
676         'usage'    => 'Password storage',
677         'required' => '1',
678         'min_ver'  => '0.008',
679     },
680     'HTTPD::Bench::ApacheBench' => {
681         'usage'    => 'Load testing',
682         'required' => '0',
683         'min_ver'  => '0.73',
684     },
685     'Email::Valid' => {
686         'usage'    => 'Core',
687         'required' => '1',
688         'min_ver'  => '0.190',
689     },
690     'OpenOffice::OODoc' => {
691         usage      => 'Export',
692         required   => 1,
693         min_ver    => '2.125',
694     },
695     'Locale::Maketext' => {
696         'usage'    => 'Core',
697         'required' => '1',
698         'min_ver'  => '1.19',
699     },
700     'Locale::Maketext::Lexicon' => {
701         'usage'    => 'Core',
702         'required' => '1',
703         'min_ver'  => '0.91',
704     },
705     'LWP::Protocol::https' => {
706         'usage'    => 'OverDrive integration',
707         'required' => '0',
708         'min_ver'  => '5.836',
709     },
710     'Test::DBIx::Class' => {
711         'usage'    => 'Testing modules utilising DBIx::Class',
712         'required' => '0',
713         'min_ver'  => '0.42',
714     },
715     'Text::Bidi'   => {
716         'usage'    => 'Label batch PDF',
717         'required' => '1',
718         'min_ver'  => '0.03',
719     },
720     'SOAP::Lite' => {
721         'usage'    => 'Norwegian national library card',
722         'required' => '0',
723         'min_ver'  => '0.712',
724     },
725     'Crypt::GCrypt' => {
726         'usage'    => 'Norwegian national library card',
727         'required' => '0',
728         'min_ver'  => '1.24',
729     },
730     'Convert::BaseN' => {
731         'usage'    => 'Norwegian national library card',
732         'required' => '0',
733         'min_ver'  => '0.01',
734     },
735     'Digest::SHA' => {
736         'usage'    => 'Norwegian national library card',
737         'required' => '0',
738         'min_ver'  => '5.61',
739     },
740     'PDF::FromHTML' => {
741         'usage'    => 'Discharge generation',
742         'required' => '0',
743         'min_ver'  => '0.31',
744     },
745     'Devel::Cover' => {
746         'usage'    => 'Test code coverage',
747         'required' => '0',
748         'min_ver'  => '0.89',
749     },
750     'Log::Log4perl' => {
751         'usage'    => 'Core',
752         'required' => '1',
753         'min_ver'  => '1.29',
754     },
755     'XML::Writer' => {
756         'usage'    => 'Command line scripts',
757         'required' => '0',
758         'min_ver'  => '0.614',
759     },
760     'UUID' => {
761         'usage'    => 'Professional cataloging interface',
762         'required' => '1',
763         'min_ver'  => '0.05',
764     },
765 };
766
767 1;
768
769 __END__
770
771 =head1 NAME
772
773 C4::Installer::PerlDependencies
774
775 =head1 ABSTRACT
776
777 A module for cataloging Koha Perl dependencies.
778
779 =head1 SYNOPSIS
780
781 This module's sole purpose for existence is to provide a single location to catalog all Koha Perl dependencies. New dependencies should be added to the
782 end of the outer hash and follow the key/value pattern used in the other dependencies.
783
784 =head2 Debian
785
786 If you change the list of dependencies, and you use Debian, please also
787 run the debian/update-control script and commit the modified version of
788 debian/control into git as well. If you're not running Debian, don't
789 worry about it.
790
791 =head1 AUTHOR
792
793 Chris Nighswonger <cnighswonger AT foundations DOT edu>
794
795 =head1 COPYRIGHT
796
797 Copyright 2010 Foundations Bible College.
798
799 =head1 LICENSE
800
801 This file is part of Koha.
802
803 Koha is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software
804 Foundation; either version 2 of the License, or (at your option) any later version.
805
806 You should have received a copy of the GNU General Public License along with Koha; if not, write to the Free Software Foundation, Inc., 51 Franklin Street,
807 Fifth Floor, Boston, MA 02110-1301 USA.
808
809 =head1 DISCLAIMER OF WARRANTY
810
811 Koha is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
812 A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
813
814 =cut