Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Remove XML::DOM::XPath dependency #347

Closed
cjfields opened this issue Oct 14, 2020 · 10 comments
Closed

Remove XML::DOM::XPath dependency #347

cjfields opened this issue Oct 14, 2020 · 10 comments

Comments

@cjfields
Copy link
Member

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:

  • Remove module(s) with the dependency to new repos
  • Replace the dependency with an equivalent module
@cjfields
Copy link
Member Author

See #334 and #344

@cjfields
Copy link
Member Author

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
Copy link

gmsperl commented Nov 29, 2020

fyi:

i have sent an email to Michael Rodriguez of XML-DOM-Xath. i sent it a few minutes ago to [email protected] and [email protected] 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
Copy link

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:

  • XML::DOM::XPath
  • XML::LibXML
  • XML::LibXML::Reader

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
Copy link
Member Author

cjfields commented Feb 3, 2021

@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 added a commit that referenced this issue Feb 3, 2021
    * Bio::SeqIO::interpro has been moved to a separate repository to
      deal with issues with XML::DOM::XPath bitrot [#347]
    * Pull requests:
      * Adjust Swiss-Prot FT A..B lines [#348] from @smoe
      * Update %FTQUAL_NO_QUOTE: List of qualifiers without quote [#339] from
        @hdevillers
@cjfields
Copy link
Member Author

cjfields commented Feb 3, 2021

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

@cjfields cjfields closed this as completed Feb 3, 2021
@aliceseaborn
Copy link

@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

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 carandraug reopened this Feb 3, 2021
@carandraug
Copy link
Member

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
Copy link
Member Author

cjfields commented Feb 3, 2021

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
Copy link

aliceseaborn commented Feb 8, 2021

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!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants