<?xml version="1.0" encoding="UTF-8"?>
<commits type="array">
  <commit>
    <parents type="array">
      <parent>
        <id>9f381cc845cd2608650d87cbc62b03e0f5f91518</id>
      </parent>
    </parents>
    <author>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/abec8236cbaf3fc4959b8f2c4ffe98730559c113</url>
    <id>abec8236cbaf3fc4959b8f2c4ffe98730559c113</id>
    <committed-date>2009-10-22T21:27:59-07:00</committed-date>
    <authored-date>2009-10-22T21:27:59-07:00</authored-date>
    <message>removing gem dependency when running with NOKOGIRI_FFI set</message>
    <tree>b02e0cb773bedfbfc7fdbe2e1d81d20afa484ea5</tree>
    <committer>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>e4f8bf27b8808eeea0db0e0f32e2faaae80de631</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/4bb502c2ad021eb9075fc64ea76fe70f4652c892</url>
    <id>4bb502c2ad021eb9075fc64ea76fe70f4652c892</id>
    <committed-date>2009-10-16T10:27:05-07:00</committed-date>
    <authored-date>2009-10-16T10:27:05-07:00</authored-date>
    <message>removing require</message>
    <tree>cc4abad0cd47437867821bc50d838d1d4d634f4a</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>ceb00ef93387ce32d89e30d397bafbaa374a7228</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/888b667ce46ad451d9eb8668965d900fef956b08</url>
    <id>888b667ce46ad451d9eb8668965d900fef956b08</id>
    <committed-date>2009-10-14T18:47:34-07:00</committed-date>
    <authored-date>2009-10-14T18:47:34-07:00</authored-date>
    <message>Squashed commit of the following:

commit 94339991388f50355f840ec1654ef38ff2ee23c7
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Wed Oct 14 18:47:03 2009 -0700

    updating changelog

commit f69ed6ae46138961f1b50ddbcd2b80496cfd4a05
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Wed Oct 14 18:46:23 2009 -0700

    updating readme

commit c92bf4ec0197d8bef0c9ed0ff2dd10f5ae9f38b8
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Wed Oct 14 18:44:30 2009 -0700

    cleaning up manifest

commit 33b7ff52e478fec95e4562fd112b67672775d3dd
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Wed Oct 14 18:42:38 2009 -0700

    removing hpricot compat layer

commit d7a62bcc4adbb53aac7499e1d6d5bda07d32a059
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Wed Oct 14 18:15:55 2009 -0700

    cleaning up tests

commit d58ddb222cb49884823dce4798ef67425c06d8f4
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Wed Oct 14 17:57:08 2009 -0700

    removing test

commit 336eb89e17369b740de976b44fcbe4bc5b025869
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Wed Oct 14 17:54:47 2009 -0700

    removing unused test</message>
    <tree>c0622a88fa4bdde0e659a768564efe3e6aa24884</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>d0e93128213a10376944bfe3943ce23547a33d14</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/544b431e5ac6a12369ddc6fb01d2a4b06dbd534d</url>
    <id>544b431e5ac6a12369ddc6fb01d2a4b06dbd534d</id>
    <committed-date>2009-08-06T21:22:18-07:00</committed-date>
    <authored-date>2009-08-06T21:22:18-07:00</authored-date>
    <message>using host OS to figure out ENV[&quot;PATH&quot;]. closes #113</message>
    <tree>d88525958d4046946a7c3d7968261cd6b8d06953</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>a3eb811410cf90e8b22ab8c78a3d1fbd9a67d06d</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/42d35483fef0bd7beed3ad01fba782c840da9e7a</url>
    <id>42d35483fef0bd7beed3ad01fba782c840da9e7a</id>
    <committed-date>2009-07-26T18:54:43-07:00</committed-date>
    <authored-date>2009-07-26T18:54:43-07:00</authored-date>
    <message>Nokogiri.parse will assume HTML if parameter is an IO object. closes #105</message>
    <tree>9263bfa4e4b0fd8a9086b82dc4d55bf0b5e3770f</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>ed754af320289403b379b23f20c35270e1251ae2</id>
      </parent>
    </parents>
    <author>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/9a18d6022a4075b7d1508fde0e24fa556e99a695</url>
    <id>9a18d6022a4075b7d1508fde0e24fa556e99a695</id>
    <committed-date>2009-06-15T06:57:30-07:00</committed-date>
    <authored-date>2009-06-08T15:17:42-07:00</authored-date>
    <message>Replacing parse option &quot;magic numbers&quot; with ParseOption constants, and tweaking rdocs to reflect reality.</message>
    <tree>aba4acc02fd000d37912e71b4a1d0dea7b8e3e84</tree>
    <committer>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>abeac1b1078155b158ab819a62cd9e502c7b0fcb</id>
      </parent>
    </parents>
    <author>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/d01724bfbe840e242d55bdb69a9856db95d58535</url>
    <id>d01724bfbe840e242d55bdb69a9856db95d58535</id>
    <committed-date>2009-05-26T20:53:48-07:00</committed-date>
    <authored-date>2009-05-26T05:14:17-07:00</authored-date>
    <message>moved XML.parse to XML::Document.parse. moved HTML.parse to HTML::Document.parse.</message>
    <tree>3dd22898bdd4b11f9d57a420d477cbc80a7d7f65</tree>
    <committer>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>1e59ebe7e890467a996a51387740e6fd0bfb39f2</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/2dd18529ebaace4e09a9d60ef5a3c25ad66d1784</url>
    <id>2dd18529ebaace4e09a9d60ef5a3c25ad66d1784</id>
    <committed-date>2009-05-24T17:03:51-07:00</committed-date>
    <authored-date>2009-05-24T17:03:51-07:00</authored-date>
    <message>making fat binaries easy with nokogiri</message>
    <tree>cea5b9d6a00e6e00c4d2efcdecdc8e5976e2165e</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>db39c8b1be01dd78ae571c77ac25a8b39e267600</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/1f2d63722b1614995b7c3eeda2b74beab6abb051</url>
    <id>1f2d63722b1614995b7c3eeda2b74beab6abb051</id>
    <committed-date>2009-05-13T10:17:41-07:00</committed-date>
    <authored-date>2009-05-13T10:17:41-07:00</authored-date>
    <message>adding a libxml2 version warning</message>
    <tree>7502cff7605eb750ef3099fd5dafdd048f771840</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>e9c79b423193cc12eb9b7f8d4f7522c74f1a7738</id>
      </parent>
    </parents>
    <author>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/b29755140b8b06693ebca535b31afc8691ddc2d7</url>
    <id>b29755140b8b06693ebca535b31afc8691ddc2d7</id>
    <committed-date>2009-05-11T22:31:33-07:00</committed-date>
    <authored-date>2009-05-11T22:31:33-07:00</authored-date>
    <message>requiring ruby-ffi gem 0.4.0 or greater</message>
    <tree>ecc8956f80493fe097747a84f7b547b6c67c5f9d</tree>
    <committer>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>d047b20a69cf62095e9d5f348eb975136fb3ae5c</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/454c543fc623578a1e42a007b9ad05e4f141af45</url>
    <id>454c543fc623578a1e42a007b9ad05e4f141af45</id>
    <committed-date>2009-05-07T09:59:17-07:00</committed-date>
    <authored-date>2009-05-07T09:59:17-07:00</authored-date>
    <message>adding fat binary codes</message>
    <tree>8585fd3422b6ba441da7d81d8db16179e0b5370c</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>557b0ee6b3ba977ba3eb13e4614c7d49dd7c3c2d</id>
      </parent>
    </parents>
    <author>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/836e526ae864f83060c506426a812b2fbbabeb85</url>
    <id>836e526ae864f83060c506426a812b2fbbabeb85</id>
    <committed-date>2009-04-30T23:12:18-07:00</committed-date>
    <authored-date>2009-04-30T23:10:08-07:00</authored-date>
    <message>FFI branch squash-merged into master. Original commit history is preserved for posterity at http://github.com/mdalessio/nokogiri/tree/ffi

Squashed commit of the following:

commit 069c9055086d016080eda3973d48c442cbe148b9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri May 1 01:55:08 2009 -0400

    fixing merge/rebase errors

commit 3686c78abac3c89c4d4cf67cac81ac5d69812b96
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri May 1 00:58:30 2009 -0400

    FFI: catching up with master: Reader.from_io(), reader source reference, node reparenting type check.

commit d515ba4b60bef74826306757e34bf9fd4cd0dab3
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Apr 30 19:04:52 2009 -0400

    FFI: updated TODO

commit ddff478ac9917540f419773599b6da6045321f53
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Apr 28 08:04:20 2009 -0400

    bringing FFI tests into line with master

commit baaf4e0ab78235f7e0459d505145ed7349a06ed2
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Apr 28 08:02:57 2009 -0400

    bringing FFI tests in line with master

commit 53e0622810486cb07074650f80a4952067ad8027
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Apr 28 07:44:50 2009 -0400

    memory leak tests are now only run if NOKOGIRI_GC is set.

commit 6cc03df30276a61f65807a3eb4f61eeda77b3dfa
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Apr 27 22:09:02 2009 -0400

    removing puts when FFI is initialized.

commit 8a176910fee538a7321f6cdd6e959e6c2a6316e4
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Apr 27 02:34:21 2009 -0400

    FFI: reviewed xslt_stylesheet. tweaked how documents are wrapped to be simpler and more accurate.

commit 319576314db15bd64f6992ca925f80a8465d6e1a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 26 23:47:20 2009 -0400

    FFI: rooting all sorts of nodes

commit e2b4450bd83a672e95f6ebebc5a1313c8f914d46
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 26 23:46:12 2009 -0400

    FFI: implementing XML::Attr

commit dda2a6868b83830e6720c63d54665366ef0f8de1
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 26 23:44:33 2009 -0400

    FFI: tweaked VERSION_INFO for ffi

commit 190e0ad32f6fcdad5041deeb744d7cea3cc72e17
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 26 23:43:32 2009 -0400

    including LD_LIBRARY_PATH in the FFI libxml search path, primarily for multixml2 testing.

commit a28a6e52a9a0348a0c988f9baaf8aaf7bca80be6
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 26 22:46:46 2009 -0400

    updated Nokogiri::VERSION_INFO and added Nokogiri.ffi?

commit fe2cd048f0780aeb45d4a20cb9f3bf9004996b68
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Apr 24 00:03:57 2009 -0400

    FFI: fixing a memory leak when creating a new node and not adding it to the tree.  Thanks Julien Genestoux

commit 16a953f5e0ac5e6d45a4419b04fc469c63b3b26d
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Apr 23 23:49:51 2009 -0400

    Caught up with Aaron's latest codes. FFI branch is now synched with master. Wowzers.

commit e724619d102a248a6915e66403938dafbe42639a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Apr 23 09:38:04 2009 -0400

    FFI: new VERSION_INFO hash populated and tested

commit 5b95fd1531fe66fb3e7df31e4572a8d55ae1a98f
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Apr 23 09:25:11 2009 -0400

    removing reference to old, obsolete cross-ffi.rb

commit f37adf55de5c5e8e87d6d1715987074b052a3347
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Apr 20 18:53:07 2009 -0400

    FFI: fixing xmlGetProp prototype

commit a65ffce9ce2237b2b4883ab31b25f327799dddf5
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Apr 20 18:26:04 2009 -0400

    FFI: updated TODO checklists

commit 187b9eb3c0d0d5d14331df638e2adc02a709e71f
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 19 23:56:05 2009 -0400

    added notes

commit 16a6a69c7604a4e61fece2a6dd740c0cc840b3f7
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 19 23:47:19 2009 -0400

    FFI: complete full review of all function prototypes. caught some errors.

commit e734ef9023dcd8a1808bd7403d813aa150b979d3
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 19 21:52:14 2009 -0400

    FFI: fixing function signature for xmlNewNode

