<?xml version="1.0" encoding="UTF-8"?>
<commits type="array">
  <commit>
    <parents type="array">
      <parent>
        <id>b39e6c012f6a10af78e61068b2367e74271fc975</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/16e0de8a283d66d69be67997d26cbcbe609b73d2</url>
    <id>16e0de8a283d66d69be67997d26cbcbe609b73d2</id>
    <committed-date>2008-02-03T08:53:49-08:00</committed-date>
    <authored-date>2008-02-03T08:53:49-08:00</authored-date>
    <message>The request handler will be left in an inconsistent state if Apache dies during the middle of sending headers. This commit contains the beginning of an attempt to fix that, but it'll probably be easier to drop persistent pipe connections all together.</message>
    <tree>71c169c249722108ad7589834ee9556ba862edc2</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>08b64503a7c50e84332abc4e7111ecaa3fff2f03</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/b39e6c012f6a10af78e61068b2367e74271fc975</url>
    <id>b39e6c012f6a10af78e61068b2367e74271fc975</id>
    <committed-date>2008-02-03T08:50:28-08:00</committed-date>
    <authored-date>2008-02-03T08:50:28-08:00</authored-date>
    <message>- Make DummyRequestHandler faster.
- DummySpawnManager now checks for errors.
- Update the Makefile and add more dependency information.
- Improve documentation.
- Add tests for ApplicationPool. These set of tests will test both StandardApplicationPool as well as ApplicationPoolServer.
- Add empty test methods which are to be written later.</message>
    <tree>c9e66e833b564f3d0e47e565cc9e18a8a90631cf</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>4430bf4bf5b889828f311be186e7c9faa49aeecc</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/08b64503a7c50e84332abc4e7111ecaa3fff2f03</url>
    <id>08b64503a7c50e84332abc4e7111ecaa3fff2f03</id>
    <committed-date>2008-02-03T06:19:09-08:00</committed-date>
    <authored-date>2008-02-03T06:19:09-08:00</authored-date>
    <message>- Improve documentation.
- Add more unit tests.
- Check for errors in DummySpawnManager.</message>
    <tree>4b4e3263c7c9814546411f842fc7036aed950439</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>a3196e06dd1880d72a1c9c36903d80384b7f8ccd</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/4430bf4bf5b889828f311be186e7c9faa49aeecc</url>
    <id>4430bf4bf5b889828f311be186e7c9faa49aeecc</id>
    <committed-date>2008-02-03T05:02:03-08:00</committed-date>
    <authored-date>2008-02-03T05:02:03-08:00</authored-date>
    <message>- Fix some crasher bugs in DispatcherBucket.
- Fix wrong timeout calculation in DispatcherBucket.
- Add a DummyRequestHandler, which is probably the fastest possible request handler implementation. This, together with DummySpawnManager, allows one to benchmark the Apache module's performance.</message>
    <tree>193401ed6ea578a6938113b125f659c130b58986</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>ff5e85d3b3d69dd10a2b433fa1c5612867d93497</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/a3196e06dd1880d72a1c9c36903d80384b7f8ccd</url>
    <id>a3196e06dd1880d72a1c9c36903d80384b7f8ccd</id>
    <committed-date>2008-02-03T01:27:08-08:00</committed-date>
    <authored-date>2008-02-03T01:27:08-08:00</authored-date>
    <message>- Fix bugs in file descriptor management:
  * Make sure we do not close file descriptors twice. This could have lead to racing conditions, whereby new file descriptors are accidentally closed!
  * Only close file descriptors that are within the valid file descriptor range.
- Add unit test for checking that ApplicationPoolServer does not leak file descriptors.
- Valgrind now runs the unit tests with no errors or even warnings!</message>
    <tree>c3c0194ff7241604d9ec88de62869ddb4641718e</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>4becb67e448055fb31a89cb4979a8356c54f81c8</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/ff5e85d3b3d69dd10a2b433fa1c5612867d93497</url>
    <id>ff5e85d3b3d69dd10a2b433fa1c5612867d93497</id>
    <committed-date>2008-02-02T15:46:50-08:00</committed-date>
    <authored-date>2008-02-02T15:46:50-08:00</authored-date>
    <message>Make StandardApplicationPool thread-safe, and make it cache spawned applications with a naive algorithm.</message>
    <tree>80ff0db5e65f227d810af2574b8beccaedb90996</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>92ed565be331bcda7548a4d14d8d495d9c316b80</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/4becb67e448055fb31a89cb4979a8356c54f81c8</url>
    <id>4becb67e448055fb31a89cb4979a8356c54f81c8</id>
    <committed-date>2008-02-02T14:06:05-08:00</committed-date>
    <authored-date>2008-02-02T14:06:05-08:00</authored-date>
    <message>Fix some nasty bugs in the DispatcherBucket. Add some minor changes to other parts.</message>
    <tree>2fdfe6b0b8a9fdda3db65862772278e9bca92d97</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>aadf427bf3d5d7b0a1a164d50b35a1d71febefc3</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/92ed565be331bcda7548a4d14d8d495d9c316b80</url>
    <id>92ed565be331bcda7548a4d14d8d495d9c316b80</id>
    <committed-date>2008-02-02T12:32:00-08:00</committed-date>
    <authored-date>2008-02-02T12:32:00-08:00</authored-date>
    <message>Add a new ApplicationPoolServer, for sharing the application pool between child processes in Apache's prefork MPM. Also add unit tests for it.</message>
    <tree>a0be914f3041bb566fef9ae89e319ca5f45a6bfc</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>a92649cae9d3a26508f13b8f2cb73694216335ac</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/aadf427bf3d5d7b0a1a164d50b35a1d71febefc3</url>
    <id>aadf427bf3d5d7b0a1a164d50b35a1d71febefc3</id>
    <committed-date>2008-02-01T13:09:31-08:00</committed-date>
    <authored-date>2008-02-01T13:09:31-08:00</authored-date>
    <message>- Document thread-safetiness of MessageChannel.
- Correctly use errno in SpawnManager.</message>
    <tree>fb80451455fce166379cace0ddfd6f0b440357f3</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>42b311bb9b1137922bb9d873d58cc6e7672886c2</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/a92649cae9d3a26508f13b8f2cb73694216335ac</url>
    <id>a92649cae9d3a26508f13b8f2cb73694216335ac</id>
    <committed-date>2008-02-01T12:38:11-08:00</committed-date>
    <authored-date>2008-02-01T12:38:11-08:00</authored-date>
    <message>- Improve API documentation.
- SpawnManager (C++):
   * Improve error handling.
   * Will now attempt to restart the spawn server if it died.
   * Is now thread-safe.
   * Allows specifying a group when spawning apps.
- Ruby spawn server:
   * Allows specifying a group when spawning apps. This doesn't do anything yet.</message>
    <tree>5a1f2a4c17df1cb205f4f5eedb2a1e71e245c010</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>86a183863f623e835fb54c615dda3ef9edd1386e</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/42b311bb9b1137922bb9d873d58cc6e7672886c2</url>
    <id>42b311bb9b1137922bb9d873d58cc6e7672886c2</id>
    <committed-date>2008-02-01T07:30:50-08:00</committed-date>
    <authored-date>2008-02-01T07:30:50-08:00</authored-date>
    <message>- Improve documentation for the MessageChannel and SpawnManager C++ classes.
- Make sure a 500 Internal Server Error is returned if an unexpected exception is caught during a HTTP request.
- Make the spawn server print its errors to the Apache error log file instead of its own log file.</message>
    <tree>c0dd0d073f596a8f74472cab1e3d2f43d0a88ebe</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>0df1814d5800bb379c4e405989bb70b7b104d3d6</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/86a183863f623e835fb54c615dda3ef9edd1386e</url>
    <id>86a183863f623e835fb54c615dda3ef9edd1386e</id>
    <committed-date>2008-02-01T05:04:31-08:00</committed-date>
    <authored-date>2008-02-01T05:04:31-08:00</authored-date>
    <message>- Refactor the Hook class, and make it more 'C++-ey'. I.e. make less use of static global variables.
- Make sure the Apache module is only initialized once. Apparently Apache initializes modules twice.
- Optimize the request handler's protocol a bit so that fewer system calls are necessary.</message>
    <tree>d9deef9519fe8347e9db509419b2f64bec988359</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>598ebedf9003a7310bb22ad09d18ec03823b067f</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/0df1814d5800bb379c4e405989bb70b7b104d3d6</url>
    <id>0df1814d5800bb379c4e405989bb70b7b104d3d6</id>
    <committed-date>2008-02-01T02:15:01-08:00</committed-date>
    <authored-date>2008-02-01T02:15:01-08:00</authored-date>
    <message>Make debugging code more fault-tolerant.</message>
    <tree>fa6546a8f1d2f697db56d7825ae358a9ffa2093b</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>4bc5f59d77baa0ef1dc0a2e8a2b809d4e531fb23</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/598ebedf9003a7310bb22ad09d18ec03823b067f</url>
    <id>598ebedf9003a7310bb22ad09d18ec03823b067f</id>
    <committed-date>2008-02-01T01:56:38-08:00</committed-date>
    <authored-date>2008-02-01T01:56:38-08:00</authored-date>
    <message>- Add a benchmark for socket connections versus persistent pipes.
- The unix_sockets_vs_pipes benchmark now shows the processed lines per second.</message>
    <tree>78584cb6912ba555ef3d47c0ce62e4ae76f931d8</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>af29aeaa1d4bf975824b14fe7577168055045d01</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/4bc5f59d77baa0ef1dc0a2e8a2b809d4e531fb23</url>
    <id>4bc5f59d77baa0ef1dc0a2e8a2b809d4e531fb23</id>
    <committed-date>2008-01-31T13:15:50-08:00</committed-date>
    <authored-date>2008-01-31T13:15:50-08:00</authored-date>
    <message>mod_rails is stable now.</message>
    <tree>c7efcf034351f71ccb3b3d3bcc8508295cf68ac7</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>040201494bc0c798e543c0b2e1287ad15062ffa3</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/af29aeaa1d4bf975824b14fe7577168055045d01</url>
    <id>af29aeaa1d4bf975824b14fe7577168055045d01</id>
    <committed-date>2008-01-31T12:37:28-08:00</committed-date>
    <authored-date>2008-01-31T12:37:28-08:00</authored-date>
    <message>mod_rails is more usable now though it still crashes randomly.
The message channel protocol also had to be changed in order to fix some semantic ambiguities.</message>
    <tree>13c83296ba7c9cb58f58554897e84ab769f21703</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>1210ece4faeb5aca44f8e08cf6d09c5c467b59b5</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/040201494bc0c798e543c0b2e1287ad15062ffa3</url>
    <id>040201494bc0c798e543c0b2e1287ad15062ffa3</id>
    <committed-date>2008-01-31T03:00:44-08:00</committed-date>
    <authored-date>2008-01-31T03:00:44-08:00</authored-date>
    <message>Add a C++ SpawnManager class, which communicates with the Ruby spawn manager server to spawn applications. Also add unit tests for it.</message>
    <tree>9820dbb6183ec61488996f66af3abb944ec6683c</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>33c7093a0d205f9d9efda8843d38e25e899852e7</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/1210ece4faeb5aca44f8e08cf6d09c5c467b59b5</url>
    <id>1210ece4faeb5aca44f8e08cf6d09c5c467b59b5</id>
    <committed-date>2008-01-31T02:30:55-08:00</committed-date>
    <authored-date>2008-01-31T02:30:55-08:00</authored-date>
    <message>Add C++ implementation of MessageChannel and unit tests for it.</message>
    <tree>52c9b4f003b2ed1ba2f78a144d282895fda257dd</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>31350b61f21358ea68084e49aa5167f2d26251bb</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/33c7093a0d205f9d9efda8843d38e25e899852e7</url>
    <id>33c7093a0d205f9d9efda8843d38e25e899852e7</id>
    <committed-date>2008-01-29T12:52:03-08:00</committed-date>
    <authored-date>2008-01-29T12:52:03-08:00</authored-date>
    <message>We can now run a DispatcherBucket 'hello world'</message>
    <tree>b5204c34ffa45b5d53cc92d9274b8b0ec0c57b92</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>3d4034b5ae8071b4894008f5c83e0ef8f4c90191</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/31350b61f21358ea68084e49aa5167f2d26251bb</url>
    <id>31350b61f21358ea68084e49aa5167f2d26251bb</id>
    <committed-date>2008-01-26T11:33:22-08:00</committed-date>
    <authored-date>2008-01-26T11:33:22-08:00</authored-date>
    <message>Almost ready for action</message>
    <tree>4a30088927c4ac795651f0207d3649b446f528c7</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>8e71f9628e877c84c4c0c741c97b3d7a79261633</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/3d4034b5ae8071b4894008f5c83e0ef8f4c90191</url>
    <id>3d4034b5ae8071b4894008f5c83e0ef8f4c90191</id>
    <committed-date>2008-01-26T11:13:01-08:00</committed-date>
    <authored-date>2008-01-26T11:13:01-08:00</authored-date>
    <message>The Apache module is taking form.</message>
    <tree>46d76192b7f6c7690c26589b8bb197e59babb043</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>48142791f9e95d63bab374387b228c1088047f8f</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/8e71f9628e877c84c4c0c741c97b3d7a79261633</url>
    <id>8e71f9628e877c84c4c0c741c97b3d7a79261633</id>
    <committed-date>2008-01-25T14:26:55-08:00</committed-date>
    <authored-date>2008-01-25T14:26:55-08:00</authored-date>
    <message>Write the beginning of the Apache 2 module.</message>
    <tree>bfe070b25af4d5288f938d310442057888625937</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>6c1ee04aa991d71c1648d1e484359866b2c0494e</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/48142791f9e95d63bab374387b228c1088047f8f</url>
    <id>48142791f9e95d63bab374387b228c1088047f8f</id>
    <committed-date>2008-01-25T12:24:52-08:00</committed-date>
    <authored-date>2008-01-25T12:24:52-08:00</authored-date>
    <message>Finish the spawn manager.</message>
    <tree>6d65d44c15bb4cbbffd5d1b1f38e2adcaa3a24d9</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>d3d4984a3802a9934ae2e9b129d281651ab902b0</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/6c1ee04aa991d71c1648d1e484359866b2c0494e</url>
    <id>6c1ee04aa991d71c1648d1e484359866b2c0494e</id>
    <committed-date>2008-01-25T11:43:31-08:00</committed-date>
    <authored-date>2008-01-25T11:43:31-08:00</authored-date>
    <message>Move Ruby sources into 'lib' subfolder; add C extension for sending file descriptors over a Unix socket</message>
    <tree>53374ab3b6523d5f9664f4e265929798ea5224ff</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array">
      <parent>
        <id>bcac50db6b3b45960c83069aaff192ebb370cb64</id>
      </parent>
    </parents>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/d3d4984a3802a9934ae2e9b129d281651ab902b0</url>
    <id>d3d4984a3802a9934ae2e9b129d281651ab902b0</id>
    <committed-date>2008-01-25T10:49:52-08:00</committed-date>
    <authored-date>2008-01-25T10:49:52-08:00</authored-date>
    <message>Add benchmarks</message>
    <tree>ddbae6b2ee77a3db2fc4928f94662d543eb3e7dd</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
  <commit>
    <parents type="array"/>
    <author>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </author>
    <url>http://github.com/FooBarWidget/passenger/commit/bcac50db6b3b45960c83069aaff192ebb370cb64</url>
    <id>bcac50db6b3b45960c83069aaff192ebb370cb64</id>
    <committed-date>2008-01-25T10:40:17-08:00</committed-date>
    <authored-date>2008-01-25T10:40:17-08:00</authored-date>
    <message>Initial import.</message>
    <tree>3d70063fe43c99f87dac64ca1c79f5fede6609ef</tree>
    <committer>
      <name>Hongli Lai</name>
      <email>hongli@plan99.net</email>
    </committer>
  </commit>
</commits>
