)]}'
{
  "log": [
    {
      "commit": "acc7921580522f759cba2ac782921d683665b6b9",
      "tree": "f6912c86aaba46713017c92e1e26b1b79a808ed6",
      "parents": [
        "d744a9bcd5128b106ba2f4cf991d4e6a510751e1"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Apr 03 11:48:55 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Apr 03 12:41:35 2017 -0700"
      },
      "message": "versioner: remove useless log message.\n\nTest: tools/versioner/run_tests.py\nChange-Id: I70edafb7ad6a6274e7daa508903520dbb4b399c8\n"
    },
    {
      "commit": "3fcf747f1daefcd7995a3c22f42e9f5c987e7142",
      "tree": "16ec78eb984d4876b5542a8c6f7db5fd3d768dfc",
      "parents": [
        "4df5ca1e0254790d41f945352a93f5c783ea8de0"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Apr 03 11:24:17 2017 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Apr 03 12:41:35 2017 -0700"
      },
      "message": "versioner: guard preprocessing messages with -v.\n\nBug: http://b/36751878\nTest: tools/versioner/run_tests.py\nChange-Id: I5142a33519b101548ccaec8a3bc498e446a648a7\n"
    },
    {
      "commit": "cdbf6fe94f1907e29aa816471c9d093375ccba2f",
      "tree": "e3196cbcc73440aa22726d181fd6c37d7313fd48",
      "parents": [
        "11b362d284b49e070813cd459584ea3dabb20b1e"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Nov 09 18:28:37 2016 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Nov 29 08:28:49 2016 -0800"
      },
      "message": "versioner: use unique_ptr to handle ownership of FTS*.\n\nBug: None\nTest: python run_tests.py\nChange-Id: I510063e9b57afda4f5492198cd40c15fc6380d2d\n"
    },
    {
      "commit": "b3321c961452f69650e4a6bd2a7db317a80b3234",
      "tree": "9471f536d800a1ca4bb71a638edd11eb1a2496bd",
      "parents": [
        "cd9ce19e9ce34db6201bdb054c40c3b9e766d2d8",
        "78b8a1430debfb9361e425e52e8366409b9e5cd2"
      ],
      "author": {
        "name": "Treehugger Robot",
        "email": "treehugger-gerrit@google.com",
        "time": "Tue Nov 15 00:54:08 2016 +0000"
      },
      "committer": {
        "name": "Gerrit Code Review",
        "email": "noreply-gerritcodereview@google.com",
        "time": "Tue Nov 15 00:54:09 2016 +0000"
      },
      "message": "Merge changes I72d37b7c,I7d254a10,I2e967acf\n\n* changes:\n  versioner: use a virtual filesystem for input files.\n  versioner: cache -cc1 flags generated by the clang Driver.\n  versioner: refactor to use CompilerInstance directly.\n"
    },
    {
      "commit": "16016df79f846d6d21266c3b1dce1e7c24dc4be1",
      "tree": "848d465210b468dbcdb9b94a2519b40a256bf323",
      "parents": [
        "42eb0b255507ca4d3b4e94b7756c15ab742261c0"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Nov 07 18:27:16 2016 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Nov 09 13:50:07 2016 -0800"
      },
      "message": "versioner: refactor to use CompilerInstance directly.\n\nThis will make it easier to switch over to a virtual filesystem,\nwhich should drastically improve performance.\n\nThis also fixes an issue with warning/error reporting.\n\nBug: http://b/32748936\nTest: python run_tests.py\nChange-Id: I2e967acf75db29c95f3a03f4f94cccd22c367ad5\n"
    },
    {
      "commit": "9ae2b9a5213219e929e5cab6cea3f1f1e476d2fd",
      "tree": "724d367bbca0ed14f34eff36e077d6b601ec1416",
      "parents": [
        "42eb0b255507ca4d3b4e94b7756c15ab742261c0"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Nov 08 16:17:45 2016 -0800"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Nov 08 16:28:07 2016 -0800"
      },
      "message": "versioner: don\u0027t always hide future decls.\n\nBug: http://b/32748732\nTest: python run_tests.py\nChange-Id: I8f799015ebb1017f5e7d1324fb4c724e12a268bc\n"
    },
    {
      "commit": "dfb74c5f597542c7587a4144eb31b143d82a2281",
      "tree": "6518b6dbd451d3359c9daec78867a66481dc77fd",
      "parents": [
        "bd839d100d1c4802cf53f3d27bb73e6032719762"
      ],
      "author": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 12:53:17 2016 -0700"
      },
      "committer": {
        "name": "Elliott Hughes",
        "email": "enh@google.com",
        "time": "Mon Oct 24 12:57:55 2016 -0700"
      },
      "message": "Minor copyright header unification.\n\nRegenerating the NOTICE file the other day left me scratching my head at\nvarious \"how do they differ?\" cases, resolved by this patch.\n\nTest: N/A\nChange-Id: I4230bfa1d7ec842a4b9fb8c73dd3b39443d74054\n"
    },
    {
      "commit": "fff29fe17a4187ea83add76695040bc888e9d3bd",
      "tree": "d53910633fa98038db957b1cf767aa8fb0b26ca2",
      "parents": [
        "bfad958982a6b1c8c957c0eb951826d0c369eedd"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Sep 07 18:29:08 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Wed Sep 07 18:34:39 2016 -0700"
      },
      "message": "versioner: add support for __VERSIONER_NO_GUARD.\n\nAdd an attribute that tells the preprocessor not to guard a\ndeclaration, primarily for use with symbols that get reexported by\nlibc++ of the form `namespace std { using ::wctrans; }`.\n\nBug: http://b/28178111\nChange-Id: I08c8751214797e37e8f26e7f7416a19e81c2bb4c\n"
    },
    {
      "commit": "9f7ce3d27f5ad369db54047d3f6029add70a55b9",
      "tree": "723dc1b3374bc2c3c27c3a6d9faabada945ed6d1",
      "parents": [
        "1b4b3d7a3cf5d81d84f3e27d0bdee744cc6ad05e"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 15 13:44:37 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 15 14:09:53 2016 -0700"
      },
      "message": "versioner: fix off-by-one error in header guard calculation.\n\nThis was causing redundant guards to be emitted in cases where\ndeclarations were already guarded by another macro.\n\nBug: http://b/30170081\nChange-Id: I9080838fbea5a56225df4b26d0918657fb6c4f21\nTest: python run_tests.py\n"
    },
    {
      "commit": "a6b8c4e163a976a2befe4f3bfbfa9ce66d159d30",
      "tree": "c7f61ffafa591bc54945614594225094cdcc82ef",
      "parents": [
        "b0af100297ead6f6f3637b9b00d55d161f368ec3"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 15 13:04:51 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 15 13:41:57 2016 -0700"
      },
      "message": "versioner: always copy over source headers when preprocessing.\n\nAlso, be less noisy when preprocessing.\n\nBug: http://b/30170081\nChange-Id: If0d81b0a3a49756164e4945a20703afeb302fd4d\nTest: python run_tests.py\n"
    },
    {
      "commit": "79786347db99cfddcce89138c212e6d23daa9b2e",
      "tree": "236dd6e05a56e75ff36fe40aa5b41b22e735b89e",
      "parents": [
        "9519fc08b730ca5857ac70debd799c5f590d01cd"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Aug 12 16:17:22 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Fri Aug 12 16:24:04 2016 -0700"
      },
      "message": "versioner: copy unmodified headers when preprocessing.\n\nChange-Id: I2517f560fd44fb519d6ee7e8d0a485036d3ecd87\n"
    },
    {
      "commit": "f8592a3ff3d452b7d784d34814e5d04c20348343",
      "tree": "7b7b981e5c74280552b875bdbd4494c3000b38d9",
      "parents": [
        "8feba83242e32693b1853f0d6f141b7736008d4a"
      ],
      "author": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Tue Jul 26 18:58:27 2016 -0700"
      },
      "committer": {
        "name": "Josh Gao",
        "email": "jmgao@google.com",
        "time": "Mon Aug 08 16:39:07 2016 -0700"
      },
      "message": "versioner: add support for preprocessing headers.\n\nBug: http://b/30170081\nChange-Id: I9b662ca9e0fa3a1f9c0211594e851f5f9bef7266\n"
    }
  ]
}
