)]}'
{
  "commit": "bb8f4f362b4e14732f5f51bf930a679fdfa59edc",
  "tree": "ef4b3798086c40671f2611e0b53347875f9063fb",
  "parents": [
    "40135be7cc7038ad20a3dc35877ca237f175f6b9"
  ],
  "author": {
    "name": "Faheem Abbas",
    "email": "faheemabbas766@gmail.com",
    "time": "Wed Jun 03 03:29:37 2026 +0500"
  },
  "committer": {
    "name": "GitHub",
    "email": "noreply@github.com",
    "time": "Tue Jun 02 22:29:37 2026 +0000"
  },
  "message": "Allow selecting multi-digit device options (#186184)\n\nAllows the interactive `flutter run` target-device prompt to accept\nmulti-digit device numbers when 10 or more devices are available.\n\nPreviously, the prompt used single-character input, so pressing `1`\nimmediately selected device `[1]` and prevented selecting devices like\n`[10]` or `[11]`.\n\nFor 1-9 devices, the existing single-character behavior is preserved.\nFor 10+ devices, the prompt switches to line input, allowing selections\nlike `10` and `11` to be entered.\n\nFixes #186182\n\n## Tests\n\n```console\n./bin/flutter test packages/flutter_tools/test/general.shard/runner/target_devices_test.dart\n```\n\n## Pre-launch Checklist\n\n- [x] I read the [Contributor Guide] and followed the process outlined\nthere for submitting PRs.\n- [x] I read the [AI contribution guidelines] and understand my\nresponsibilities, or I am not using AI tools.\n- [x] I read the [Tree Hygiene] wiki page, which explains my\nresponsibilities.\n- [x] I read and followed the [Flutter Style Guide], including [Features\nwe expect every widget to implement].\n- [x] I signed the [CLA].\n- [x] I listed at least one issue that this PR fixes in the description\nabove.\n- [x] I updated/added relevant documentation (doc comments with `///`),\nor this change does not require documentation updates.\n- [x] I added new tests to check the change I am making.\n- [x] I followed the [breaking change policy] and added [Data Driven\nFixes] where supported, or this change is not a breaking change.\n- [x] All existing and new tests are passing.\n\n---------\n\nCo-authored-by: Ben Konyi \u003cbkonyi@google.com\u003e",
  "tree_diff": [
    {
      "type": "modify",
      "old_id": "8b6ff0a7958c64febbefcb3a8ffbc6bf2031feec",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/base/terminal.dart",
      "new_id": "244e951df9aa09681e658abb76912a563a536522",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/base/terminal.dart"
    },
    {
      "type": "modify",
      "old_id": "b08ccc1732b84094f7bc9385ed87731220679d89",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/lib/src/runner/target_devices.dart",
      "new_id": "1f49b8e93637f05f6f252518c09aa2793e00189e",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/lib/src/runner/target_devices.dart"
    },
    {
      "type": "modify",
      "old_id": "6a8583f8ce5abf5a406a1348ffa85637b2c572e5",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/commands.shard/hermetic/custom_devices_test.dart",
      "new_id": "d7638cc9d15851870b0eb44802cce37d25933165",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/commands.shard/hermetic/custom_devices_test.dart"
    },
    {
      "type": "modify",
      "old_id": "c3d5bd0339037c89e13a5e496c80710ed74ab00b",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/base/terminal_test.dart",
      "new_id": "66c562e733823bc4c17a975e5691971f0edf2e9d",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/base/terminal_test.dart"
    },
    {
      "type": "modify",
      "old_id": "07534e16ff9dc2e58bdccfc5252876941b78805f",
      "old_mode": 33188,
      "old_path": "packages/flutter_tools/test/general.shard/runner/target_devices_test.dart",
      "new_id": "003795c6576d7afe9b5b15fe9e90f6921721e914",
      "new_mode": 33188,
      "new_path": "packages/flutter_tools/test/general.shard/runner/target_devices_test.dart"
    }
  ]
}
