diff --git a/Cargo.lock b/Cargo.lock
index 38b81fc24c..0b80bb356f 100644
--- a/Cargo.lock
+++ b/Cargo.lock
@@ -1194,6 +1194,7 @@ dependencies = [
"deno_core",
"digest 0.10.6",
"idna 0.3.0",
+ "indexmap",
"md-5",
"md4",
"once_cell",
@@ -1279,9 +1280,9 @@ dependencies = [
[[package]]
name = "deno_task_shell"
-version = "0.8.2"
+version = "0.10.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
-checksum = "532b383a071a05144c712614d62f08a2f9fad48dd62d6d457ed3884b049357da"
+checksum = "a7068bd49521a7b22dc6df8937097a7ac285ea320cbd78582b4155d31f0d5049"
dependencies = [
"anyhow",
"futures",
diff --git a/Cargo.toml b/Cargo.toml
index 57063a8691..afb994f25e 100644
--- a/Cargo.toml
+++ b/Cargo.toml
@@ -87,6 +87,7 @@ flate2 = "=1.0.24"
futures = "0.3.21"
http = "=0.2.8"
hyper = "0.14.18"
+indexmap = "1.9.2"
libc = "0.2.126"
log = "=0.4.17"
lzzzz = "1.0"
diff --git a/cli/Cargo.toml b/cli/Cargo.toml
index 3903d32f1c..6c7c8e1282 100644
--- a/cli/Cargo.toml
+++ b/cli/Cargo.toml
@@ -50,7 +50,7 @@ deno_graph = "0.44.0"
deno_lint = { version = "0.40.0", features = ["docs"] }
deno_lockfile.workspace = true
deno_runtime = { workspace = true, features = ["dont_create_runtime_snapshot", "include_js_files_for_snapshotting"] }
-deno_task_shell = "0.8.1"
+deno_task_shell = "0.10.0"
napi_sym.workspace = true
async-trait.workspace = true
@@ -75,7 +75,7 @@ fancy-regex = "=0.10.0"
flate2.workspace = true
http.workspace = true
import_map = "=0.15.0"
-indexmap = "=1.9.2"
+indexmap.workspace = true
jsonc-parser = { version = "=0.21.0", features = ["serde"] }
libc.workspace = true
log = { workspace = true, features = ["serde"] }
diff --git a/cli/args/config_file.rs b/cli/args/config_file.rs
index 1546923767..f7fd855796 100644
--- a/cli/args/config_file.rs
+++ b/cli/args/config_file.rs
@@ -18,6 +18,7 @@ use deno_core::serde_json;
use deno_core::serde_json::json;
use deno_core::serde_json::Value;
use deno_core::ModuleSpecifier;
+use indexmap::IndexMap;
use std::borrow::Cow;
use std::collections::BTreeMap;
use std::collections::HashMap;
@@ -760,9 +761,9 @@ impl ConfigFile {
pub fn to_tasks_config(
&self,
- ) -> Result