)]}'
{
  "log": [
    {
      "commit": "d00350c61bd1ea29ef34da243ac08364a2b9527a",
      "tree": "031cf0c631d244085f3e05d88ea7a6cf2ceabda8",
      "parents": [
        "6dfde48ba1dff752950144161313ad226d0e44d1"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Nov 17 10:55:38 2017 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Nov 17 23:05:26 2017 +0000"
      },
      "message": "Add license headers to all go and shell files\n\nTest: none\nChange-Id: I75c443e05f2b1e17fcb6823182717d2e6f5df7c4\n"
    },
    {
      "commit": "99a75cd2a5102e72b07a7614e84f8624d3c2ddd1",
      "tree": "37cf7ebfe1dcbc192d496a72833dd4fc27a9e0d4",
      "parents": [
        "fd697f425657d6f443def3f0b1862888b0095bac"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Aug 04 16:04:04 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Aug 18 10:13:22 2017 -0700"
      },
      "message": "Obsolete bootstrap.bash and ./soong wrappers\n\nWe can call directly into the blueprint bootstrap.bash using values that\nsoong_ui has already calculated.\n\nInstead of calling into blueprint.bash, build minibp with microfactory,\nand directly run ninja. This allows us to get individual tracing data\nfrom each component.\n\nTest: m -j blueprint_tools\nTest: m clean; m -j blueprint_tools\nChange-Id: I2239943c9a8a3ad6e1a40fa0dc914421f4b5202c\n"
    },
    {
      "commit": "e0879fc3aef951d206eea97fec7d8ffd0f78db05",
      "tree": "62a1b83da28bcc41c60a33499276826e62689376",
      "parents": [
        "8d6aed7ed7a6ff97028ebd7344476e1fcce98c30"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Aug 04 15:06:27 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Aug 08 22:49:28 2017 -0700"
      },
      "message": "Add --skip-make to replace Soong\u0027s blueprint wrapper with soong_ui\n\nThis way we only have one way to start a build, which always has logging\n/ tracing / etc, even if we don\u0027t need Kati.\n\nThere\u0027s two ways to use this:\n\nAs a direct replacement for mkdir out; cd out; ../bootstrap.bash;\n./soong -- as long as --skip-make is always passed, we\u0027ll never run\nKati, and Soong will run outside of it\u0027s \"make\" mode. This preserves\nmost of the speed, and allows full user control over the Soong\nconfiguration.\n\nA (experimental, dangerous) way to temporarily bypass the product\nvariable and kati steps of a build. As long as a user is sure that\nnothing has changed from the last build, and they know exactly which\nNinja targets they want to build (which may not be the same as the\narguments normally passed to \u0027m\u0027), this can lead to shorter build\nstartup times.\n\nTest: rm -rf out; m --skip-make libc\nTest: rm -rf out; m libc; m --skip-make libc\nTest: rm -rf out; mkdir out; cd out; ../bootstrap.bash; ./soong libc\nTest: build/soong/scripts/build-ndk-prebuilts.sh\nChange-Id: Ic0f91167b5779dba3f248a379fbaac67a75a946e\n"
    },
    {
      "commit": "91f9b547672ecb20a308d52df3a0c09d616cb1b9",
      "tree": "bdf38ca0f3bd5fd626fa81211d0836e123dbee1b",
      "parents": [
        "99cd671ac35897e9514c6ca687dfeeeecedb36d3"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Jul 18 19:39:34 2017 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Mon Jul 24 15:29:14 2017 -0700"
      },
      "message": "Switch to blueprint\u0027s microfactory\n\nBug: 63720725\nTest: m -j nothing\nTest: mkdir o; ../bootstrap.bash; ./soong\nChange-Id: Id1f8312678f36afd08b49f8511fec3e6e5ba8de2\n"
    },
    {
      "commit": "1474741435774f15923967e50bf7531a3cc9d4f7",
      "tree": "ca23ce8c26f725a5394ff44d5c27a461131a26ee",
      "parents": [
        "369f01315a669f32f741659ae9a5f5c4fb7b7fad"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Apr 27 16:10:38 2016 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Apr 29 13:59:56 2016 -0700"
      },
      "message": "Move shell and python scripts to scripts/ directory\n\nChange-Id: Icdff44a54d14ddfc2266d99cf0578a8105716918\n"
    },
    {
      "commit": "6ac18ecb84332b6e84f498434812541f58a64ed4",
      "tree": "af18bd7447c199f1c99fe0dc9b880aeb30dc8b3a",
      "parents": [
        "7253e0b8a486797347b8bdec43aa98ce135f3ad7"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Mar 22 14:08:17 2016 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Mar 22 19:53:36 2016 -0700"
      },
      "message": "Improve BUILDDIR handling with symlinks\n\nIf BUILDDIR is a local symlink to another directory in the same parent\ndirectory (out -\u003e out.angler), then using out and .. as relative paths\nto get back and forth work.\n\nBut if BUILDDIR is a symlink to another directory altogether (out -\u003e\n/mnt/sdd/out.master), then we shouldn\u0027t be relying on relative paths (so\nthat the source directory can still be moved).\n\nChange-Id: I946c8116090410ab2b935eafba9b6e96f5f2f1dd\n"
    },
    {
      "commit": "87b17d1ff46ab86ab897c50435c423f28be4895f",
      "tree": "69d5b2ed53c5b99aacef6b3d692256ec0b671d21",
      "parents": [
        "c3ba6cb9707730e0fc553fa86b9fe6b6c9bbb4b9"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Jul 14 00:39:06 2015 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Thu Sep 17 23:42:25 2015 -0700"
      },
      "message": "Use SRCDIR as a working directory\n\nThe existing behavior of using the build directory as the working\ndirectory is useful if you want to move/copy the output directory around\nand SRCDIR still refers the the source. But, it\u0027s more useful to have\nthe source directory be the working directory. Tools like cpp(__FILE__)\nand other debug prints embed relative paths from the working directory.\nWe also have tools that expect the working directory to be $TOP.\n\nChange-Id: Ia0f1d3c6b7df72d61cf5628efa2baa98bd19775b\n"
    },
    {
      "commit": "e5e20331465457b7708b6590b0c977889d0e7688",
      "tree": "283ad2d55c8fba58f77c3ab6e0e2f0c1e388f4fd",
      "parents": [
        "88b4c29fb318cc0f455d6ebc3fb7865b00353a04"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Tue Jun 23 19:46:20 2015 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Fri Jun 26 11:51:03 2015 -0700"
      },
      "message": "Build and run tests during bootstrap\n\nChange-Id: If40489d74136af4d15d4ff26210a50975a462497\n"
    },
    {
      "commit": "98c93e9fbfa32735e40e2f6b28fce926d5c30e66",
      "tree": "f20b2a1bbfd5ad41c2eb4da380a3fc7e49d7e7e2",
      "parents": [
        "3828490eef079c1d51d9565799b8c8b68ce7899d"
      ],
      "author": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Jun 10 16:59:11 2015 -0700"
      },
      "committer": {
        "name": "Dan Willemsen",
        "email": "dwillemsen@google.com",
        "time": "Wed Jun 10 18:07:39 2015 -0700"
      },
      "message": "Fix bootstrap.bash -r with Android.bp\n\nChange-Id: I8182e57105b1c17254e082f6b72d2504befb7870\n"
    },
    {
      "commit": "24679676cad44947ea8752d1d193b0541d942a16",
      "tree": "0f6a7de75c3e093b980ebc27b5a73af97218782f",
      "parents": [
        "c3c0a4962265d37a92d4df4016b3711367824364"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Apr 10 15:45:15 2015 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Fri Apr 10 15:50:37 2015 -0700"
      },
      "message": "Fix soong scripts to support directories with spaces\n\nUsing a path with a space to execute soong is unlikely, but it\nmight as well work.  Quote all the paths in the soong scripts.\n\nSoong and blueprint will still both fail if the relative path between\nthe soong script and the source directory has a space in it, but this\nis even more unlikely.\n\nChange-Id: I8986f10115209d69b09b82ffea26e4b10d29c197\n"
    },
    {
      "commit": "f7531f1a21aaa56ef53cb1714e954e487528109f",
      "tree": "600dc39036442c0952a4446f6ebf7ea932e3c14b",
      "parents": [
        "82df943c5ae6214206875dd38af77ac54e780cfb"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Mar 25 14:09:02 2015 -0700"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Mar 25 14:09:02 2015 -0700"
      },
      "message": "Replace soong script with a symlink\n\nbootstrap.bash creates a soong script in the output directory using\nbuild/soong/soong.in.  This requires a manual rebootstrap any time\nsoong.in changes.  Instead, have bootstrap.bash symlink\nbuild/soong/soong.bash to soong in the output directory, and create\na file called .soong.bootstrap in the output directory that contains\nthe variables that bootstrap.bash sets.\n\nChange-Id: I5e6e54c2e8bdde876941e2e082f9ba177c757cbf\n"
    },
    {
      "commit": "e441b9df9a68595d0dd7b8ed184aecb27c86054b",
      "tree": "e625df0fbd1dde9000c7da039b4242899acf249f",
      "parents": [
        "8a051b802fa5e9ffa350cd732663849f44502c76"
      ],
      "author": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Mon Jan 26 16:30:13 2015 -0800"
      },
      "committer": {
        "name": "Colin Cross",
        "email": "ccross@android.com",
        "time": "Wed Mar 04 16:13:27 2015 -0800"
      },
      "message": "Initial soong\n\nThis creates the infrastructure that will be used to bootstrap the\nsoong primary builder through blueprint and ninja.\n\nChange-Id: Iebed8f369e4db41b207d0b2a48a7a54a4dd7d45d\n"
    }
  ]
}
