)]}'
{
  "log": [
    {
      "commit": "57c9a581117a643ef8b9d0329a1fb2e94b0172bd",
      "tree": "32ccdee619d5a45c95becc185e120fc9d5f571db",
      "parents": [
        "6d5562a6a1c63ebecec49238b3ad88d704e890de"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Sun Dec 17 17:38:11 2023"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Sun Dec 17 17:38:11 2023"
      },
      "message": "Fix staticcheck warning for io/ioutil deprecation\n"
    },
    {
      "commit": "6d5562a6a1c63ebecec49238b3ad88d704e890de",
      "tree": "bf50839ac22686a2d5d5f4915359694e8116191b",
      "parents": [
        "e92030a2f5a82967f39eb6ffcfb69b2e60ea64b5"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Sun Dec 17 17:32:18 2023"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Sun Dec 17 17:32:18 2023"
      },
      "message": "Update github actions\n"
    },
    {
      "commit": "e92030a2f5a82967f39eb6ffcfb69b2e60ea64b5",
      "tree": "6138a6737e13d4934f2f66660e9c8cec555b05e4",
      "parents": [
        "7642663bf7467dd2ee5d443a737003516b87f159"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Sun Dec 17 14:43:56 2023"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Sun Dec 17 14:43:56 2023"
      },
      "message": "go.mod: update to 1.21\n"
    },
    {
      "commit": "7642663bf7467dd2ee5d443a737003516b87f159",
      "tree": "3f13aa362ec02ff2db07ad704787590b15a84d54",
      "parents": [
        "76e231eeaca7ff66be919327f1a05aa592097547"
      ],
      "author": {
        "name": "Robert Iannucci",
        "email": "iannucci@chromium.org",
        "time": "Wed Sep 22 19:54:03 2021"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Wed Sep 22 19:54:03 2021"
      },
      "message": "Allow GetFlags to return nil. (#9)\n\nThis allows individual subcommands to indicate that they would like to\r\ntake full control of the \u0027args\u0027 parsing. This is useful for when \u0027flag\u0027\r\nis insufficiently groovy, or when writing wrapper programs where some\r\nor even none of the flags need to be interpreted by the wrapper itself\r\n(e.g. merely passed through to the target program).\r\n\r\nWithout this, invocations such as `prog subcommand -flag` will fail\r\nbecause `-flag` would be interpreted as an \u0027unknown flag\u0027."
    },
    {
      "commit": "76e231eeaca7ff66be919327f1a05aa592097547",
      "tree": "41541c6b95117c556619156de99028871f0cca1c",
      "parents": [
        "e82ce8f3af113ac6d0afb44bab30fcdef71afcc0"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Sun Sep 12 15:04:31 2021"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Sun Sep 12 15:06:08 2021"
      },
      "message": "github actions: update to go1.17\n\nRan gofmt and go mod tidy.\n"
    },
    {
      "commit": "e82ce8f3af113ac6d0afb44bab30fcdef71afcc0",
      "tree": "f73a378ae408a688c70a1b862a6b7425cee787b5",
      "parents": [
        "9c2bbaba0d70de28cb39a9edf339dd560410cf04"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Thu Feb 04 22:50:16 2021"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Thu Feb 04 23:59:47 2021"
      },
      "message": "Export Usage(); enable subcommand usability\n\nIt requires a hack if the user wants to capture help\u0027s -advanced flag.\nOther than that, it works fine.\n\nUpdated sample-complex and added extensive help test to confirm the output.\n\nFix incorrect CI test on before 1.15 because of a copy paste error.\n"
    },
    {
      "commit": "9c2bbaba0d70de28cb39a9edf339dd560410cf04",
      "tree": "40b1728e29bdc032789050dc4a04782a1bd56157",
      "parents": [
        "4ffc06fd9d84fed14e04d10d22bfb8a4c9e882ea"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Tue Feb 02 20:43:28 2021"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Tue Feb 02 20:43:28 2021"
      },
      "message": "README.md: fix typo in subcommandstest\n"
    },
    {
      "commit": "4ffc06fd9d84fed14e04d10d22bfb8a4c9e882ea",
      "tree": "d5939c581318795b47cdcaac459e4254c309d880",
      "parents": [
        "a8fe3b2f807208fd04e2f5111257cef8dd7daa0d"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Tue Feb 02 18:01:56 2021"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Tue Feb 02 18:48:10 2021"
      },
      "message": "README.md: update badges\n"
    },
    {
      "commit": "a8fe3b2f807208fd04e2f5111257cef8dd7daa0d",
      "tree": "607911c366dae01669aced8ae129af7344e0c8ea",
      "parents": [
        "61b55cdf64a6551d69a95339e6394ab4abadb033"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Tue Feb 02 17:03:18 2021"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Tue Feb 02 18:08:39 2021"
      },
      "message": "Make testing concurrent safe; increase test coverage\n\n- Fix race even in the case where testing is not done correctly. Use a\n  hidden mutex in subcommands.Run().\n- Increase coverage from 55% to 92%.\n\nFix #7\n"
    },
    {
      "commit": "61b55cdf64a6551d69a95339e6394ab4abadb033",
      "tree": "4341a729a6930eefa2594d28ad507fc25283731b",
      "parents": [
        "4b22346b79dd1f53c945985bb1243cc141f70aa7"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Tue Feb 02 16:22:00 2021"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@gmail.com",
        "time": "Tue Feb 02 17:01:07 2021"
      },
      "message": "Switch CI to github actions; remove travis\n\nUse my workflows template from github.com/maruel/panicparse\n\n- Fix misspellings\n- Fix staticcheck\n- Fix golint\n- Run on Windows, macOS and Ubuntu\n- Test on 1.9.7, 1.12.17, 1.14.7 and 1.15.x.\n\nSome changes in sample-complex but this is not importable so not\nbreaking.\n"
    },
    {
      "commit": "4b22346b79dd1f53c945985bb1243cc141f70aa7",
      "tree": "e0cedca8eb3198e3d482b34ba2cabea5bc943192",
      "parents": [
        "de1d40e70d4b89b9c560a4d308e0bc9f5c9e18d7"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Aug 14 17:06:16 2020"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Aug 14 17:06:16 2020"
      },
      "message": "Add go.mod\n"
    },
    {
      "commit": "de1d40e70d4b89b9c560a4d308e0bc9f5c9e18d7",
      "tree": "b2dff51bd33a941e602a5fbfcc324914c0f716f7",
      "parents": [
        "967e945be48bc4df686f64d0ff2aac67e9d1b6ec"
      ],
      "author": {
        "name": "Jacob Kopczynski",
        "email": "jkopczyn@users.noreply.github.com",
        "time": "Thu Feb 06 12:59:35 2020"
      },
      "committer": {
        "name": "GitHub",
        "email": "noreply@github.com",
        "time": "Thu Feb 06 12:59:35 2020"
      },
      "message": "Fix comment typo (#6)\n\n"
    },
    {
      "commit": "967e945be48bc4df686f64d0ff2aac67e9d1b6ec",
      "tree": "2489645f865a28d7ca9d18f2e9c280619913e807",
      "parents": [
        "8c2c452e1460e1c2d42a8e3a3a527fb09bb68ee2"
      ],
      "author": {
        "name": "Aviv Keshet",
        "email": "akeshet@gmail.com",
        "time": "Thu Dec 20 01:36:16 2018"
      },
      "committer": {
        "name": "M-A",
        "email": "maruel@gmail.com",
        "time": "Thu Dec 20 01:36:16 2018"
      },
      "message": "Add support for subcommand section headings (#5)\n\nSection headings are dummy \"Commands\" that have a private flag on them\r\nwhich prevents them from being run."
    },
    {
      "commit": "8c2c452e1460e1c2d42a8e3a3a527fb09bb68ee2",
      "tree": "6024c655b41a3daa70b0f306b04564d39f4d9097",
      "parents": [
        "87b8243e250894438041f34f7af5d1f0a2d73bb9"
      ],
      "author": {
        "name": "Robert Iannucci",
        "email": "iannucci@chromium.org",
        "time": "Wed Nov 30 01:48:49 2016"
      },
      "committer": {
        "name": "M-A",
        "email": "maruel@gmail.com",
        "time": "Wed Nov 30 01:48:49 2016"
      },
      "message": "Add first-class support for documented environment variables. (#3)\n\nThis allows applications to declare, document, and add default\r\nvalues for environment variables that they\u0027re sensitive to.\r\n\r\nIncludes support for the \"advanced\" feature to allow documentation\r\nof esoteric environment variables without cluttering the help\r\noutput."
    },
    {
      "commit": "87b8243e250894438041f34f7af5d1f0a2d73bb9",
      "tree": "3b020b35513aac8dbaad551ffa7267dd9a61229b",
      "parents": [
        "054278d97545a26c60dfc4b98a0f718435c76b4f"
      ],
      "author": {
        "name": "Robert Iannucci",
        "email": "iannucci@chromium.org",
        "time": "Sun Nov 13 22:01:28 2016"
      },
      "committer": {
        "name": "M-A",
        "email": "maruel@gmail.com",
        "time": "Sun Nov 13 22:01:28 2016"
      },
      "message": "Add the concept of \"advanced\" commands. (#2)\n\nThis allows a program to define many subcommands, but have them\r\nomitted from the default help view, to keep the high-level\r\nsubcommands directly visible to the user."
    },
    {
      "commit": "054278d97545a26c60dfc4b98a0f718435c76b4f",
      "tree": "a107ab4d14041f28c3f7b1dcda0a1a6a56c54f5d",
      "parents": [
        "2cfd557b7522c643eb8ab5258ce1ded3e645054c"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Nov 13 21:58:33 2016"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Nov 13 21:58:34 2016"
      },
      "message": "Don\u0027t run tests in parallel anymore.\n\nWhile the initial design was created to support concurrent testing, it now sets\nflag.Usage, which is a global variable.\n"
    },
    {
      "commit": "2cfd557b7522c643eb8ab5258ce1ded3e645054c",
      "tree": "83fd16cd46a545b44b15e40a40a01c12d645f1a8",
      "parents": [
        "a4141cc8723941ce5b7a9ab87b77f397a80e2be6"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Nov 13 21:56:06 2016"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Nov 13 21:56:06 2016"
      },
      "message": "Bump travis from go 1.4 to 1.6.\n\ngoimports failed to install due to runtime/trace dependency.\n"
    },
    {
      "commit": "a4141cc8723941ce5b7a9ab87b77f397a80e2be6",
      "tree": "6aaba28fb1e54b52a7385b69e8a90619b1e3e0be",
      "parents": [
        "3a25827b419f7ec71b1f54d075cdc43fef2e3a59"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Jun 18 18:37:48 2015"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Thu Jun 18 18:37:48 2015"
      },
      "message": "Update pre-commit-go to pcg.\n"
    },
    {
      "commit": "3a25827b419f7ec71b1f54d075cdc43fef2e3a59",
      "tree": "a4962ca7c68b82bc58cb4e7f319310d96acbb791",
      "parents": [
        "24ce6a268c3b67da00a09a6e6bcc9f9f263b492e"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Mar 10 17:51:55 2015"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Mar 10 17:51:55 2015"
      },
      "message": "Fix errcheck\n"
    },
    {
      "commit": "24ce6a268c3b67da00a09a6e6bcc9f9f263b492e",
      "tree": "b92cea99ae1fbc997f0066b4fd938d6651545f4a",
      "parents": [
        "45738a0eb7d578b05123b4c684c946ea2e4d20eb"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Mar 10 17:45:56 2015"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Mar 10 17:45:56 2015"
      },
      "message": "Switch from git-hooks-go to pre-commit-go\n"
    },
    {
      "commit": "45738a0eb7d578b05123b4c684c946ea2e4d20eb",
      "tree": "8a9ea8a4c02b992b50e47d8312842027b6243b68",
      "parents": [
        "16a72b7d617b56c8842c6c913e91c0bb895f02ee"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Dec 30 19:16:17 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Dec 30 19:16:17 2014"
      },
      "message": "Update git-hooks-go to be compatible with go1.4.\n"
    },
    {
      "commit": "16a72b7d617b56c8842c6c913e91c0bb895f02ee",
      "tree": "e19fa130e6f0e996b671cc14d2014458c083082b",
      "parents": [
        "4cbda273ba8a2c688c692ac7002b2f6eb0df3263"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Nov 09 02:52:53 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Nov 09 02:52:53 2014"
      },
      "message": "Replace subcommandstest.Assertf() with ut.AssertEqual().\n\nThis is a breaking change.\n"
    },
    {
      "commit": "4cbda273ba8a2c688c692ac7002b2f6eb0df3263",
      "tree": "552b9980162a16a30052d287f8d6b5d4e88fa012",
      "parents": [
        "71bf6b683c1fbaf4d04c8dbf7d9883f5583dc5a3"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Nov 09 01:20:27 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Nov 09 01:20:27 2014"
      },
      "message": "Remove NullWrite, ioutil.Discard should be used instead.\n\nPlease pardon my ignorance.\n"
    },
    {
      "commit": "71bf6b683c1fbaf4d04c8dbf7d9883f5583dc5a3",
      "tree": "813cc023c422eeceffd143db318ae2d4c50b33bc",
      "parents": [
        "5bd08a04658ca8ee8a3acaad13f240017d2470b0"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Nov 08 20:59:47 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Nov 08 20:59:47 2014"
      },
      "message": "Roll git-hooks-go, update .travis.yml\n\nThe new .travis.yml is much simpler\n"
    },
    {
      "commit": "5bd08a04658ca8ee8a3acaad13f240017d2470b0",
      "tree": "1c057b114bf85d7ac2309747456a6c56c894bad8",
      "parents": [
        "84f9f4d6f3192e8bfb97c28290934db419c49c1a"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Nov 03 19:39:14 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Nov 03 19:39:14 2014"
      },
      "message": "Copy-paste failure in README.md.\n"
    },
    {
      "commit": "84f9f4d6f3192e8bfb97c28290934db419c49c1a",
      "tree": "bf45ac8121c636c5b3c3ce7d4d6bca06a7b83dc0",
      "parents": [
        "1a361f3e10594027675648ab16621c2d75da16be"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Nov 03 19:37:15 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Nov 03 19:37:15 2014"
      },
      "message": "Add travis and coveralls support. Fix a few issues found.\n\nSupport is added through git-hooks-go.\n"
    },
    {
      "commit": "1a361f3e10594027675648ab16621c2d75da16be",
      "tree": "d4d2a57fd94359890311392551431e430b11eb4d",
      "parents": [
        "269d8704791912b956418a0d05301a32deb4ee38"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Nov 03 01:08:32 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Nov 03 01:08:32 2014"
      },
      "message": "Convert to github.com/maruel/git-hooks-go\n"
    },
    {
      "commit": "269d8704791912b956418a0d05301a32deb4ee38",
      "tree": "bd651a9e302003b3ee4a4fb4eca29fa91b190730",
      "parents": [
        "1c5052b7f769dcd718c0e23518b1ebaedb0e786f"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 21 19:00:17 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 21 19:00:17 2014"
      },
      "message": "Fix errcheck, add sample-complex, export *Writer.\n\nsample-complex is meant to be used as an example how to do inner commands.\n"
    },
    {
      "commit": "1c5052b7f769dcd718c0e23518b1ebaedb0e786f",
      "tree": "e34c6b8a8308010307003dae0e9f0987aeafd172",
      "parents": [
        "53837dced6f1f764a0553e5712d68e30014ed9f3"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 21 17:46:04 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 21 17:46:04 2014"
      },
      "message": "Fix VoidStdLog().\n\nDamn copy-paste.\n"
    },
    {
      "commit": "53837dced6f1f764a0553e5712d68e30014ed9f3",
      "tree": "f884bcf839bc6d57f6ec4cdee6cf798a2559147d",
      "parents": [
        "7bf0c0189bfe7e0104426a9ccf74edf672461884"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 21 17:43:51 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 21 17:44:03 2014"
      },
      "message": "Add VoidStdLog() and KillStdLog() to help with focused logging.\n\nImprove presubmit.py to test more.\n\nFix a compilation error in sample-simple/main_test.go.\n"
    },
    {
      "commit": "7bf0c0189bfe7e0104426a9ccf74edf672461884",
      "tree": "ac2e193b00d676f6bd6b2fef0daefe244755d9c2",
      "parents": [
        "56dd17056c5d8e892befb51e36c1f95f0ca54551"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 23:57:49 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 23:57:49 2014"
      },
      "message": "Add link to wikipedia for those who have a hard time searching\n"
    },
    {
      "commit": "56dd17056c5d8e892befb51e36c1f95f0ca54551",
      "tree": "f475b4544cba7aa9e9e54068ad4198480f162e7b",
      "parents": [
        "a70c09133c6ff267a531d326473b0f84f9fe0036"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 23:56:18 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 23:56:18 2014"
      },
      "message": "Change README.md style\n"
    },
    {
      "commit": "a70c09133c6ff267a531d326473b0f84f9fe0036",
      "tree": "99e42b9c49eecf9647723265fa43d8744197a8fc",
      "parents": [
        "fd4ccef1561c5c8b482c9278ae71277bf16a3425"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 23:54:57 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 23:54:57 2014"
      },
      "message": "Update README.md with new feature and update test\n"
    },
    {
      "commit": "fd4ccef1561c5c8b482c9278ae71277bf16a3425",
      "tree": "ddd350b8d0ff9159ead5f3c4d39b30bc7b7fd55c",
      "parents": [
        "93876b5c26cc19c865105fd8aa6b47b27f78ac72"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 23:48:43 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 23:48:43 2014"
      },
      "message": "Add FindNearestCommand.\n\nIt finds the command heuristically, first by prefix, then case insensitivity, then minimal levenshtein distance.\n"
    },
    {
      "commit": "93876b5c26cc19c865105fd8aa6b47b27f78ac72",
      "tree": "107553ddef00ab808425ae9f01dd0d20cbf1a10f",
      "parents": [
        "9e9b74b8272a8d2fbc11138fc18ccf58453c84bc"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 01:52:04 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sat Sep 20 01:52:04 2014"
      },
      "message": "Add sample-simple, presubmit check\n"
    },
    {
      "commit": "9e9b74b8272a8d2fbc11138fc18ccf58453c84bc",
      "tree": "64fa7497e920a614b9e597268f95cabe8e454ac6",
      "parents": [
        "02c993703cfc173fcc7475a0ca9cae105f722ede"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 07 01:43:30 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 07 01:43:30 2014"
      },
      "message": "Fix typo\n"
    },
    {
      "commit": "02c993703cfc173fcc7475a0ca9cae105f722ede",
      "tree": "f93d4e886f021e93337d9f2f606b837fe9eed7c7",
      "parents": [
        "04d59fedd343c8ed661217c8c5fedb945f36280a"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 07 01:43:00 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 07 01:43:00 2014"
      },
      "message": "Fix a few lint\n"
    },
    {
      "commit": "04d59fedd343c8ed661217c8c5fedb945f36280a",
      "tree": "a190f3a878e7fcfc4ab6d27de62d52be851210be",
      "parents": [
        "cfd551beb3d5c52edafdf53cc13ea7db83ea089c"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 07 01:39:31 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Sun Sep 07 01:39:31 2014"
      },
      "message": "Improve README.md\n"
    },
    {
      "commit": "cfd551beb3d5c52edafdf53cc13ea7db83ea089c",
      "tree": "05799d5c64ddf28698e33e8956154a1455f373ca",
      "parents": [
        "6514093a9c716b787d4c14fab76726cee80e86d2"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Sep 05 16:59:33 2014"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Fri Sep 05 16:59:33 2014"
      },
      "message": "Improve docs, reduce subcommand indentation to 2 for more compact help\n"
    },
    {
      "commit": "6514093a9c716b787d4c14fab76726cee80e86d2",
      "tree": "dc9ab12a45d01dab245a42239d766a5cfba291c7",
      "parents": [
        "34222e2d6c21ec288611b4e22e3c19891607a144"
      ],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Sep 30 14:57:41 2013"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Mon Sep 30 14:57:41 2013"
      },
      "message": "Add CheckOut() function.\n"
    },
    {
      "commit": "34222e2d6c21ec288611b4e22e3c19891607a144",
      "tree": "f4520e5469acc33cbdbe7e4edd37cfa9e85afba9",
      "parents": [],
      "author": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Jan 15 15:19:35 2013"
      },
      "committer": {
        "name": "Marc-Antoine Ruel",
        "email": "maruel@chromium.org",
        "time": "Tue Jan 15 15:20:38 2013"
      },
      "message": "Add initial version\n"
    }
  ]
}
