diff --git a/Cargo.lock b/Cargo.lock index 8664b2004840fc63db35a929057313e7184cb493..fd11771ae5c75f5dd84add63ebd3618b88be7d37 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -8832,6 +8832,7 @@ dependencies = [ "ui", "util", "uuid", + "windows 0.58.0", "workspace", ] diff --git a/crates/repl/Cargo.toml b/crates/repl/Cargo.toml index 81eeb2ab5eb2205f6bc31c2b479bc1c0ad067bd7..001bf157d54c05693c1db4d4a2e7ba943dcede26 100644 --- a/crates/repl/Cargo.toml +++ b/crates/repl/Cargo.toml @@ -43,6 +43,9 @@ util.workspace = true uuid.workspace = true workspace.workspace = true +[target.'cfg(target_os = "windows")'.dependencies] +windows.workspace = true + [dev-dependencies] editor = { workspace = true, features = ["test-support"] } env_logger.workspace = true diff --git a/crates/repl/src/kernels.rs b/crates/repl/src/kernels.rs index 3868d41baa8e77920e6ad9986c587b6d963be906..a47641965446e492a7f470ec147cc778fbe74c89 100644 --- a/crates/repl/src/kernels.rs +++ b/crates/repl/src/kernels.rs @@ -55,6 +55,12 @@ impl KernelSpecification { cmd.envs(env); } + #[cfg(windows)] + { + use smol::process::windows::CommandExt; + cmd.creation_flags(windows::Win32::System::Threading::CREATE_NO_WINDOW.0); + } + Ok(cmd) } } @@ -395,11 +401,17 @@ pub async fn kernel_specifications(fs: Arc) -> Result