-
Notifications
You must be signed in to change notification settings - Fork 412
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
Use threaded console, adapt for Windows #7906
Conversation
Signed-off-by: nojebar <nicolas.ojeda.bar@lexifi.com>
Signed-off-by: nojebar <nicolas.ojeda.bar@lexifi.com>
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM. Please remember to run ocamlformat.
Note that you should also mention that we're switching to the threaded console again for everyone.
Finally, I still don't understand why the unthreaded console is broken. It works just fine outside of Windows.
@@ -61,7 +61,7 @@ let make (module Base : S) : (module Dune_console.Backend) = | |||
let start () = | |||
Base.start (); | |||
Dune_engine.Scheduler.spawn_thread @@ fun () -> | |||
ignore (Unix.sigprocmask SIG_UNBLOCK [ Signal.to_int Winch ] : int list); | |||
if Sys.unix then ignore (Unix.sigprocmask SIG_UNBLOCK [ Signal.to_int Winch ] : int list); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So cygwin doesn't emulate signals on windows?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I don't know, I never use Cygwin executables, but I can change the condition to not Sys.win32
if that sounds better.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I did the change.
Signed-off-by: nojebar <nicolas.ojeda.bar@lexifi.com>
Signed-off-by: nojebar <nicolas.ojeda.bar@lexifi.com>
Done.
Indeed; needs to be looked into. |
Thanks for the reminder, done. |
3.8.1 has been released, I'm removing it from the milestone. |
Argh, I missed that. Is a 3.8.2 planned? |
Yes, we'll have to do one since there are more coq fixes. |
Got it, thanks! |
Signed-off-by: Nicolás Ojeda Bär <n.oje.bar@gmail.com>
Signed-off-by: Nicolás Ojeda Bär <n.oje.bar@gmail.com>
CHANGES: - Switch back to threaded console for all systems; fix unresponsive console on Windows (ocaml/dune#7906, @nojb) - Respect `-p` / `--only-packages` for `melange.emit` artifacts (ocaml/dune#7849, @anmonteiro) - Fix scanning of Coq installed files (@ejgallego, reported by @palmskog, ocaml/dune#7895 , fixes ocaml/dune#7893) - Fix RPC buffer corruption issues due to multi threading. This issue was only reproducible with large RPC payloads (ocaml/dune#7418) - Fix printing errors from excerpts whenever character offsets span multiple lines (ocaml/dune#7950, fixes ocaml/dune#7905, @rgrinberg)
)" This reverts commit 6665a24. Probe if removing PR7906 fixes stalling described in ocaml#8043
Fixes the issue discussed in #7418 (comment).