ocaml / ocaml

The core OCaml system: compilers, runtime system, base libraries
https://ocaml.org
Other
5.19k stars 1.06k forks source link

Clarify `ocamldebug` availability #13087

Closed MisterDA closed 4 weeks ago

MisterDA commented 1 month ago

Quoting a hacker when asked if there was a platform where ocamldebug was unsupported:

Hah, no - there used to be a requirement for having sockets support The Win32 comment I think dates from before Sylvain implemented Unix.select fully - and I think at the same time did the necessary work to disable the fork-y parts of ocamldebug

No change entry needed.

tmcgilchrist commented 1 month ago

Will this be supported on all the Windows ports? Have you confirmed that it will work with https://github.com/hackwaly/ocamlearlybird? I don't have the hardware available to test it myself.

dustanddreams commented 1 month ago

Or maybe write "...is available only on systems providing BSD sockets" (i.e. drop "Unix")

nojb commented 1 month ago

The bytecode debugger has been supported on MSVC Windows for more than 15 years, modulo the "replay" facility (going back on time) which is based on fork. (There is a note to this effect in README.win32.adoc.)

(Support was added in 776ae225a0cc5fa44b9279f81d45e9fd3dfa3cca)

MisterDA commented 1 month ago

Changed to:

The debugger is available on systems that provide BSD sockets, including Windows. On Windows, the "replay" functions are not enabled.

eutro commented 1 month ago

For what it's worth, README.win32.adoc does claim that the replay debugger works on the Cygwin version, which does sound correct since it emulates fork, though it may be incredibly slow since it doesn't use COW.

MisterDA commented 1 month ago

For what it's worth, README.win32.adoc does claim that the replay debugger works on the Cygwin version, which does sound correct since it emulates fork, though it may be incredibly slow since it doesn't use COW.

Well noted, now the text mentions only the native Windows ports. I've piggy-backed a couple of typo fixes.

shindere commented 3 weeks ago

Sorry for the late response!

Antonin Décimo (2024/04/10 07:37 -0700):

Changed to:

The debugger is available on systems that provide BSD sockets, including Windows. On Windows, the "replay" functions are not enabled.

re:replay, shoulnd't we say available rather than enabled, which, to me, suggests that the feature could be enabled, whereas this is not the case as I understand it?