Hi,
on my journey of learning ocaml I am trying to use cohttp-eio. I just copied the example from the repository:
open Cohttp_eio
let () = Logs.set_reporter (Logs_fmt.reporter ())
and () =
(* The eio backend does not leverage domains yet, but might in the near future *)
Logs_threaded.enable ()
and () = Logs.Src.set_level Cohttp_eio.src (Some Debug)
let () =
Eio_main.run @@ fun env ->
let client = Client.make env#net in
Eio.Switch.run @@ fun sw ->
let resp, body = Client.get ~sw client (Uri.of_string "http://example.com") in
if Http.Status.compare resp.status `OK = 0 then
print_string @@ Eio.Buf_read.(parse_exn take_all) body ~max_size:max_int
else Fmt.epr "Unexpected HTTP status: %a" Http.Status.pp resp.status
But dune build
gives me:
File "bin/main.ml", line 9, characters 28-42:
9 | and () = Logs.Src.set_level Cohttp_eio.src (Some Debug)
^^^^^^^^^^^^^^
Error: Unbound value Cohttp_eio.src
If I comment out the set_level
line I get:
11 | let client = Client.make env#net in
^^^^^^^^^^^
Error: Unbound value Client.make
Had 1 error, waiting for filesystem changes...
Any Idea what is going wrong here?