ocaml-multicore / eio

Effects-based direct-style IO for multicore OCaml
Other
559 stars 72 forks source link

Outreachy: Improve Windows Support in Eio #758

Open patricoferris opened 1 month ago

patricoferris commented 1 month ago

Outreachy December 2024: Improve Windows Support in Eio

This issue is the Outreachy-specific part of #125 -- do look carefully at that issue. A warm welcome to all applicants, we are really glad to have you!

Resources to understand the issue

The first step is to have a working setup of OCaml, and in particular this should be on a Windows machine (or VM etc.). Since opam.2.2.0 this should be relatively straightforward. Follow this instructions here: https://ocaml.org/install#windows.

From there you should be able to create a swith with the OCaml compiler (probably 5.2.0) and install the dependencies of Eio and build the project.

Windows support in Eio (and OCaml in general) is not as good as MacOS/Linux, so please be patient and any help you can provide would be greatly appreciated (including documentation, opening new issues when you come across problems etc.). There are many TODOs in the project including portable filepath handling! For now, in the contribution period, we will focus on other problems and issues (see contributing below).

Where to ask for help

There are numerous places to get help for different problems. The first is Eio's dedicated matrix channel. For more generic help and questions (and also just getting to know the community) there is the discord #outreachy channel. Finally, there is the public discuss forum.

Please also use this issue (or the issue you are working on) if you would like any help too as it may benefit others!

Contributing

This project primarily consists of contributing directly to Eio. Please look for good first issues. Eio is a fairly complicated project (IO isn't simple!) so the issues tend to be more involved compared to other projects. Please provide a little evidence that you have the project setup and building on Windows before asking for an issue. Don't let that discourage you! If you are interested, comment on the issue and we can assign you. If an issue is assigned to someone, please don't comment on it asking to work on it until at least a week has passed with no updates.

Good luck! I'm excited to see where this project goes!

RichardChukwu commented 1 month ago

Hello @patricoferris thank you for this. I'm an Outreachy applicant from Nigeria and I'm excited to learning and contributing to this project. I did notice though that the outreachy discord channel is an old channel for previous interns, are we to use same channel or will another be specifically created for this project and cohort please?

Nancyenos commented 1 month ago

hello @patricoferris thank you.Im an outreachy intern hopeful.

patricoferris commented 1 month ago

I did notice though that the outreachy discord channel is an old channel for previous interns

@RichardChukwu the channel is used every round for Outreachy, so please do use that as a primary means of communication for general OCaml/Outreachy things :))

create2000 commented 1 month ago

Hello @patricoferris . My name is Anthony Onah. I am from Nigeria, and the prospect of contributing to improving windows support for EIO is exciting. Though, on the outreachy internship page here, the Discord link is not working. (It keeps showing invite invalid). The Matrix channel works fine.

Nancyenos commented 1 month ago

Hello @patricoferris . My name is Anthony Onah. I am from Nigeria, and the prospect of contributing to improving windows support for EIO is exciting. Though, on the outreachy internship page here, the Discord link is not working. (It keeps showing invite invalid). The Matrix channel works fine.

Outreachy December 2024: Improve Windows Support in Eio

This issue is the Outreachy-specific part of #125 -- do look carefully at that issue. A warm welcome to all applicants, we are really glad to have you!

Resources to understand the issue

The first step is to have a working setup of OCaml, and in particular this should be on a Windows machine (or VM etc.). Since opam.2.2.0 this should be relatively straightforward. Follow this instructions here: https://ocaml.org/install#windows.

From there you should be able to create a swith with the OCaml compiler (probably 5.2.0) and install the dependencies of Eio and build the project.

Windows support in Eio (and OCaml in general) is not as good as MacOS/Linux, so please be patient and any help you can provide would be greatly appreciated (including documentation, opening new issues when you come across problems etc.). There are many TODOs in the project including portable filepath handling! For now, in the contribution period, we will focus on other problems and issues (see contributing below).

Where to ask for help

There are numerous places to get help for different problems. The first is Eio's dedicated matrix channel. For more generic help and questions (and also just getting to know the community) there is the discord #outreachy channel. Finally, there is the public discuss forum.

Please also use this issue (or the issue you are working on) if you would like any help too as it may benefit others!

Contributing

This project primarily consists of contributing directly to Eio. Please look for good first issues. Eio is a fairly complicated project (IO isn't simple!) so the issues tend to be more involved compared to other projects. Don't let that discourage you! If you are interested, comment on the issue and we can assign you. If an issue is assigned to someone, please don't comment on it asking to work on it until at least a week has passed with no updates.

Good luck! I'm excited to see where this project goes!

hey @create2000 use the discord link on this comment.it works

patricoferris commented 1 month ago

We've recently updated the HACKING.md document with additional information about AI-generated code. Please do read the document carefully! https://github.com/ocaml-multicore/eio/blob/main/HACKING.md