commit dacb2f041528e89f6dc2d18c71d5c64d7f14ac3b
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 19 21:39:35 2009 -0400

    FFI: Fixing return type on xmlXPathRegisterFuncLookup, which JRuby correctly blew up on.

commit 16ae99e4800eb4622ecfb95984cbce5dbfdcc591
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 19 16:48:42 2009 -0400

    FFI: cleaned up some code

commit 1daaa2cb0803ae3574dfdd4416dfbe47b9d961ab
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Apr 17 07:39:12 2009 -0400

    updated FFI TODO

commit 4850199a504ddbb5d4a654372c8eda2095f2827d
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Apr 17 01:17:44 2009 -0400

    FFI: XML Processing Instructions now pass tests

commit 787cd609e69c6211685b5267df4faa4d180d7565
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Apr 17 01:03:01 2009 -0400

    FFI: SAX push parser now passes

commit b53d71358ecf6c9bee77031204098ef4480ad53e
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Apr 15 02:14:12 2009 -0400

    FFI: updated TODO

commit 2dc5fb10e9939f61ec8e28ed9d297165b46f987f
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Apr 15 02:07:39 2009 -0400

    FFI: fixing bug in inherited namespaces

commit 866502559e91452a48355da01ed8aed57bd503ad
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Apr 15 02:07:33 2009 -0400

    FFI: more xml entity reference

commit 0b5c46c19323364578a7689318b84bc4fbb34441
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Apr 15 01:49:53 2009 -0400

    FFI: xml entity reference

commit 48c8b6e1fe0492e8cfeea0e50944ae99368cf7da
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Apr 15 01:44:14 2009 -0400

    whoops, forgot to commit the node-&gt;_private code

commit 2ea032fe6656172de46b776428b64906fe9eb06a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Apr 10 08:15:05 2009 -0400

    FFI: fixed node-object caching in node-&gt;_private

commit ef118e8ba49e0eb6022e19ac7128704f117b633e
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Apr 8 18:53:14 2009 -0400

    FFI: reviewed xml/cdata.rb

commit 4f0b9ff82980f9296d4b20dd160b718f61528a1f
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Apr 8 18:49:05 2009 -0400

    FFI: EntityLookup#get implemented

commit 408f74265e2d8d4e4048c438281b8bd2b4c740c3
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Mon Apr 6 10:19:53 2009 -0700

    implementing xml relax ng valiation

commit 4e587c8b645c21b759591bc6abb868fde96bac86
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 5 02:32:53 2009 -0400

    updated TODO

commit 821fe28a455263506402c66c265ba068eb5c1786
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 5 02:03:41 2009 -0400

    FFI: fixed ElementDescription.inline?

commit 403df608f969eebcf4c73b9703370f96a3ee2822
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 5 02:00:57 2009 -0400

    FFI: xml/schema.rb

commit d217575f77597c21ee3f7ad0a3045bbc4b7efb25
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 5 01:34:16 2009 -0400

    FFI: reviewed xml/reader.rb

commit 09dbaa9a28bcc2ecb9bc775df6ced710ee342f77
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Apr 5 01:03:55 2009 -0400

    FFI: implemented html element description

commit b93082cd649a7d62aea2c20154aeaaf900b4f3f8
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Apr 3 19:28:58 2009 -0400

    added to TODO

commit f2ddb30082e5f3ff8cddbc8d2cf62ff999019ea7
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Apr 3 08:23:01 2009 -0400

    FFI: reviewed XML and HTML parsers

commit df2448c96dd4fdc63c1aef8f03d03ae9e5ad554b
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Apr 3 07:43:16 2009 -0400

    FFI: updated TODO

commit fa939eb60cbb34972c6fdf21c757d96296c34e81
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Apr 2 22:31:26 2009 -0400

    FFI: document encoding changed back to a pointer (for now)

commit 74680fe5042ba462ea0015d593683a3268677d5b
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Apr 2 07:54:06 2009 -0400

    FFI: finished review of html/document.rb

commit cab8d374b2f57fda46c188b5f0bdb7bd0a3a8055
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Apr 1 08:24:44 2009 -0400

    FFI: finished implementation of custom xpath selectors. W00T!

commit 25d9796e7ff6f9ed9fe682cc388ff201ac1277fd
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Mar 31 18:35:16 2009 -0400

    FFI: finished code review of xml/node_set.rb

commit f28f24bd5e4c81232026f0da8ddf9a6773408a2c
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Mar 31 18:20:23 2009 -0400

    updated TODO

commit 55895f53addd6f16a2edde5986029198dec1f1c4
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Mar 31 18:20:12 2009 -0400

    FFI: finished code review of xml/document.rb

commit 900c094012f85b393a80d67ce9eeff91d6178152
Author: Aaron Patterson &lt;aaron.patterson@gmail.com&gt;
Date:   Tue Mar 31 14:39:38 2009 -0700

    searching for dylibs and so files

commit f6a81a3895b175b4ff7e85d98fccbf3f0e867c68
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 23:40:51 2009 -0400

    TODO file

commit 724421a6b7cc8ea067ab8892361297cb8b47fceb
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 23:39:28 2009 -0400

    FFI: making fragment ns code more robust

commit fe22ef557332cf70c5a9454562dcb46979225fae
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 23:22:36 2009 -0400

    FFI: fixing more node tests

commit a79c4a328d0f785c40766ecc457fe3655d53429b
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 22:48:57 2009 -0400

    FFI: finished reviewing node.rb

commit 4cfce7546b2729ff509a28fdae394d53c2d51db9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 22:31:41 2009 -0400

    FFI: node.rb cleanup

commit 06560c174505f1730f85119a5eb25aea6944ba68
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 21:56:51 2009 -0400

    implementing node#pointer_id, and undoing the only change made to node.rb in the FFI branch.

commit 903502fc7396cff1a18560c5494a00364139cff5
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 18:55:51 2009 -0400

    FFI: reordered node.rb to closely match xml_node.c

commit 08460ace061d4f2e4a956b90c68d06fe2f874d89
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 18:55:36 2009 -0400

    FFI: added some comments and refactored core structs

commit 510ab7086cb2c6358fad6fc855536561ebf3a2d3
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 18:31:32 2009 -0400

    FFI: getting more tests to pass

commit 90f03e52b459ae3687d8fdb1f32e2ce32305fa68
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 14:06:05 2009 -0400

    FFI: dumping cross-ffi

commit 30cc527b4c16bceb10d0e46062ddb8c576b44bcb
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 13:27:12 2009 -0400

    FFI: jruby compatibility tweaks

commit 740916fe8c8201930e0b892c92b62e327f4189af
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 13:26:58 2009 -0400

    FFI: syntax error typing

commit 5a83d58d3c3eab62901fecd96dd57381f35ccc2a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 30 07:29:29 2009 -0400

    still working on custom xpath selectors

commit 02e940246b9650faf6c02b67f4798668213bacd3
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 23 03:26:28 2009 -0400

    FFI: started implementing custom xpath handlers, but punting for now since FFI does not support callbacks as return types.

commit a02a6fd96887e2f15881a5bb882441e09aeea879
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Mar 19 18:25:10 2009 -0400

    FFI: passing more specs

commit fc0876c68390bae83097d64c976518edb2bb41d5
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Mar 19 16:59:08 2009 -0400

    FFI: fixing syntax errors in xpath context

commit a642fe35a04f1b2c02f1fc8480d36b6407878450
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Mar 19 16:32:09 2009 -0400

    FFI: supporting the document _private tuple referencing the ruby object and a node set of unlinked nodes

commit b2b851f1a479fe2566fb46f747c002c351ea1149
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Mar 19 15:20:20 2009 -0400

    FFI: adding a unit test for document internals, in preparation for conversion to the _private tuple

commit f6fb982422132db4f9c0e5a95d9563f7505ce563
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Mar 19 15:11:43 2009 -0400

    FFI: adding read_io and error handling to html doc parsing.

commit fbcc3b38f6ae2598230e2449e0db25b6f92331b9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Mar 18 08:22:50 2009 -0400

    FFI: test/xml/test_node.rb now passes

commit a5d64b9d5cf2820c4f2d9c46041a91480719f1c9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 9 07:39:53 2009 -0400

    adding binding for xmlSetTreeDoc

commit 33d24495499c40fb7848a37efbf161d96a55ed7a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Mar 6 09:49:13 2009 -0500

    FFI: making NodeSet#unlink work using monkeypatches to FFI

    (monkeypatches submitted to jruby and ruby-ffi)

commit 9cc3ec29019d5fb23087bbef1cfeb7d7446a420a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Mar 6 02:18:17 2009 -0500

    FFI: making the world safe for node unlinkers. node_set unlink is still broken.

commit e71c5d0053312fd24ccbc4b24ecac7c6cdd6660b
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Mar 4 02:07:59 2009 -0500

    FFI: refactored node-reparenting logic out of add_child, add_next_sibling and add_previous_sibling

commit 93c1f24adb9a3ee2b4569726b5f3e3a52648d660
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Mar 4 01:17:44 2009 -0500

    fixed versions strings

commit 4e3f168e7fcb91989374d5cdc689c868ec2d6dd9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Mar 2 18:30:15 2009 -0500

    FFI: much improved syntax error handling. yay.

commit a7d1392698bc465feba8e28bf1857d17b23d020c
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Feb 23 15:33:20 2009 -0500

    working on syntax errors

commit 2a5d31347b0f50702b774cbca1e7625b764fc96f
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Feb 23 07:58:11 2009 -0500

    tweaking syntax error handling.

commit 70379b17e45d879aa75e0d7563799857df64f1d4
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sat Feb 21 11:42:00 2009 -0500

    working on error handling

commit b2c74d2e5edfd0c665f0b8f9eefbe97a98dc9b49
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sat Feb 21 11:37:23 2009 -0500

    temporarily at least, let's disable the error handling until i catch up with aaron and jmhodges.

commit 123a62b62d048b1afde44fcf2c792c313e8c1d18
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sat Feb 21 11:34:07 2009 -0500

    fixing mechanical issues with 'require' dependencies and class inheritance.

commit 22e9197d20ccf6414f95b40f03c34b154f1f5914
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Feb 6 23:38:47 2009 -0500

    ffi: really making progress now. down to 19 fails.

commit 0999566ae73ae3d1e51f2c3d39c41635edb455c7
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Feb 6 20:51:46 2009 -0500

    ffi: xml/test_node is green

commit f0bcfaac77cce3efc03d246f6d583e6d14032eb5
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Feb 6 03:42:22 2009 -0500

    ffi: tweaking add_child

commit b8d8b73df42615738cbd515f72313536484881d5
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Feb 6 03:33:26 2009 -0500

    ffi: applying add_child fixes

commit 40cab0e195b1d51f5e10152284cbca90db5a9696
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Feb 6 03:07:11 2009 -0500

    jruby trunk fixed callback lookups. game back on for sax.

commit 775ee7e39e2fc0dfa0a21a9fc27a4dbeebd475c0
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Feb 4 11:05:25 2009 -0500

    ffi - Node.to_html() and htmlNodeDump()

commit 3febf0037101b39d8a9e7487c4df4f667f20c145
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Feb 3 15:56:57 2009 -0500

    unified pointer types between ruby and jruby ffi

commit 8d0c08d52ec4b8d4439c8f9e37f240f050f75c66
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Dec 19 17:02:11 2008 -0500

    some jruby-compatibility changes

commit 5b0a2f6c59175bfed89cf72b5008300e2b68eb16
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 17 01:00:21 2008 -0500

    FFI: porting exslt patches

commit d33bd5d1e9927a86770abb031f01b6f44804b3f0
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 17 00:49:41 2008 -0500

    FFI: more catch-up with aaron

commit 306906b6bd9a1dfe4c4ccb196b4091b6ac50819a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 16 23:43:49 2008 -0500

    FFI: playing catch-up, porting Aaron's work on master to ffi

commit cde9e5e654945ba7a928d7f339a8d43d13b5f984
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 16 23:28:15 2008 -0500

    removing TODO comments

commit 29a276399c57ba00caa78cd1f4cfb9d10b984788
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 16 19:03:43 2008 -0500

    FFI: preventing people from shooting themselves in the foot by replacing a node with a document.

commit ee814d820e04cd6798793b0ef5f61cc7914e7811
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 16 08:29:52 2008 -0500

    cleanup

commit 3ac6b96aa8a9dddf5be34790e93ed85b940e6e51
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 16 08:08:45 2008 -0500

    finished implementation of XML and HTML SAX parsing

commit 40dcfc3f61f132066e237e747843113356c35ca0
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 16 08:07:22 2008 -0500

    removing syntax-warning-inducing ambiguity.

commit 37e7166e75065895db831e122cd042f9ba8c7044
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 16 08:03:16 2008 -0500

    properly freeing construct html doc tree in html sax parser (mem leak)

commit 7b45467a356e35b5ce355aea34676640a0751147
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Dec 15 19:28:24 2008 -0500

    FFI: initial SAX parser support.

commit 831ee8f22bd16c5793193f477e63637c1c9cceda
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Dec 15 07:56:20 2008 -0500

    FFI: requiring ruby-ffi gem 0.3.0, and removing monkeypatches

commit 4aaa73a2b145a3d6462fe668f469f8ad0d6254a2
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Dec 11 19:41:32 2008 -0500

    FFI: updating API to support varargs to evaluate() and to_xml().

commit 86e4224a10d59ea243dd1ab36d95b28c5ecc3ad3
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Dec 11 19:12:00 2008 -0500

    FFI: fixed segfault when freeing wrong pointer. ugh.

commit 58c9f0500bdb82c2cdeb2e2be2ddb6e2560f7db3
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 10 18:38:02 2008 -0500

    FFI: xslt support

commit 2b2f2b63acea4423c469957274d6cd9864ddd70a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 9 09:01:11 2008 -0500

    FFI: reader is done. down to 18 fails!

commit 8a06899edb05f4f73a99355d30017865a7df4994
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Dec 8 23:52:09 2008 -0500

    FFI: DTD support. down to 37 fails!

commit 5b352c634027816c354b44dac4141ced303deafb
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Dec 8 19:41:27 2008 -0500

    FFI: changing struct :name from :pointer type to :string

commit 1a33d132d0331bb60fe7c10549fe4c2e0c65feea
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Dec 8 19:39:30 2008 -0500

    FFI: more API work. down to 41 fails!

commit 36d7533e0cafeda3081415717b02499fd4f5ed29
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Dec 8 09:10:56 2008 -0500

    FFI: more work on the API, more tests pass.

commit 257f0b5a525f75631530d66dfd800a60e6c6d4c9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Dec 8 01:18:58 2008 -0500

    some null pointer checks.

commit de37c5f4e4c42acb0c1a16d4f67331b47f2490c9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Dec 8 01:18:28 2008 -0500

    an additional test of FFI primitives

commit 3b6aa50e57387a52df778db6fdeab1c5a7a1d253
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Dec 5 18:51:38 2008 -0500

    permanently referencing the error handler wrapper to avoid nasty GC issues.

commit 60689985c84ae65e975695230962233a56a86a78
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Fri Dec 5 17:29:55 2008 -0500

    extending LibXML module with the CrossFFI mixin

commit 4aa3fa69c119cbd794b8e7f251793d942fe6055a
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Dec 4 12:47:28 2008 -0500

    cross-ffi no longer pollutes Module, but is used to 'extend' modules. additional methods and members to xml_document. xml_node no longer a managed struct. some additional node methods.

commit 9264080229e531da00fd408f0f7aed3daa18b637
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Thu Dec 4 00:01:28 2008 -0500

    FFI: support for read_io

commit 4c5f2d0a3221ec2692875af556fd88c2290a15c0
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 17:17:14 2008 -0500

    added syntax error support.

commit 774773c8b4bcb486c4ad849a511a8bbe7fcd25a9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 17:16:34 2008 -0500

    changed autopointer finalization error message to a warning requiring $DEBUG. also added ffi_callback().

commit 4adbdd398234faf491bc0724f721dcb9d4b40041
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 17:15:58 2008 -0500

    properly handling node finalization with a pointer cast.

commit cb4cb5e8561fc07c029157b4da77c82d60fc6be2
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 17:15:17 2008 -0500

    refactored document structs. cast version no longer is a managed struct.

commit f4968ca36cc38356192aa14b214dc55a1ff51c17
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 15:21:25 2008 -0500

    added output if an autopointer finalize raises an exception. previously FFI failed silently.

commit 8e891e7167bc25267fad15b42e38da5c75e9312c
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 13:58:20 2008 -0500

    FFI: more document, node, node_set and xpath_context support. all of test_document passes (except for read_io).

commit 33cbf83c23febe8d99ef7f7295b4511c87b88a5f
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 12:33:17 2008 -0500

    Node.to_xml() and XmlBuffer structs

commit d497083717ae729016b72927725bee28f49c28dc
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 12:01:41 2008 -0500

    Document#wrap and Node#wrap. doc-&gt;_private.

commit 17527911d9e76eeafb1c3bcfb61dc40fd3dcc957
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Wed Dec 3 10:24:41 2008 -0500

    cleaning up FFI code to follow a common style for readability

commit 5cedbc12e5d0f75ba0f3d6ba211f42074b36fcf0
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 22:37:18 2008 -0500

    can switch between FFI or native library based on envvar NOKOGIRI_FFI

commit 64ca0c21b15a39371f7611dfcc04fe38dd939889
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 22:31:51 2008 -0500

    reverted ffi-related changes to native library.

commit b5d369fae4f5a14dacf1248b95f7b7b2edd03310
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 21:57:42 2008 -0500

    added some node, node_set, xpath, xpath context support. lots of cleanup.

commit 7fa76a6b81c64c48aa53cd41c79597e4ed94dde9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 20:18:09 2008 -0500

    test cleanup

commit d65bc58507275d4a66dc7eae9a09d1cb3905f855
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 10:38:40 2008 -0500

    making read_memory() a constructor, by allocating a new object without calling new().

commit 47d006e6239030a14e57480197f146633329583d
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 10:35:22 2008 -0500

    got basic xml document handling working.

commit 33c401aeddc8daf62bba00a3200b983e4f4ac62c
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 09:24:18 2008 -0500

    renamed test library module to avoid clashing with CrossFFI module

commit ea79fd648655fe8ee9e5b68ceb8663c8533ed42d
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 03:11:59 2008 -0500

    using XmlAlloc struct to automate GC

commit b1236d2c80e3a995ce3ab57fa3435cfcdcacdb2d
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 02:44:46 2008 -0500

    testing how to use returned pointer-to-struct

commit d9496aba84662b2f657b5630d340357d934efb39
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 01:24:32 2008 -0500

    bringing HTML::Document FFI API in line with current.
    we hates the tricksy hoops FFI makes us jump through, precioussss

commit c32f94fd27fb6531a43fa0a0c7083bcb0b3e2ac8
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 01:23:42 2008 -0500

    struct.pointer test

commit 04e7a8653b3d3e1ce214d26f04aacb8a9d282e95
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 01:11:57 2008 -0500

    whoops, removing binary files from cross-ffi test clib

commit 6a60cc26211bd71a83bfe87f22d877ac7a333600
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 01:10:53 2008 -0500

    some additional testing of ffi primitives

commit c0c6cdd7fead403c9c1535855423e2b92998cde9
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Dec 2 01:05:25 2008 -0500

    bringing cross-ffi.rb up to date with current (not-yet-released) ruby-ffi

commit 371577e46a912e13d045adec8ab78f7267395652
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Nov 30 00:51:20 2008 -0500

    bringing cross-ffi up-to-date with accepted ruby-ffi patches.
    also making sure we're using an abstraction layer for FFI.

commit 55cd223d82ceb09e8e62d04a288a229d1bd5e52c
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Nov 25 15:42:55 2008 -0500

    updated with comment about removal

commit ecb926b8904c147cd4c6a18a1d3be88c8e41f978
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Nov 25 14:43:27 2008 -0500

    a basic test case for FFI.

    also, mocha is now required for tests.

commit da1fac4e3cfd7dbda57e5ea2f4e315e39940acc0
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Nov 25 14:35:40 2008 -0500

    updated libxml ffi code to use FFI::ManagedStruct and new XmlAlloc struct to simplify cleanup.

commit 5d937449d928388f83759085db720b537c35b6eb
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Nov 25 14:35:06 2008 -0500

    moved some files around in cross-ffi test cases

commit 6afbe0086e9d9fa05a9e62d76aa1903f6246f911
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Nov 25 14:30:45 2008 -0500

    updating CrossFFI::Struct to be named FFI::ManagedStruct and use new AutoPointer Method parameter.
    also updated some tests.

commit c01dc1b2a47ead30d679ab84c2c41b6ea527e07d
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Nov 25 14:22:19 2008 -0500

    autopointer!

commit 5f269bd8e626302736b2547a42c56839c674eb6f
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Tue Nov 25 10:42:29 2008 -0500

    removed .gitignore file

commit d2a443570c902e9823eaf6a38dd57b204781422e
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Mon Nov 24 15:47:19 2008 -0500

    the beginnings of a cross-ffi abstraction layer.
    includes primitives test (verify underlying library behavior) and a cross-ffi test (verify abstraction layer behavior).

commit 9113347332c5f2ec6e7c21cd35d56c573bf8edf5
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Nov 23 21:51:32 2008 -0500

    adding lifecycle management to new class CrossFFI::Struct, which uses autopointers when appropriate.

commit dfa5fc6d41e36d5982c7ee69b655e6cca7cbc51e
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sun Nov 23 11:29:09 2008 -0500

    adding FFI versions of some methods to HTML::Document, and commenting out same methods in html_document.c

commit dac52dd2aa3cacff15f9ae5925ca66d7fbab4c03
Author: Mike Dalessio &lt;mike@csa.net&gt;
Date:   Sat Nov 22 16:47:25 2008 -0500

    first FFI struct, and rake task to build it. cross-platform abstraction in cross-ffi.</message>
    <tree>22c076dcea4fb49bdb0cccee457762d5ecff6694</tree>
    <committer>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>6a45aefc67d196e595678ffe48df79c2bfe24462</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/acddc4a80692949590381f3231286133da69b6c9</url>
    <id>acddc4a80692949590381f3231286133da69b6c9</id>
    <committed-date>2009-04-25T23:08:42-07:00</committed-date>
    <authored-date>2009-04-25T23:08:42-07:00</authored-date>
    <message>adding an rdoc test and adding lots of rdoc.  closes #21</message>
    <tree>7a0e936029b29f457cfc95ac27ab8f4cc9817dea</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>d795d726f096eaea490a3330c1e562c5d725d3bf</id>
      </parent>
    </parents>
    <author>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/a913af57936869bf54acedac1586c9884dbfabec</url>
    <id>a913af57936869bf54acedac1586c9884dbfabec</id>
    <committed-date>2009-04-23T05:26:44-07:00</committed-date>
    <authored-date>2009-04-23T05:26:44-07:00</authored-date>
    <message>added Nokogiri::VERSION_INFO, a hash to store information about nokogiri and libxml versions.

Note that Nokogiri now warns you if you are running against a different version of LibXML than you built against.</message>
    <tree>6869e70761af4685ef4fb39167fb28a573017f60</tree>
    <committer>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>9ba58a95da81dfff4db25e6a76ad07aea8b94fef</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/fd9b7731b46c478ba65f517b692cfbb4c3742932</url>
    <id>fd9b7731b46c478ba65f517b692cfbb4c3742932</id>
    <committed-date>2009-04-09T14:58:20-07:00</committed-date>
    <authored-date>2009-04-09T14:58:20-07:00</authored-date>
    <message>switching nokogiri to rake-compiler</message>
    <tree>18a0014dc0fb219b529639c9fca71482f20cba62</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>ffbfc73420c753352eb50e7fcc85a387bfcae348</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/9d4a78eb96c33a32a93a209c1e17b77a76092dc0</url>
    <id>9d4a78eb96c33a32a93a209c1e17b77a76092dc0</id>
    <committed-date>2009-03-13T15:12:50-07:00</committed-date>
    <authored-date>2009-03-13T15:12:50-07:00</authored-date>
    <message>adding some documentation, updating frex requirement</message>
    <tree>e93340743a1a3ae3a823ebd1c0df8a59db9c4567</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>b91a8760bdc89a0199a52cf3edc291ebc41232f0</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/a02964e4ba0eea16ae895b598073970ffcc75642</url>
    <id>a02964e4ba0eea16ae895b598073970ffcc75642</id>
    <committed-date>2009-02-13T14:10:29-08:00</committed-date>
    <authored-date>2009-02-13T14:10:29-08:00</authored-date>
    <message>adding to_xhtml using xmlsave api for serializing documents</message>
    <tree>8853f76e34c67b5bb77334e387f30d8a646850d9</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>ec54f7ac55055064137d1d0ae39cd4d676fb1d87</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/7f2ae51a57449508817fc82ec01c6e7166bf5ebe</url>
    <id>7f2ae51a57449508817fc82ec01c6e7166bf5ebe</id>
    <committed-date>2009-02-13T12:30:38-08:00</committed-date>
    <authored-date>2009-02-13T12:30:38-08:00</authored-date>
    <message>loading the native portions before the ruby portions so that we can alias methods</message>
    <tree>fc6265d6a1709b5f105cd319d5c03773da950d9f</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>9293f90a986cd5adaaaa7fef7fc6083461cd0bdf</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/8620b6b9dd59b405ac5bd299c9d1eff36045cb1e</url>
    <id>8620b6b9dd59b405ac5bd299c9d1eff36045cb1e</id>
    <committed-date>2009-02-07T19:21:28-08:00</committed-date>
    <authored-date>2009-02-07T19:21:28-08:00</authored-date>
    <message>removing error_handler lambda</message>
    <tree>757b5c0426249d523ed14ed00b4db638759f03c2</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>7d2109d57fc63a8693ba58722078f7f4e64cfa64</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/0dfe02553770f45d9105ba56c4fc75f7c67b8df4</url>
    <id>0dfe02553770f45d9105ba56c4fc75f7c67b8df4</id>
    <committed-date>2009-02-05T13:48:32-08:00</committed-date>
    <authored-date>2009-02-05T13:48:32-08:00</authored-date>
    <message>HTML.fragment now returns a DocumentFragment.  LH#32</message>
    <tree>ac0a779f8df4e491eb6865aea1c439db27a7094a</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>65fcbb16aff19065c6a93411f703810bc7c29bff</id>
      </parent>
    </parents>
    <author>
      <name>Jeff Hodges</name>
      <email>jeff@somethingsimilar.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/597861f036a42cf37fc235c1169c3e4c8bbce2e8</url>
    <id>597861f036a42cf37fc235c1169c3e4c8bbce2e8</id>
    <committed-date>2009-02-03T20:12:25-08:00</committed-date>
    <authored-date>2009-02-03T19:45:57-08:00</authored-date>
    <message>providing a central Nokogiri::SyntaxError for all SyntaxErrors inside Nokogiri to inherit from</message>
    <tree>6445ec3f4bd5eeff8c6ed84a397b97951d66f758</tree>
    <committer>
      <name>Jeff Hodges</name>
      <email>jeff@somethingsimilar.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>88ddf16173d00978269d2d7f3b074da30f79799b</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/7979a3bbadf6154c9653bc14a732804d8634813b</url>
    <id>7979a3bbadf6154c9653bc14a732804d8634813b</id>
    <committed-date>2009-01-24T12:17:12-08:00</committed-date>
    <authored-date>2009-01-24T12:17:12-08:00</authored-date>
    <message>deprecating new_from_str.  fixes LH#30</message>
    <tree>bebfdf9d2ecb6c02eb299ce66af31b68e6e7ee13</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>ffac3c78ef98588d9ffe3e6e46339dd73d92ce8b</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/8b9daefbcc1635414ddb991b328755c3783615cb</url>
    <id>8b9daefbcc1635414ddb991b328755c3783615cb</id>
    <committed-date>2008-11-30T22:19:58-08:00</committed-date>
    <authored-date>2008-11-30T22:19:58-08:00</authored-date>
    <message>making sure that sloppy css selectors do not descend too far</message>
    <tree>a3091bd5ea7fa8038a0eb023f7cedf22dbdfe20b</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>b5da49549b904ab3da14adf2a4ae6a6f715c7224</id>
      </parent>
    </parents>
    <author>
      <name>John Barnette</name>
      <email>jbarnette@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/46be2582100726559f8ed753e0afa6604404b816</url>
    <id>46be2582100726559f8ed753e0afa6604404b816</id>
    <committed-date>2008-11-26T11:09:06-08:00</committed-date>
    <authored-date>2008-11-26T11:09:06-08:00</authored-date>
    <message>Nokogiri::Slop(xml) provides a navigable doc. Nakajima!</message>
    <tree>99d318dbbc8a8ac44bc358afa2410b691dcb5dab</tree>
    <committer>
      <name>John Barnette</name>
      <email>jbarnette@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>0e7b52d4321b42022104eb43f5aa9e6672ab96fc</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/a86a914cf367a962de4b3114c02716d487c0d257</url>
    <id>a86a914cf367a962de4b3114c02716d487c0d257</id>
    <committed-date>2008-11-24T14:47:48-08:00</committed-date>
    <authored-date>2008-11-24T14:47:48-08:00</authored-date>
    <message>Prepending rather than appending ENV['PATH'] on windows.

