)]}'
{
  "log": [
    {
      "commit": "feef008d51ad2b3778f85d387ccf91735543008d",
      "tree": "c676d0a3a3c4ef47e58011f7f9aba7ac317abe28",
      "parents": [
        "77f9d901f033449812859efb949bfa3bcc21a5dd",
        "7cd9b3abac90e3f5aef4115be693826ccb3b8ae7"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sun Apr 09 09:17:39 2017 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 09 09:17:39 2017 +0200"
      },
      "message": "Merge pull request #78 from sergi/support-1.7-and-1.8\n\nSwitch to Go 1.7 and 1.8"
    },
    {
      "commit": "7cd9b3abac90e3f5aef4115be693826ccb3b8ae7",
      "tree": "c676d0a3a3c4ef47e58011f7f9aba7ac317abe28",
      "parents": [
        "77f9d901f033449812859efb949bfa3bcc21a5dd"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sun Apr 09 09:09:53 2017 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sun Apr 09 09:09:53 2017 +0200"
      },
      "message": "Switch to Go 1.7 and 1.8\n\nWe are only supporting the two latest major Go releases.\n"
    },
    {
      "commit": "77f9d901f033449812859efb949bfa3bcc21a5dd",
      "tree": "eae31de40d932189ddd1c70245efd550f64a7042",
      "parents": [
        "24e2351369ec4949b2ed0dc5c477afdd4c4034e8",
        "ad02bdde1a9b3bb4d25bb807982f621eebe7e048"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sun Apr 09 09:05:38 2017 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sun Apr 09 09:05:38 2017 +0200"
      },
      "message": "Merge pull request #72 from maksimov/master\n\nRefactored error checking tests. Fixes #71"
    },
    {
      "commit": "ad02bdde1a9b3bb4d25bb807982f621eebe7e048",
      "tree": "bb48113d1573998efda3e08fa6401a03b88080b3",
      "parents": [
        "fa2672981ea661877a2d4d11fd482a40c5fc4e08"
      ],
      "author": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Mon Dec 05 19:34:41 2016 +0300"
      },
      "committer": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Mon Apr 03 15:52:59 2017 +0100"
      },
      "message": "Refactored error checking tests. Fixes #71\n\nCode-review changes, update to an incorrectly worded error message\n"
    },
    {
      "commit": "24e2351369ec4949b2ed0dc5c477afdd4c4034e8",
      "tree": "6bf5b751111282e458b7dffea36abffb2f1c80e2",
      "parents": [
        "83532ca1c1caa393179c677b6facf48e61f4ca5d",
        "fff5e9bb3d8183047393558539bd826b07d526ee"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Wed Jan 18 14:12:30 2017 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Jan 18 14:12:30 2017 +0100"
      },
      "message": "Merge pull request #73 from sergi/support-1.6-and-1.7\n\nSupport Go 1.6 and 1.7"
    },
    {
      "commit": "fff5e9bb3d8183047393558539bd826b07d526ee",
      "tree": "b137c1feb1bdbc5adcd6d9349199e80610215178",
      "parents": [
        "9197bcad60379c66f1e0cddd255c4f575e743671"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Dec 12 20:36:10 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Dec 12 20:36:10 2016 +0100"
      },
      "message": "Sort authors and contributors\n"
    },
    {
      "commit": "9197bcad60379c66f1e0cddd255c4f575e743671",
      "tree": "ee648cc5915de56797eaf243701f9c95921351dd",
      "parents": [
        "0aae786c3c45402508a57647dff4e625884ba0c9"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Dec 12 20:34:06 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Dec 12 20:34:06 2016 +0100"
      },
      "message": "Always support the latest two Go releases\n"
    },
    {
      "commit": "83532ca1c1caa393179c677b6facf48e61f4ca5d",
      "tree": "82f7f4f35e93e278f163408ec04b904ec6e163ce",
      "parents": [
        "0aae786c3c45402508a57647dff4e625884ba0c9",
        "fa2672981ea661877a2d4d11fd482a40c5fc4e08"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Dec 05 09:04:20 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Dec 05 09:04:20 2016 +0100"
      },
      "message": "Merge pull request #70 from maksimov/master\n\nAdded more tests to improve coverage slightly"
    },
    {
      "commit": "fa2672981ea661877a2d4d11fd482a40c5fc4e08",
      "tree": "82f7f4f35e93e278f163408ec04b904ec6e163ce",
      "parents": [
        "0aae786c3c45402508a57647dff4e625884ba0c9"
      ],
      "author": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Mon Dec 05 04:33:20 2016 +0300"
      },
      "committer": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Mon Dec 05 04:35:25 2016 +0300"
      },
      "message": "Added more tests to improve coverage slightly\n"
    },
    {
      "commit": "0aae786c3c45402508a57647dff4e625884ba0c9",
      "tree": "264f761dfec7e3d7158bdc332bc608daf0093f32",
      "parents": [
        "7eb553dc40a8270762b5338ec0c64b72f87d3ec1",
        "b4e19a8f321253849b1e5525eca1ea637bc76547"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Dec 03 16:35:20 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 03 16:35:20 2016 +0100"
      },
      "message": "Merge pull request #68 from maksimov/master\n\nAdded OSX and Linux builders to .travis.yml"
    },
    {
      "commit": "b4e19a8f321253849b1e5525eca1ea637bc76547",
      "tree": "264f761dfec7e3d7158bdc332bc608daf0093f32",
      "parents": [
        "7eb553dc40a8270762b5338ec0c64b72f87d3ec1"
      ],
      "author": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Sat Dec 03 18:23:58 2016 +0300"
      },
      "committer": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Sat Dec 03 18:23:58 2016 +0300"
      },
      "message": "Added OSX and Linux builders to .travis.yml\nFixes #65\n"
    },
    {
      "commit": "7eb553dc40a8270762b5338ec0c64b72f87d3ec1",
      "tree": "b4a0df7638abbbc110aa93dc6f639ab9baed4170",
      "parents": [
        "e41fa837d9ea7f630c6810a2e4ca9ff08170b837"
      ],
      "author": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Sat Dec 03 18:11:42 2016 +0300"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Dec 03 16:11:42 2016 +0100"
      },
      "message": "Use grep -E in lint.sh to make it compatible with BSD grep (#67)\n\nUse grep -E in lint.sh to make it compatible with BSD grep\r\n\r\nFixes #64\r\n"
    },
    {
      "commit": "e41fa837d9ea7f630c6810a2e4ca9ff08170b837",
      "tree": "cc9f0083698c886060356217ad6f0a21b3af2ebc",
      "parents": [
        "431343a89a2ec4ea8168b3ee3d7a96169f6ff605",
        "159939ffad8d9e3eb182d26710796c88e37f97f2"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Dec 03 14:14:13 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Dec 03 14:14:13 2016 +0100"
      },
      "message": "Merge pull request #63 from maksimov/master\n\nFix lint.sh on macOS (#62)"
    },
    {
      "commit": "159939ffad8d9e3eb182d26710796c88e37f97f2",
      "tree": "cc9f0083698c886060356217ad6f0a21b3af2ebc",
      "parents": [
        "539920598759b1224d9093549be4f6a3e899b258"
      ],
      "author": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Sat Dec 03 15:57:40 2016 +0300"
      },
      "committer": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Sat Dec 03 15:57:40 2016 +0300"
      },
      "message": "Updated AUTHORS and CONTRIBUTORS\n"
    },
    {
      "commit": "539920598759b1224d9093549be4f6a3e899b258",
      "tree": "31bce97ace196eb5c105763fd40542e29ad67a1b",
      "parents": [
        "431343a89a2ec4ea8168b3ee3d7a96169f6ff605"
      ],
      "author": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Sat Dec 03 15:19:34 2016 +0300"
      },
      "committer": {
        "name": "Stas Maksimov",
        "email": "maksimov@gmail.com",
        "time": "Sat Dec 03 15:19:34 2016 +0300"
      },
      "message": "Fix lint.sh on macOS (#62)\n"
    },
    {
      "commit": "431343a89a2ec4ea8168b3ee3d7a96169f6ff605",
      "tree": "5bd4456f234c687c0a75a6933eb92dc4d3d5e27d",
      "parents": [
        "d7be4c82363778764f76e90fb14a9722f1b92d63",
        "dda5e6e619e07afd096b6ee01b93feba134e78dc"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Fri Dec 02 20:46:04 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 02 20:46:04 2016 +0100"
      },
      "message": "Merge pull request #61 from sergi/21-invalid-utf8\n\nDocument invalid UTF-8 sequence handling"
    },
    {
      "commit": "dda5e6e619e07afd096b6ee01b93feba134e78dc",
      "tree": "5bd4456f234c687c0a75a6933eb92dc4d3d5e27d",
      "parents": [
        "5f9c862b459485a249c0e7304fdb5bca42f04325"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Fri Dec 02 19:47:56 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Fri Dec 02 20:29:53 2016 +0100"
      },
      "message": "Define the behavior for invalid UTF-8 sequences\n\nFixes #21\n"
    },
    {
      "commit": "5f9c862b459485a249c0e7304fdb5bca42f04325",
      "tree": "77eaf7ca26d2360191a8e9649506b77c26692fe7",
      "parents": [
        "d7be4c82363778764f76e90fb14a9722f1b92d63"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Fri Dec 02 20:20:50 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Fri Dec 02 20:21:16 2016 +0100"
      },
      "message": "No need for variables here\n"
    },
    {
      "commit": "d7be4c82363778764f76e90fb14a9722f1b92d63",
      "tree": "7634557f8a33d07d889bb843f570a2a22ca34760",
      "parents": [
        "647f90bfbe2c5e2f1c1ec70d644f0f1d00da6d48",
        "2be755f07c89fb99d39962938dd2e69003c4f6e6"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Fri Dec 02 17:17:33 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Fri Dec 02 17:17:33 2016 +0100"
      },
      "message": "Merge pull request #53 from sergi/43-refactor\n\nRefactor everything"
    },
    {
      "commit": "2be755f07c89fb99d39962938dd2e69003c4f6e6",
      "tree": "7634557f8a33d07d889bb843f570a2a22ca34760",
      "parents": [
        "dbcb93d0978fc2b45eaf7be0ba3bc2e780bb57e3"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Fri Dec 02 17:14:28 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Fri Dec 02 17:14:46 2016 +0100"
      },
      "message": "Use a constant for the testdata directory\n"
    },
    {
      "commit": "dbcb93d0978fc2b45eaf7be0ba3bc2e780bb57e3",
      "tree": "afeeb2e38ebcf81ac14e7f6318cf6f0cee9c90d5",
      "parents": [
        "6b5d58acc31d7ef8596bb0e96a66e3185f3a4568"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 23:31:40 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:54 2016 +0100"
      },
      "message": "Refactor code style and functionality\n"
    },
    {
      "commit": "6b5d58acc31d7ef8596bb0e96a66e3185f3a4568",
      "tree": "d638b1a7201fb32bc22ab3b4d6da8999cc171ae5",
      "parents": [
        "ac88a7cd3135ac63ccbbbe39feddabd7c25435fa"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 23:00:11 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:53 2016 +0100"
      },
      "message": "HURRAY, only one comment style...\n"
    },
    {
      "commit": "ac88a7cd3135ac63ccbbbe39feddabd7c25435fa",
      "tree": "7978bcba98857da6fbed840861b0c576c34f05d4",
      "parents": [
        "5aee5ba506f833153ce9dbe5bfe68145ecb5f11c"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:46:07 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:53 2016 +0100"
      },
      "message": "Make diffCleanupSemanticScore a regular function\n"
    },
    {
      "commit": "5aee5ba506f833153ce9dbe5bfe68145ecb5f11c",
      "tree": "cd64436a428dee6c1731e66468db26401029151c",
      "parents": [
        "c3c4cf234611bee1992da8fd9e60f98e87acb8ec"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:41:24 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:53 2016 +0100"
      },
      "message": "Insert a TODO for the binary search of commonSuffixLength\n"
    },
    {
      "commit": "c3c4cf234611bee1992da8fd9e60f98e87acb8ec",
      "tree": "618dedd431734562ac0fefc7e646aa96d88d263b",
      "parents": [
        "9f859138cbd2a29f28b80e709ce0bc1334c7cdec"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:24:16 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:52 2016 +0100"
      },
      "message": "Remove diffmatchpatch_test.go because it is now empty\n"
    },
    {
      "commit": "9f859138cbd2a29f28b80e709ce0bc1334c7cdec",
      "tree": "92cde53c1d3a4c422622a794e9077ae6b381d00a",
      "parents": [
        "b3021ff0c31ff30122aa2d4f8d1e1d1db1eb3ffd"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:23:38 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:52 2016 +0100"
      },
      "message": "Move util functionality into *util*.go\n"
    },
    {
      "commit": "b3021ff0c31ff30122aa2d4f8d1e1d1db1eb3ffd",
      "tree": "f351359a28e7410c67d1cdf1d09c24deb177ec70",
      "parents": [
        "556ef279092fa5987e93726754f9126c35ac493b"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:20:24 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:50 2016 +0100"
      },
      "message": "Move benchmark functionality and remove caller function\n"
    },
    {
      "commit": "556ef279092fa5987e93726754f9126c35ac493b",
      "tree": "b1d5297333ac96824cc905afdedd014aecb0caa3",
      "parents": [
        "fd44800f78e6d6e868642518c4611ce03f5cdba8"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:11:44 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:49 2016 +0100"
      },
      "message": "Move even more functionality into diff\n"
    },
    {
      "commit": "fd44800f78e6d6e868642518c4611ce03f5cdba8",
      "tree": "65954a0fd9f3d6dc8bf2647baf28f258d27c9e3c",
      "parents": [
        "6720860da56a07784152306bad03c390a5b0868b"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:09:43 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:48 2016 +0100"
      },
      "message": "Move patch functionality into patch*.go\n"
    },
    {
      "commit": "6720860da56a07784152306bad03c390a5b0868b",
      "tree": "1b9b2016b4afad06ecd50cf8fcb091ed9376b98b",
      "parents": [
        "b800aa4546f7259a623313308bcbe88c0aa5f970"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:05:27 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:47 2016 +0100"
      },
      "message": "Move match functionality into match*.go\n"
    },
    {
      "commit": "b800aa4546f7259a623313308bcbe88c0aa5f970",
      "tree": "c2d1fef60afdf72c5498d06aaf5f3ed73667d86b",
      "parents": [
        "ffacb1abfae80cbed44ec738d14d10812b660305"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 22:00:33 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:45 2016 +0100"
      },
      "message": "Move diff functionality into diff*.go\n"
    },
    {
      "commit": "ffacb1abfae80cbed44ec738d14d10812b660305",
      "tree": "f3e98c10259fe27947c0afcd2891b6cb4218d5b8",
      "parents": [
        "503abb438898e3a27bddf2e2e9cc33fb80f85803"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 21:50:12 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 23:08:44 2016 +0100"
      },
      "message": "Rework the licence information for the Go code.\n"
    },
    {
      "commit": "503abb438898e3a27bddf2e2e9cc33fb80f85803",
      "tree": "28ec6193dc2873b796d367f2dcdbeef4a1669480",
      "parents": [
        "16b0804edfd41e675066519c1ed97469a666b3fd"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 20:18:16 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 22:58:25 2016 +0100"
      },
      "message": "Refactor the test code\n\n- Use table-driven tests where possible\n- Reduce helper code, e.q., copycats of assert.Equal\n- Reformat most of the code\n- Rename the test functions to be Go conform\n"
    },
    {
      "commit": "16b0804edfd41e675066519c1ed97469a666b3fd",
      "tree": "21157fee78829d3dcdcd1c1205a6984e61ddd6b0",
      "parents": [
        "6ae06cb6f3055c59cc074b912df1589070384a48"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 11:37:39 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 22:58:25 2016 +0100"
      },
      "message": "Refactor benchmarks\n"
    },
    {
      "commit": "6ae06cb6f3055c59cc074b912df1589070384a48",
      "tree": "ce552385659efd76587fa245a3a9ac997ff24d76",
      "parents": [
        "dd3fb6942e833d85a9037108c54720a1b190fac5"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Nov 03 11:27:04 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 22:58:25 2016 +0100"
      },
      "message": "Rename dmp*.go to diffmatchpatch*.go\n\nAlthough \"diffmatchpatch\" is longer than \"dmp\" it will make more sense\nafter the files are split into smaller files.\n"
    },
    {
      "commit": "dd3fb6942e833d85a9037108c54720a1b190fac5",
      "tree": "edb9a84b2727539f05bbed3a4bb887f1265e326e",
      "parents": [
        "647f90bfbe2c5e2f1c1ec70d644f0f1d00da6d48"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 21:18:43 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 22:58:25 2016 +0100"
      },
      "message": "Move benchmark fixtures to testdata folder\n"
    },
    {
      "commit": "647f90bfbe2c5e2f1c1ec70d644f0f1d00da6d48",
      "tree": "8d285f88cf941c5d3dc017244cec80afb7f95796",
      "parents": [
        "552b4e9bbdca9e5adafd95ee98c822fdd11b330b",
        "00579f83a30ecf49024ac509174891ce81e82c8f"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 22:54:42 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Dec 01 22:54:42 2016 +0100"
      },
      "message": "Merge pull request #50 from sergi/revamp-the-readme\n\nRevamp the README"
    },
    {
      "commit": "00579f83a30ecf49024ac509174891ce81e82c8f",
      "tree": "f30d0aa469edc02d4af3b531d08ffbf8d8f10ae6",
      "parents": [
        "c55cf50e9bdd7c29505aea7517a9374f1be9a7be"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 17:49:08 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Dec 01 22:50:09 2016 +0100"
      },
      "message": "Revamp the README, and add the AUTHORS and CONTRIBUTORS files\n"
    },
    {
      "commit": "552b4e9bbdca9e5adafd95ee98c822fdd11b330b",
      "tree": "780a4ff504ce8b5153d5397fe840918ab27c157d",
      "parents": [
        "c55cf50e9bdd7c29505aea7517a9374f1be9a7be",
        "1a922c8868a6756f4b26f491480ef06e520cd127"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 19:40:45 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 02 19:40:45 2016 +0100"
      },
      "message": "Merge pull request #52 from sergi/remove-the-stack-implementation\n\nRemove the own stack implementation"
    },
    {
      "commit": "1a922c8868a6756f4b26f491480ef06e520cd127",
      "tree": "780a4ff504ce8b5153d5397fe840918ab27c157d",
      "parents": [
        "f1c1a91f8929f12a5020b944a7155b6f63f2a06d"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 19:02:10 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 19:17:38 2016 +0100"
      },
      "message": "Replace the stack implementation with a simple linked list structure\n\nThis makes the execution also faster since no type assertions are\nneeded.\n"
    },
    {
      "commit": "f1c1a91f8929f12a5020b944a7155b6f63f2a06d",
      "tree": "21f2160d6672d426150ea9a7d7faba683298326a",
      "parents": [
        "c55cf50e9bdd7c29505aea7517a9374f1be9a7be"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 19:13:19 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 19:17:37 2016 +0100"
      },
      "message": "Benchmark DiffCleanupSemantic\n"
    },
    {
      "commit": "c55cf50e9bdd7c29505aea7517a9374f1be9a7be",
      "tree": "55fcf21567adcc8d6d8582d5e938f9c62ace8e0e",
      "parents": [
        "ff694a8a530c929006f311ff29b669d36725dba8",
        "c6f74d9ab99c1a1b9507e81ea54e93b69274738a"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 16:33:51 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Nov 02 16:33:51 2016 +0100"
      },
      "message": "Merge pull request #48 from sergi/46-refactor-diffHalfMatchI-and-remove-concat\n\nRefactor diff half match i and remove concat"
    },
    {
      "commit": "c6f74d9ab99c1a1b9507e81ea54e93b69274738a",
      "tree": "55fcf21567adcc8d6d8582d5e938f9c62ace8e0e",
      "parents": [
        "886a402b3198dced3cc14b8443be62604b8cb664"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 16:23:50 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 16:23:50 2016 +0100"
      },
      "message": "Refactor diffHalfMatchI and remove concat\n\n- The variable j is just a loop index so use a for-loop\n- Most indentations can be removed by doing early-exits\n- By doing the concatenating of bestCommon later we can often save lots\nof cycles\n- \"concat\" is useless since in most parts of the code, it isn\u0027t used\neither\n\nFixes #46\n"
    },
    {
      "commit": "886a402b3198dced3cc14b8443be62604b8cb664",
      "tree": "d2616943e1c236209b4ae830ca9101c0609e6160",
      "parents": [
        "ff694a8a530c929006f311ff29b669d36725dba8"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 16:20:13 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Nov 02 16:20:13 2016 +0100"
      },
      "message": "Benchmark for DiffHalfMatch\n"
    },
    {
      "commit": "ff694a8a530c929006f311ff29b669d36725dba8",
      "tree": "219910b2d4f44c31fcc6a79a351b8123c65601b9",
      "parents": [
        "f7fcaada5500405b458a8ef96415b148fcfeacd5",
        "cf6d27e158efc742ae6629ee84adb27960b9cead"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Oct 31 20:46:53 2016 +0100"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 31 20:46:53 2016 +0100"
      },
      "message": "Merge pull request #44 from sergi/29-diff-equals-must-be-equal-to-originals\n\nTest case to make sure that diff texts are equal to originals with checklines\u003dtrue"
    },
    {
      "commit": "cf6d27e158efc742ae6629ee84adb27960b9cead",
      "tree": "219910b2d4f44c31fcc6a79a351b8123c65601b9",
      "parents": [
        "f7fcaada5500405b458a8ef96415b148fcfeacd5"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Oct 31 20:36:54 2016 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Oct 31 20:36:54 2016 +0100"
      },
      "message": "Test case to make sure that diff texts are equal to originals with\nchecklines\u003dtrue\n\nCloses #29\n"
    },
    {
      "commit": "f7fcaada5500405b458a8ef96415b148fcfeacd5",
      "tree": "fda84019533ed5467ec84b99c8c087201da2432c",
      "parents": [
        "159219eea0bd1dceb6fe1243939b540cabe467fe",
        "dc653857757538de2928ea9011940d0b3e5f3993"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 22:36:46 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 29 22:36:46 2016 +0200"
      },
      "message": "Merge pull request #42 from sergi/28-handle-zero-deadlines-differently\n\nHandle zero deadlines differently"
    },
    {
      "commit": "dc653857757538de2928ea9011940d0b3e5f3993",
      "tree": "fda84019533ed5467ec84b99c8c087201da2432c",
      "parents": [
        "8bdce7a9b9fc6c63d33cfe9e71501bd4b653ab60"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 22:29:32 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 22:29:32 2016 +0200"
      },
      "message": "Fix, timeout of 0 was not a timeout of \"infinity\".\n"
    },
    {
      "commit": "8bdce7a9b9fc6c63d33cfe9e71501bd4b653ab60",
      "tree": "78ba3249724021b0bab8bea410c5f70e4a8c7e34",
      "parents": [
        "f2030ee2ca1aac352276bfc5ef859f264ddfc06b"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 22:10:51 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 22:10:51 2016 +0200"
      },
      "message": "Introduce a note that diffLineMode is faster using strings than rune\nslices.\n"
    },
    {
      "commit": "f2030ee2ca1aac352276bfc5ef859f264ddfc06b",
      "tree": "68b2d12e805cbd8c35e133fce296fe72fbb1052e",
      "parents": [
        "082fb5f2fcb057e25c0982b68643b6c413fafa4b"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 22:00:39 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 22:00:39 2016 +0200"
      },
      "message": "Refactor, remove diffMain\n\nDiffMain has no purpose anymore since it uses diffMainRunes as well, so\nwe can just remove diffMain.\n"
    },
    {
      "commit": "082fb5f2fcb057e25c0982b68643b6c413fafa4b",
      "tree": "e80d927f3692aded707d18c483e0fa98abe3cc0b",
      "parents": [
        "159219eea0bd1dceb6fe1243939b540cabe467fe"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 21:55:33 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 21:55:33 2016 +0200"
      },
      "message": "Test case to confirm that a timeout of 0 does not alter the patch\noutcome\n\nCloses #28\n"
    },
    {
      "commit": "159219eea0bd1dceb6fe1243939b540cabe467fe",
      "tree": "45414f566ab652b39926bb285c2dacb1160eb029",
      "parents": [
        "15ed0c11b75cae072a8f450622dbe28de6b01a55",
        "1b5014bdb27365676d92e131e1b6579e5e0fa4f5"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 20:42:32 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 29 20:42:32 2016 +0200"
      },
      "message": "Merge pull request #41 from sergi/27-refactor-DiffCleanupMerge-to-use-runes-instead-of-strings\n\nRefactor DiffCleanupMerge to use runes instead of strings"
    },
    {
      "commit": "1b5014bdb27365676d92e131e1b6579e5e0fa4f5",
      "tree": "45414f566ab652b39926bb285c2dacb1160eb029",
      "parents": [
        "15ed0c11b75cae072a8f450622dbe28de6b01a55"
      ],
      "author": {
        "name": "James Kolb",
        "email": "jkolb@google.com",
        "time": "Mon May 16 20:21:17 2016 -0400"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 20:37:24 2016 +0200"
      },
      "message": "Fix unicode splitting bug.\n\nThe old code finds prefixes/suffixes by rune index but splits strings at\nbyte index instead. This can split unicode chars into invalid chars for\nlarge files and can cause panics in diffCharsToLines later on when\nlookup is done on the invalid runes.\n"
    },
    {
      "commit": "15ed0c11b75cae072a8f450622dbe28de6b01a55",
      "tree": "563bc1adb979c5afeeffc7990ddd7c99f723a6db",
      "parents": [
        "dea2214170454b2ad328db80f53df15de05c6e03",
        "0277c02a8437c848c3c12ac561c403127b50b510"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 16:44:16 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 29 16:44:16 2016 +0200"
      },
      "message": "Merge pull request #40 from sergi/migrate-to-github.com/stretchrcom/testify\n\nMigrate from github.com/stretchrcom/testify to github.com/stretchr/testify"
    },
    {
      "commit": "0277c02a8437c848c3c12ac561c403127b50b510",
      "tree": "563bc1adb979c5afeeffc7990ddd7c99f723a6db",
      "parents": [
        "dea2214170454b2ad328db80f53df15de05c6e03"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 16:39:02 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 16:39:02 2016 +0200"
      },
      "message": "Migrate from github.com/stretchrcom/testify to\ngithub.com/stretchr/testify\n\nThe author has changed his name.\n\nFixes #26\n"
    },
    {
      "commit": "dea2214170454b2ad328db80f53df15de05c6e03",
      "tree": "e50623ff49d8c5472bbee78a2b4b43ad0f81785d",
      "parents": [
        "9f2bf89215257f3647f7d40f13607a52fc88b86b",
        "86f3a4b7c25a384d05a168aca489978ea7e80bc2"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 16:29:45 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 29 16:29:45 2016 +0200"
      },
      "message": "Merge pull request #39 from sergi/remove-assertMapEqual-in-favor-of-assert.Equal\n\nRemove assertMapEqual in favor of assert.Equal"
    },
    {
      "commit": "86f3a4b7c25a384d05a168aca489978ea7e80bc2",
      "tree": "e50623ff49d8c5472bbee78a2b4b43ad0f81785d",
      "parents": [
        "9f2bf89215257f3647f7d40f13607a52fc88b86b"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 16:24:35 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 16:24:35 2016 +0200"
      },
      "message": "Remove assertMapEqual in favor of assert.Equal\n\nassert.Equal does of testify/assert does already handle maps. One might\nsay that assertMapEqual has nicer error messages but that is something\nthat could be improved for assert.Equal.\n"
    },
    {
      "commit": "9f2bf89215257f3647f7d40f13607a52fc88b86b",
      "tree": "06556149f8d6c5ad4fd9a9600aded38a8fbc6a92",
      "parents": [
        "17df9713063fb255976df86054ca310b3fec29ff",
        "ebe5b83e330d45d868c44f7f461d67c8bc7b812f"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 14:22:56 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 29 14:22:56 2016 +0200"
      },
      "message": "Merge pull request #37 from sergi/19-DiffCleanupSemantic\n\nAdapt DiffCleanupSemantic to be equal to the Python version"
    },
    {
      "commit": "ebe5b83e330d45d868c44f7f461d67c8bc7b812f",
      "tree": "06556149f8d6c5ad4fd9a9600aded38a8fbc6a92",
      "parents": [
        "dcde5a4123a1d3ef30aa3509a15c150e1c322a14"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 14:09:07 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 14:09:07 2016 +0200"
      },
      "message": "Test case for #19 which adapts DiffCleanupSemantic to be the same as the\nPython version\n"
    },
    {
      "commit": "dcde5a4123a1d3ef30aa3509a15c150e1c322a14",
      "tree": "afefe7dd57d9bdeb8dd1f3a8a5f1c52b1ef95560",
      "parents": [
        "17df9713063fb255976df86054ca310b3fec29ff"
      ],
      "author": {
        "name": "Rory Flynn",
        "email": "roryflynn@users.noreply.github.com",
        "time": "Fri Aug 07 13:10:39 2015 +0100"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 13:54:15 2016 +0200"
      },
      "message": "Fixed rare issue with DiffCleanupSemantic\n\nOutput was mangled for very specific phrases.\nPython version produced clean output.\nGo version fixed to be the same as Python version.\n"
    },
    {
      "commit": "17df9713063fb255976df86054ca310b3fec29ff",
      "tree": "229d8c2457240f742d2d3f91d84c94f69b30feee",
      "parents": [
        "1d28411638c1e67fe1930830df207bef72496ae9",
        "6fd41a6fa872f9a6cec9cd133effc7b2433f23eb"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 12:42:24 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Sat Oct 29 12:42:24 2016 +0200"
      },
      "message": "Merge pull request #36 from sergi/32-fixed-bug-in-overlap-elimination\n\nFixed bug in overlap elimination"
    },
    {
      "commit": "6fd41a6fa872f9a6cec9cd133effc7b2433f23eb",
      "tree": "229d8c2457240f742d2d3f91d84c94f69b30feee",
      "parents": [
        "618f718e209f467b2b5ae167e396347e0c51dc5b"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 12:11:07 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 12:11:07 2016 +0200"
      },
      "message": "Test case for #31 in addition to #32\n"
    },
    {
      "commit": "618f718e209f467b2b5ae167e396347e0c51dc5b",
      "tree": "291603b47c2f69219df9f5c75a808e4041b752dc",
      "parents": [
        "1d28411638c1e67fe1930830df207bef72496ae9"
      ],
      "author": {
        "name": "Shatrugna Sadhu",
        "email": "ssadhu@apcera.com",
        "time": "Thu Sep 01 14:49:17 2016 -0700"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Sat Oct 29 11:47:10 2016 +0200"
      },
      "message": "Fixed bug in overlap elimination.\n\nAdded UT to reflect an example use case that should not have been\nfailing.\n"
    },
    {
      "commit": "1d28411638c1e67fe1930830df207bef72496ae9",
      "tree": "fc4a7e0410b157e7b218d20badcf62eb215bb9a4",
      "parents": [
        "e99546f7e59c6986f3d896432c10ab94f01a6bfa",
        "af9d84ec664cc731e70456100c7bbab26a1817cd"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Thu Oct 20 13:35:42 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Oct 20 13:35:42 2016 +0200"
      },
      "message": "Merge pull request #30 from zimmski/pretty-text\n\nColored text diff"
    },
    {
      "commit": "af9d84ec664cc731e70456100c7bbab26a1817cd",
      "tree": "fc4a7e0410b157e7b218d20badcf62eb215bb9a4",
      "parents": [
        "e99546f7e59c6986f3d896432c10ab94f01a6bfa"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Aug 01 09:52:13 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Oct 17 10:58:11 2016 +0200"
      },
      "message": "Colored text diff\n"
    },
    {
      "commit": "e99546f7e59c6986f3d896432c10ab94f01a6bfa",
      "tree": "05e94e83445083bfbf34eff60794ca9f800d8362",
      "parents": [
        "ce4a6e0e61d6908298eed511fc0683062d4c7f3b",
        "73c5334d072a419c3edf801102cb562ad47cb43c"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Mon Oct 17 10:39:53 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Mon Oct 17 10:39:53 2016 +0200"
      },
      "message": "Merge pull request #34 from sergi/travis-coveralls-linters\n\nIntroduce TravisCI,  Coveralls, Linters and fix found problems"
    },
    {
      "commit": "73c5334d072a419c3edf801102cb562ad47cb43c",
      "tree": "05e94e83445083bfbf34eff60794ca9f800d8362",
      "parents": [
        "db7567e98f0390a012f1a86d6db441ea68b5d030"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 10:54:21 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:10 2016 +0200"
      },
      "message": "Introduce badges for godoc, travisci and coveralls\n"
    },
    {
      "commit": "db7567e98f0390a012f1a86d6db441ea68b5d030",
      "tree": "2f249d5387dbcc109a3fb716034e5e1bc1a38abb",
      "parents": [
        "e2a9c8dddbef07813554ba1b5cd1704fc5a8501b"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 10:53:12 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:10 2016 +0200"
      },
      "message": "Use a more sleek markdown style\n"
    },
    {
      "commit": "e2a9c8dddbef07813554ba1b5cd1704fc5a8501b",
      "tree": "b986c21ca96b23162aa52c5bad5121f470922420",
      "parents": [
        "13116f0766da150d6ab9b456aff1551b141c26dd"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 19:55:38 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:10 2016 +0200"
      },
      "message": "Obey the Go convention that underlines do not exist\n"
    },
    {
      "commit": "13116f0766da150d6ab9b456aff1551b141c26dd",
      "tree": "22b3b58508d9706c7e1d5729eee56839b6967c28",
      "parents": [
        "433f2e35da608b6b9617f46f67fdcaba8b75eed6"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 19:47:27 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:10 2016 +0200"
      },
      "message": "Sort out stylistic problems for golint\n"
    },
    {
      "commit": "433f2e35da608b6b9617f46f67fdcaba8b75eed6",
      "tree": "f2f05d223665132bc52e4f7dad5f805ff8c609af",
      "parents": [
        "33998a92e56b9676afa229de7f8df180387a3f18"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 19:43:38 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:10 2016 +0200"
      },
      "message": "Whitelist the name of \"DiffPrettyHtml\" for golint\n\nIt should be \"DiffPrettyHTML\" but we cannot change the API.\n"
    },
    {
      "commit": "33998a92e56b9676afa229de7f8df180387a3f18",
      "tree": "435c3ba1e4190d61ad15ba7e79ba09d2107764c4",
      "parents": [
        "1e06bbddb7571c957deee4f27ca8cebb330dd4ae"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 19:42:18 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:10 2016 +0200"
      },
      "message": "Obey the comment checks of golint\n"
    },
    {
      "commit": "1e06bbddb7571c957deee4f27ca8cebb330dd4ae",
      "tree": "834ca7697242e2eb469344fb86d02aa3dc3d84b4",
      "parents": [
        "fd722bea7e1ff2b4af58ac4063e2b8435e7bb6e5"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 19:22:13 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:09 2016 +0200"
      },
      "message": "Make govet happy\n\nRemove unreachable code.\n"
    },
    {
      "commit": "fd722bea7e1ff2b4af58ac4063e2b8435e7bb6e5",
      "tree": "92bbb23e0f00d0b040dcafe6c231a14903617896",
      "parents": [
        "0b2d30b9b21bab17a00de2a2eb4699fddd858b2d"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 19:15:14 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:09 2016 +0200"
      },
      "message": "Make errcheck happy\n\nThe bytes.Buffer.WriteString has the superb property of \"err is always\nnil\", so we can just ignore it. However, we explicitly ignore it so that\nwe can use errcheck without ignoring everything.\n"
    },
    {
      "commit": "0b2d30b9b21bab17a00de2a2eb4699fddd858b2d",
      "tree": "9263feea86c4ecb82cbb7994c24c8c936776acd6",
      "parents": [
        "46a5ea38cd871938467b9dfcb00805fb7efcac7f"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 19:10:31 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:09 2016 +0200"
      },
      "message": "Fix, increase timeout for pressure test\n\nThis test fails every time the race detector is on. Also, there was a\nlying comment.\n"
    },
    {
      "commit": "46a5ea38cd871938467b9dfcb00805fb7efcac7f",
      "tree": "b0afc59c658487857f2a7b25a10cc8dbca48798d",
      "parents": [
        "ce4a6e0e61d6908298eed511fc0683062d4c7f3b"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 19:09:38 2016 +0200"
      },
      "committer": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Thu Oct 06 11:12:09 2016 +0200"
      },
      "message": "Basic Makefile, TravisCI support, coveralls support and linters\n"
    },
    {
      "commit": "ce4a6e0e61d6908298eed511fc0683062d4c7f3b",
      "tree": "b88ae02720b92debf6a6c59eb3121906e63baeb4",
      "parents": [
        "ec7fdbb58eb3e300c8595ad5ac74a5aa50019cc7",
        "bc2ef1260ca6e3888a54bae1bd3260b0aae53e52"
      ],
      "author": {
        "name": "Markus Zimmermann",
        "email": "markus.zimmermann@nethead.at",
        "time": "Wed Sep 28 17:06:20 2016 +0200"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 28 17:06:20 2016 +0200"
      },
      "message": "Merge pull request #22 from shawnps/patch-1\n\nFix typo"
    },
    {
      "commit": "bc2ef1260ca6e3888a54bae1bd3260b0aae53e52",
      "tree": "b88ae02720b92debf6a6c59eb3121906e63baeb4",
      "parents": [
        "ec7fdbb58eb3e300c8595ad5ac74a5aa50019cc7"
      ],
      "author": {
        "name": "Shawn Smith",
        "email": "shawnpsmith@gmail.com",
        "time": "Thu Jan 21 17:45:08 2016 -0800"
      },
      "committer": {
        "name": "Shawn Smith",
        "email": "shawnpsmith@gmail.com",
        "time": "Thu Jan 21 17:45:08 2016 -0800"
      },
      "message": "typo"
    },
    {
      "commit": "ec7fdbb58eb3e300c8595ad5ac74a5aa50019cc7",
      "tree": "1c77ac6888fbab28032d46ff40e74ffa653e94f4",
      "parents": [
        "ffccea18eeb30a700e65bdf8a9f99456e5d254fa"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Wed Oct 21 21:14:53 2015 +0200"
      },
      "committer": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Wed Oct 21 21:14:53 2015 +0200"
      },
      "message": "Update README.md"
    },
    {
      "commit": "ffccea18eeb30a700e65bdf8a9f99456e5d254fa",
      "tree": "69450cfbaaf07c81dfbb366dd3611efed2f6a5de",
      "parents": [
        "a166935efdfa3674993550ee58c66e9a29f9c2c9",
        "765df2594f835dc69c0a41d97f4f271502fe1c76"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Thu Jun 11 10:28:24 2015 +0200"
      },
      "committer": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Thu Jun 11 10:28:24 2015 +0200"
      },
      "message": "Merge pull request #17 from torarvid/map-fix\n\nFix assertMapEqual so it compares Value.Interface()"
    },
    {
      "commit": "765df2594f835dc69c0a41d97f4f271502fe1c76",
      "tree": "69450cfbaaf07c81dfbb366dd3611efed2f6a5de",
      "parents": [
        "a166935efdfa3674993550ee58c66e9a29f9c2c9"
      ],
      "author": {
        "name": "Tor Arvid Lund",
        "email": "torarvid@gmail.com",
        "time": "Wed Jun 10 23:19:46 2015 +0200"
      },
      "committer": {
        "name": "Tor Arvid Lund",
        "email": "torarvid@gmail.com",
        "time": "Wed Jun 10 23:19:46 2015 +0200"
      },
      "message": "Fix assertMapEqual so it compares Value.Interface()\n\nOne should not use \u003d\u003d to compare to instances of Value, since they will be\npointers. Rather, one should call .Interface() on the Value instances\nbefore performing the comparison.\n"
    },
    {
      "commit": "a166935efdfa3674993550ee58c66e9a29f9c2c9",
      "tree": "08bd5516544d3aaab37e3cbc0928a8832b71777f",
      "parents": [
        "97b2266dfe4bd4ea1b81a463322f04f8b724801e",
        "673665763702f4ca2b9dbe8a1f2ae67cb57c6cd9"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Thu May 14 11:29:21 2015 +0200"
      },
      "committer": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Thu May 14 11:29:21 2015 +0200"
      },
      "message": "Merge pull request #15 from dannyyoo/master\n\nCorrecting indexOf and adding lastIndexOf."
    },
    {
      "commit": "673665763702f4ca2b9dbe8a1f2ae67cb57c6cd9",
      "tree": "08bd5516544d3aaab37e3cbc0928a8832b71777f",
      "parents": [
        "97b2266dfe4bd4ea1b81a463322f04f8b724801e"
      ],
      "author": {
        "name": "Danny Yoo",
        "email": "dannyyoo@google.com",
        "time": "Tue Nov 04 13:00:43 2014 -0800"
      },
      "committer": {
        "name": "Danny Yoo",
        "email": "dannyyoo@google.com",
        "time": "Tue Nov 04 14:34:31 2014 -0800"
      },
      "message": "Correcting indexOf and adding lastIndexOf.\n\nThe match_bitap code deviates from the other implementations; one\npoint of deviation is the \"speedup\" portion, which in the other\nlanguages is implemented with indexOf search from a given position.\nThe Go implementation, however, ignores the position when doing the\nforwards and backwards search, which is wrong.\n"
    },
    {
      "commit": "97b2266dfe4bd4ea1b81a463322f04f8b724801e",
      "tree": "3004b4134526d082833db087d5ba255a6604f0b4",
      "parents": [
        "085e8b9caf04a9ee20fc713d0e6a8689307ff02f",
        "6b65b52a549d5948dfa9b5563b9145096a046f30"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Fri Aug 08 15:29:32 2014 +0200"
      },
      "committer": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Fri Aug 08 15:29:32 2014 +0200"
      },
      "message": "Merge pull request #14 from goojba/runes2\n\nMove string-based functions to rune-based ones"
    },
    {
      "commit": "6b65b52a549d5948dfa9b5563b9145096a046f30",
      "tree": "3004b4134526d082833db087d5ba255a6604f0b4",
      "parents": [
        "b94bf77e47bbfc2e38606ab051d159bea0bb3c1e"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 08:48:46 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 08:48:46 2014 -0400"
      },
      "message": "rebased on upstream/master\n"
    },
    {
      "commit": "b94bf77e47bbfc2e38606ab051d159bea0bb3c1e",
      "tree": "8b2fa6d2e3e320156839a897934314e6d99c49ef",
      "parents": [
        "a6538f702a6194fb1be28648924709f2a54f7cba"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 07:38:32 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 08:40:19 2014 -0400"
      },
      "message": "ran gofmt\n"
    },
    {
      "commit": "a6538f702a6194fb1be28648924709f2a54f7cba",
      "tree": "f9cd2f054d41dc9be1df2c2bd7755d832c4d0b21",
      "parents": [
        "d37421af1742e807f9901ba52978f92d22a60dc5"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Sat Jul 05 07:04:51 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 08:40:19 2014 -0400"
      },
      "message": "added clarifying comment\n"
    },
    {
      "commit": "d37421af1742e807f9901ba52978f92d22a60dc5",
      "tree": "cabd67ebe4a2433d32260d23346e2960f7f5c529",
      "parents": [
        "4f4dcee671f263ca4a0977960405e2ebcbdc5c89"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Sat Jul 05 06:54:32 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 08:40:18 2014 -0400"
      },
      "message": "Exposed DiffLinesToRunes and did other minor cleanup.\n\nIf clients clients use DiffLinesToRunes they can avoid an extra string to rune conversion.\n\nAlso fixed some comments and got rid of an unnecessary helper function.\n"
    },
    {
      "commit": "4f4dcee671f263ca4a0977960405e2ebcbdc5c89",
      "tree": "112d48212b90f70fd8016c1aeaff92bb9b358e58",
      "parents": [
        "6fb715eddc0469cd72a7877f505c9f206e031e61"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Fri Jul 04 23:20:09 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 08:40:18 2014 -0400"
      },
      "message": "Changed main diff machinery to use []rune instead of string.\n\nThe main benefit is avoiding invalid UTF-8 strings due indexing by byte instead of rune.\nSome code was rune-aware, but some wasn\u0027t. And some code, like the HalfMatch code, indexed\ndirectly into the middle of a string, so it would have been difficult to make it rune-aware.\n\nAs an additional benefit, large diffs are sped up significantly: compare the DiffMainLarge\nand DiffMainLargeLines benchmarks, which sped up by a factor of 2 or more.\n\nDid not change match or patch code.  Did not change functions that manipulate diffs.\nDid not change the line-mode diff cleanup routines.\n"
    },
    {
      "commit": "6fb715eddc0469cd72a7877f505c9f206e031e61",
      "tree": "4c80fa7d797394a1657be1fdaace4324c7a8eaf3",
      "parents": [
        "8b58f93c92591f33fda6c38e2a3f70325eb9a14e"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Fri Jul 04 07:13:49 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 08:34:18 2014 -0400"
      },
      "message": "added line-level benchmark\n"
    },
    {
      "commit": "8b58f93c92591f33fda6c38e2a3f70325eb9a14e",
      "tree": "486c81001c515aecdb64003443f74b6963a39852",
      "parents": [
        "085e8b9caf04a9ee20fc713d0e6a8689307ff02f"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Fri Jul 04 07:07:34 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 31 08:34:18 2014 -0400"
      },
      "message": "Added a benchmark to test a large diff.  The speedtest{1,2}.txt files\nare the same ones used by Neil Fraser in his speedtest code.\n"
    },
    {
      "commit": "085e8b9caf04a9ee20fc713d0e6a8689307ff02f",
      "tree": "04c1dec8b6ec66ca1c92b4d65817d1dcfaeb989c",
      "parents": [
        "bf552227cac4fcc47e9c014561fcf3eaae0565e0",
        "af0ba86d2513c48226cd24a36548b3684f8d4d03"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Fri Jul 25 17:16:42 2014 +0200"
      },
      "committer": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Fri Jul 25 17:16:42 2014 +0200"
      },
      "message": "Merge pull request #12 from goojba/utf8bug\n\nUse []rune in diff internals"
    },
    {
      "commit": "bf552227cac4fcc47e9c014561fcf3eaae0565e0",
      "tree": "766dd7bb7673707cb2ab068ca501bf3b02010ce6",
      "parents": [
        "80def51e4ab900b72b118163665a45494a80f4bf",
        "16766bce999d28ebd8d082dcb10df41d91dd71e3"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Fri Jul 25 17:12:38 2014 +0200"
      },
      "committer": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Fri Jul 25 17:12:38 2014 +0200"
      },
      "message": "Merge pull request #9 from zberg/master\n\nAdd DiffPrettyHtml"
    },
    {
      "commit": "af0ba86d2513c48226cd24a36548b3684f8d4d03",
      "tree": "288dfc5be68d378cb21351f2f4b75bc4d681389c",
      "parents": [
        "e7fd6939025b704fefb2d0c15ee356841fd50654"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 03 16:03:40 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 03 16:03:40 2014 -0400"
      },
      "message": "Switched DiffBisect and diffBisectSplit_ to use []rune instead of string.\nWhen strings were used, invalid UTF-8 sequences were created.\n"
    },
    {
      "commit": "e7fd6939025b704fefb2d0c15ee356841fd50654",
      "tree": "349c4d7aebf305e7709d26539a6f44bcb636ded2",
      "parents": [
        "80def51e4ab900b72b118163665a45494a80f4bf"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 03 15:21:25 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Thu Jul 03 15:22:13 2014 -0400"
      },
      "message": "Wrote breaking test for BisectSplit_.\n"
    },
    {
      "commit": "80def51e4ab900b72b118163665a45494a80f4bf",
      "tree": "b39fe76af46e97bfee3bb3e3cfac46d990375c13",
      "parents": [
        "0e2c8fbc571e3cd93fe2ac744796480e538c3449",
        "dc4ca36a89d9e57b861287b1b0b0ec7cd5957dcf"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Sun Jun 29 11:36:09 2014 +0200"
      },
      "committer": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Sun Jun 29 11:36:09 2014 +0200"
      },
      "message": "Merge pull request #11 from goojba/go-style\n\nSome small changes to the code for better Go style."
    },
    {
      "commit": "0e2c8fbc571e3cd93fe2ac744796480e538c3449",
      "tree": "a2d8f75dd8ab246d5285724e312e1164b47dd62f",
      "parents": [
        "c23354f74285a2a607a3ca14db93cbfcb2158a0b",
        "f56c35aa7d8a52232cdc79a8fe0d4bbfff064699"
      ],
      "author": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Sun Jun 29 11:35:14 2014 +0200"
      },
      "committer": {
        "name": "Sergi Mansilla",
        "email": "sergi.mansilla@gmail.com",
        "time": "Sun Jun 29 11:35:14 2014 +0200"
      },
      "message": "Merge pull request #10 from goojba/tests\n\nThanks!"
    },
    {
      "commit": "dc4ca36a89d9e57b861287b1b0b0ec7cd5957dcf",
      "tree": "539d2b23061f66fb0f3efff6b65fcc54c64f53be",
      "parents": [
        "9c5e7ff1658d6b175a578c048fd84c3bf8348ba3"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Sat Jun 28 06:19:45 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Sat Jun 28 06:19:45 2014 -0400"
      },
      "message": "ran gofmt\n"
    },
    {
      "commit": "9c5e7ff1658d6b175a578c048fd84c3bf8348ba3",
      "tree": "4eadf03db09acb0091b2880018f2ae4417463be0",
      "parents": [
        "ff42fa18dcbdc815d6d09337aa2dbeae0abd0922"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Sat Jun 28 06:18:29 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Sat Jun 28 06:18:29 2014 -0400"
      },
      "message": "changed x[0:y] to x[:y]\n"
    },
    {
      "commit": "ff42fa18dcbdc815d6d09337aa2dbeae0abd0922",
      "tree": "a1414bfa68db2d99349dc2e56eaf98bb95688de5",
      "parents": [
        "c23354f74285a2a607a3ca14db93cbfcb2158a0b"
      ],
      "author": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Sat Jun 28 06:13:24 2014 -0400"
      },
      "committer": {
        "name": "Jonathan Amsterdam",
        "email": "jba@google.com",
        "time": "Sat Jun 28 06:13:24 2014 -0400"
      },
      "message": "Made diff operation its own type.\n"
    }
  ],
  "next": "f56c35aa7d8a52232cdc79a8fe0d4bbfff064699"
}
