Conversation
|
(I cherry-picked your commit to the 3.4.2 branch) |
|
@nojb Worrying, I didn't manage to reproduce yet, I will look again tomorrow. Looking at OCaml unix source, the error message is wrong, |
No difference, but the failing call is
I am not using Cygwin-compiled binaries, but rather binaries compiled using the |
|
Thanks for the explanation. Here it seems the bug is reliably fixed on Cygwin. |
e904010 to
9a7e589
Compare
|
@nojb I think I have a good fix. I tested with Mingw and MSVC. (curiously, I observed differences in handle management). |
Thanks for investigating this tricky bug! I confirm that |
|
Thanks for testing. The change should be released soon. |
Backporting to the 3.4.2 branch would also be appreciated. Thanks! |
CHANGES:
Tue Feb 16 10:33:11 AM CET 2021
+ merlin binary:
- fix windows paths canonicalization (ocaml/merlin#1254)
- fix hanging on windows (ocaml/merlin#1256, ocaml/merlin#1263)
CHANGES:
Tue Feb 16 10:33:11 AM CET 2021
+ merlin binary:
- fix windows paths canonicalization (ocaml/merlin#1254)
- fix hanging on windows (ocaml/merlin#1256, ocaml/merlin#1263)
CHANGES:
Tue Feb 16 10:33:11 AM CET 2021
+ merlin binary:
- fix windows paths canonicalization (ocaml/merlin#1254)
- fix hanging on windows (ocaml/merlin#1256, ocaml/merlin#1263)
CHANGES:
Tue Feb 16 10:33:11 AM CET 2021
+ merlin binary:
- fix windows paths canonicalization (ocaml/merlin#1254)
- fix hanging on windows (ocaml/merlin#1256, ocaml/merlin#1263)
CHANGES:
Tue Feb 16 10:33:11 AM CET 2021
+ merlin binary:
- fix windows paths canonicalization (ocaml/merlin#1254)
- fix hanging on windows (ocaml/merlin#1256, ocaml/merlin#1263)
CHANGES:
Tue Feb 16 10:33:11 AM CET 2021
+ merlin binary:
- fix windows paths canonicalization (ocaml/merlin#1254)
- fix hanging on windows (ocaml/merlin#1256, ocaml/merlin#1263)
CHANGES:
Tue Feb 16 10:33:11 AM CET 2021
+ merlin binary:
- fix windows paths canonicalization (ocaml/merlin#1254)
- fix hanging on windows (ocaml/merlin#1256, ocaml/merlin#1263)
CHANGES:
Tue Feb 16 10:33:11 AM CET 2021
+ merlin binary:
- fix windows paths canonicalization (ocaml/merlin#1254)
- fix hanging on windows (ocaml/merlin#1256, ocaml/merlin#1263)
CHANGES:
Tue Apr 12 11:44:22 AM CET 2021
+ merlin binary
- external configuration reading:
+ use relative paths to communicate with Dune when possible. This solves
issues related to symlinks on Unix and improve Windows support (ocaml/merlin#1271,
fixes ocaml/merlin#1288)
+ make the `workdir` configuration value when using the
`dune ocaml-merlin` configuration provider the same as when using
`dot-merlin-reader` so that ppxes behaves in the same way as before
(ocaml/merlin#1284, fixes ocaml/dune#4479, discussion in ocaml/merlin#1292)
- destruct: make the destruct command more resilient to ill-typed
expressions and when called without nodes (ocaml/merlin#1304, fixes ocaml/merlin#1300)
- Mppx: don't restore cookies after invocation. Ppx are invoked only once
so there is no need to manage cookies. This small change should increase
performance and should not change any other behavior (ocaml/merlin#1309)
- windows:
+ system command variant: do not open a window console when
launching a ppx (ocaml/merlin#1270, fixes ocaml/merlin#714)
+ fix Emacs hanging when starting Merlin (ocaml/merlin#1263)
+ fix path canonicalization (ocaml/merlin#1254)
- fix same file documentation bug (ocaml/merlin#1265 by @ulugbekna, fixes ocaml/merlin#1261)
+ editor modes
- emacs:
+ modernization of the elisp code and conformance with coding
guidelines (ocaml/merlin#1247, ocaml/merlin#1310 by Steve Purcell )
+ use opam var where applicable (ocaml/merlin#1310)
+ fix "wrong number of argument" (ocaml/merlin#1250 by @atharvashukla, fixes ocaml/merlin#1234)
+ fix for Neovim's CursorMoved semantics (ocaml/merlin#1213 by @ddickstein)
- vim & emacs : new client-side "merlin use package" commands, restoring
previous behavior (ocaml/merlin#1272, fixes ocaml/merlin#1191)
+ test suite
- cover the document fix (ocaml/merlin#1265, ocaml/merlin#1315)
|
sorry for pinging such an old PR. can you explain the difference between the original version of this PR (e904010) using it seems like Unix.stderr calls I ask because we're doing the same thing using |
Dune helper used to cause Emacs to block under windows. This should no longer be the case.
It happened because Merlin's stderr file descriptor was inherited by Dune helper.
This is not a problem under Unix because replacing stderr causes the previous file descriptor to be closed. Under windows, the previous file handle stays open even if it is no longer stderr.
@voodoos @nojb