{"action":"opened","issue":{"url":"https://api.github.com/repos/esy/esy/issues/633","repository_url":"https://api.github.com/repos/esy/esy","labels_url":"https://api.github.com/repos/esy/esy/issues/633/labels{/name}","comments_url":"https://api.github.com/repos/esy/esy/issues/633/comments","events_url":"https://api.github.com/repos/esy/esy/issues/633/events","html_url":"https://github.com/esy/esy/issues/633","id":380775619,"node_id":"MDU6SXNzdWUzODA3NzU2MTk=","number":633,"title":"Support ocaml prebuilt binaries","user":{"login":"bryphe","id":13532591,"node_id":"MDQ6VXNlcjEzNTMyNTkx","avatar_url":"https://avatars1.githubusercontent.com/u/13532591?v=4","gravatar_id":"","url":"https://api.github.com/users/bryphe","html_url":"https://github.com/bryphe","followers_url":"https://api.github.com/users/bryphe/followers","following_url":"https://api.github.com/users/bryphe/following{/other_user}","gists_url":"https://api.github.com/users/bryphe/gists{/gist_id}","starred_url":"https://api.github.com/users/bryphe/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/bryphe/subscriptions","organizations_url":"https://api.github.com/users/bryphe/orgs","repos_url":"https://api.github.com/users/bryphe/repos","events_url":"https://api.github.com/users/bryphe/events{/privacy}","received_events_url":"https://api.github.com/users/bryphe/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":null,"assignees":[],"milestone":null,"comments":0,"created_at":"2018-11-14T16:18:56Z","updated_at":"2018-11-14T16:18:56Z","closed_at":null,"author_association":"COLLABORATOR","body":"It would be great to be able to support _prebuilt_ binaries for the OCaml compiler - especially on Windows, where the OCaml compiler takes a significant amount of time to build. This is one of the hurdles in the first-time-build-flow - it would be a huge improvement in our first-time experience if building projects like `hello-reason` or `hello-ocaml` had the compiler prebuilt.\r\n\r\nWe have an issue tracking the actual creation of the `ocaml-prebuilt` packages here: <https://github.com/esy-ocaml/ocaml/issues/11>\r\n\r\nHowever, we also need some faculty in `esy` to handle this. There are some assumptions made about the form of the `ocaml` package - specifically, that it is named `ocaml`. And we use that package + version in the solver to reason about some of the other dependencies.\r\n\r\nFor example, I believe this is one place we make that assumption:\r\nhttps://github.com/esy/esy/blob/4b7480746a589b662cf11123ef7a06e69cee5f86/esyi/Sandbox.ml#L182\r\n\r\nWe'd need to also recognize the `ocaml-prebuilt` name as a way to get the version (I've reserved the package name here:  https://www.npmjs.com/package/ocaml-prebuilt), and extend this logic to look for either `ocaml` or `ocaml-prebuilt`."}}
{"actor":{"display_login":"bryphe"}}