| # Copyright (c) 2012, the Dart project authors.  Please see the AUTHORS file | 
 | # for details. All rights reserved. Use of this source code is governed by a | 
 | # BSD-style license that can be found in the LICENSE file. | 
 |  | 
 | # IMPORTANT: | 
 | # Before adding or updating dependencies, please review the documentation here: | 
 | # https://github.com/dart-lang/sdk/tree/main/docs/Adding-and-Updating-Dependencies.md | 
 | # | 
 | # Packages can be rolled to the latest version with `tools/manage_deps.dart`. | 
 | # | 
 | # For example: | 
 | # | 
 | #     dart tools/manage_deps.dart bump third_party/pkg/dart_style | 
 |  | 
 | allowed_hosts = [ | 
 |   'android.googlesource.com', | 
 |   'boringssl.googlesource.com', | 
 |   'chrome-infra-packages.appspot.com', | 
 |   'chromium.googlesource.com', | 
 |   'dart.googlesource.com', | 
 |   'dart-internal.googlesource.com', | 
 |   'fuchsia.googlesource.com', | 
 |   'llvm.googlesource.com', | 
 | ] | 
 |  | 
 | vars = { | 
 |   # The dart_root is the root of our sdk checkout. This is normally | 
 |   # simply sdk, but if using special gclient specs it can be different. | 
 |   "dart_root": "sdk", | 
 |  | 
 |   # We use mirrors of all github repos to guarantee reproducibility and | 
 |   # consistency between what users see and what the bots see. | 
 |   # We need the mirrors to not have 100+ bots pulling github constantly. | 
 |   # We mirror our github repos on Dart's git servers. | 
 |   # DO NOT use this var if you don't see a mirror here: | 
 |   #   https://dart.googlesource.com/ | 
 |   "dart_git": "https://dart.googlesource.com/", | 
 |   "dart_internal_git": "https://dart-internal.googlesource.com", | 
 |   # If the repo you want to use is at github.com/dart-lang, but not at | 
 |   # dart.googlesource.com, please file an issue | 
 |   # on github and add the label 'area-infrastructure'. | 
 |   # When the repo is mirrored, you can add it to this DEPS file. | 
 |  | 
 |   # Chromium git | 
 |   "android_git": "https://android.googlesource.com", | 
 |   "chromium_git": "https://chromium.googlesource.com", | 
 |   "fuchsia_git": "https://fuchsia.googlesource.com", | 
 |   "llvm_git": "https://llvm.googlesource.com", | 
 |  | 
 |   # Checked-in SDK version. The checked-in SDK is a Dart SDK distribution | 
 |   # in a cipd package used to run Dart scripts in the build and test | 
 |   # infrastructure, which is automatically built on the release commits. | 
 |   "sdk_tag": "git_revision:f863f0b43625eb04539a34d7cc25029ba80dd522", | 
 |  | 
 |   # co19 is a cipd package automatically generated for each co19 commit. | 
 |   # Use tests/co19/update.sh to update this hash. | 
 |   "co19_rev": "6d2a3c5c20b77475cae2c6c70ff62b1d2c55672e", | 
 |  | 
 |   # The internal benchmarks to use. See go/dart-benchmarks-internal | 
 |   "benchmarks_internal_rev": "3bd6bc6d207dfb7cf687537e819863cf9a8f2470", | 
 |   "checkout_benchmarks_internal": False, | 
 |  | 
 |   # Checkout the flute benchmark only when benchmarking. | 
 |   "checkout_flute": False, | 
 |  | 
 |   # Checkout Android dependencies only on Mac and Linux. | 
 |   "download_android_deps": | 
 |     "host_os == mac or (host_os == linux and host_cpu == x64)", | 
 |  | 
 |   # Checkout extra javascript engines for testing or benchmarking. You can | 
 |   # self-service update these by following the go/dart-engprod/browsers.md | 
 |   # instructions. d8, the V8 shell, is always checked out. | 
 |   "checkout_javascript_engines": False, | 
 |   "d8_tag": "version:13.3.255", | 
 |   "jsshell_tag": "version:133.0", | 
 |   "jsc_tag": "version:287397", | 
 |  | 
 |   # https://chrome-infra-packages.appspot.com/p/fuchsia/third_party/clang | 
 |   "clang_version": "git_revision:388d7f144880dcd85ff31f06793304405a9f44b6", | 
 |  | 
 |   # https://chrome-infra-packages.appspot.com/p/gn/gn | 
 |   "gn_version": "git_revision:468c6128db7fabe32a29d4753460ef53594406fc", | 
 |  | 
 |   "reclient_version": "git_revision:c7349324c93c6e0d85bc1e00b5d7526771006ea0", | 
 |   "download_reclient": True, | 
 |  | 
 |   # Update from https://chrome-infra-packages.appspot.com/p/fuchsia/sdk/core | 
 |   "fuchsia_sdk_version": "version:26.20241211.4.1", | 
 |   "download_fuchsia_deps": False, | 
 |  | 
 |   # Ninja, runs the build based on files generated by GN. | 
 |   "ninja_tag": "version:2@1.11.1.chromium.7", | 
 |  | 
 |   # Scripts that make 'git cl format' work. | 
 |   "clang_format_scripts_rev": "bb994c6f067340c1135eb43eed84f4b33cfa7397", | 
 |  | 
 |   ### /third_party/ dependencies | 
 |  | 
 |   # Prefer to use hashes of binaryen that have been reviewed & rolled into g3. | 
 |   "binaryen_rev" : "87f9dac127b387715d8d96ac7ec8fd469d8c2dab", | 
 |   "boringssl_rev": "ee0c13ad1808379cf16b371a051ac3951f8a09c1", | 
 |   "browser-compat-data_tag": "ac8cae697014da1ff7124fba33b0b4245cc6cd1b", # v1.0.22 | 
 |   "cpu_features_rev": "936b9ab5515dead115606559502e3864958f7f6e", | 
 |   "devtools_rev": "3e5327a02693b1405359dc5322d7f0a40151b9b7", | 
 |   "icu_rev": "43953f57b037778a1b8005564afabe214834f7bd", | 
 |   "jinja2_rev": "2222b31554f03e62600cd7e383376a7c187967a1", | 
 |   "libcxx_rev": "44079a4cc04cdeffb9cfe8067bfb3c276fb2bab0", | 
 |   "libcxxabi_rev": "2ce528fb5e0f92e57c97ec3ff53b75359d33af12", | 
 |   "libprotobuf_rev": "24487dd1045c7f3d64a21f38a3f0c06cc4cf2edb", | 
 |   "markupsafe_rev": "8f45f5cfa0009d2a70589bcda0349b8cb2b72783", | 
 |   "perfetto_rev": "13ce0c9e13b0940d2476cd0cff2301708a9a2e2b", | 
 |   "ply_rev": "604b32590ffad5cbb82e4afef1d305512d06ae93", | 
 |   "protobuf_gn_rev": "ca669f79945418f6229e4fef89b666b2a88cbb10", | 
 |   "WebCore_rev": "bcb10901266c884e7b3740abc597ab95373ab55c", | 
 |   "zlib_rev": "108fa50cda23ed4a712a098d058dccbbfd248206", | 
 |  | 
 |   ### /third_party/pkg dependencies | 
 |   # 'tools/rev_sdk_deps.dart' can rev pkg dependencies to their latest; put an | 
 |   # EOL comment after a dependency to disable this and pin it at its current | 
 |   # revision. | 
 |  | 
 |   "core_rev": "7f9f597e64fa52faebd3c0a2214f61a7b081174d", | 
 |   # Note: Updates to dart_style have to be coordinated with the infrastructure | 
 |   # team so that the internal formatter `tools/sdks/dart-sdk/bin/dart format` | 
 |   # matches the version here. Please follow this process to make updates: | 
 |   # | 
 |   # * Create a commit that updates the version here to the desired version and | 
 |   #   adds any appropriate CHANGELOG text. | 
 |   # * Send that to eng-prod to review. They will update the checked-in SDK | 
 |   #   and land the review. | 
 |   # | 
 |   # For more details, see https://github.com/dart-lang/sdk/issues/30164. | 
 |   "dart_style_rev": "21de99ec0ff8ace4d946a746fb427fffd6afa535", # disable tools/rev_sdk_deps.dart | 
 |   "dartdoc_rev": "c7f11603effa88ddacabfd555993f322fca8b3fe", | 
 |   "ecosystem_rev": "b4b2a438ff40cbbdf245b2854567316c1d24a394", | 
 |   "flute_rev": "e4ea0459a7debae5e9592c85141707b01fac86c9", | 
 |   "glob_rev": "994191a107b99a1911a3ef52ca238cd9305c8d37", | 
 |   "http_rev": "c27d6c780bae0207e938f09596c2cf8d9bb4a963", | 
 |   "http_multi_server_rev": "f6a748819139b8cbf513d5fc36b10676b0cb066f", | 
 |   "intl_rev": "5d65e3808ce40e6282e40881492607df4e35669f", | 
 |   "leak_tracker_rev": "f5620600a5ce1c44f65ddaa02001e200b096e14c", # manually rolled | 
 |   "lints_rev": "e1d4794412aacd3bbb370956d44b9a10c3f892f3", | 
 |   "markdown_rev": "4d5dbc659955973902f2585c54e94d453532db70", | 
 |   "material_color_utilities_rev": "799b6ba2f3f1c28c67cc7e0b4f18e0c7d7f3c03e", | 
 |   # dart-native-interop-team@ is rolling breaking changes manually while the assets features are in experimental. | 
 |   "native_rev": "4d81ce6c5e17164ef63d8a3f5144e5def0702207", # disable tools/rev_sdk_deps.dart | 
 |   "package_config_rev": "76f2f6c245451da1fa24d7bbb00251b909e729a5", | 
 |   "pool_rev": "f85209d83cb0aa3c5612ed80de32df51ba580abd", | 
 |   "protobuf_rev": "da7279c56734cffed4deb1e3a6f93bdcefccf6b8", | 
 |   "pub_rev": "58de642dc1d07601f6eb2b4ecd94555c0210106b", # disable tools/rev_sdk_deps.dart | 
 |   "pub_semver_rev": "8e9fcb9d3f89f06022387f906da4d380688f935c", | 
 |   "shelf_rev": "2b5b683e78f5cc84e479a43297fd7b5489d7db02", | 
 |   "source_maps_rev": "198d32bbde2f5736c04dfbab306a17096fd1648b", | 
 |   "source_span_rev": "22a243eb50d926935a8a1300a49af6d2988c3ae6", | 
 |   "sse_rev": "b97dc3ad9a58a454dc5ffe5b3ec814dadc389e32", | 
 |   "stack_trace_rev": "b660cfa444d46bcceb3a0eacbd6a2a7829da11de", | 
 |   "stream_channel_rev": "71fe6dd315e7f451466da80f7af2661cd28aaaea", | 
 |   "string_scanner_rev": "77de235c061a09264cae920e52939787325c8cae", | 
 |   "sync_http_rev": "47e6b264a209d0d806cfe9cdad8b6c69ce231986", | 
 |   "tar_rev": "5a1ea943e70cdf3fa5e1102cdbb9418bd9b4b81a", | 
 |   "term_glyph_rev": "9ed8ed96fdd84cb7b72ee1be3e86010969fa95d4", | 
 |   "test_rev": "165608a34917dcfc281ba67d64a814c57ae05c4e", | 
 |   "test_descriptor_rev": "408526a84e74d7af0f9c8c3fbb49ce9178927ee0", | 
 |   "test_process_rev": "5b0349ca18fe48cd527f74ac883db2964cbdba40", | 
 |   "test_reflective_loader_rev": "faade6299d1823f0d062eb5e98f3b440ddcea7c6", | 
 |   "tools_rev": "febccb92d228e678196aa90c109c708ed7ad6ea8", | 
 |   "vector_math_rev": "bd4b574b2a457a3955d223694f1a979a0c0f38c9", | 
 |   "watcher_rev": "bc44e6f6b85972e516c44b9ae6c042b4cbd7c72b", | 
 |   "web_rev": "bdf112ec64d28285cc29c6c78274ff3a827bb79b", | 
 |   "web_socket_channel_rev": "7a2039fd7c4c656ab27850926f89103b5f188dab", | 
 |   "webdev_rev": "ab620d1a81adc57b5045a189e076b9930ae66208", | 
 |   "webdriver_rev": "d83d6a3cbaab152ff9b99b29382d1f48b5d5ba23", | 
 |   "webkit_inspection_protocol_rev": "effa75205516757795683d527c3dea9546eb0c32", | 
 |   "yaml_rev": "2a3727288a9336b6f9b7c5236657414ce1ee5d8a", | 
 |   "yaml_edit_rev": "fbdc70acc164af187772e013a2e1364cd05b88dc", | 
 |  | 
 |   # Windows deps | 
 |   "crashpad_rev": "d256de317164c0eb362bdd9cbb4d259fe6d086f3", | 
 |   "minichromium_rev": "203a01130fac64bfdcc8cab2e1798c7b2c0619bf", | 
 |   "googletest_rev": "f854f1d27488996dc8a6db3c9453f80b02585e12", | 
 |  | 
 |   # Pinned browser versions used by the testing infrastructure. These are not | 
 |   # meant to be downloaded by users for local testing. You can self-service | 
 |   # update these by following the go/dart-engprod/browsers.md instructions. | 
 |   "download_chrome": False, | 
 |   "chrome_tag": "132.0.6834.32", | 
 |   "download_firefox": False, | 
 |   "firefox_tag": "133.0.3", | 
 |  | 
 |   # Emscripten is used in dart2wasm tests. | 
 |   "download_emscripten": False, | 
 |   "emsdk_rev": "e41b8c68a248da5f18ebd03bd0420953945d52ff", | 
 |   "emsdk_ver": "3.1.3", | 
 | } | 
 |  | 
 | gclient_gn_args_file = Var("dart_root") + '/build/config/gclient_args.gni' | 
 | gclient_gn_args = [ | 
 | ] | 
 |  | 
 | deps = { | 
 |   # Stuff needed for GN build. | 
 |   Var("dart_root") + "/buildtools/clang_format/script": | 
 |     Var("chromium_git") + "/chromium/llvm-project/cfe/tools/clang-format.git" + | 
 |     "@" + Var("clang_format_scripts_rev"), | 
 |  | 
 |   Var("dart_root") + "/benchmarks-internal": { | 
 |     "url": Var("dart_internal_git") + "/benchmarks-internal.git" + | 
 |            "@" + Var("benchmarks_internal_rev"), | 
 |     "condition": "checkout_benchmarks_internal", | 
 |   }, | 
 |   Var("dart_root") + "/tools/sdks/dart-sdk": { | 
 |       "packages": [{ | 
 |           "package": "dart/dart-sdk/${{platform}}", | 
 |           "version": Var("sdk_tag"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/d8/linux/x64": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/d8/linux-amd64", | 
 |           "version": Var("d8_tag"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/d8/linux/arm64": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/d8/linux-arm64", | 
 |           "version": Var("d8_tag"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/d8/macos/x64": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/d8/mac-amd64", | 
 |           "version": Var("d8_tag"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/d8/macos/arm64": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/d8/mac-arm64", | 
 |           "version": Var("d8_tag"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/d8/windows/x64": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/d8/windows-amd64", | 
 |           "version": Var("d8_tag"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/firefox_jsshell": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/jsshell/${{platform}}", | 
 |           "version": Var("jsshell_tag"), | 
 |       }], | 
 |       "condition": "checkout_javascript_engines", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/jsc": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/jsc/${{platform}}", | 
 |           "version": Var("jsc_tag"), | 
 |       }], | 
 |       "condition": "checkout_javascript_engines and host_os == 'linux' and host_cpu == 'x64'", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/devtools": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/flutter/devtools", | 
 |           "version": "git_revision:" + Var("devtools_rev"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/tests/co19/src": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/co19", | 
 |           "version": "git_revision:" + Var("co19_rev"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/markupsafe": | 
 |       Var("chromium_git") + "/chromium/src/third_party/markupsafe.git" + | 
 |       "@" + Var("markupsafe_rev"), | 
 |   Var("dart_root") + "/third_party/babel": { | 
 |       "packages": [{ | 
 |           "package": "dart/third_party/babel", | 
 |           "version": "version:7.4.5", | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/zlib": | 
 |       Var("chromium_git") + "/chromium/src/third_party/zlib.git" + | 
 |       "@" + Var("zlib_rev"), | 
 |   Var("dart_root") + "/third_party/cpu_features/src": | 
 |       Var("chromium_git") + "/external/github.com/google/cpu_features.git" + | 
 |       "@" + Var("cpu_features_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/libcxx": | 
 |       Var("llvm_git") + "/llvm-project/libcxx" + "@" + Var("libcxx_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/libcxxabi": | 
 |       Var("llvm_git") + "/llvm-project/libcxxabi" + "@" + Var("libcxxabi_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/boringssl/src": | 
 |       "https://boringssl.googlesource.com/boringssl.git" + | 
 |       "@" + Var("boringssl_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/binaryen/src" : | 
 |       Var("chromium_git") + "/external/github.com/WebAssembly/binaryen.git" + | 
 |       "@" + Var("binaryen_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/gsutil": { | 
 |       "packages": [{ | 
 |           "package": "infra/3pp/tools/gsutil", | 
 |           "version": "version:3@5.30", | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/third_party/emsdk": | 
 |       Var("dart_git") + "external/github.com/emscripten-core/emsdk.git" + | 
 |       "@" + Var("emsdk_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/jinja2": | 
 |       Var("chromium_git") + "/chromium/src/third_party/jinja2.git" + | 
 |       "@" + Var("jinja2_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/perfetto": | 
 |       Var("android_git") + "/platform/external/perfetto" + | 
 |       "@" + Var("perfetto_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/ply": | 
 |       Var("chromium_git") + "/chromium/src/third_party/ply.git" + | 
 |       "@" + Var("ply_rev"), | 
 |  | 
 |   Var("dart_root") + "/build/secondary/third_party/protobuf": | 
 |       Var("fuchsia_git") + "/protobuf-gn" + | 
 |       "@" + Var("protobuf_gn_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/protobuf": | 
 |       Var("fuchsia_git") + "/third_party/protobuf" + | 
 |       "@" + Var("libprotobuf_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/icu": | 
 |       Var("chromium_git") + "/chromium/deps/icu.git" + | 
 |       "@" + Var("icu_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/WebCore": | 
 |       Var("dart_git") + "webcore.git" + "@" + Var("WebCore_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/mdn/browser-compat-data/src": | 
 |       Var('chromium_git') + '/external/github.com/mdn/browser-compat-data' + | 
 |       "@" + Var("browser-compat-data_tag"), | 
 |  | 
 |   Var("dart_root") + "/third_party/pkg/core": | 
 |       Var("dart_git") + "core.git" + "@" + Var("core_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/dart_style": | 
 |       Var("dart_git") + "dart_style.git" + "@" + Var("dart_style_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/dartdoc": | 
 |       Var("dart_git") + "dartdoc.git" + "@" + Var("dartdoc_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/ecosystem": | 
 |       Var("dart_git") + "ecosystem.git" + "@" + Var("ecosystem_rev"), | 
 |   Var("dart_root") + "/third_party/flute": { | 
 |     "url": Var("dart_git") + "flute.git" + "@" + Var("flute_rev"), | 
 |     "condition": "checkout_flute", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/pkg/glob": | 
 |       Var("dart_git") + "glob.git" + "@" + Var("glob_rev"), | 
 |  | 
 |   Var("dart_root") + "/third_party/pkg/http": | 
 |       Var("dart_git") + "http.git" + "@" + Var("http_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/http_multi_server": | 
 |       Var("dart_git") + "http_multi_server.git" + | 
 |       "@" + Var("http_multi_server_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/intl": | 
 |       Var("dart_git") + "intl.git" + "@" + Var("intl_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/leak_tracker": | 
 |       Var("dart_git") + "leak_tracker.git" + "@" + Var("leak_tracker_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/lints": | 
 |       Var("dart_git") + "lints.git" + "@" + Var("lints_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/markdown": | 
 |       Var("dart_git") + "markdown.git" + "@" + Var("markdown_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/material_color_utilities": { | 
 |     "url": Var("dart_git") + | 
 |            "external/github.com/material-foundation/material-color-utilities.git" + | 
 |            "@" + Var("material_color_utilities_rev"), | 
 |     "condition": "checkout_flute", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/pkg/native": | 
 |       Var("dart_git") + "native.git" + "@" + Var("native_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/package_config": | 
 |       Var("dart_git") + "package_config.git" + | 
 |       "@" + Var("package_config_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/pool": | 
 |       Var("dart_git") + "pool.git" + "@" + Var("pool_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/protobuf": | 
 |        Var("dart_git") + "protobuf.git" + "@" + Var("protobuf_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/pub_semver": | 
 |       Var("dart_git") + "pub_semver.git" + "@" + Var("pub_semver_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/pub": | 
 |       Var("dart_git") + "pub.git" + "@" + Var("pub_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/shelf": | 
 |       Var("dart_git") + "shelf.git" + "@" + Var("shelf_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/source_maps": | 
 |       Var("dart_git") + "source_maps.git" + "@" + Var("source_maps_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/source_span": | 
 |       Var("dart_git") + "source_span.git" + "@" + Var("source_span_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/sse": | 
 |       Var("dart_git") + "sse.git" + "@" + Var("sse_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/stack_trace": | 
 |       Var("dart_git") + "stack_trace.git" + "@" + Var("stack_trace_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/stream_channel": | 
 |       Var("dart_git") + "stream_channel.git" + | 
 |       "@" + Var("stream_channel_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/string_scanner": | 
 |       Var("dart_git") + "string_scanner.git" + | 
 |       "@" + Var("string_scanner_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/sync_http": | 
 |       Var("dart_git") + "sync_http.git" + "@" + Var("sync_http_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/tar": | 
 |       Var("dart_git") + "external/github.com/simolus3/tar.git" + | 
 |       "@" + Var("tar_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/term_glyph": | 
 |       Var("dart_git") + "term_glyph.git" + "@" + Var("term_glyph_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/test": | 
 |       Var("dart_git") + "test.git" + "@" + Var("test_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/test_descriptor": | 
 |       Var("dart_git") + "test_descriptor.git" + "@" + Var("test_descriptor_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/test_process": | 
 |       Var("dart_git") + "test_process.git" + "@" + Var("test_process_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/test_reflective_loader": | 
 |       Var("dart_git") + "test_reflective_loader.git" + | 
 |       "@" + Var("test_reflective_loader_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/tools": | 
 |       Var("dart_git") + "tools.git" + "@" + Var("tools_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/vector_math": | 
 |       Var("dart_git") + "external/github.com/google/vector_math.dart.git" + | 
 |       "@" + Var("vector_math_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/watcher": | 
 |       Var("dart_git") + "watcher.git" + "@" + Var("watcher_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/webdev": | 
 |       Var("dart_git") + "webdev.git" + "@" + Var("webdev_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/webdriver": | 
 |       Var("dart_git") + "external/github.com/google/webdriver.dart.git" + | 
 |       "@" + Var("webdriver_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/webkit_inspection_protocol": | 
 |       Var("dart_git") + "external/github.com/google/webkit_inspection_protocol.dart.git" + | 
 |       "@" + Var("webkit_inspection_protocol_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/web": | 
 |       Var("dart_git") + "web.git" + "@" + Var("web_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/web_socket_channel": | 
 |       Var("dart_git") + "web_socket_channel.git" + | 
 |       "@" + Var("web_socket_channel_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/yaml_edit": | 
 |       Var("dart_git") + "yaml_edit.git" + "@" + Var("yaml_edit_rev"), | 
 |   Var("dart_root") + "/third_party/pkg/yaml": | 
 |       Var("dart_git") + "yaml.git" + "@" + Var("yaml_rev"), | 
 |  | 
 |   Var("dart_root") + "/buildtools/sysroot/linux": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "fuchsia/third_party/sysroot/linux", | 
 |               "version": "git_revision:fa7a5a9710540f30ff98ae48b62f2cdf72ed2acd", | 
 |           }, | 
 |       ], | 
 |       "condition": "host_os == linux", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/buildtools/sysroot/focal": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "fuchsia/third_party/sysroot/focal", | 
 |               "version": "git_revision:fa7a5a9710540f30ff98ae48b62f2cdf72ed2acd", | 
 |           }, | 
 |       ], | 
 |       "condition": "host_os == linux", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   # Keep consistent with pkg/test_runner/lib/src/options.dart. | 
 |   Var("dart_root") + "/buildtools/linux-x64/clang": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "fuchsia/third_party/clang/linux-amd64", | 
 |               "version": Var("clang_version"), | 
 |           }, | 
 |       ], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/buildtools/mac-x64/clang": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "fuchsia/third_party/clang/mac-amd64", | 
 |               "version": Var("clang_version"), | 
 |           }, | 
 |       ], | 
 |       "condition": "host_os == mac", # On ARM64 Macs too because Goma doesn't support the host-arm64 toolchain. | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/buildtools/win-x64/clang": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "fuchsia/third_party/clang/windows-amd64", | 
 |               "version": Var("clang_version"), | 
 |           }, | 
 |       ], | 
 |       "condition": "host_os == win", # On ARM64 Windows too because Fuchsia doesn't provide the host-arm64 toolchain. | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/buildtools/linux-arm64/clang": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "fuchsia/third_party/clang/linux-arm64", | 
 |               "version": Var("clang_version"), | 
 |           }, | 
 |       ], | 
 |       "condition": "host_os == 'linux' and host_cpu == 'arm64'", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/buildtools/mac-arm64/clang": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "fuchsia/third_party/clang/mac-arm64", | 
 |               "version": Var("clang_version"), | 
 |           }, | 
 |       ], | 
 |       "condition": "host_os == 'mac' and host_cpu == 'arm64'", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + '/buildtools/reclient': { | 
 |     'packages': [ | 
 |       { | 
 |         'package': 'infra/rbe/client/${{platform}}', | 
 |         'version': Var('reclient_version'), | 
 |       } | 
 |     ], | 
 |     # Download reclient only on the platforms where it has packages available. | 
 |     # Unfortunately windows-arm64 gclient uses x64 python which lies in | 
 |     # host_cpu, so we have to use a variable to not download reclient there. | 
 |     'condition': 'download_reclient and (((host_os == "linux" or host_os == "mac" or host_os == "win") and host_cpu == "x64") or (host_os == "mac" and host_cpu == "arm64"))', | 
 |     'dep_type': 'cipd', | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/third_party/webdriver/chrome": { | 
 |     "packages": [ | 
 |       { | 
 |         "package": "dart/third_party/chromedriver/${{platform}}", | 
 |         "version": "version:" + Var("chrome_tag"), | 
 |       } | 
 |     ], | 
 |     "condition": "download_chrome", | 
 |     "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/buildtools": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "gn/gn/${{platform}}", | 
 |               "version": Var("gn_version"), | 
 |           }, | 
 |       ], | 
 |       "condition": "host_os != 'win'", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/buildtools/win": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "gn/gn/windows-amd64", | 
 |               "version": Var("gn_version"), | 
 |           }, | 
 |       ], | 
 |       "condition": "host_os == 'win'", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/buildtools/ninja": { | 
 |       "packages": [{ | 
 |           "package": "infra/3pp/tools/ninja/${{platform}}", | 
 |           "version": Var("ninja_tag"), | 
 |       }], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/third_party/android_tools/ndk": { | 
 |       "packages": [ | 
 |           { | 
 |             "package": "flutter/android/ndk/${{os}}-amd64", | 
 |             "version": "version:r27.0.10869015" | 
 |           } | 
 |       ], | 
 |       "condition": "download_android_deps", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/android_tools/sdk/platform-tools": { | 
 |       "packages": [ | 
 |           { | 
 |             "package": "flutter/android/sdk/platform-tools/linux-amd64", | 
 |             "version": "1tZc4sOxZS6FQIvT5i0wwdycmM8AO7QZY32FC9_HfR4C" | 
 |           } | 
 |       ], | 
 |       "condition": "download_android_deps", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/third_party/fuchsia/sdk/linux": { | 
 |     "packages": [ | 
 |       { | 
 |       "package": "fuchsia/sdk/core/${{platform}}", | 
 |       "version": Var("fuchsia_sdk_version"), | 
 |       } | 
 |     ], | 
 |     "condition": 'download_fuchsia_deps and host_os == "linux"', | 
 |     "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/third_party/fuchsia/test_scripts": { | 
 |     "packages": [ | 
 |       { | 
 |       "package": "chromium/fuchsia/test-scripts", | 
 |       "version": "r9Dc5VRF6sE3pJH20k2d1Yko3xSlwljH_nuw7O8vcb4C", | 
 |       } | 
 |     ], | 
 |     "condition": 'download_fuchsia_deps', | 
 |     "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/third_party/fuchsia/gn-sdk": { | 
 |     "packages": [ | 
 |       { | 
 |       "package": "chromium/fuchsia/gn-sdk", | 
 |       "version": "T6ahk2PZvX-n2RabPqFNTu_AL3tTBGgQMnfAOavwCtsC", | 
 |       } | 
 |     ], | 
 |     "condition": 'download_fuchsia_deps', | 
 |     "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   Var("dart_root") + "/pkg/front_end/test/types/benchmark_data": { | 
 |     "packages": [ | 
 |       { | 
 |         "package": "dart/cfe/benchmark_data", | 
 |         "version": "sha1sum:5b6e6dfa33b85c733cab4e042bf46378984d1544", | 
 |       } | 
 |     ], | 
 |     "dep_type": "cipd", | 
 |   }, | 
 |  | 
 |   # TODO(37531): Remove these cipd packages and build with sdk instead when | 
 |   # benchmark runner gets support for that. | 
 |   Var("dart_root") + "/benchmarks/FfiBoringssl/native/out/": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "dart/benchmarks/ffiboringssl", | 
 |               "version": "commit:a86c69888b9a416f5249aacb4690a765be064969", | 
 |           }, | 
 |       ], | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/benchmarks/FfiCall/native/out/": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "dart/benchmarks/fficall", | 
 |               "version": "ebF5aRXKDananlaN4Y8b0bbCNHT1MnkGbWqfpCpiND4C", | 
 |           }, | 
 |       ], | 
 |           "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/benchmarks/NativeCall/native/out/": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "dart/benchmarks/nativecall", | 
 |               "version": "w1JKzCIHSfDNIjqnioMUPq0moCXKwX67aUfhyrvw4E0C", | 
 |           }, | 
 |       ], | 
 |           "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/browsers/chrome": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "dart/browsers/chrome/${{platform}}", | 
 |               "version": "version:" + Var("chrome_tag"), | 
 |           }, | 
 |       ], | 
 |       "condition": "download_chrome", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 |   Var("dart_root") + "/third_party/browsers/firefox": { | 
 |       "packages": [ | 
 |           { | 
 |               "package": "dart/browsers/firefox/${{platform}}", | 
 |               "version": "version:" + Var("firefox_tag"), | 
 |           }, | 
 |       ], | 
 |       "condition": "download_firefox", | 
 |       "dep_type": "cipd", | 
 |   }, | 
 | } | 
 |  | 
 | deps_os = { | 
 |   "win": { | 
 |     Var("dart_root") + "/third_party/cygwin": | 
 |         Var("chromium_git") + "/chromium/deps/cygwin.git" + "@" + | 
 |         "c89e446b273697fadf3a10ff1007a97c0b7de6df", | 
 |     Var("dart_root") + "/third_party/crashpad/crashpad": | 
 |         Var("chromium_git") + "/crashpad/crashpad.git" + "@" + | 
 |         Var("crashpad_rev"), | 
 |     Var("dart_root") + "/third_party/mini_chromium/mini_chromium": | 
 |         Var("chromium_git") + "/chromium/mini_chromium" + "@" + | 
 |         Var("minichromium_rev"), | 
 |     Var("dart_root") + "/third_party/googletest": | 
 |         Var("fuchsia_git") + "/third_party/googletest" + "@" + | 
 |         Var("googletest_rev"), | 
 |   } | 
 | } | 
 |  | 
 | hooks = [ | 
 |   { | 
 |     # Generate the .dart_tool/package_confg.json file. | 
 |     'name': 'Generate .dart_tool/package_confg.json', | 
 |     'pattern': '.', | 
 |     'action': ['python3', 'sdk/tools/generate_package_config.py'], | 
 |   }, | 
 |   { | 
 |     # Generate the sdk/version file. | 
 |     'name': 'Generate sdk/version', | 
 |     'pattern': '.', | 
 |     'action': ['python3', 'sdk/tools/generate_sdk_version_file.py'], | 
 |   }, | 
 |   { | 
 |     'name': 'buildtools', | 
 |     'pattern': '.', | 
 |     'action': ['python3', 'sdk/tools/buildtools/update.py'], | 
 |   }, | 
 |   { | 
 |     # Update the Windows toolchain if necessary. | 
 |     'name': 'win_toolchain', | 
 |     'pattern': '.', | 
 |     'action': ['python3', 'sdk/build/vs_toolchain.py', 'update'], | 
 |     'condition': 'checkout_win' | 
 |   }, | 
 |   # Install and activate the empscripten SDK. | 
 |   { | 
 |     'name': 'install_emscripten', | 
 |     'pattern': '.', | 
 |     'action': ['python3', 'sdk/third_party/emsdk/emsdk.py', 'install', | 
 |         Var('emsdk_ver')], | 
 |     'condition': 'download_emscripten' | 
 |   }, | 
 |   { | 
 |     'name': 'activate_emscripten', | 
 |     'pattern': '.', | 
 |     'action': ['python3', 'sdk/third_party/emsdk/emsdk.py', 'activate', | 
 |         Var('emsdk_ver')], | 
 |     'condition': 'download_emscripten' | 
 |   }, | 
 |   { | 
 |     'name': 'Erase arch/ from fuchsia sdk', | 
 |     'pattern': '.', | 
 |     'action': [ | 
 |       'rm', | 
 |       '-rf', | 
 |       'sdk/third_party/fuchsia/sdk/linux/arch', | 
 |     ], | 
 |     'condition': 'download_fuchsia_deps' | 
 |   }, | 
 |   { | 
 |     'name': 'Download Fuchsia system images', | 
 |     'pattern': '.', | 
 |     'action': [ | 
 |       'python3', | 
 |       'sdk/build/fuchsia/with_envs.py', | 
 |       'sdk/third_party/fuchsia/test_scripts/update_product_bundles.py', | 
 |       'terminal.x64,terminal.qemu-arm64', | 
 |     ], | 
 |     'condition': 'download_fuchsia_deps' | 
 |   }, | 
 |   { | 
 |     'name': 'Generate Fuchsia GN build rules', | 
 |     'pattern': '.', | 
 |     'action': [ | 
 |       'python3', | 
 |       'sdk/build/fuchsia/with_envs.py', | 
 |       'sdk/third_party/fuchsia/test_scripts/gen_build_defs.py', | 
 |     ], | 
 |     'condition': 'download_fuchsia_deps' | 
 |   }, | 
 | ] |