From 7ca33eece21875f0424e865006afa27ae8c0c00f Mon Sep 17 00:00:00 2001 From: Anthony Shew Date: Sun, 9 Nov 2025 22:35:47 -0700 Subject: [PATCH 1/3] ci: fix leaky test --- crates/turborepo-lib/src/daemon/connector.rs | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/crates/turborepo-lib/src/daemon/connector.rs b/crates/turborepo-lib/src/daemon/connector.rs index bf9e377af1579..0919d81e3d1da 100644 --- a/crates/turborepo-lib/src/daemon/connector.rs +++ b/crates/turborepo-lib/src/daemon/connector.rs @@ -15,7 +15,7 @@ use tonic::transport::Endpoint; use tracing::debug; use turbopath::AbsoluteSystemPath; -use super::{proto::turbod_client::TurbodClient, DaemonClient, Paths}; +use super::{DaemonClient, Paths, proto::turbod_client::TurbodClient}; use crate::daemon::DaemonError; #[derive(Error, Debug)] @@ -128,7 +128,7 @@ impl DaemonConnector { return { debug!("connected in {}µs", time.elapsed().as_micros()); Ok(client.with_connect_settings(self)) - } + }; } Err(DaemonError::VersionMismatch(_)) if self.can_kill_server => { self.kill_live_server(client, pid).await? @@ -425,7 +425,7 @@ mod test { use tokio::{ select, - sync::{oneshot::Sender, Mutex}, + sync::{Mutex, oneshot::Sender}, }; use tokio_stream::wrappers::ReceiverStream; use tonic::{Request, Response, Status}; @@ -524,6 +524,7 @@ mod test { .stderr(Stdio::null()) .arg("-e") .arg("setInterval(() => {}, 1000)") + .kill_on_drop(true) .spawn() .unwrap(); From ce243c979e6954436c19b3c5171165ca384da0b4 Mon Sep 17 00:00:00 2001 From: Anthony Shew Date: Sun, 9 Nov 2025 22:37:19 -0700 Subject: [PATCH 2/3] fmt --- crates/turborepo-lib/src/daemon/connector.rs | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/crates/turborepo-lib/src/daemon/connector.rs b/crates/turborepo-lib/src/daemon/connector.rs index 0919d81e3d1da..a418cd41d61f2 100644 --- a/crates/turborepo-lib/src/daemon/connector.rs +++ b/crates/turborepo-lib/src/daemon/connector.rs @@ -15,7 +15,7 @@ use tonic::transport::Endpoint; use tracing::debug; use turbopath::AbsoluteSystemPath; -use super::{DaemonClient, Paths, proto::turbod_client::TurbodClient}; +use super::{proto::turbod_client::TurbodClient, DaemonClient, Paths}; use crate::daemon::DaemonError; #[derive(Error, Debug)] @@ -425,7 +425,7 @@ mod test { use tokio::{ select, - sync::{Mutex, oneshot::Sender}, + sync::{oneshot::Sender, Mutex}, }; use tokio_stream::wrappers::ReceiverStream; use tonic::{Request, Response, Status}; From 6e82f19973fb432ce719e9c5f099f8d2fdb8613c Mon Sep 17 00:00:00 2001 From: Vercel Date: Mon, 10 Nov 2025 14:21:54 +0000 Subject: [PATCH 3/3] Fix: The `handles_kill_dead_server` test spawns a process without `.kill_on_drop(true)`\, while the similar `handles_kill_dead_server_wrong_process` test includes this setting to fix the process leak\. Both tests should be fixed consistently\. --- crates/turborepo-lib/src/daemon/connector.rs | 1 + 1 file changed, 1 insertion(+) diff --git a/crates/turborepo-lib/src/daemon/connector.rs b/crates/turborepo-lib/src/daemon/connector.rs index a418cd41d61f2..88a19843287d3 100644 --- a/crates/turborepo-lib/src/daemon/connector.rs +++ b/crates/turborepo-lib/src/daemon/connector.rs @@ -562,6 +562,7 @@ mod test { .stderr(Stdio::null()) .arg("-e") .arg("setInterval(() => {}, 1000)") + .kill_on_drop(true) .spawn() .unwrap();