[libxml-devel] [ANN] nokogiri 1.0.0 Released

Aaron Patterson aaron.patterson at gmail.com
Wed Nov 19 14:39:26 EST 2008

Hey Charlie,

2008/11/19 Charlie Savage <cfis at savagexi.com>:
> Hi Aaron,
>> nokogiri version 1.0.0 has been released!
>> * <http://nokogiri.rubyforge.org/>
>> * <http://github.com/tenderlove/nokogiri/wikis>
>> * <http://github.com/tenderlove/nokogiri/tree/master>
>> Nokogiri (鋸) is an HTML, XML, SAX, and Reader parser with XPath and CSS
>> selector support.
> So I finally had a chance to take a quick look at Nokogiri, and discovered
> its another wrapper around libxml.

Awesome.  Indeed it is.  I hope you found the build process easy!

> So the obvious question is why didn't you build off the libxml-ruby
> bindings?   And then the next obvious question, would it be better to
> combine efforts?  Seems to me that would be much preferable.

I tried to build off the libxml-ruby bindings.  You'll notice the 7
patches I submitted back in July:


(looks like I've submitted more patches than anyone else)

The velocity of libxml-ruby development was too slow for me.  I have
severe ADD (not really, but I am impatient), and waiting for my
patches to get applied or rejected was too much work and took too much
time.  I wanted to break free of supporting legacy code, and having
non-productive conversations like this one:


After trying to build the functionality I needed on top of
libxml-ruby, I finally got tired of contorting around the API.  These
hindering aspects made writing my own library seem like the path of
least resistance.

I think you are an excellent developer, and I am glad to work with
you.  If I find any bugs, or things I want to patch, I will definitely
send them in.

>> ### FEATURES:
>> * XPath support for document searching
>> * CSS3 selector support for document searching
>> * XML/HTML builder
>> * Drop in replacement for Hpricot
> I just integrated a patch for adding Hpricot like api to libxml, and would
> be really interested in adding in CSS3 selector support (I took a quick look
> through the Nokogiri code for this, and would be happy to port it over to
> libxml lock-stock-and-barrel if that's ok with you).

Great!  Nokogiri has an MIT license, so go for it.  :-)

> So we're happy to work together on our end.

We are too.  Feel free to steal our code, or submit patches:


We'd be happy to have you help.  :-)

Right now there are a few major things I want to add:

  * JRuby/Rubinius support via FFI
  * DOM1 implementation (other versions later)
  * Custom XPath functions

Aaron Patterson

More information about the libxml-devel mailing list