From 57f1e4bcbd586423cd5e20fa027d2291928397cd Mon Sep 17 00:00:00 2001 From: Peter Ye <46109467+yaxollum@users.noreply.github.com> Date: Thu, 19 May 2022 23:15:03 -0400 Subject: [PATCH] Fix `bg` command behaviour (#4810) --- news/fix-broken-bg.rst | 23 +++++++++++++++++++++++ xonsh/jobs.py | 6 ++++-- 2 files changed, 27 insertions(+), 2 deletions(-) create mode 100644 news/fix-broken-bg.rst diff --git a/news/fix-broken-bg.rst b/news/fix-broken-bg.rst new file mode 100644 index 000000000..7209e42ae --- /dev/null +++ b/news/fix-broken-bg.rst @@ -0,0 +1,23 @@ +**Added:** + +* + +**Changed:** + +* + +**Deprecated:** + +* + +**Removed:** + +* + +**Fixed:** + +* `bg` now properly resumes jobs in the background + +**Security:** + +* diff --git a/xonsh/jobs.py b/xonsh/jobs.py index 8c52d8a3d..34bf0ea05 100644 --- a/xonsh/jobs.py +++ b/xonsh/jobs.py @@ -383,7 +383,7 @@ def jobs(args, stdin=None, stdout=sys.stdout, stderr=None): return None, None -def resume_job(args, wording): +def resume_job(args, wording: tp.Literal["fg", "bg"]): """ used by fg and bg to resume a job either in the foreground or in the background. """ @@ -419,7 +419,9 @@ def resume_job(args, wording): if XSH.env.get("XONSH_INTERACTIVE"): print_one_job(tid) pipeline = job["pipeline"] - pipeline.resume(job) + pipeline.resume( + job, tee_output=(wording == "fg") + ) # do not tee output for background jobs @unthreadable