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