)]}'
{
  "commit": "bd52a78c7162e26721a383b76bac53744e5656a7",
  "tree": "edceba2bf7ffabe30898ae60e3ad17118960df93",
  "parents": [
    "bffbad5c8aab373f1f0fcb99ce551f013773305c"
  ],
  "author": {
    "name": "Jonah Williams",
    "email": "jonahwilliams@google.com",
    "time": "Sun Jul 21 18:21:15 2019 -0700"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Sun Jul 21 18:21:15 2019 -0700"
  },
  "message": "Use FlutterFeatures to configure web and desktop devices (#36465)\n\n",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "f1036743ed139423e9db68f9cbd855ef6af24b7a",
      "old_mode": 33188,
      "old_path": "dev/bots/test.dart",
      "new_id": "48be0bb022eec0ce83d564d3599829d1c8218b8b",
      "new_mode": 33188,
      "new_path": "dev/bots/test.dart"
    },
    {
      "type": "modify",
      "old_id": "e5a66593103f756a17b0b76fa59e6f50c976e4d8",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/assemble.dart",
      "new_id": "9919e658cd5e695b95eb583e8ae1c899016535d2",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/assemble.dart"
    },
    {
      "type": "modify",
      "old_id": "ef2235f5d04046ea5c8a25974049aa32a9f3c998",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/build_bundle.dart",
      "new_id": "d15cfa49a0c43e8ce248309fe0482a9ecb875c70",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/build_bundle.dart"
    },
    {
      "type": "modify",
      "old_id": "473f943de7acecd8151ac6c1a8c33f96159d35a4",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/build_fuchsia.dart",
      "new_id": "39e0a8425d2ca70fface389f57d4a36632f4cc14",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/build_fuchsia.dart"
    },
    {
      "type": "modify",
      "old_id": "4175b6db8281bcaaa8fa79ff41c43e752a9af547",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/build_linux.dart",
      "new_id": "e75e41186c154174a8c6b4b3d1b76d57b8295bbd",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/build_linux.dart"
    },
    {
      "type": "modify",
      "old_id": "e773f42ca9d9798b2d6711e602f498ad90737cd5",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/build_macos.dart",
      "new_id": "f87118651f007bff26814901bb6f9ceabb97fa00",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/build_macos.dart"
    },
    {
      "type": "modify",
      "old_id": "32cea06fdfda7c18edb0c274acf0f0f24e5dd7ee",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/build_web.dart",
      "new_id": "575d1b06d647ee10a58112d677de03fa824dd427",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/build_web.dart"
    },
    {
      "type": "modify",
      "old_id": "884d26f864a4d5e8ca7f837f651c7405732b4ecb",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/build_windows.dart",
      "new_id": "e41de03e8aa827fa78224e1f06e78b1b9348cdff",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/build_windows.dart"
    },
    {
      "type": "modify",
      "old_id": "17458ee605686495e8e4e46b889bbbae3d296dd4",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/create.dart",
      "new_id": "875beaeabf834ad61cbfbbf8451cd24647368645",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/create.dart"
    },
    {
      "type": "modify",
      "old_id": "91de004a580e0f0ee8df729345b5f12507845a8c",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/run.dart",
      "new_id": "0254e3ead066c8dc289a9c5a6a79d6830fb3b36a",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/run.dart"
    },
    {
      "type": "modify",
      "old_id": "799815e5dcd2f3bf02dd64be9da50fdf2b7bc66f",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/commands/unpack.dart",
      "new_id": "481c3264838c2cad9bdf0b8070f81851b4dcac80",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/commands/unpack.dart"
    },
    {
      "type": "modify",
      "old_id": "501e2417f233c7866bbff281001daf1d9a2e5b0b",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/desktop.dart",
      "new_id": "e62c4e779ccfdf4315521da9685466b4a7ac5e20",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/desktop.dart"
    },
    {
      "type": "modify",
      "old_id": "936bf15c7bd75360bdbdb652c927b5bb654fc43c",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/device.dart",
      "new_id": "734172f7fdaf54e9feea259af16b81f70c1625bc",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/device.dart"
    },
    {
      "type": "modify",
      "old_id": "fa4081d95184c8a92e802678fc58fa84bb54f274",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/doctor.dart",
      "new_id": "cf697c7fe118e7f2624407183daf59aec7ad4c0c",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/doctor.dart"
    },
    {
      "type": "modify",
      "old_id": "4959f72209d646d08bff3c930049afd599de7d6d",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/linux/linux_workflow.dart",
      "new_id": "e51c26be7f3a07c7a2c9e543bac4503e640da0de",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/linux/linux_workflow.dart"
    },
    {
      "type": "modify",
      "old_id": "e85e3d4054dfabc857bcb653c798f0b826da4ab8",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/macos/macos_workflow.dart",
      "new_id": "1c0391fe7c03dfa7d99d87524439d0ab02ac5e93",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/macos/macos_workflow.dart"
    },
    {
      "type": "modify",
      "old_id": "0242a62b6e44ca64683dd3d7381527e3a0b3746d",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/plugins.dart",
      "new_id": "021ec84dc311e35217ff13da751ca5390afb09bc",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/plugins.dart"
    },
    {
      "type": "modify",
      "old_id": "0a1b5b848deb06e84143aa0368e02d164340820b",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/project.dart",
      "new_id": "95b526ef908eebc06e019d1fe096281a1c76eb64",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/project.dart"
    },
    {
      "type": "modify",
      "old_id": "e9d9211b83ef95540160803d2a286423a0b08402",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/runner/flutter_command.dart",
      "new_id": "2f56364b8394bf3efb7bca939ea24a8aac4eb4dc",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/runner/flutter_command.dart"
    },
    {
      "type": "modify",
      "old_id": "ecd8f4126a5b358c505761050713974b25191694",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/web/web_device.dart",
      "new_id": "689eb721aa884a83280bae4084b8b1ee5917199b",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/web/web_device.dart"
    },
    {
      "type": "modify",
      "old_id": "925ec3d142b901849478d3c96c137319b23727fd",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/web/workflow.dart",
      "new_id": "1f388ca50a5a0d8aaeeb0bc8ac620fff6a897f3d",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/web/workflow.dart"
    },
    {
      "type": "modify",
      "old_id": "8d8e34e0feddefd5e15db7d47c6b6eeac664257b",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/windows/windows_workflow.dart",
      "new_id": "2a423bba2b04b4d7f329fe2cc77ed88318cbeba2",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/windows/windows_workflow.dart"
    },
    {
      "type": "modify",
      "old_id": "23e7a4177650e25c08f41c905313ce4024891a7b",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/commands/build_bundle_test.dart",
      "new_id": "782ac266adc5d82b006a841ce62095057ad83557",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/commands/build_bundle_test.dart"
    },
    {
      "type": "modify",
      "old_id": "638a20be20d3d82d63f93143d6f9c098a8e33adc",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/commands/build_linux_test.dart",
      "new_id": "0e1c809a6ee48fba270ee3a3e789b9bed619d713",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/commands/build_linux_test.dart"
    },
    {
      "type": "modify",
      "old_id": "ceb07b86d350b2825f2a8154af521ecb308f0374",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/commands/build_macos_test.dart",
      "new_id": "462e2d83e28233f3881657d2c42f342e98db227b",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/commands/build_macos_test.dart"
    },
    {
      "type": "modify",
      "old_id": "2adb8181f8e6344d97a40be8552eb2c7d1dac2d2",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/commands/build_web_test.dart",
      "new_id": "3046570dd508caccd05e4f8afdfc688ecf39acd5",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/commands/build_web_test.dart"
    },
    {
      "type": "modify",
      "old_id": "301fa7d42a30cf22ee398bc53d8df7ca3da85057",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/commands/build_windows_test.dart",
      "new_id": "948eae0ee291bddefdd66dc90a99ca4a34334754",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/commands/build_windows_test.dart"
    },
    {
      "type": "modify",
      "old_id": "01bbb9a5d5849a2ec8a3321ed278ad40eb61dfa8",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/commands/devices_test.dart",
      "new_id": "ee6e0950a4afa061a3d062be562031fb10f1ad73",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/commands/devices_test.dart"
    },
    {
      "type": "delete",
      "old_id": "6097ba013695f0cae3a817b381a31046f82b7d9d",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/commands/update_packages_test.dart",
      "new_id": "0000000000000000000000000000000000000000",
      "new_mode": 0,
      "new_path": "/dev/null"
    },
    {
      "type": "add",
      "old_id": "0000000000000000000000000000000000000000",
      "old_mode": 0,
      "old_path": "/dev/null",
      "new_id": "db574e6172d4560d6b30924b17b8661238ba900d",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/doctor.dart"
    },
    {
      "type": "modify",
      "old_id": "1445cff26d940a49cad0d881c23d9437025c310f",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/linux/linux_workflow_test.dart",
      "new_id": "8723c47f022a0181d3f95c6650be5db8cda8d374",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/linux/linux_workflow_test.dart"
    },
    {
      "type": "modify",
      "old_id": "b63bdde561a896c62fb3ce92836a51c2b6b53194",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/macos/macos_workflow_test.dart",
      "new_id": "9dadfe981635c43f430dcfec4918321f13be5b9c",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/macos/macos_workflow_test.dart"
    },
    {
      "type": "modify",
      "old_id": "c781e3c79de1e21ea81287f26848d5c6ced99d92",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/runner/flutter_command_test.dart",
      "new_id": "eb06c9d1925177f1c0437469fe62cc12a60a690f",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/runner/flutter_command_test.dart"
    },
    {
      "type": "modify",
      "old_id": "86a8d6b369f49988fbf5221a984eee3cf1314544",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/web/workflow_test.dart",
      "new_id": "ab11aea498bc5f902aaf9d8d6e4a2a73d531bb9a",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/web/workflow_test.dart"
    },
    {
      "type": "modify",
      "old_id": "4c9d20218990eebba1612c5ef33861e0c8a33f91",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/windows/windows_workflow_test.dart",
      "new_id": "86a566b47b41134b032c69b270d06579204c3d6c",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/windows/windows_workflow_test.dart"
    },
    {
      "type": "modify",
      "old_id": "2b8f22a010b75fce7011927c56492caf509ba64a",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/src/common.dart",
      "new_id": "3a3a4ea3ef23384bc482d7ed48ed1e586bfeffac",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/src/common.dart"
    },
    {
      "type": "modify",
      "old_id": "ac4901cedcfa300e965c0f65784447139fa07cec",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/src/testbed.dart",
      "new_id": "c0a6873d1d86f512ec8495146dcdfe613011d5fa",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/src/testbed.dart"
    }
  ]
}
