)]}'
{
  "log": [
    {
      "commit": "8e5f8c29b27c8dc83da31fbce5d92a173b91ba10",
      "tree": "fe29f1c0e5032760843d7526e35d3a40148dd776",
      "parents": [
        "9fd97998059529b55f2042b7c453236fc030aa28"
      ],
      "author": {
        "name": "James E. Blair",
        "email": "jeblair@redhat.com",
        "time": "Fri Jun 15 10:10:35 2018 -0700"
      },
      "committer": {
        "name": "Doug Hellmann",
        "email": "doug@doughellmann.com",
        "time": "Fri Jun 15 16:11:29 2018 -0400"
      },
      "message": "Add the project under test to LIBS_FROM_GIT\n\nThis automatically always adds the project under test to LIBS_FROM_GIT\nwhich effectively makes the normal \"tempest full\" job the same as the\n\"forward testing\" job when it is applied to a library repo.\n\nChange-Id: Ibbdd8a86e0ff55f67bef73e08e693b34a61b24df\n"
    },
    {
      "commit": "e1edde38edb697f56e111f55e5992e7bf22f6284",
      "tree": "f042d7085a4dec97abcf0b358d9ed74116fd14ab",
      "parents": [
        "6f27fca4a76aceaadab3776c87c48743671ce502"
      ],
      "author": {
        "name": "James E. Blair",
        "email": "jeblair@redhat.com",
        "time": "Fri Mar 02 15:05:14 2018 +0000"
      },
      "committer": {
        "name": "James E. Blair",
        "email": "jeblair@redhat.com",
        "time": "Tue Apr 17 13:48:37 2018 -0700"
      },
      "message": "Automatically set LIBS_FROM_GIT based on required projects\n\nIf a project shows up in zuul\u0027s required-projects list, add it\nto LIBS_FROM_GIT automatically.  This way, when a user specifies\nthat a job requires a zuul-project, it gets used in testing, but\notherwise, it doesn\u0027t (pypi is used instead).\n\nAlso add information about what happens behind the scenes for both\nLIBS_FROM_GIT and plugin dependencies.\n\nThis moves the check performed in check_libs_from_git to\na helper function which is installed for most kinds of\ninstallations.  This means that if someone sets LIBS_FROM_GIT to\n\"foobar\", devstack won\u0027t error anymore, as nothing is going to\ntry to install foobar, therefore the check won\u0027t run on that.\nHowever, as we move to automated generation of the local config,\nthat error is not likely to happen.  This check was originally\nadded due to an error in the upper-constraints file (where a\nconstraint name did not match a package name).  This location of\nthe check would still catch that type of error.\n\nChange-Id: Ifcf3ad008cf42d3d4762cfb3b6c31c93cfeb40db\n"
    },
    {
      "commit": "6f27fca4a76aceaadab3776c87c48743671ce502",
      "tree": "d51f6446e32d9df2e618202411d563249efd2ed8",
      "parents": [
        "b3517ca103f44e44c2464878d8cc8caa84222cc8"
      ],
      "author": {
        "name": "James E. Blair",
        "email": "jeblair@redhat.com",
        "time": "Tue Nov 21 17:05:43 2017 -0800"
      },
      "committer": {
        "name": "James E. Blair",
        "email": "jeblair@redhat.com",
        "time": "Thu Mar 22 11:50:49 2018 -0700"
      },
      "message": "Zuul: support plugin dependencies\n\nChange-Id: I81302e8988fe6498fea9f08ed66f5d0cc1fce161\n"
    }
  ]
}
