On 18/11/2023 17:43, Ihor Radchenko wrote:
I still see it as a bug - what Org mode does to run the shell blocks is not what users expect. _By default_, we _should_ produce more expected behavior.
A shell without unexpected behavior is neither POSIX nor a descendant shell like BASH
https://mywiki.wooledge.org/BashPitfalls Behavior if interactive and non-interactive shells is not the same anyway.
I cannot find any clear motivation behind using `process-file' + INFILE in the git logs. I assume that it was used simply because it is easier compared to trying to create and run temporary script file on remote hosts.
From my point of view it is rather natural to use `process-file' since this function is available out of the box. I suspect some subtle issues may appear even if script file is forced.
On the other hand ob-shell already has a (bit buggy) implementation relying on script files. It is used when :stdin or :cmdline is specified.