-
Notifications
You must be signed in to change notification settings - Fork 22
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Type Providers which output to stdout can hang the Atom mode #245
Comments
If the emacs mode messes this up as well, it should be idris fault. Can you test this? |
This was actually the motivation for having the Emacs mode talk over a
socket, and then display stdout and stderr in a buffer.
…On Mon, May 18, 2020, 08:34 Markus Klink ***@***.***> wrote:
If the emacs mode messes this up as well, it should be idris fault. Can
you test this?
—
You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
<#245 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAA4FAVHHAIBBMBVIQYDHVLRSFIQFANCNFSM4NDDO3NQ>
.
|
@david-christiansen How does the protocol work? I start an idris process as usually and it spits out a port number on stdout, to which I connect with a socket. And the communication via the socket is then using the standard ide protocol whereas the process might still print to stdout/stderr? |
That's exactly right. If the type provider is calling C functions then
there's no easy way to keep its fingers out of stdout. So IIRC I put the
Idris process buffer into a mode where it's nice for the user to interact,
and then run the protocol over the socket.
…On Tue, May 19, 2020, 00:18 Markus Klink ***@***.***> wrote:
@david-christiansen <https://github.com/david-christiansen> How does the
protocol work? I start an idris process as usually and it spits out a port
number, to which I connect with a socket. And the communication via the
socket is then using the standard ide protocol whereas the process might
still print to stdout/stderr?
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#245 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AAA4FAXQMBUOKKNXBKOPOU3RSIXFVANCNFSM4NDDO3NQ>
.
|
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
If a type provider outputs stuff to stdout (during type checking), this output is then inserted into the ide-mode stdout stream which the Atom mode is reading. This messes up the parsing of the ide-mode output, presumable since then message length are no longer correct. Not sure if its possible to fix it here in the Atom mode, or if it needs to get fixed in Idris.
The text was updated successfully, but these errors were encountered: