Clarify some of the Nokogiri/Rbx issues.

This commit is contained in:
Yorick Peterse 2014-02-26 14:46:54 +01:00
parent 6326bdd8c9
commit 626bb9e0b6
1 changed files with 17 additions and 1 deletions

View File

@ -71,6 +71,22 @@ library, is not thread-safe and problematic to install on certain platforms
(apparently). I don't want to compile libxml2 every time I install Nokogiri
either.
To give an example about the issues with Nokogiri on Rubinius (or any other
Ruby implementation that is not MRI or JRuby), take a look at these issues:
* https://github.com/rubinius/rubinius/issues/2957
* https://github.com/rubinius/rubinius/issues/2908
* https://github.com/rubinius/rubinius/issues/2462
* https://github.com/sparklemotion/nokogiri/issues/1047
* https://github.com/sparklemotion/nokogiri/issues/939
Some of these have been fixed, some have not. The core problem remains:
Nokogiri acts in a way that there can be a large number of places where it
*might* break due to throwing around void pointers and what not and expecting
that things magically work. Note that I have nothing against the people running
these projects, I just heavily, *heavily* dislike the resulting codebase one
has to deal with today.
Ox looks very promising but it lacks a rather crucial feature: parsing HTML
(without using a SAX API). It's also again a C extension making debugging more
of a pain (at least for me).
@ -86,7 +102,7 @@ writing it in Ruby we don't have to deal with all the crazy things of C/C++ or
even Java.
In theory it should also allow it to run on every Ruby implementation, be it
Jruby, Rubinius, Topaz or even mruby.
JRuby, Rubinius, Topaz or even mruby.
[nokogiri]: https://github.com/sparklemotion/nokogiri
[oga-wikipedia]: https://en.wikipedia.org/wiki/Japanese_saw#Other_Japanese_saws