Skip to content

Commit 50ac610

Browse files
attempt at getting passing tests
1 parent 354ef22 commit 50ac610

File tree

2 files changed

+29
-7
lines changed

2 files changed

+29
-7
lines changed

crates/turborepo-lib/src/run/watch.rs

+17-4
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,12 @@ impl WatchClient {
218218

219219
if let Some(changed_packages) = some_changed_packages {
220220
// Clean up currently running tasks
221-
if let Some(RunHandle { stopper, run_task, persistent_exit }) = run_handle.take() {
221+
if let Some(RunHandle {
222+
stopper,
223+
run_task,
224+
persistent_exit,
225+
}) = run_handle.take()
226+
{
222227
// Shut down the tasks for the run
223228
stopper.stop().await;
224229
// Run should exit shortly after we stop all child tasks, wait for it to
@@ -288,7 +293,10 @@ impl WatchClient {
288293
if let Some(sender) = &self.ui_sender {
289294
sender.stop().await;
290295
}
291-
if let Some(RunHandle { stopper, run_task, .. }) = self.persistent_tasks_handle.take() {
296+
if let Some(RunHandle {
297+
stopper, run_task, ..
298+
}) = self.persistent_tasks_handle.take()
299+
{
292300
// Shut down the tasks for the run
293301
stopper.stop().await;
294302
// Run should exit shortly after we stop all child tasks, wait for it to finish
@@ -350,7 +358,7 @@ impl WatchClient {
350358
Ok(RunHandle {
351359
stopper: run.stopper(),
352360
run_task: tokio::spawn(async move { run.run(ui_sender, true).await }),
353-
persistent_exit: None
361+
persistent_exit: None,
354362
})
355363
}
356364
ChangedPackages::All => {
@@ -377,7 +385,12 @@ impl WatchClient {
377385
self.watched_packages = self.run.get_relevant_packages();
378386

379387
// Clean up currently running persistent tasks
380-
if let Some(RunHandle { stopper, run_task, persistent_exit }) = self.persistent_tasks_handle.take() {
388+
if let Some(RunHandle {
389+
stopper,
390+
run_task,
391+
persistent_exit,
392+
}) = self.persistent_tasks_handle.take()
393+
{
381394
// Shut down the tasks for the run
382395
stopper.stop().await;
383396
// Run should exit shortly after we stop all child tasks, wait for it to finish

turborepo-tests/integration/tests/watch/persistent-exit.t

+12-3
Original file line numberDiff line numberDiff line change
@@ -6,9 +6,18 @@ Turbo should exit after dev script fails
66
\xe2\x80\xa2 Packages in scope: web (esc)
77
\xe2\x80\xa2 Running dev in 1 packages (esc)
88
\xe2\x80\xa2 Remote caching disabled (esc)
9-
\xe2\x80\xa2 Packages in scope: web (esc)
10-
\xe2\x80\xa2 Running dev in 1 packages (esc)
11-
\xe2\x80\xa2 Remote caching disabled (esc)
9+
web:dev: cache bypass, force executing bfb830bdb7d49cb8
10+
web:dev:
11+
web:dev: > dev
12+
web:dev: > echo server crashed && exit 1
13+
web:dev:
14+
web:dev: server crashed
15+
web:dev: npm ERR! Lifecycle script `dev` failed with error:
16+
web:dev: npm ERR! Error: command failed
17+
web:dev: npm ERR! in workspace: web
18+
web:dev: npm ERR! at location: .* (re)
19+
web:dev: ERROR: command finished with error: command .*npm(?:\.cmd)? run dev exited \(1\) (re)
20+
web#dev: command .*npm(?:\.cmd)? run dev exited \(1\) (re)
1221
web:dev: cache bypass, force executing bfb830bdb7d49cb8
1322
web:dev:
1423
web:dev: > dev

0 commit comments

Comments
 (0)