)]}'
{
  "commit": "2fdce101196939935a002212178b9409f71a2e1f",
  "tree": "478d037f15b027f141e27ac2d129b67767388a4e",
  "parents": [
    "7f464aa63f6c01b704757d9b49f12479fcb3c279"
  ],
  "author": {
    "name": "Jonah Williams",
    "email": "jonahwilliams@google.com",
    "time": "Thu Dec 05 12:56:16 2024 -0800"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Thu Dec 05 20:56:16 2024 +0000"
  },
  "message": "[Impeller] create a 300 es variant of all GLES shaders to support UBO binding. (#56960)\n\nCreate a GLES3 \"backend\" by compiling a second set of GLES shaders to 300 es. This allows the usage of UBOs and SSBOs.",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "6123ad3f15982cecbb202286fe0d2e4aebc7219e",
      "old_mode": 33188,
      "old_path": "impeller/compiler/compiler.cc",
      "new_id": "8cef217d9bca15999e4b631044e5ccb081efc217",
      "new_mode": 33188,
      "new_path": "impeller/compiler/compiler.cc"
    },
    {
      "type": "modify",
      "old_id": "a0535a2882b046f8567bcba34fc7dac4e966c61b",
      "old_mode": 33188,
      "old_path": "impeller/compiler/impellerc_main.cc",
      "new_id": "e4b54350378f0fd00f4c25528d4b7edc43ea7aab",
      "new_mode": 33188,
      "new_path": "impeller/compiler/impellerc_main.cc"
    },
    {
      "type": "modify",
      "old_id": "23792ea6924ba8e1236328694bafe23b9c8147e8",
      "old_mode": 33188,
      "old_path": "impeller/compiler/reflector.cc",
      "new_id": "5f9ba45eb1f48f33bd0233e757d7fa54edff8036",
      "new_mode": 33188,
      "new_path": "impeller/compiler/reflector.cc"
    },
    {
      "type": "modify",
      "old_id": "b45926305f55b0f268d42fd14526e7bac1903141",
      "old_mode": 33188,
      "old_path": "impeller/compiler/runtime_stage_data.cc",
      "new_id": "c7b28a6184fc48eafe7c165288079632dc59c513",
      "new_mode": 33188,
      "new_path": "impeller/compiler/runtime_stage_data.cc"
    },
    {
      "type": "modify",
      "old_id": "31ae74170786473b26f6283829c02e6fc267cb9a",
      "old_mode": 33188,
      "old_path": "impeller/compiler/switches.cc",
      "new_id": "1dba36b211804d0083e83e1c8a1ec889c32d5af4",
      "new_mode": 33188,
      "new_path": "impeller/compiler/switches.cc"
    },
    {
      "type": "modify",
      "old_id": "2368bcd20fbec4f12644f21955cd0ed561a6e96a",
      "old_mode": 33188,
      "old_path": "impeller/compiler/types.cc",
      "new_id": "85e197b99dbe3d3be03c26a07a22f476dbd89201",
      "new_mode": 33188,
      "new_path": "impeller/compiler/types.cc"
    },
    {
      "type": "modify",
      "old_id": "81b631d49eec760e40a3be0cd81c9b4763541a5d",
      "old_mode": 33188,
      "old_path": "impeller/compiler/types.h",
      "new_id": "3878d0cef6d5c3c5790eed7b16bdd0e87daaa906",
      "new_mode": 33188,
      "new_path": "impeller/compiler/types.h"
    },
    {
      "type": "modify",
      "old_id": "1d8ca60b29efe5219de59fc4c2d25997bad6d90e",
      "old_mode": 33188,
      "old_path": "impeller/core/runtime_types.h",
      "new_id": "84eb052991ab85860a9fc48f28681490e99bd987",
      "new_mode": 33188,
      "new_path": "impeller/core/runtime_types.h"
    },
    {
      "type": "modify",
      "old_id": "491f9f24d725d94ebbc99fd3a0e519fbcc39ff37",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/buffer_bindings_gles.cc",
      "new_id": "3f10bc9b5d4ea4324198b453598ff7c16abff5d7",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/buffer_bindings_gles.cc"
    },
    {
      "type": "modify",
      "old_id": "eeaaf43fcd205bcf2df95931af16f8e3882fbc72",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/buffer_bindings_gles.h",
      "new_id": "29f032da76cf90322a470f59ebcd5f3f6a61f3be",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/buffer_bindings_gles.h"
    },
    {
      "type": "modify",
      "old_id": "ba98e78f5cbe5ab977347687bf8f54099fb3b87d",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/context_gles.cc",
      "new_id": "c0c4c4c045b3873c12e03e96656cee44fdd6778d",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/context_gles.cc"
    },
    {
      "type": "modify",
      "old_id": "1c2587cc0d276d22ca18891265506063b5a43647",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/context_gles.h",
      "new_id": "8184830054f84138fb9ee9fdff8551132fa4c006",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/context_gles.h"
    },
    {
      "type": "modify",
      "old_id": "f4caaf5af874d192dd191bf25773f13a47fd4b78",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/device_buffer_gles.cc",
      "new_id": "c477b752202ad700a5ebd693eec7f696ecbfdf3f",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/device_buffer_gles.cc"
    },
    {
      "type": "modify",
      "old_id": "a18e010dc264943eaa93b464cfbf814e112aa545",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/device_buffer_gles.h",
      "new_id": "8fe5c69425a3da01306c2cbfd857b0eb21ae82f4",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/device_buffer_gles.h"
    },
    {
      "type": "modify",
      "old_id": "3f0d518879f7b50305c6c91463a486beadc9d55b",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/proc_table_gles.cc",
      "new_id": "c4450e7b3b6732fdb4c7019718277d98fcbd7426",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/proc_table_gles.cc"
    },
    {
      "type": "modify",
      "old_id": "746d26c668cf6a1a057ef5264e340ffe021c2f8c",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/proc_table_gles.h",
      "new_id": "ccc499af9dcca7537b55405d2822c19deaead41d",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/proc_table_gles.h"
    },
    {
      "type": "modify",
      "old_id": "3c8dbbb816dac121900d2c3a3f18d7e937e62b9e",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/gles/shader_library_gles.cc",
      "new_id": "018fc50c6b321b0a3f68c8cf8b8117ef6d2b33dc",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/gles/shader_library_gles.cc"
    },
    {
      "type": "modify",
      "old_id": "15bb2fd46e015a43bd587b48394309e88aaf1e2f",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/metal/context_mtl.h",
      "new_id": "a0af10d442a73c3aa2a5a63d29c2f2982af1d5b6",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/metal/context_mtl.h"
    },
    {
      "type": "modify",
      "old_id": "0a66c82146a3117c2ae4bb1e5be4dab872126880",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/metal/context_mtl.mm",
      "new_id": "a4083bfa63eecdd993377fd21c7d9c477575ff27",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/metal/context_mtl.mm"
    },
    {
      "type": "modify",
      "old_id": "62da661cf7e849da9bfa13759d238b3346a3c0cc",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/vulkan/context_vk.cc",
      "new_id": "c72f944f48fb686fa04ac676bc3051305ced475a",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/vulkan/context_vk.cc"
    },
    {
      "type": "modify",
      "old_id": "40bddc494d44ed551e9fcc8d20166219c42b57be",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/vulkan/context_vk.h",
      "new_id": "08ed6569b00977dc52f50ba25b299457ff6088ed",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/vulkan/context_vk.h"
    },
    {
      "type": "modify",
      "old_id": "faaf748df966b74258656e049c0e8327711aabc2",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/vulkan/surface_context_vk.cc",
      "new_id": "07837626663f21c12802a83d7e6c49ac66522a08",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/vulkan/surface_context_vk.cc"
    },
    {
      "type": "modify",
      "old_id": "f439ff927af6e4c058e0be35db7fecab17a8d46d",
      "old_mode": 33188,
      "old_path": "impeller/renderer/backend/vulkan/surface_context_vk.h",
      "new_id": "488dc19f900cc5d50752393dab778ffe4abc9753",
      "new_mode": 33188,
      "new_path": "impeller/renderer/backend/vulkan/surface_context_vk.h"
    },
    {
      "type": "modify",
      "old_id": "62254504b9fa99626b37168ec9f980bb8610bd09",
      "old_mode": 33188,
      "old_path": "impeller/renderer/context.h",
      "new_id": "71bad511288d2f0d61b58d02edabc2038a6e2f13",
      "new_mode": 33188,
      "new_path": "impeller/renderer/context.h"
    },
    {
      "type": "modify",
      "old_id": "c020daacfe4d246024a3db9f194374b2ab548577",
      "old_mode": 33188,
      "old_path": "impeller/renderer/testing/mocks.h",
      "new_id": "d8eca488be5eaf0dae113bd197f25b7122daec52",
      "new_mode": 33188,
      "new_path": "impeller/renderer/testing/mocks.h"
    },
    {
      "type": "modify",
      "old_id": "bf46e805a93eb998b0ba8b73da3c484921ce563a",
      "old_mode": 33188,
      "old_path": "impeller/runtime_stage/runtime_stage.cc",
      "new_id": "634274ac214b4befe72736efa3735c9049cdf056",
      "new_mode": 33188,
      "new_path": "impeller/runtime_stage/runtime_stage.cc"
    },
    {
      "type": "modify",
      "old_id": "39c8af71cfdbc5ca23b6f709e848f2da8bad5bc4",
      "old_mode": 33188,
      "old_path": "impeller/runtime_stage/runtime_stage_types.fbs",
      "new_id": "dd9f7f5a66d7199b985d3c7b92f658cc1c788405",
      "new_mode": 33188,
      "new_path": "impeller/runtime_stage/runtime_stage_types.fbs"
    },
    {
      "type": "modify",
      "old_id": "6c2d080865ee13f946a3a8226cfb4a9a791a630a",
      "old_mode": 33188,
      "old_path": "impeller/tools/compiler.gni",
      "new_id": "180600b8ea93d9dcab7761183481b53df6ac3411",
      "new_mode": 33188,
      "new_path": "impeller/tools/compiler.gni"
    },
    {
      "type": "modify",
      "old_id": "e0bd24183dc035af8271bf108b3ce20bfefe4af6",
      "old_mode": 33188,
      "old_path": "impeller/tools/shaders.gni",
      "new_id": "140b886552de4d7729aa0d2c9e61817036374852",
      "new_mode": 33188,
      "new_path": "impeller/tools/shaders.gni"
    },
    {
      "type": "modify",
      "old_id": "903be3fedb5bda29ceff876bbc58b019d360beaa",
      "old_mode": 33188,
      "old_path": "impeller/tools/shaders_gles.gni",
      "new_id": "9839227daa00474c39ad7c1df5f8c600f615b413",
      "new_mode": 33188,
      "new_path": "impeller/tools/shaders_gles.gni"
    },
    {
      "type": "modify",
      "old_id": "68a96a15247afe1678737460b6bcf53b6c1b7a15",
      "old_mode": 33188,
      "old_path": "lib/ui/painting/fragment_program.cc",
      "new_id": "54b321609c08ecd4b346923753f04e7943d5bb95",
      "new_mode": 33188,
      "new_path": "lib/ui/painting/fragment_program.cc"
    },
    {
      "type": "modify",
      "old_id": "1e41ab5cc82e3d2165a20ee91502f9f41c18bfb0",
      "old_mode": 33188,
      "old_path": "lib/ui/painting/image_decoder_unittests.cc",
      "new_id": "968c09d3446c706f0c1215cccb0658524184f50d",
      "new_mode": 33188,
      "new_path": "lib/ui/painting/image_decoder_unittests.cc"
    },
    {
      "type": "modify",
      "old_id": "ba28d8e950514a3d3f7a7b3c99a616512907f2fb",
      "old_mode": 33188,
      "old_path": "shell/common/shell.cc",
      "new_id": "9cc5c13f3199b4dbcbfe355fc01532d8f34b5d8c",
      "new_mode": 33188,
      "new_path": "shell/common/shell.cc"
    },
    {
      "type": "modify",
      "old_id": "8c6a0c2f4788cb53f7c7836f8917e164e2d985a7",
      "old_mode": 33188,
      "old_path": "shell/common/shell_unittests.cc",
      "new_id": "a38994120cba2752b98bdb5d1fbccd23cd26f3aa",
      "new_mode": 33188,
      "new_path": "shell/common/shell_unittests.cc"
    },
    {
      "type": "modify",
      "old_id": "43979768117c65625ef0848943777196aebf8bd2",
      "old_mode": 33188,
      "old_path": "shell/platform/android/android_context_gl_impeller.cc",
      "new_id": "31ad0a555139105fb38f8e6699173dff0ecd3ef5",
      "new_mode": 33188,
      "new_path": "shell/platform/android/android_context_gl_impeller.cc"
    },
    {
      "type": "modify",
      "old_id": "5173f59d673db04fb98292672a0396e4feaac4e2",
      "old_mode": 33188,
      "old_path": "shell/platform/android/android_context_gl_unittests.cc",
      "new_id": "33416e018226465519ebfe538c1ecac902e62f91",
      "new_mode": 33188,
      "new_path": "shell/platform/android/android_context_gl_unittests.cc"
    }
  ]
}
