-
-
Notifications
You must be signed in to change notification settings - Fork 5.5k
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
julia REPL doesn't start in 9term #9063
Comments
|
If you are building Julia yourself, could you build a debug version of Julia so we can get line numbers? You can do so via |
I set
This is off master now, 24cc711 There is one other thread running, which I presume isn't relevant yet but include for completeness:
|
The stack trace seemed to reveal an extremely generic i/o loop, but I managed to figure out what is going on through other means: It happens when julia is exec'd by a process which has blocked strace supports this hypothesis - everything stops shortly after julia forks & execs Execing any process with For julia (or perhaps libuv? not sure what is running tput), it may be worth explicitly unblocking the signals relied upon. Here is a wrapper that reproduces the issue in any terminal:
Save to It looks like julia uses pthreads, I think the correct call in this situation is |
What distribution are you on? I do remember some patches to Julia's fork of libuv a few months ago that involved execvp, I think. |
does it work if you unblock all signals in |
Sorry, dropped the ball! I can confirm that calling |
@vtjnash did you have some local unpushed work on this that you're intending to be stable and tested enough for backporting before 0.3.4? This is the kind of thing I'd usually like to have evaluated by people on master for at least several days before backporting. |
no. all this needs however is to add a call to |
Is that completely harmless? Should someone just do that on master? |
yes (we're replacing all of the signal handlers anyways, might as well turn them on). and yes. |
Looks like it was even earlier than the readline change. On the Unix side of the history from before the Windows port, it was done in C in On the Windows branch side of the history it was added as a Julia So now we have the implementations but never use them anywhere. Looks like it's been missing for 2 years purely by accident. |
We may want to add a test for this to make sure it doesn't come back. @sqweek it sounds like latest master should work again. |
(cherry picked from commit ab50bf8) Conflicts: src/init.c
backported in b209dc8 |
Heya,
I tried to run julia (0.3.2) within 9term from p9p (https://github.com/9fans/plan9port), but the REPL doesn't start. Hangs in:
(which doesn't look like it makes sense, v0.3.2:base/task.jl only has 342 lines...)
9term is not a typical TTY - it doesn't support character addressing or colours or any escape codes. So I run with TERM=dumb by default, which is where I see the hang.
Ironically if I set TERM=xterm then the REPL runs fine, it just fills the terminal with escape sequences ;)
Seems to be something to do with epoll/libuv, but I don't know enough about that to reproduce myself.
The text was updated successfully, but these errors were encountered: