)]}'
{
  "commit": "78c43d7bee2a476d6edffe0a4368eb6fcef38c31",
  "tree": "6d039a14cd325c041d404e2058bed7d2a201c216",
  "parents": [
    "39e474f4b4a975d8befa1e8f4cbedab5f47a43fa"
  ],
  "author": {
    "name": "Shane Farmer",
    "email": "safarmer@google.com",
    "time": "Mon Dec 04 09:08:38 2017 -0800"
  },
  "committer": {
    "name": "Shane Farmer",
    "email": "safarmer@google.com",
    "time": "Tue Dec 19 13:52:30 2017 -0800"
  },
  "message": "AAPT2: Sort artifacts based on the Play Store rules.\n\nSort output artifacts so that the updated versionCode manifest entry\nwill allow correct handling of updates from Play Store. The most\nimportant dimension is Android SDK version. It is important that a split\nbased on min SDK version will allow a user to get a new APK if they\nupgrade the OS on their device to support a new split.\n\nABI splits need to also be taken into consideration as it is possible\nfor a device to run in ARM emulation mode and installing an ARM APK over\na x86 APK could cause performance regressions.\n\nThe XML file format was updated to give each of the configuration groups\nhave their own section of the XML file. This allows the sort order to be\ndetermined by a groups ordering. Artifacts can now be added to the\nconfiguration file in an arbitrary order. Since this will be the common\ncase for developers, it will help reduce errors from inserting a new\nartifact in the wrong spot.\n\nThe implementation follows the rules outlined at:\nhttps://developer.android.com/google/play/publishing/multiple-apks.html\n\nTest: Unit tests\nTest: Manual process XML configuration\n\nChange-Id: I0face862c6d6b9d3cd2d99088afe5b9491be0120\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "655268bc73f9fe1a4d8c4fa177c8639e3ce8ae70",
      "old_mode": 33188,
      "old_path": "tools/aapt2/configuration/ConfigurationParser.cpp",
      "new_id": "eabeb47fccec4ee843cf8a9be8ee40e7d0f3c169",
      "new_mode": 33188,
      "new_path": "tools/aapt2/configuration/ConfigurationParser.cpp"
    },
    {
      "type": "modify",
      "old_id": "ca5891025c92c5ff7dd356e9fd4da29b1f672634",
      "old_mode": 33188,
      "old_path": "tools/aapt2/configuration/ConfigurationParser.h",
      "new_id": "7f1d4453f9b3630549f4551cf13bca505fe5f3cc",
      "new_mode": 33188,
      "new_path": "tools/aapt2/configuration/ConfigurationParser.h"
    },
    {
      "type": "modify",
      "old_id": "7657ebd70a8bcfec904c18fd12053448e858c616",
      "old_mode": 33188,
      "old_path": "tools/aapt2/configuration/ConfigurationParser.internal.h",
      "new_id": "a583057427e60f858e2fac7d5bc65cc5c00456f0",
      "new_mode": 33188,
      "new_path": "tools/aapt2/configuration/ConfigurationParser.internal.h"
    },
    {
      "type": "modify",
      "old_id": "da00511fd192f357a77e7d7c06a22602e33e83b3",
      "old_mode": 33188,
      "old_path": "tools/aapt2/configuration/ConfigurationParser_test.cpp",
      "new_id": "0329846a5bb593f205f69f7c5bf42697eee41ea8",
      "new_mode": 33188,
      "new_path": "tools/aapt2/configuration/ConfigurationParser_test.cpp"
    },
    {
      "type": "modify",
      "old_id": "134153a017f8789a0b3eff0e12e446b63706d0a3",
      "old_mode": 33188,
      "old_path": "tools/aapt2/configuration/aapt2.xsd",
      "new_id": "fb2f49bae7b7a79565aba24e7ff118f0a1235eb2",
      "new_mode": 33188,
      "new_path": "tools/aapt2/configuration/aapt2.xsd"
    },
    {
      "type": "modify",
      "old_id": "ce31e61b2d62e6eb92722999c676763ce1aafd7c",
      "old_mode": 33188,
      "old_path": "tools/aapt2/configuration/example/config.xml",
      "new_id": "d8aba09e836d8708d47bb49e11ae53f7e8c81c21",
      "new_mode": 33188,
      "new_path": "tools/aapt2/configuration/example/config.xml"
    },
    {
      "type": "modify",
      "old_id": "16898d6f3e03033791460fdf0cd0be2acd8ae679",
      "old_mode": 33188,
      "old_path": "tools/aapt2/optimize/MultiApkGenerator.cpp",
      "new_id": "991faadcafc445428d9f4ea20fb0b40891c5fa5d",
      "new_mode": 33188,
      "new_path": "tools/aapt2/optimize/MultiApkGenerator.cpp"
    },
    {
      "type": "modify",
      "old_id": "88897a8afac33298536b8e3fc13429f38e5a52a5",
      "old_mode": 33188,
      "old_path": "tools/aapt2/test/Builders.cpp",
      "new_id": "84d03cfb0283cfd3532375e7914e8d90f0c2621a",
      "new_mode": 33188,
      "new_path": "tools/aapt2/test/Builders.cpp"
    },
    {
      "type": "modify",
      "old_id": "2f83b78ffb2abea9b9d9669004c5c2b7f10932b2",
      "old_mode": 33188,
      "old_path": "tools/aapt2/test/Builders.h",
      "new_id": "72faa55392e4184201bd3f3451452f1ba878f436",
      "new_mode": 33188,
      "new_path": "tools/aapt2/test/Builders.h"
    }
  ]
}
