bioperl / bioperl-live

Core BioPerl 1.x code
http://bioperl.org
299 stars 182 forks source link

Remove XML::DOM::XPath dependency #347

Closed cjfields closed 3 years ago

cjfields commented 4 years ago

Reliance on this module appears to be an issue. The code itself is fine but the test suite is using the old use encoding 'utf8' pragma that is no longer supported in newer Perl releases. Seeing as this is a simple fix but hasn't been addressed in several years, I recommend we either:

cjfields commented 4 years ago

See #334 and #344

cjfields commented 4 years ago

Relevant module affected seems to be only Bio::SeqIO::interpro.

At the moment I'm considering moving this to another repository and making a point release. The module in question actually has two XML::DOM requirements, so needs further investigation.

gmsperl commented 4 years ago

fyi:

i have sent an email to Michael Rodriguez of XML-DOM-Xath. i sent it a few minutes ago to xmltwig@gmail.com and mirod@cpan.org letting him know about changing use encoding 'utf8'; to use utf8;

fyi2: his last comment on xmltwig was 4-5 years ago.

GMS 28 nov 2020

aliceseaborn commented 3 years ago

When running perl Build.PL, as part of installing Maker 2.31.11, I am told that Bio::Root::Version is required. However, when trying to install the module in a CPAN shell for Perl 5.32.0 I am greeted with three unmet dependencies:

Attempts to install any three of these modules fail due to unmet dependencies whose installation fails due to other unmet dependencies and so on. I have installed about a dozen modules to try and get this installed properly but I have been unable to do so. Do you have any recommendations for me to bypass this dependency?

cjfields commented 3 years ago

@Adial314 I'll see which modules are currently requiring these, however XML::LibXML and XML::LibXML::Reader shouldn't be an issue. I'll try moving Bio::SeqIO::interpro over to a separate repo and removing it here to try resolving the problem.

cjfields commented 3 years ago

This should now be addressed with the new 1.7.8 release. Please reopen if the problem persists.

aliceseaborn commented 3 years ago

@cjfields I am still unable to install the Bio::Root::Version module though I notice that XML::DOM::XPath dependency has in fact been removed. However, the other two remaining dependencies (XML::LibXML and XML::LibXML::Reader) are in fact still an issue for me.

CPAN error output

```BASH Test Summary Report t/00-compile.t (Wstat: 512 Tests: 511 Failed: 2) Failed tests: 358, 467 Non-zero exit status: 2 Files=211, Tests=14682, 147 wallclock secs ( 2.08 usr 0.52 sys + 114.96 cusr 17.09 csys = 134.65 CPU) Result: FAIL Failed 1/211 test programs. 2/14682 subtests failed. make: *** [test_dynamic] Error 255 CJFIELDS/BioPerl-1.7.8.tar.gz 2 dependencies missing (XML::LibXML,XML::LibXML::Reader); additionally test harness failed /usr/bin/make test -- NOT OK //hint// to see the cpan-testers results for installing this module, try: reports CJFIELDS/BioPerl-1.7.8.tar.gz Failed during this command: (optional) EXODIST/Test2-Suite-0.000139.tar.gz: make_test NO (optional) PLICEASE/FFI-CheckLib-0.27.tar.gz : make_test NO 3 dependencies missing (Test2::Require::EnvVar,Test2::Require::Module,Test2::V0); additionally test harness failed (optional) PLICEASE/Alien-Build-2.38.tar.gz : make_test NO 2 dependencies missing (FFI::CheckLib,Test2::V0); additionally test harness failed (optional) PLICEASE/Alien-Libxml2-0.17.tar.gz: writemakefile NO '/opt/apps/perl/5.32.0/perl Makefile.PL' returned status 512 SHLOMIF/XML-LibXML-2.0206.tar.gz : writemakefile NO '/opt/apps/perl/5.32.0/perl Makefile.PL' returned status 512 CJFIELDS/BioPerl-1.7.8.tar.gz : make_test NO 2 dependencies missing (XML::LibXML,XML::LibXML::Reader); additionally test harness failed ```

Installing these modules directly results in its own issues with dependencies not building. Is it possible to install Bio::Root::Version in Perl 5.32.0? There might be issues with these modules for this Perl version. Any support would be appreciated, thank you.

carandraug commented 3 years ago

Why are the XML::LibXML and XML::LibXML::Reader an issue for you? Do you have issues when you try to install them directly (as opposed as installing them via solving bioperl dependencies)?

cjfields commented 3 years ago

Why are the XML::LibXML and XML::LibXML::Reader an issue for you? Do you have issues when you try to install them directly (as opposed as installing them via solving bioperl dependencies)?

I have to agree with @carandraug; there simply isn't enough detail to know what is going on and whether this is truly a BioPerl issue. What OS are you on? Have you tried directly installing XML::LibXML (which comes with XML::LibXML::Reader)? Do you have libxml2 (the C library) installed?

aliceseaborn commented 3 years ago

I think you are correct. Upon further examination, it looks like the dependency path ends with Net::HTTP:

XML::DOM::XPath -> XML::DOM, Parser, etc. -> LWP::UserAgent -> Net::HTTP

The upper modules might be fine but they rely on a broken Net::HTTP install. I will open an issue with them, this issue can be closed. If I am able to install Net::HTTP and run into additional issues with XML I will open an issue with them. Thanks!