[vpython] Update dart recipes vpython to match fleet.

Originally landed as in the old repo as:
https://chromium-review.googlesource.com/c/chromium/tools/build/+/2070845

This will make `vpython3` explicitly opt-in. Tests which need vpython3
will need to explicitly invoke it as 'vpython3'. 'python3' will no
longer be sufficient to load a vpython environment.

https://crbug.com/1051595

Change-Id: If4a9e720766869cecbe63eb703eb45421a877d71
Reviewed-on: https://dart-review.googlesource.com/c/recipes/+/137981
Reviewed-by: William Hesse <whesse@google.com>
diff --git a/recipe_modules/dart/api.py b/recipe_modules/dart/api.py
index b693dc9..1727645 100644
--- a/recipe_modules/dart/api.py
+++ b/recipe_modules/dart/api.py
@@ -188,11 +188,11 @@
       cipd_ensure_file = self.m.cipd.EnsureFile()
     cipd_ensure_file.add_package(
         'infra/tools/luci/vpython/${platform}',
-        'git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a',
+        'git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34',
         'cipd_bin_packages')
     cipd_ensure_file.add_package(
         'infra/tools/luci/vpython-native/${platform}',
-        'git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a',
+        'git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34',
         'cipd_bin_packages')
     cipd_ensure_file.add_package('infra/3pp/tools/cpython/${platform}',
                                  'version:2.7.17.chromium.24',
diff --git a/recipe_modules/dart/examples/example.expected/analyzer-linux-release.json b/recipe_modules/dart/examples/example.expected/analyzer-linux-release.json
index dd1ce27..66b5d1d 100644
--- a/recipe_modules/dart/examples/example.expected/analyzer-linux-release.json
+++ b/recipe_modules/dart/examples/example.expected/analyzer-linux-release.json
@@ -1252,7 +1252,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-nunittest-asserts-release-linux\", \"--copy-coredumps\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"test1_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-nunittest-asserts-release-linux\", \"--copy-coredumps\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-nunittest-asserts-release-linux\", \"--copy-coredumps\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"test1_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-nunittest-asserts-release-linux\", \"--copy-coredumps\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
@@ -1449,7 +1449,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"test3_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-nanalyzer-asserts-linux\", \"foo\", \"--bar\", \"--copy-coredumps\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"test3_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-nanalyzer-asserts-linux\", \"foo\", \"--bar\", \"--copy-coredumps\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
@@ -1928,7 +1928,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-nunittest-asserts-release-linux\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-nunittest-asserts-release-linux\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
diff --git a/recipe_modules/dart/examples/example.expected/basic-mac.json b/recipe_modules/dart/examples/example.expected/basic-mac.json
index a7e2e5d..19de1bb 100644
--- a/recipe_modules/dart/examples/example.expected/basic-mac.json
+++ b/recipe_modules/dart/examples/example.expected/basic-mac.json
@@ -919,7 +919,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/chrome/${platform}\", \"path\": \"browsers\", \"version\": \"version:66.0.3359.139\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-mac-chrome\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--copy-coredumps\", \"--chrome=browsers/Google Chrome.app/Contents/MacOS/Google Chrome\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"isolate_hash_123\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"test1_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/chrome/${platform}\", \"path\": \"browsers\", \"version\": \"version:66.0.3359.139\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-mac-chrome\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--copy-coredumps\", \"--chrome=browsers/Google Chrome.app/Contents/MacOS/Google Chrome\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"isolate_hash_123\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/chrome/${platform}\", \"path\": \"browsers\", \"version\": \"version:66.0.3359.139\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-mac-chrome\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--copy-coredumps\", \"--chrome=browsers/Google Chrome.app/Contents/MacOS/Google Chrome\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"isolate_hash_123\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"test1_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/chrome/${platform}\", \"path\": \"browsers\", \"version\": \"version:66.0.3359.139\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-mac-chrome\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--copy-coredumps\", \"--chrome=browsers/Google Chrome.app/Contents/MacOS/Google Chrome\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Mac\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"isolate_hash_123\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
diff --git a/recipe_modules/dart/examples/example.expected/basic.json b/recipe_modules/dart/examples/example.expected/basic.json
index 06c8849..cae48d4 100644
--- a/recipe_modules/dart/examples/example.expected/basic.json
+++ b/recipe_modules/dart/examples/example.expected/basic.json
@@ -970,7 +970,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/firefox/${platform}\", \"path\": \"browsers\", \"version\": \"version:61\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"/usr/bin/xvfb-run\", \"-a\", \"--server-args=-screen 0 1024x768x24\", \"python\", \"-u\", \"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-linux-firefox\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--copy-coredumps\", \"--firefox=browsers/firefox/firefox\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"test1_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/firefox/${platform}\", \"path\": \"browsers\", \"version\": \"version:61\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"/usr/bin/xvfb-run\", \"-a\", \"--server-args=-screen 0 1024x768x24\", \"python\", \"-u\", \"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-linux-firefox\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--copy-coredumps\", \"--firefox=browsers/firefox/firefox\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/firefox/${platform}\", \"path\": \"browsers\", \"version\": \"version:61\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"/usr/bin/xvfb-run\", \"-a\", \"--server-args=-screen 0 1024x768x24\", \"python\", \"-u\", \"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-linux-firefox\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--copy-coredumps\", \"--firefox=browsers/firefox/firefox\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"test1_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/firefox/${platform}\", \"path\": \"browsers\", \"version\": \"version:61\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"/usr/bin/xvfb-run\", \"-a\", \"--server-args=-screen 0 1024x768x24\", \"python\", \"-u\", \"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-linux-firefox\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--copy-coredumps\", \"--firefox=browsers/firefox/firefox\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
@@ -1524,7 +1524,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/firefox/${platform}\", \"path\": \"browsers\", \"version\": \"version:61\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"/usr/bin/xvfb-run\", \"-a\", \"--server-args=-screen 0 1024x768x24\", \"python\", \"-u\", \"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-linux-firefox\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--copy-coredumps\", \"--firefox=browsers/firefox/firefox\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"dart/browsers/firefox/${platform}\", \"path\": \"browsers\", \"version\": \"version:61\"}, {\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"/usr/bin/xvfb-run\", \"-a\", \"--server-args=-screen 0 1024x768x24\", \"python\", \"-u\", \"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndart2js-linux-firefox\", \"foo\", \"--bar\", \"-e co19, language_2\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--copy-coredumps\", \"--firefox=browsers/firefox/firefox\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
diff --git a/recipe_modules/dart/examples/example.expected/co19.json b/recipe_modules/dart/examples/example.expected/co19.json
index 96c9bfd..a985ac5 100644
--- a/recipe_modules/dart/examples/example.expected/co19.json
+++ b/recipe_modules/dart/examples/example.expected/co19.json
@@ -87,7 +87,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"co19_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19/src\", \"version\": \"git_revision:co19_hash\"}, {\"package_name\": \"dart/third_party/co19/legacy\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"co19/nnbd\", \"co19_2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"co19_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19/src\", \"version\": \"git_revision:co19_hash\"}, {\"package_name\": \"dart/third_party/co19/legacy\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"co19/nnbd\", \"co19_2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
@@ -235,7 +235,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"co19_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19/src\", \"version\": \"git_revision:co19_hash\"}, {\"package_name\": \"dart/third_party/co19/legacy\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"co19/nnbd\", \"co19_2\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"co19_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19/src\", \"version\": \"git_revision:co19_hash\"}, {\"package_name\": \"dart/third_party/co19/legacy\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"co19/nnbd\", \"co19_2\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
diff --git a/recipe_modules/dart/examples/example.expected/co19_2-legacy.json b/recipe_modules/dart/examples/example.expected/co19_2-legacy.json
index 6e5944f..b031134 100644
--- a/recipe_modules/dart/examples/example.expected/co19_2-legacy.json
+++ b/recipe_modules/dart/examples/example.expected/co19_2-legacy.json
@@ -83,7 +83,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"co19_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19/src\", \"version\": null}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"co19/nnbd\", \"co19_2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"co19_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19/src\", \"version\": null}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"co19/nnbd\", \"co19_2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
@@ -231,7 +231,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"co19_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19/src\", \"version\": null}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"co19/nnbd\", \"co19_2\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"co19_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19/src\", \"version\": null}, {\"package_name\": \"dart/third_party/co19\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"co19/nnbd\", \"co19_2\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--copy-coredumps\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
diff --git a/recipe_modules/dart/examples/example.expected/example-android.json b/recipe_modules/dart/examples/example.expected/example-android.json
index e75123d..377a0f4 100644
--- a/recipe_modules/dart/examples/example.expected/example-android.json
+++ b/recipe_modules/dart/examples/example.expected/example-android.json
@@ -884,7 +884,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"android_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndartkp-android-release-armsimdbc64\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Android\"}, {\"key\": \"cpu\", \"value\": \"arm64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"android_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndartkp-android-release-armsimdbc64\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Android\"}, {\"key\": \"cpu\", \"value\": \"arm64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"android_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndartkp-android-release-armsimdbc64\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Android\"}, {\"key\": \"cpu\", \"value\": \"arm64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"android_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndartkp-android-release-armsimdbc64\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Android\"}, {\"key\": \"cpu\", \"value\": \"arm64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
@@ -1203,7 +1203,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"android_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndartkp-android-release-armsimdbc64\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Android\"}, {\"key\": \"cpu\", \"value\": \"arm64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"android_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"tags\": [\"optional:true\"], \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndartkp-android-release-armsimdbc64\", \"--repeat=5\", \"--tests\", \"Flaky/Test/1\\nFlaky/Test/2\", \"--shards=1\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Android\"}, {\"key\": \"cpu\", \"value\": \"arm64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
diff --git a/recipe_modules/dart/examples/example.expected/fuzz-test.json b/recipe_modules/dart/examples/example.expected/fuzz-test.json
index 6d9880f..0e9abb4 100644
--- a/recipe_modules/dart/examples/example.expected/fuzz-test.json
+++ b/recipe_modules/dart/examples/example.expected/fuzz-test.json
@@ -884,7 +884,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"make a fuzz_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"out/ReleaseX64/dart\", \"runtime/tools/dartfuzz/dartfuzz_test.dart\", \"--isolates\", \"8\", \"--no-show-stats\", \"--time\", \"2700\", \"--shards=3\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"make a fuzz_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"out/ReleaseX64/dart\", \"runtime/tools/dartfuzz/dartfuzz_test.dart\", \"--isolates\", \"8\", \"--no-show-stats\", \"--time\", \"2700\", \"--shards=3\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"make a fuzz_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"out/ReleaseX64/dart\", \"runtime/tools/dartfuzz/dartfuzz_test.dart\", \"--isolates\", \"8\", \"--no-show-stats\", \"--time\", \"2700\", \"--shards=3\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"make a fuzz_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"out/ReleaseX64/dart\", \"runtime/tools/dartfuzz/dartfuzz_test.dart\", \"--isolates\", \"8\", \"--no-show-stats\", \"--time\", \"2700\", \"--shards=3\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Linux\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
diff --git a/recipe_modules/dart/examples/example.expected/vm-win.json b/recipe_modules/dart/examples/example.expected/vm-win.json
index e4ada1f..7049a6d 100644
--- a/recipe_modules/dart/examples/example.expected/vm-win.json
+++ b/recipe_modules/dart/examples/example.expected/vm-win.json
@@ -1289,7 +1289,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19/legacy\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"foo\", \"-ndartk-win-release-simarm_x64\", \"language_2\", \"co19_2/sel\", \"--exclude_suite=co19\", \"--copy-coredumps\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Windows\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"test1_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19/legacy\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"foo\", \"-ndartk-win-release-simarm_x64\", \"language_2\", \"co19_2/sel\", \"--exclude_suite=co19\", \"--copy-coredumps\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Windows\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"test1_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19/legacy\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"foo\", \"-ndartk-win-release-simarm_x64\", \"language_2\", \"co19_2/sel\", \"--exclude_suite=co19\", \"--copy-coredumps\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Windows\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}, {\"name\": \"test1_shard_2\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/third_party/co19/legacy\", \"path\": \"tests/co19_2/src\", \"version\": \"git_revision:co19_2_hash\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"foo\", \"-ndartk-win-release-simarm_x64\", \"language_2\", \"co19_2/sel\", \"--exclude_suite=co19\", \"--copy-coredumps\", \"--shards=2\", \"--shard=2\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Windows\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],
@@ -1506,7 +1506,7 @@
       "-server",
       "https://example.swarmingserver.appspot.com",
       "-json-input",
-      "{\"requests\": [{\"name\": \"test3_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:e317c7d2c17d4c3460ee37524dfce4e1dee4306a\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndartk-win-release-simarm_x64\", \"foo\", \"--bar\", \"--copy-coredumps\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Windows\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
+      "{\"requests\": [{\"name\": \"test3_shard_1\", \"priority\": \"25\", \"service_account\": \"\", \"task_slices\": [{\"expiration_secs\": \"3600\", \"properties\": {\"caches\": [{\"name\": \"vpython\", \"path\": \"cache/vpython\"}], \"cipd_input\": {\"packages\": [{\"package_name\": \"infra/tools/luci/vpython/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/tools/luci/vpython-native/${platform}\", \"path\": \"cipd_bin_packages\", \"version\": \"git_revision:b01b3ede35a24f76f21420f11d13f234848e5d34\"}, {\"package_name\": \"infra/3pp/tools/cpython/${platform}\", \"path\": \"cipd_bin_packages/cpython\", \"version\": \"version:2.7.17.chromium.24\"}, {\"package_name\": \"infra/3pp/tools/cpython3/${platform}\", \"path\": \"cipd_bin_packages/cpython3\", \"version\": \"version:3.8.1rc1.chromium.10\"}, {\"package_name\": \"dart/dart-sdk/${platform}\", \"path\": \"tools/sdks\", \"version\": \"\"}]}, \"command\": [\"tools/test.py\", \"--progress=status\", \"--report\", \"--time\", \"--silent-failures\", \"--write-results\", \"--write-logs\", \"--clean-exit\", \"-ndartk-win-release-simarm_x64\", \"foo\", \"--bar\", \"--copy-coredumps\", \"--shards=2\", \"--shard=1\", \"--output-directory=${ISOLATED_OUTDIR}\"], \"containment\": {\"containment_type\": \"AUTO\", \"limit_processes\": \"0\", \"limit_total_committed_memory\": \"0\", \"lower_priority\": false}, \"dimensions\": [{\"key\": \"os\", \"value\": \"Windows\"}, {\"key\": \"cpu\", \"value\": \"x86-64\"}, {\"key\": \"pool\", \"value\": \"dart.tests\"}], \"env\": [{\"key\": \"VPYTHON_VIRTUALENV_ROOT\", \"value\": \"cache/vpython\"}], \"env_prefixes\": [{\"key\": \"PATH\", \"value\": [\"cipd_bin_packages\", \"cipd_bin_packages/bin\", \"cipd_bin_packages/cpython\", \"cipd_bin_packages/cpython/bin\", \"cipd_bin_packages/cpython3\", \"cipd_bin_packages/cpython3/bin\"]}], \"execution_timeout_secs\": \"3600\", \"grace_period_secs\": \"30\", \"idempotent\": false, \"inputs_ref\": {\"isolated\": \"test_hash\", \"isolatedserver\": \"https://example.isolateserver.appspot.com\", \"namespace\": \"default-gzip\"}, \"io_timeout_secs\": \"1200\", \"outputs\": []}}]}]}",
       "-json-output",
       "/path/to/tmp/json"
     ],