Subject: Re: bug#33050: 27.0.50; [macOS] Problem with process input with process-connection-type nil

From: Thomas Fitzsimmons <[email-masked]>
Date: Sat, 27 Oct 2018 12:53:02 -0400

Eli Zaretskii <[email-masked]> writes:

>> From: Thomas Fitzsimmons <[email-masked]>
>> Cc: [email-masked],  [email-masked],  [email-masked]
>> Date: Sat, 27 Oct 2018 09:42:17 -0400
>> 
>> > I've updated the documentation, please see if the new text makes
>> > sense.
>> 
>> Yes, though I might still read that and choose a pipe for ldapsearch.
>> How about adding this sentence:
>> 
>> [...] these features.  A Lisp program should prefer a pty when
>> interacting with a subprocess that prompts the user for information
>> (e.g., a password) because that feature of the subprocess was probably
>> developed and tested assuming a pty.  However, for subprocesses used by
>> Lisp programs [...]
>
> Wouldn't this just reiterate what the text already says?
>
> 						      [...]  However, for
>   subprocesses used by Lisp programs for internal purposes (i.e., with no
>   user interaction), where significant amounts of data need to be
>   exchanged between the subprocess and the Lisp program, it is often
>   better to use a pipe, because pipes are more efficient, and because they
>   are immune to stray character injections that ptys introduce for large
>   (around 500 byte) messages. [...]
>
> This explicitly says that pipes are preferable when NO user
> interaction is done, especially when large amounts of data are to be
> exchanged with Emacs.  I don't think that asking for a password is a
> special case in this context.

Then maybe change "(i.e., with no user interaction)", which could be
talking about the Lisp program itself or the subprocess, to "(i.e., when
the subprocess does not require user interaction)".  In the case of
ldapsearch, there is user interaction, but it's handled by the Lisp
program, then passed to the subprocess.  That parenthetical part is the
part that I consider in its current form to be a little unclear.

Thomas