Created attachment 11589 [details] [review] Bug 8636: Add missing dependencies Cache::Memcached::Fast is used for caching Test::YAML::Valid is used for tests
Created attachment 11598 [details] [review] [SIGNED-OFF] Bug 8636: Add missing dependencies Cache::Memcached::Fast is used for caching Test::YAML::Valid is used for tests Signed-off-by: Marc Veron <veron@veron.ch> Dependencies appear as expected... ...and I see that they are not instaled yet on my server :-)
Jared, Are you sure we want Test::YAML::Valid as required? If it is just for tests, it seems it is optional.
(In reply to comment #3) > Jared, > Are you sure we want Test::YAML::Valid as required? If it is just for tests, > it seems it is optional. You are correct, it probably does not need to be required.
Created attachment 11737 [details] [review] Bug 8636: Add missing dependencies Cache::Memcached::Fast is used for caching Test::YAML::Valid is used for tests Signed-off-by: Marc Veron <veron@veron.ch> Dependencies appear as expected... ...and I see that they are not instaled yet on my server :-) Signed-off-by: Jonathan Druart <jonathan.druart@biblibre.com>
Jared, Could you confirm that the last patch is good for you ? Then I will mark it as passed QA.
(In reply to comment #6) > Jared, Could you confirm that the last patch is good for you ? > Then I will mark it as passed QA. Looks good to me.
Add 2 not required missing dependencies: Cache::Memcached::Fast Test::YAML::Valid Marked as Passed QA.
Patch pushed. (Not sure it's required for 3.8)
Half is, Test::YAML::Valid is needed in 3.8.x but not Cache::Memcached::Fast (3.8.4 use Cache::Memcached). Which reminds me, if 3.10 is switching we should remove that unneeded dependency. Ill rework this patch to just add the dependency on Test::YAML::Valid and push that.
Created attachment 11883 [details] [review] [3.8.x] Bug 8636 missing dependencies
Pushed to 3.8.x will be in 3.8.5
Created attachment 12765 [details] [review] Bug 8636: Add dependency on Test::Deep The test t/db_dependent/Koha.t uses Test::Deep to compare data structures, but that dependency was not listed for the installer.
Before patch Installed Required Module is Module Name Version Version Required -------------------------------------------------------------------------------------------- AnyEvent 0 * 5.0 No AnyEvent::HTTP 0 * 2.13 No CHI 0 * 0.36 No CHI::Driver::Memcached 0 * 0.12 No Time::Progress 0 * 1.7 No -------------------------------------------------------------------------------------------- Total modules reported: 5 * Module is missing or requires an upgrade. After patch Installed Required Module is Module Name Version Version Required -------------------------------------------------------------------------------------------- AnyEvent 0 * 5.0 No AnyEvent::HTTP 0 * 2.13 No CHI 0 * 0.36 No CHI::Driver::Memcached 0 * 0.12 No Test::Deep 0 * 0.106 No Time::Progress 0 * 1.7 No -------------------------------------------------------------------------------------------- Total modules reported: 6 * Module is missing or requires an upgrade. Works as advertised
Created attachment 12766 [details] [review] Bug 8636: Add dependency on Test::Deep The test t/db_dependent/Koha.t uses Test::Deep to compare data structures, but that dependency was not listed for the installer. Signed-off-by: Chris Cormack <chrisc@catalyst.net.nz>
Comment on attachment 12766 [details] [review] Bug 8636: Add dependency on Test::Deep This patch has been pushed
Fresh git install. Did the normal dselect steps. Made sure all the required items were installed. This left: $ ./koha_perl_deps.pl -m -u Installed Required Module is Module Name Version Version Required -------------------------------------------------------------------------------------------- AnyEvent 0 * 5.0 No AnyEvent::HTTP 0 * 2.13 No Cache::Memcached::Fast 0 * 0.17 No DBD::Mock 0 * 1.39 No Data::Pagination 0 * 0.44 No Data::Paginator 0 * 0.04 No Test::Deep 0 * 0.106 No Test::Warn 0 * 0.21 No Test::YAML::Valid 0 * 0.04 No -------------------------------------------------------------------------------------------- Total modules reported: 9 * Module is missing or requires an upgrade. However, upon attempting to 'make test'. The tests failed because Cache::Memcached::Fast and DBD::Mock were not installed. Once installed the 'make test' passed.
Here's another one: # Failed test 'use Koha::SearchEngine;' # at t/00-load.t line 48. # Tried to use 'Koha::SearchEngine'. # Error: Can't locate Moose.pm in @INC
Created attachment 13013 [details] [review] Bug 8636 - add Moose dependency to the dependencies Koha::SearchEngine requires moose, but it wasn't declared as a dependency.
(In reply to comment #19) > Koha::SearchEngine requires moose, but it wasn't declared as a > dependency. Hi Robin, Currently Solr is optionnal. So I think Moose could be mark as not required. Moreover the patch adds some lines in debian/control. I think it would be a different patch, don't you think ?
Well, the tests don't pass without it, so if it's optional they will have to be fixed. The changes to debian/control are somewhat related to this. Basically it's the updated dependencies across the whole lot.
Without this being fixed packages can not be built from master. This plus bug 8890 and bug 3652 really really should be in master before the 3.10 release.
(In reply to comment #21) > Well, the tests don't pass without it, so if it's optional they will have to > be fixed. The changes to debian/control are somewhat related to this. > Basically it's the updated dependencies across the whole lot. I don't understand if you are waiting for something from me :) Setting the dependance as "not required" isn't the good way? Which test doesn't pass ?
I just did a fresh git install again under Ubuntu. Here's the output of my tests. libmoose-perl somehow got installed as part of the dselect, because I didn't expressly install it -- though, libmoosex-storage-perl and libmoosex-types-perl are in the install_misc/ubuntu.packages file used for the dselect. And they are not listed in the install_misc/debian.packages file. t/00-load.t ......................... 126/? # Failed test 'use Koha::Cache::Memcached;' Bailout called. Further testing stopped: ***** PROBLEMS LOADING FILE 'Koha::Cache::Memcached' # at t/00-load.t line 47. # Tried to use 'Koha::Cache::Memcached'. # Error: Can't locate Cache/Memcached/Fast.pm in @INC (@INC contains: /home/mtompset/kohaclone/blib/PERL_MODULE_DIR /home/mtompset/kohaclone/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at /home/mtompset/kohaclone/blib/PERL_MODULE_DIR/Koha/Cache/Memcached.pm line 23. # BEGIN failed--compilation aborted at /home/mtompset/kohaclone/blib/PERL_MODULE_DIR/Koha/Cache/Memcached.pm line 23. # Compilation failed in require at (eval 1319) line 2. # BEGIN failed--compilation aborted at (eval 1319) line 2. # Tests were run but no plan was declared and done_testing() was not seen. FAILED--Further testing stopped: ***** PROBLEMS LOADING FILE 'Koha::Cache::Memcached' make: *** [test_dynamic] Error 255 t/Barcodes_ValueBuilder.t ........... 1/10 install_driver(Mock) failed: Can't locate DBD/Mock.pm in @INC (@INC contains: /home/mtompset/kohaclone/blib/PERL_MODULE_DIR /home/mtompset/kohaclone/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 27) line 3. Perhaps the DBD::Mock perl module hasn't been fully installed, or perhaps the capitalisation of 'Mock' isn't right. Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite2, Sponge, mysql. at t/Barcodes_ValueBuilder.t line 15 t/Images.t .......................... 1/7 install_driver(Mock) failed: Can't locate DBD/Mock.pm in @INC (@INC contains: /home/mtompset/kohaclone/blib/PERL_MODULE_DIR /home/mtompset/kohaclone/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 27) line 3. Perhaps the DBD::Mock perl module hasn't been fully installed, or perhaps the capitalisation of 'Mock' isn't right. Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite2, Sponge, mysql. at t/Images.t line 18 t/ItemType.t ........................ 1/15 install_driver(Mock) failed: Can't locate DBD/Mock.pm in @INC (@INC contains: /home/mtompset/kohaclone/blib/PERL_MODULE_DIR /home/mtompset/kohaclone/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 27) line 3. Perhaps the DBD::Mock perl module hasn't been fully installed, or perhaps the capitalisation of 'Mock' isn't right. Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite2, Sponge, mysql. at t/ItemType.t line 19 t/Letters.t ......................... 1/2 install_driver(Mock) failed: Can't locate DBD/Mock.pm in @INC (@INC contains: /home/mtompset/kohaclone/blib/PERL_MODULE_DIR /home/mtompset/kohaclone/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 989) line 3. Perhaps the DBD::Mock perl module hasn't been fully installed, or perhaps the capitalisation of 'Mock' isn't right. Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite2, Sponge, mysql. at t/Letters.t line 19 t/Matcher.t ......................... 1/10 install_driver(Mock) failed: Can't locate DBD/Mock.pm in @INC (@INC contains: /home/mtompset/kohaclone/blib/PERL_MODULE_DIR /home/mtompset/kohaclone/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 27) line 3. Perhaps the DBD::Mock perl module hasn't been fully installed, or perhaps the capitalisation of 'Mock' isn't right. Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite2, Sponge, mysql. at t/Matcher.t line 18 t/Members_AttributeTypes.t .......... 1/9 install_driver(Mock) failed: Can't locate DBD/Mock.pm in @INC (@INC contains: /home/mtompset/kohaclone/blib/PERL_MODULE_DIR /home/mtompset/kohaclone/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 27) line 3. Perhaps the DBD::Mock perl module hasn't been fully installed, or perhaps the capitalisation of 'Mock' isn't right. Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite2, Sponge, mysql. at t/Members_AttributeTypes.t line 18 t/SocialData.t ...................... 1/5 install_driver(Mock) failed: Can't locate DBD/Mock.pm in @INC (@INC contains: /home/mtompset/kohaclone/blib/PERL_MODULE_DIR /home/mtompset/kohaclone/blib/arch /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl .) at (eval 959) line 3. Perhaps the DBD::Mock perl module hasn't been fully installed, or perhaps the capitalisation of 'Mock' isn't right. Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite2, Sponge, mysql. at t/SocialData.t line 18
Sorry, I was answering yesterday from my phone, so wasn't as clear as I should have been. Anyway, we can make Moose optional, however it is needed for a "make test" to pass. I'm not sure what the preferred approach is here, but I can make it optional no problem. The packages will still pick it up in this case (long-term todo: have them put the optional ones into the "recommended" part of the debian/control file.) Will modify my patch to do this. mtompset: almost all your errors are due to missing libdbd-mock-perl, which is only needed for testing. Add that and most things should go away.
Created attachment 13029 [details] [review] Bug 8636 - add Moose dependency to the dependencies Koha::SearchEngine requires moose, but it wasn't declared as a dependency. Also update the debian/control dependencies to match the current state of the requirements.
I think it was the 00-load test when it hit Koha::SearchEngine that failed, btw.
FYI, the patch here is right now the only one remaining to allow the packages to build in a clean (pbuilder) environment.
I would like to test this patch but I don't know how. If I execute prove on the t directory, I get: "All tests successful." Moreover I think that 00-load.t does not take care of the Koha/SearchEngine directory (cf line 47: return if $m =~ /Koha::SearchEngine::/; # Koha::SearchEngine::* are experimental).
Created attachment 13164 [details] [review] Bug 8636 - add Moose dependency to the dependencies Koha::SearchEngine requires moose, but it wasn't declared as a dependency. Also update the debian/control dependencies to match the current state of the requirements. Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com>
Note, however, that the package dependencies for 3.10 are available for Squeeze only for i386 at this time.
This only applies to XS packages, everything pure-perl ends up in the amd64 part as well.
(In reply to comment #32) > This only applies to XS packages, everything pure-perl ends up in the amd64 > part as well. And we now have the one XS package for AMD64, too.
(In reply to comment #30) > Created attachment 13164 [details] [review] > Bug 8636 - add Moose dependency to the dependencies > Signed-off-by: Jared Camins-Esakov <jcamins@cpbibliography.com> patch looks good, passing QA... $ koha-qa.pl -c 1 testing 1 commit(s) (applied to commit ea9e867) * 4f83dd3 Bug 8636 - add Moose dependency to the dependencies C4/Installer/PerlDependencies.pm debian/control * C4/Installer/PerlDependencies.pm OK
This patch has been pushed to master and is suitable for backporting to 3.10.
Created attachment 13177 [details] [review] Bug 8636: add dependency on File::Slurp The command line scripts misc/migration_tools/koha-svc.pl and misc/load_testing/benchmark_webservices.pl require the File::Slurp Perl library.
Patch (adding Moose) pushed to branch 3.10.x
Released in 3.10.0