GNU bug report logs - #65795
30.0.50; [PATCH] Keep track of all processes in Eshell pipelines

Previous Next

Package: emacs;

Reported by: Jim Porter <jporterbugs <at> gmail.com>

Date: Thu, 7 Sep 2023 04:27:01 UTC

Severity: wishlist

Tags: patch

Found in version 30.0.50

Fixed in version 30.1

Done: Jim Porter <jporterbugs <at> gmail.com>

Bug is archived. No further changes may be made.

Full log


View this message in rfc822 format

From: help-debbugs <at> gnu.org (GNU bug Tracking System)
To: Jim Porter <jporterbugs <at> gmail.com>
Cc: tracker <at> debbugs.gnu.org
Subject: bug#65795: closed (30.0.50; [PATCH] Keep track of all processes
 in Eshell pipelines)
Date: Sun, 10 Sep 2023 17:44:02 +0000
[Message part 1 (text/plain, inline)]
Your message dated Sun, 10 Sep 2023 10:42:58 -0700
with message-id <491abf7d-2c3f-f0e9-07c5-bcfbf39d0141 <at> gmail.com>
and subject line Re: bug#65795: 30.0.50; [PATCH] Keep track of all processes in Eshell pipelines
has caused the debbugs.gnu.org bug report #65795,
regarding 30.0.50; [PATCH] Keep track of all processes in Eshell pipelines
to be marked as done.

(If you believe you have received this mail in error, please contact
help-debbugs <at> gnu.org.)


-- 
65795: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=65795
GNU Bug Tracking System
Contact help-debbugs <at> gnu.org with problems
[Message part 2 (message/rfc822, inline)]
From: Jim Porter <jporterbugs <at> gmail.com>
To: bug-gnu-emacs <at> gnu.org
Subject: 30.0.50; [PATCH] Keep track of all processes in Eshell pipelines
Date: Wed, 6 Sep 2023 21:26:19 -0700
[Message part 3 (text/plain, inline)]
Currently, Eshell only keeps track of the head and tail processes in a 
pipeline. That works for most things, but it can cause issues with 
Eshell thinking the pipeline is done too early. If the tail process ends 
first, we assume the entire pipeline is done, when that's not always true.

These patches change things so that Eshell now keeps track of every 
process in a pipeline and waits for them to be done before proceeding on 
with the rest of Eshell's evaluation. That's less error-prone, and 
matches the behavior of other shells.

(This also helps prepare the codebase for the addition of a new feature 
for Eshell: job control. I have a mostly-working version of that 
locally, so once this merges and I've finished the job control patches, 
I'll post them to a new bug.)
[0001-Move-common-Eshell-pipeline-code-to-a-separate-funct.patch (text/plain, attachment)]
[0002-Make-Eshell-synchronous-pipeline-code-more-similar-t.patch (text/plain, attachment)]
[0003-Collect-all-processes-in-an-Eshell-pipeline-not-just.patch (text/plain, attachment)]
[0004-Move-some-Eshell-tests-to-more-topical-files.patch (text/plain, attachment)]
[0005-Wait-for-all-processes-in-a-pipeline-before-resuming.patch (text/plain, attachment)]
[Message part 9 (message/rfc822, inline)]
From: Jim Porter <jporterbugs <at> gmail.com>
To: 65795-done <at> debbugs.gnu.org
Subject: Re: bug#65795: 30.0.50; [PATCH] Keep track of all processes in Eshell
 pipelines
Date: Sun, 10 Sep 2023 10:42:58 -0700
Version: 30.1

On 9/6/2023 9:26 PM, Jim Porter wrote:
> These patches change things so that Eshell now keeps track of every 
> process in a pipeline and waits for them to be done before proceeding on 
> with the rest of Eshell's evaluation. That's less error-prone, and 
> matches the behavior of other shells.

Merged to master as 2ec41c174f9. Closing this now.


This bug report was last modified 1 year and 258 days ago.

Previous Next


GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997,2003 nCipher Corporation Ltd, 1994-97 Ian Jackson.