Open
Description
Eio needs to support Windows. It was somewhat working with the libuv backend, but the other platforms have stopped using that now (see #434).
- We need OCaml 5.1 for Simplify and fix the shadow store reservation on Win64 ocaml/ocaml#11846 (OCaml 5.0 segfaults on Windows)
The current plan is:
- Create an
eio_windows
backend based on eio_posix (Posix-based windows implementation #497). - Get
eio_main
working with Windows. Get the CI to run one of the examples. - Set up CI to run the main set of tests on Windows (Get main test-suite running on Windows #761).
- Add initial FS support (Fs implementation for windows #509).
- Finish FS support (see Fs implementation for windows #509 (comment)).
- Need to decide about absolute paths (
/C:/foo/bar
?) and converting from native paths (Improve handling of Windows paths #762). - Go through the backend and implement all the TODOs.
- Improve timer resolution (currently 1 second).
Later, we could convert the backend to use IOCP, but that's not ready yet.