http://nokogiri.lighthouseapp.com/projects/19607-nokogiri/tickets/4</message>
    <tree>32644057c4f2d649b138017c6833fb3b0b830077</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>f73028cd66e2fed4f003dade6807463b46054ed5</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/33ab946ead2ccb329a5d34a86bafb7bce09c794f</url>
    <id>33ab946ead2ccb329a5d34a86bafb7bce09c794f</id>
    <committed-date>2008-11-22T14:18:50-08:00</committed-date>
    <authored-date>2008-11-22T14:18:50-08:00</authored-date>
    <message>delegating Nokogiri() to the right place</message>
    <tree>32962047ea53484a926b8be1e8a3e595c0279b8b</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>059769d59e0bb96bef53a5604e52c1e494432005</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/f1b2c5434702b7d319b9a207a3bf2baa73823dd7</url>
    <id>f1b2c5434702b7d319b9a207a3bf2baa73823dd7</id>
    <committed-date>2008-11-11T08:57:56-08:00</committed-date>
    <authored-date>2008-11-11T08:57:56-08:00</authored-date>
    <message>defaulting ENV[&quot;PATH&quot;] on windows if it does not exist.  annoying....</message>
    <tree>6373a307b5487a1f669c9b5bb11230a341c31efd</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>cf6fc793d52d0ababd0da6a24cbd27d1f281e579</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/66fea0e730f83ea0f1eb02bb4f6d5d30e017afbe</url>
    <id>66fea0e730f83ea0f1eb02bb4f6d5d30e017afbe</id>
    <committed-date>2008-11-06T20:39:45-08:00</committed-date>
    <authored-date>2008-11-06T20:39:45-08:00</authored-date>
    <message>adding a java platform</message>
    <tree>895665b827b4617f6ac40ad3284c51997aed3da8</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>219b0e51fc37308fff95c553df309a324b300dbd</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/35cace6b81afb74ab04859702dcc86f708c6600b</url>
    <id>35cace6b81afb74ab04859702dcc86f708c6600b</id>
    <committed-date>2008-10-29T18:53:49-07:00</committed-date>
    <authored-date>2008-10-29T18:53:49-07:00</authored-date>
    <message>fixing up win32 build, adding a few methods to dtd</message>
    <tree>96e3a88268fcde5a0247dc18e558a99f1ac7645b</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>116794cc7a37166a717ef965bfc005df0d58feb1</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/93761f9965b827fbf6585ee67fe50da75678a74c</url>
    <id>93761f9965b827fbf6585ee67fe50da75678a74c</id>
    <committed-date>2008-10-15T09:31:22-07:00</committed-date>
    <authored-date>2008-10-15T09:31:22-07:00</authored-date>
    <message>adding parser constants and cleaning up test warnings</message>
    <tree>88a1943780c85439f35171f2253a53c4e7f10a76</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>49e1b1805b681d54823e46cba09cf0ff59cc151e</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/23b18eb895e5d8a10bdefe7d36874ab5ea9707f2</url>
    <id>23b18eb895e5d8a10bdefe7d36874ab5ea9707f2</id>
    <committed-date>2008-10-14T09:01:04-07:00</committed-date>
    <authored-date>2008-10-14T09:01:04-07:00</authored-date>
    <message>updating documentation, making xml and html parser support io objects</message>
    <tree>bdc43d5fceb229fcce5e502eb2c6bd7e0c227d13</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>5dd94f1f04d5598b6d0930eabb48c55adf52cb8a</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/4c6c8fe33cbdd76c09a7b9b5485a0c836ae7043e</url>
    <id>4c6c8fe33cbdd76c09a7b9b5485a0c836ae7043e</id>
    <committed-date>2008-10-03T15:14:08-07:00</committed-date>
    <authored-date>2008-10-03T15:14:08-07:00</authored-date>
    <message>adding hook for catching xml parse errors</message>
    <tree>3619464191ee0e65d3b2419d320b2a1a17533733</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>39d4dcbd1f33a2f5a2a758846d1c8c6d7b9705e9</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/903a28d37526e82a2a75f4230b422aa7696c5a08</url>
    <id>903a28d37526e82a2a75f4230b422aa7696c5a08</id>
    <committed-date>2008-09-25T20:11:13-07:00</committed-date>
    <authored-date>2008-09-25T20:11:13-07:00</authored-date>
    <message>fixing warning</message>
    <tree>18c0994e88594832b4a4fd400af8198a7940b818</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>9246422c850b9e580eead224fd17ed5ff5564878</id>
      </parent>
    </parents>
    <author>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/38d3bfbd8e2a1aee78b3386291e5f5f9b6c7dfd9</url>
    <id>38d3bfbd8e2a1aee78b3386291e5f5f9b6c7dfd9</id>
    <committed-date>2008-09-17T13:39:40-07:00</committed-date>
    <authored-date>2008-09-17T13:39:40-07:00</authored-date>
    <message>starting the css selector ast</message>
    <tree>5e02613474582265f249262d0aa6223463c74e3a</tree>
    <committer>
      <name>Aaron Patterson</name>
      <email>aaron.patterson@gmail.com</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>ba08bb0b424a9397a60fbdc926aa761e5fc77f69</id>
      </parent>
    </parents>
    <author>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </author>
    <url>http://github.com/tenderlove/nokogiri/commit/1c4e553bd462e8ac18bda7db35d52547097cf4d0</url>
    <id>1c4e553bd462e8ac18bda7db35d52547097cf4d0</id>
    <committed-date>2008-09-16T18:49:44-07:00</committed-date>
    <authored-date>2008-09-16T18:25:44-07:00</authored-date>
    <message>implemented NodeSet.wrap() and along the way, Node.replace() and Nokogiri.make(). also fixed Nokogiri() and added test cases for Nokogiri(), replace(), wrap() and make(). last, made sure the XPath.node_set always returns a NodeSet, even if it's empty.</message>
    <tree>0565789c0c8ba583873548c7be6f87778f499a24</tree>
    <committer>
      <name>Mike Dalessio</name>
      <email>mike@csa.net</email>
    </committer>
  </commit>
</commits>
