[BioRuby] Porting PhyloXML to Nokogiri, maybe repackaging it

Pjotr Prins pjotr.public14 at thebird.nl
Tue May 15 18:54:32 UTC 2012


Marvellous work Clayton! My suggestion to BioRuby is to split out
phyloxml and to deprecate the current library module. In the next
release, or after, we should take out that code. I suspect few people
really depend on it, and they can adapt. I am partly responsible for
that dependency, and I think the Travis-ci tests also point out that
the purer Ruby BioRuby is, the better ;). 

Naohisa, what do you say? We should also ask the original author, even
though she has left our little group and now works for google (and I
am claiming Google does not recruit from GSoC :). Diana, maybe you are
reading the ML?

Pj.

On Tue, May 15, 2012 at 01:08:20PM -0400, Clayton Wheeler wrote:
> Hi all,
> 
> The PhyloXML unit tests are failing under JRuby, because the libxml-jruby gem (an implementation of the libxml API using native Java XML libraries) does not support the full API of libxml-ruby. My first approach to this was to simply use the native libxml-ruby gem and its C extension, which works with JRuby in 1.8 mode. However, it doesn't work in 1.9 mode due to a Unicode issue, and the JRuby developers indicate that the C extension API (as opposed to FFI, I suppose) isn't likely to be supported further in 1.9 mode. (see http://bit.ly/JGWC4K)
> 
> There was a discussion of the PhyloXML parser on the mailing list a couple of months ago (http://bit.ly/JFX8Qf), and Naohisa indicated that it might be rewritten to use Nokogiri at some point soon, since Nokogiri is now the de facto standard XML parser. Following that lead, I've gone ahead and ported the PhyloXML parser to use Nokogiri; it only took an hour or two, and the unit tests are passing. My branch for this is at https://github.com/csw/bioruby/tree/phyloxml-nokogiri. If this seems like a good approach, I can port the writer as well.
> 
> However, Pjotr suggested that it might make sense to split PhyloXML out into a separate gem. This should be straightforward enough, since no other BioRuby components appear to call PhyloXML. It would mean that any PhyloXML users would need to install a separate gem. On the other hand, it would remove a dependency on libxml2 for core BioRuby on MRI. Thoughts? Should I proceed with this approach?
> 
> Clayton Wheeler
> cswh at umich.edu
> 
> 
> _______________________________________________
> BioRuby Project - http://www.bioruby.org/
> BioRuby mailing list
> BioRuby at lists.open-bio.org
> http://lists.open-bio.org/mailman/listinfo/bioruby
> 



More information about the BioRuby mailing list