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

Issue with XML package in Github r-lib v2 actions #13

Closed
mpadge opened this issue May 17, 2022 · 5 comments
Closed

Issue with XML package in Github r-lib v2 actions #13

mpadge opened this issue May 17, 2022 · 5 comments
Assignees

Comments

@mpadge
Copy link

mpadge commented May 17, 2022

The XML package is considered obsolete and currently causing widespread build failures on GitHub actions, including R CMD Check on ubuntu, and test coverage which by default runs on the failing environment. That means that no packages which depend on {atom4R} can be tested on GitHub. It would be good for future-proofing to replace XML with xml2.

@eblondel
Copy link
Owner

No, i don't have intention to move from XML to xml2 right now. XML package is far from being considered obsolete by the R community and is maintained by CRAN team with many reverse dependencies which makes it still an essential piece of software for R packages; See https://cran.r-project.org/package=XML
See eblondel/ows4R#59 where same question was asked by @maelle and also this eblondel/ows4R#71

@eblondel
Copy link
Owner

This is something, as you say, that should be done for future-proofing, and I had it in my mind already because most of packages I've authored are XML based. atom4R is quite new but when i've created all the others, xml2 was still at very early stage with no flexible encoding capacities, the reason why XML has been kept. As I said, although it is not maintained anymore by the original author (be careful with this repo https://github.com/omegahat/XML that is not maintained and not in sync with CRAN). The XML package as published in CRAN is not managed in Github, and maintained by CRAN team

@mpadge
Copy link
Author

mpadge commented May 17, 2022

We at rOpenSci nevertheless base our recommendations and list of carefully curated best practices on years of experience. In this case that experience results in us stronly recommending that developers use xml2 rather than XML. Although the latter was eventually taken over by CRAN members, it is still not particularly actively maintained, is prone to the kinds of breakages that currently make {atom4R} uninstallable on any current ubuntu systems, and has no way of reporting bugs like these.

To make this discussion more concrete: We have comprehensive statistics from the entire CRAN archive which also show the average incremental effects of package updates (as percentages):

package increase in code lines increase in doc lines
xml2 0.53 0.92
XML -0.02 0.04

By those simple measures, xml2 is orders of magnitude better maintained that XML.

That said, your reasons for XML here are indeed understandable, and I'm happy for you to close this for now if you don't intend to adapt just yet. We can always return later if problems persist. Thanks

@eblondel
Copy link
Owner

Being actively maintained doesn't mean that you have active development, XML is very exhaustive and stable, and when a package is exhaustive you don't need extra development and minimal maintenance to have it working.

atom4R is installable in ubuntu systems, proof is the Github CI in place github.com/eblondel/atom4R/blob/master/.github/workflows/r-cmd-check.yml#L18 and I use it with partners on production Rstudio servers built on ubuntu. You may need to dig further in specific Github CI r dependency installation actions, as pointed out to @maelle in eblondel/ows4R#71 on which i'm still investigating to help @maelle on her github actions. Having these specific Github action failures doesn't mean that it's not installable on ubuntu systems.

@eblondel eblondel changed the title Use xml2 instead of XML Issue with XML package in Github r-lib v2 actions May 18, 2022
@eblondel eblondel self-assigned this May 18, 2022
@eblondel
Copy link
Owner

I'm renaming this ticket since your initial issue is actually about the Github builds, and not really the switch to xml2
Similarly to eblondel/ows4R#71 in support to @maelle for https://github.com/EMODnet/EMODnetWFS/ i've reinforced the Github CI R cmd check, by:

  • upgrading to v2 actions,
  • making sure to declare {XML} package as extra-packages not to use a cache old version of XML package and to install the latest from CRAN.
  • test on both R release and devel on ubuntu-latest

With this I suppose you have a hint to fix your package github builds.

In reply to your strong 'statements' over {atom4R} and packages that rely on XML :

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

2 participants