GNU bug report logs -
#56025
29.0.50; em-extpipe-test-2 times out on EMBA and Cygwin
Previous Next
Reported by: Ken Brown <kbrown <at> cornell.edu>
Date: Thu, 16 Jun 2022 18:36:02 UTC
Severity: normal
Found in version 29.0.50
Fixed in version 29.1
Done: Lars Ingebrigtsen <larsi <at> gnus.org>
Bug is archived. No further changes may be made.
Full log
View this message in rfc822 format
On 6/18/2022 10:52 AM, Ken Brown wrote:
> No, I'm seeing the same results on Emacs 28. On both Emacs 28 and Emacs
> 29, rev is apparently not seeing EOF unless echo outputs a newline, so
> rev keeps waiting for input.
Ah ha! Thanks for debugging this. The minimal fix then would be to
change the command in em-extpipe-test-2 to either of these:
echo -N "bar" | rev *>temp
*echo "bar" | rev *>temp
One last[1] question: if you ran "echo -n bar | rev" in Cygwin Bash,
does it hang there too? Maybe this is just a Cygwin limitation, or maybe
Eshell is doing something wrong with its built-in pipelines in this
situation.
> [Side note: It took me a while to sort this out because (a) Eshell's
> echo does not output a newline by default, in contrast to Bash's builtin
> echo; (b) in Eshell in Emacs 28, you use '-n' to add a newline, while in
> Bash '-n' suppresses the newline; and (c) in Eshell in Emacs 29, you use
> '-N' to add a newline.]
This is one of the parts of Eshell that's always bothered me a bit.
Eshell's echo is different enough from other echo implementations that
it's easy to get tripped up. There's some further discussion of this in
bug#12689 as well. I'm hesitant to change Eshell's echo too much, since
it could break user scripts, but it would be nice if we could find a
reasonably-compatible way of making it work more like /bin/echo.
[1] Well, probably last.
This bug report was last modified 2 years and 350 days ago.
Previous Next
GNU bug tracking system
Copyright (C) 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson.