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: Jim Porter <jporterbugs <at> gmail.com>
To: 65795 <at> debbugs.gnu.org
Subject: bug#65795: 30.0.50; [PATCH] Keep track of all processes in Eshell pipelines
Date: Wed, 6 Sep 2023 21:26:19 -0700
[Message part 1 (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)]

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

Previous Next


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