)]}'
{
  "commit": "78a51911da304cbbe7587c25218e16be4e9bede0",
  "tree": "b51b42382ee59ee8dc201831c93d6b6a31a9ad0a",
  "parents": [
    "94eb189b6466df1d09180dc133af5bde996c6a69"
  ],
  "author": {
    "name": "Jonah Ryan-Davis",
    "email": "jonahr@google.com",
    "time": "Wed Jun 12 14:28:14 2019 -0400"
  },
  "committer": {
    "name": "Commit Bot",
    "email": "commit-bot@chromium.org",
    "time": "Thu Jun 13 15:24:17 2019 +0000"
  },
  "message": "Clean up and expose frontend features to egl.\n\ngl::Workarounds was used to hold frontend features. Change ownership of\nthis struct from Context to Display, so it can be exposed to egl. Also\nrename to features and clean up for consistency.\n\nBug: angleproject:1621\nChange-Id: I82e98e53873abb7a402c93e60f8a662a7263e0d5\nReviewed-on: https://chromium-review.googlesource.com/c/angle/angle/+/1655772\nCommit-Queue: Jonah Ryan-Davis \u003cjonahr@google.com\u003e\nReviewed-by: Geoff Lang \u003cgeofflang@chromium.org\u003e\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "b3d8aa8ff438a859a9849ae30430536d024a06fd",
      "old_mode": 33188,
      "old_path": "src/libANGLE/Context.cpp",
      "new_id": "4d5468914aa53d0ddaf4faf417e18dd4304f9802",
      "new_mode": 33188,
      "new_path": "src/libANGLE/Context.cpp"
    },
    {
      "type": "modify",
      "old_id": "837bbc08e1c548a7658db98fc1162c87d06e4b83",
      "old_mode": 33188,
      "old_path": "src/libANGLE/Context.h",
      "new_id": "222d2a6d3350c3880e0d71410d64add192fa30bd",
      "new_mode": 33188,
      "new_path": "src/libANGLE/Context.h"
    },
    {
      "type": "modify",
      "old_id": "dc728d98d6251a2c6f7f377a44459d475964be5d",
      "old_mode": 33188,
      "old_path": "src/libANGLE/Display.cpp",
      "new_id": "9b7df24d2d147dc339968c2a42980ac475d2f840",
      "new_mode": 33188,
      "new_path": "src/libANGLE/Display.cpp"
    },
    {
      "type": "modify",
      "old_id": "49a7e4b2007f4d45fda4bcbde86291b1c8db741c",
      "old_mode": 33188,
      "old_path": "src/libANGLE/Display.h",
      "new_id": "1acd174ae3bd1c889f92891f9d9f6ef1aea488f3",
      "new_mode": 33188,
      "new_path": "src/libANGLE/Display.h"
    },
    {
      "type": "rename",
      "old_id": "9fceb66388e075033f1b010e68a3869a287f65c6",
      "old_mode": 33188,
      "old_path": "src/libANGLE/Workarounds.h",
      "new_id": "0627e48dc27ced8f35d38a2e53a53c593721ec66",
      "new_mode": 33188,
      "new_path": "src/libANGLE/FrontendFeatures.h",
      "score": 90
    },
    {
      "type": "modify",
      "old_id": "eb9c1e5012e5689087abe35e2c105f7aeb3faa78",
      "old_mode": 33188,
      "old_path": "src/libANGLE/Program.cpp",
      "new_id": "69911f84f278d52c2d9b000663f3cd9525b18888",
      "new_mode": 33188,
      "new_path": "src/libANGLE/Program.cpp"
    },
    {
      "type": "modify",
      "old_id": "d55fcbec640c970c65ca8bbdd6aa6963cf408b9d",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/ContextImpl.h",
      "new_id": "34ae21d8ab4231c3dab694240849633e0b042a0d",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/ContextImpl.h"
    },
    {
      "type": "modify",
      "old_id": "f8ed8f4c350d41e8bab0a8005a12a80275b59ba8",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/DisplayImpl.h",
      "new_id": "7d7f4211fd6b6c21cf88a240b0e3cf3e51bf7981",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/DisplayImpl.h"
    },
    {
      "type": "modify",
      "old_id": "e0376dbc6c12308f6f9b0001ca2c5d91dff2d950",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/ContextGL.cpp",
      "new_id": "b67fa752ffc24006392fba1e9be4e7b4d8b055ba",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/ContextGL.cpp"
    },
    {
      "type": "modify",
      "old_id": "0b7500f8396d8fe19ec9e1c2edcad0f530702303",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/ContextGL.h",
      "new_id": "d76e4924098fe8abf74255e209988d730238fc86",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/ContextGL.h"
    },
    {
      "type": "modify",
      "old_id": "c4871ca1a31d9fb58787e4d6804815cd01954acb",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/RendererGL.cpp",
      "new_id": "cd5c340ceb82fc0b9881e97709a6565497143a50",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/RendererGL.cpp"
    },
    {
      "type": "modify",
      "old_id": "9ffb069c642f79b4ae70e0112c48d725469ceb1e",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/RendererGL.h",
      "new_id": "eadf8b6c4b165fbe2ce7ec5536523ccf8a1e7d08",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/RendererGL.h"
    },
    {
      "type": "modify",
      "old_id": "93bd8ccc0819eb62ec97393adf4ae640b8a94f95",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/cgl/DisplayCGL.h",
      "new_id": "c17d98f4a967a60b234efc4376ee1fe32de7d304",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/cgl/DisplayCGL.h"
    },
    {
      "type": "modify",
      "old_id": "1ca3143864874e4de3bd268703ed63badbba3f39",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/cgl/DisplayCGL.mm",
      "new_id": "bf02cff2803cbbe817df6e2b2b6648699bcd8089",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/cgl/DisplayCGL.mm"
    },
    {
      "type": "modify",
      "old_id": "949c685923479c67b6c20f88f5c46ebdbd99ee5d",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/egl/android/DisplayAndroid.cpp",
      "new_id": "9dc1c5deb68f44febf2a5a4c90a4a2db1e9694f7",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/egl/android/DisplayAndroid.cpp"
    },
    {
      "type": "modify",
      "old_id": "7f5771af45a575ca439b35191547d7bd772b9e29",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/egl/android/DisplayAndroid.h",
      "new_id": "fca74ce714f20928b5c919c452a734aa5397c725",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/egl/android/DisplayAndroid.h"
    },
    {
      "type": "modify",
      "old_id": "b2436dce00ac0b02989f49f458fbf80de4d3abf5",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/egl/ozone/DisplayOzone.cpp",
      "new_id": "a022bb679d272b2163cb2d7c5684fe29f160e62b",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/egl/ozone/DisplayOzone.cpp"
    },
    {
      "type": "modify",
      "old_id": "af9a5772b671e6f46682b80fc394e492b767ba09",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/egl/ozone/DisplayOzone.h",
      "new_id": "ac42cdc1cab037405c2717bf638e2e6e3bae9e7b",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/egl/ozone/DisplayOzone.h"
    },
    {
      "type": "modify",
      "old_id": "f98aefbd09293477248f9ec88965ebe81202f9f5",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/glx/DisplayGLX.cpp",
      "new_id": "ac1374ac4b1dde3af11c7dca324f43d68b91c415",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/glx/DisplayGLX.cpp"
    },
    {
      "type": "modify",
      "old_id": "6995d3c751796bc211a15fbb704d778f42bd0a8d",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/glx/DisplayGLX.h",
      "new_id": "e439f255ae5084a24813e8bcd2c48b48382bc8c9",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/glx/DisplayGLX.h"
    },
    {
      "type": "modify",
      "old_id": "9cb34fc2ee96efc9276954f1eb9022ff3d312ce5",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/renderergl_utils.cpp",
      "new_id": "ad408a186083b23c7edecee5b6650342e5fc4d35",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/renderergl_utils.cpp"
    },
    {
      "type": "modify",
      "old_id": "c52b530b93c7532733317d3251f0f0b4471d1e56",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/renderergl_utils.h",
      "new_id": "048f6576f74956bb306cf1614d59bc916a0ab891",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/renderergl_utils.h"
    },
    {
      "type": "modify",
      "old_id": "3d8b21c5c028160e2daac8849f4f03073e56ce51",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/wgl/DisplayWGL.cpp",
      "new_id": "dfdfcb108d8e43a9774b01c9f535a65c14b2cad8",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/wgl/DisplayWGL.cpp"
    },
    {
      "type": "modify",
      "old_id": "5961d81cec980e8818e060b2f6a06683ed293c78",
      "old_mode": 33188,
      "old_path": "src/libANGLE/renderer/gl/wgl/DisplayWGL.h",
      "new_id": "f4f28ca2f5671e067703eca7417c3d8af4b2b9c5",
      "new_mode": 33188,
      "new_path": "src/libANGLE/renderer/gl/wgl/DisplayWGL.h"
    },
    {
      "type": "modify",
      "old_id": "603b7a3d15106efa75455afc9394e847a319c77e",
      "old_mode": 33188,
      "old_path": "src/libGLESv2.gni",
      "new_id": "a75af7cd2dac5c731e6b7e95dc20fc4da82727ab",
      "new_mode": 33188,
      "new_path": "src/libGLESv2.gni"
    }
  ]
}
