From 8d9042568f0d9ba37109a2c586a2097ac5a04c02 Mon Sep 17 00:00:00 2001 From: Marcello Seri Date: Mon, 24 Oct 2022 11:01:30 +0200 Subject: [PATCH 1/3] [new release] http, cohttp, cohttp-top, cohttp-server-lwt-unix, cohttp-mirage, cohttp-lwt, cohttp-lwt-unix, cohttp-lwt-jsoo, cohttp-eio, cohttp-curl, cohttp-curl-lwt, cohttp-curl-async, cohttp-bench and cohttp-async (6.0.0~alpha0) CHANGES: - cohttp-eio: ensure "Host" header is the first header in http client requests (bikallem mirage/ocaml-cohttp#939) - cohttp-eio: add TE header in client. Check TE header is server (bikallem mirage/ocaml-cohttp#941) - cohttp-eio: add User-Agent header to request from Client (bikallem mirage/ocaml-cohttp#940) - cohttp-eio: add Content-Length header to request/response (bikallem mirage/ocaml-cohttp#929) - cohttp-eio: add cohttp-eio client api - Cohttp_eio.Client (bikallem mirage/ocaml-cohttp#879) - http: add requires_content_length function for requests and responses (bikallem mirage/ocaml-cohttp#879) - cohttp-eio: use Eio.Buf_write and improve server API (talex5 mirage/ocaml-cohttp#887) - cohttp-eio: update to Eio 0.3 (talex5 mirage/ocaml-cohttp#886) - cohttp-eio: convert to Eio.Buf_read (talex5 mirage/ocaml-cohttp#882) - cohttp lwt client: Connection cache and explicit pipelining (madroach mirage/ocaml-cohttp#853) - http: add Http.Request.make and simplify Http.Response.make (bikallem mseri mirage/ocaml-cohttp#878) - http: add pretty printer functions (bikallem mirage/ocaml-cohttp#880) - New eio based client and server on top of the http library (bikallem mirage/ocaml-cohttp#857) - New curl based clients (rgrinberg mirage/ocaml-cohttp#813) + cohttp-curl-lwt for an Lwt backend + cohttp-curl-async for an Async backend - Completely new Parsing layers for servers (anuragsoni mirage/ocaml-cohttp#819) + Cohttp now uses an optimized parser for requests. + The new parser produces much less temporary buffers during read operations in servers. - Faster header comparison (gasche mirage/ocaml-cohttp#818) - Introduce http package containing common signatures and structures useful for compatibility with cohttp - and no dependencies (rgrinberg mirage/ocaml-cohttp#812) - async(server): allow reading number of active connections (anuragsoni mirage/ocaml-cohttp#809) - Various internal refactors (rgrinberg, mseri, mirage/ocaml-cohttp#802, mirage/ocaml-cohttp#812, mirage/ocaml-cohttp#820, mirage/ocaml-cohttp#800, mirage/ocaml-cohttp#799, mirage/ocaml-cohttp#797) - http (all cohttp server backends): Consider the connection header in response in addition to the request when deciding on whether to keep a connection alive (anuragsoni, mirage/ocaml-cohttp#843) + The user provided Response can contain a connection header. That header will also be considered in addition to the connection header in requests when deciding whether to use keep-alive. This allows a handler to decide to close a connection even if the client requested a keep-alive in the request. - async(server): allow creating a server without using conduit (anuragsoni mirage/ocaml-cohttp#839) + Add `Cohttp_async.Server.Expert.create` and `Cohttp_async.Server.Expert.create_with_response_action`that can be used to create a server without going through Conduit. This allows creating an async TCP server using the Tcp module from `Async_unix` and lets the user have more control over how the `Reader.t` and `Writer.t` are created. - http(header): faster `to_lines` and `to_frames` implementation (mseri mirage/ocaml-cohttp#847) - cohttp(cookies): use case-insensitive comparison to check for `set-cookies` (mseri mirage/ocaml-cohttp#858) - New lwt based server implementation: cohttp-server-lwt-unix + This new implementation does not depend on conduit and has a simpler and more flexible API - async: Adapt cohttp-curl-async to work with core_unix. - *Breaking changes* + refactor: move opam metadata to dune-project (rgrinberg mirage/ocaml-cohttp#811) + refactor: deprecate Cohttp_async.Io (rgrinberg mirage/ocaml-cohttp#807) + fix: move more internals to Private (rgrinberg mirage/ocaml-cohttp#806) + fix: deprecate transfer encoding field (rgrinberg mirage/ocaml-cohttp#805) + refactor: deprecate Cohttp_async.Body_raw (rgrinberg mirage/ocaml-cohttp#804) + fix: deprecate more aliases (rgrinberg mirage/ocaml-cohttp#803) + refactor: deprecate connection value(rgrinberg mirage/ocaml-cohttp#798) + refactor: deprecate using attributes (rgrinberg mirage/ocaml-cohttp#796) + cleanup: remove cohttp-{curl,server}-async (rgrinberg mirage/ocaml-cohttp#904) + cleanup: remove cohttp-{curl,server,proxy}-lwt (rgrinberg mirage/ocaml-cohttp#904) + fix: all parsers now follow the spec and require `\r\n` endings. Previously, the `\r` was optional. (rgrinberg, mirage/ocaml-cohttp#921) - `cohttp-lwt-jsoo`: do not instantiate `XMLHttpRequest` object on boot (mefyl mirage/ocaml-cohttp#922) --- .../cohttp-async.6.0.0~alpha0/opam | 75 +++++++++++++++++++ .../cohttp-bench.6.0.0~alpha0/opam | 60 +++++++++++++++ .../cohttp-curl-async.6.0.0~alpha0/opam | 62 +++++++++++++++ .../cohttp-curl-lwt.6.0.0~alpha0/opam | 63 ++++++++++++++++ .../cohttp-curl/cohttp-curl.6.0.0~alpha0/opam | 52 +++++++++++++ .../cohttp-eio/cohttp-eio.6.0.0~alpha0/opam | 56 ++++++++++++++ .../cohttp-lwt-jsoo.6.0.0~alpha0/opam | 64 ++++++++++++++++ .../cohttp-lwt-unix.6.0.0~alpha0/opam | 71 ++++++++++++++++++ .../cohttp-lwt/cohttp-lwt.6.0.0~alpha0/opam | 63 ++++++++++++++++ .../cohttp-mirage.6.0.0~alpha0/opam | 70 +++++++++++++++++ .../cohttp-server-lwt-unix.6.0.0~alpha0/opam | 57 ++++++++++++++ .../cohttp-top/cohttp-top.6.0.0~alpha0/opam | 55 ++++++++++++++ packages/cohttp/cohttp.6.0.0~alpha0/opam | 75 +++++++++++++++++++ packages/http/http.6.0.0~alpha0/opam | 63 ++++++++++++++++ 14 files changed, 886 insertions(+) create mode 100644 packages/cohttp-async/cohttp-async.6.0.0~alpha0/opam create mode 100644 packages/cohttp-bench/cohttp-bench.6.0.0~alpha0/opam create mode 100644 packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam create mode 100644 packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam create mode 100644 packages/cohttp-curl/cohttp-curl.6.0.0~alpha0/opam create mode 100644 packages/cohttp-eio/cohttp-eio.6.0.0~alpha0/opam create mode 100644 packages/cohttp-lwt-jsoo/cohttp-lwt-jsoo.6.0.0~alpha0/opam create mode 100644 packages/cohttp-lwt-unix/cohttp-lwt-unix.6.0.0~alpha0/opam create mode 100644 packages/cohttp-lwt/cohttp-lwt.6.0.0~alpha0/opam create mode 100644 packages/cohttp-mirage/cohttp-mirage.6.0.0~alpha0/opam create mode 100644 packages/cohttp-server-lwt-unix/cohttp-server-lwt-unix.6.0.0~alpha0/opam create mode 100644 packages/cohttp-top/cohttp-top.6.0.0~alpha0/opam create mode 100644 packages/cohttp/cohttp.6.0.0~alpha0/opam create mode 100644 packages/http/http.6.0.0~alpha0/opam diff --git a/packages/cohttp-async/cohttp-async.6.0.0~alpha0/opam b/packages/cohttp-async/cohttp-async.6.0.0~alpha0/opam new file mode 100644 index 00000000000..e80070e6a00 --- /dev/null +++ b/packages/cohttp-async/cohttp-async.6.0.0~alpha0/opam @@ -0,0 +1,75 @@ +opam-version: "2.0" +synopsis: "CoHTTP implementation for the Async concurrency library" +description: """ +An implementation of an HTTP client and server using the Async +concurrency library. See the `Cohttp_async` module for information +on how to use this. The package also installs `cohttp-curl-async` +and a `cohttp-server-async` binaries for quick uses of a HTTP(S) +client and server respectively. +""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "http" {= version} + "cohttp" {= version} + "async_kernel" {>= "v0.14.0"} + "async_unix" {>= "v0.14.0"} + "async" {>= "v0.14.0"} + "base" {>= "v0.11.0"} + "core" {with-test} + "core_unix" {>= "v0.14.0"} + "conduit-async" {>= "1.2.0"} + "magic-mime" + "mirage-crypto" {with-test} + "logs" + "fmt" {>= "0.8.2"} + "sexplib0" + "ppx_sexp_conv" {>= "v0.13.0"} + "ounit" {with-test} + "uri" {>= "2.0.0"} + "uri-sexp" + "ipaddr" + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +available: arch != "s390x" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-bench/cohttp-bench.6.0.0~alpha0/opam b/packages/cohttp-bench/cohttp-bench.6.0.0~alpha0/opam new file mode 100644 index 00000000000..6eee0bf6da0 --- /dev/null +++ b/packages/cohttp-bench/cohttp-bench.6.0.0~alpha0/opam @@ -0,0 +1,60 @@ +opam-version: "2.0" +synopsis: "Benchmarks binaries for Cohttp" +description: """ +This package contains some benchmarks for http and cohttp. +The benchmarks for the server latency will require wrk2 +(https://github.com/giltene/wrk2) to run. The latency graphs +can then be generated with HdrHistogram plotter, also available +online at https://hdrhistogram.github.io/HdrHistogram/plotFiles.html.""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "core" {>= "v0.13.0"} + "core_bench" + "http" {= version} + "cohttp" {= version} + "cohttp-lwt-unix" {= version} + "cohttp-server-lwt-unix" {= version} + "cohttp-async" {= version} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam b/packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam new file mode 100644 index 00000000000..f0bb2da7ae3 --- /dev/null +++ b/packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam @@ -0,0 +1,62 @@ +opam-version: "2.0" +synopsis: "Cohttp client using Curl & Async as the backend" +description: """ +An HTTP client that relies on Curl + Async for the backend. Does not require +conduit for SSL.""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocurl" + "http" {= version} + "stringext" + "core" + "core_unix" {>= "v0.14.0"} + "async_kernel" + "async_unix" + "cohttp-async" {with-test} + "uri" {with-test & >= "4.2.0"} + "fmt" {with-test} + "ounit" {with-test} + "alcotest" {with-test} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam b/packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam new file mode 100644 index 00000000000..2b3b1b35242 --- /dev/null +++ b/packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam @@ -0,0 +1,63 @@ +opam-version: "2.0" +synopsis: "Cohttp client using Curl & Lwt as the backend" +description: """ +An HTTP client that relies on Curl + Lwt for the backend. Does not require +conduit for SSL.""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "ocurl" + "http" {= version} + "cohttp-curl" + "stringext" + "lwt" + "uri" {with-test & >= "4.2.0"} + "alcotest" {with-test} + "cohttp-lwt-unix" {with-test} + "cohttp" {with-test} + "cohttp-lwt" {with-test} + "conduit-lwt" {with-test} + "ounit" {with-test} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-curl/cohttp-curl.6.0.0~alpha0/opam b/packages/cohttp-curl/cohttp-curl.6.0.0~alpha0/opam new file mode 100644 index 00000000000..6c1650fa4fb --- /dev/null +++ b/packages/cohttp-curl/cohttp-curl.6.0.0~alpha0/opam @@ -0,0 +1,52 @@ +opam-version: "2.0" +synopsis: "Shared code between the individual cohttp-curl clients" +description: "Use cohttp-curl-lwt or cohttp-curl-async" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "ocurl" + "http" {= version} + "stringext" + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-eio/cohttp-eio.6.0.0~alpha0/opam b/packages/cohttp-eio/cohttp-eio.6.0.0~alpha0/opam new file mode 100644 index 00000000000..3fcb285e388 --- /dev/null +++ b/packages/cohttp-eio/cohttp-eio.6.0.0~alpha0/opam @@ -0,0 +1,56 @@ +opam-version: "2.0" +synopsis: "CoHTTP implementation with eio backend" +description: + "A CoHTTP server and client implementation based on `eio` library. `cohttp-eio`features a multicore capable HTTP 1.1 server. The library promotes and is built with direct style of coding as opposed to a monadic." +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "base-domains" + "eio" {>= "0.6"} + "eio_main" {with-test} + "mdx" {with-test} + "uri" {with-test} + "fmt" + "http" {= version} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-lwt-jsoo/cohttp-lwt-jsoo.6.0.0~alpha0/opam b/packages/cohttp-lwt-jsoo/cohttp-lwt-jsoo.6.0.0~alpha0/opam new file mode 100644 index 00000000000..9807e027a4c --- /dev/null +++ b/packages/cohttp-lwt-jsoo/cohttp-lwt-jsoo.6.0.0~alpha0/opam @@ -0,0 +1,64 @@ +opam-version: "2.0" +synopsis: "CoHTTP implementation for the Js_of_ocaml JavaScript compiler" +description: """ +An implementation of an HTTP client for JavaScript, but using the +CoHTTP types. This lets you build HTTP clients that can compile +natively (using one of the other Cohttp backends such as `cohttp-lwt-unix`) +and also to native JavaScript via js_of_ocaml. +""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "http" {= version} + "cohttp" {= version} + "cohttp-lwt" {= version} + "logs" + "lwt" {>= "3.0.0"} + "lwt_ppx" {with-test} + "conf-npm" {with-test} + "js_of_ocaml" {>= "3.3.0"} + "js_of_ocaml-ppx" {>= "3.3.0"} + "js_of_ocaml-lwt" {>= "3.5.0"} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-lwt-unix/cohttp-lwt-unix.6.0.0~alpha0/opam b/packages/cohttp-lwt-unix/cohttp-lwt-unix.6.0.0~alpha0/opam new file mode 100644 index 00000000000..9f16aa0a0aa --- /dev/null +++ b/packages/cohttp-lwt-unix/cohttp-lwt-unix.6.0.0~alpha0/opam @@ -0,0 +1,71 @@ +opam-version: "2.0" +synopsis: "CoHTTP implementation for Unix and Windows using Lwt" +description: """ +An implementation of an HTTP client and server using the Lwt +concurrency library. See the `Cohttp_lwt_unix` module for information +on how to use this. The package also installs `cohttp-curl-lwt` +and a `cohttp-server-lwt` binaries for quick uses of a HTTP(S) +client and server respectively. + +Although the name implies that this only works under Unix, it +should also be fine under Windows too. +""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "http" {= version} + "cohttp" {= version} + "cohttp-lwt" {= version} + "cmdliner" {>= "1.1.0"} + "lwt" {>= "3.0.0"} + "conduit-lwt" {>= "5.0.0"} + "conduit-lwt-unix" {>= "5.0.0"} + "fmt" {>= "0.8.2"} + "base-unix" + "ppx_sexp_conv" {>= "v0.13.0"} + "magic-mime" + "logs" + "ounit" {with-test} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-lwt/cohttp-lwt.6.0.0~alpha0/opam b/packages/cohttp-lwt/cohttp-lwt.6.0.0~alpha0/opam new file mode 100644 index 00000000000..d69673d65ad --- /dev/null +++ b/packages/cohttp-lwt/cohttp-lwt.6.0.0~alpha0/opam @@ -0,0 +1,63 @@ +opam-version: "2.0" +synopsis: "CoHTTP implementation using the Lwt concurrency library" +description: """ +This is a portable implementation of HTTP that uses the Lwt concurrency library +to multiplex IO. It implements as much of the logic in an OS-independent way +as possible, so that more specialised modules can be tailored for different +targets. For example, you can install `cohttp-lwt-unix` or `cohttp-lwt-jsoo` +for a Unix or JavaScript backend, or `cohttp-mirage` for the MirageOS unikernel +version of the library. All of these implementations share the same IO logic +from this module.""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "http" {= version} + "cohttp" {= version} + "lwt" {>= "2.5.0"} + "sexplib0" + "ppx_sexp_conv" {>= "v0.13.0"} + "logs" + "uri" {>= "2.0.0"} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-mirage/cohttp-mirage.6.0.0~alpha0/opam b/packages/cohttp-mirage/cohttp-mirage.6.0.0~alpha0/opam new file mode 100644 index 00000000000..10ce5cfe2bc --- /dev/null +++ b/packages/cohttp-mirage/cohttp-mirage.6.0.0~alpha0/opam @@ -0,0 +1,70 @@ +opam-version: "2.0" +synopsis: "CoHTTP implementation for the MirageOS unikernel" +description: """ +This HTTP implementation uses the Cohttp portable implementaiton +along with the Lwt threading library in order to provide a +`Cohttp_mirage` functor that can be used in MirageOS unikernels +to build very small and efficient HTTP clients and servers +without having a hard dependency on an underlying operating +system. + +Please see for a self-hosted explanation +and instructions on how to use this library.""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "mirage-flow" {>= "2.0.0"} + "mirage-channel" {>= "4.0.0"} + "conduit" {>= "2.0.2"} + "conduit-mirage" {>= "2.3.0"} + "mirage-kv" {>= "3.0.0"} + "lwt" {>= "2.4.3"} + "cohttp-lwt" {= version} + "fmt" {>= "0.8.7"} + "astring" + "magic-mime" + "ppx_sexp_conv" {>= "v0.13.0"} + "cohttp" {= version} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-server-lwt-unix/cohttp-server-lwt-unix.6.0.0~alpha0/opam b/packages/cohttp-server-lwt-unix/cohttp-server-lwt-unix.6.0.0~alpha0/opam new file mode 100644 index 00000000000..e1072a8f8b4 --- /dev/null +++ b/packages/cohttp-server-lwt-unix/cohttp-server-lwt-unix.6.0.0~alpha0/opam @@ -0,0 +1,57 @@ +opam-version: "2.0" +synopsis: "Lightweight Cohttp + Lwt based HTTP server" +description: """ +This server implementation is faster than cohttp-lwt-unix and is independent of +conduit. +""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "http" {= version} + "conduit-lwt-unix" {with-test} + "cohttp-lwt-unix" {with-test & = version} + "cohttp-lwt" {with-test & = version} + "lwt" + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp-top/cohttp-top.6.0.0~alpha0/opam b/packages/cohttp-top/cohttp-top.6.0.0~alpha0/opam new file mode 100644 index 00000000000..df8f0d0a35f --- /dev/null +++ b/packages/cohttp-top/cohttp-top.6.0.0~alpha0/opam @@ -0,0 +1,55 @@ +opam-version: "2.0" +synopsis: "CoHTTP toplevel pretty printers for HTTP types" +description: """ +This library installs toplevel prettyprinters for CoHTTP +types such as the `Request`, `Response` and `Types` modules. +Once this library has been loaded, you can directly see the +values of those types in toplevels such as `utop` or `ocaml`. +""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "cohttp" {= version} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/cohttp/cohttp.6.0.0~alpha0/opam b/packages/cohttp/cohttp.6.0.0~alpha0/opam new file mode 100644 index 00000000000..03190cdf321 --- /dev/null +++ b/packages/cohttp/cohttp.6.0.0~alpha0/opam @@ -0,0 +1,75 @@ +opam-version: "2.0" +synopsis: "An OCaml library for HTTP clients and servers" +description: """ +Cohttp is an OCaml library for creating HTTP daemons. It has a portable +HTTP parser, and implementations using various asynchronous programming +libraries. + +See the cohttp-async, cohttp-lwt, cohttp-lwt-unix, cohttp-lwt-jsoo and +cohttp-mirage libraries for concrete implementations for particular +targets. + +You can implement other targets using the parser very easily. Look at the `IO` +signature in `lib/s.mli` and implement that in the desired backend. + +You can activate some runtime debugging by setting `COHTTP_DEBUG` to any +value, and all requests and responses will be written to stderr. Further +debugging of the connection layer can be obtained by setting `CONDUIT_DEBUG` +to any value. +""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "http" {= version} + "ocaml" {>= "4.08"} + "re" {>= "1.9.0"} + "uri" {>= "2.0.0"} + "uri-sexp" + "sexplib0" + "ppx_sexp_conv" {>= "v0.13.0"} + "stringext" + "base64" {>= "3.1.0"} + "fmt" {with-test} + "alcotest" {with-test} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" diff --git a/packages/http/http.6.0.0~alpha0/opam b/packages/http/http.6.0.0~alpha0/opam new file mode 100644 index 00000000000..36d60373b55 --- /dev/null +++ b/packages/http/http.6.0.0~alpha0/opam @@ -0,0 +1,63 @@ +opam-version: "2.0" +synopsis: "Type definitions of HTTP essentials" +description: """ +This package contains essential type definitions used in Cohttp. It is designed +to have no dependencies and make it easy for other packages to easily +interoperate with Cohttp.""" +maintainer: ["Anil Madhavapeddy "] +authors: [ + "Anil Madhavapeddy" + "Stefano Zacchiroli" + "David Sheets" + "Thomas Gazagnaire" + "David Scott" + "Rudi Grinberg" + "Andy Ray" + "Anurag Soni" +] +license: "ISC" +homepage: "https://github.com/mirage/ocaml-cohttp" +doc: "https://mirage.github.io/ocaml-cohttp/" +bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" +depends: [ + "dune" {>= "2.9"} + "ocaml" {>= "4.08"} + "ppx_expect" {with-test} + "alcotest" {with-test} + "base_quickcheck" {with-test} + "ppx_assert" {with-test} + "ppx_sexp_conv" {with-test} + "ppx_compare" {with-test} + "ppx_here" {with-test} + "core" {with-test & >= "v0.13.0"} + "core_bench" {with-test} + "crowbar" {with-test & >= "0.2"} + "sexplib0" {with-test} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" +url { + src: + "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" + checksum: [ + "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" + "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" + ] +} +x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" From e97b16d233443438a64ada7f844ebe1229394ec0 Mon Sep 17 00:00:00 2001 From: Marcello Seri Date: Mon, 24 Oct 2022 11:04:46 +0200 Subject: [PATCH 2/3] benchmarks should not be published --- .../cohttp-bench.6.0.0~alpha0/opam | 60 ------------------- 1 file changed, 60 deletions(-) delete mode 100644 packages/cohttp-bench/cohttp-bench.6.0.0~alpha0/opam diff --git a/packages/cohttp-bench/cohttp-bench.6.0.0~alpha0/opam b/packages/cohttp-bench/cohttp-bench.6.0.0~alpha0/opam deleted file mode 100644 index 6eee0bf6da0..00000000000 --- a/packages/cohttp-bench/cohttp-bench.6.0.0~alpha0/opam +++ /dev/null @@ -1,60 +0,0 @@ -opam-version: "2.0" -synopsis: "Benchmarks binaries for Cohttp" -description: """ -This package contains some benchmarks for http and cohttp. -The benchmarks for the server latency will require wrk2 -(https://github.com/giltene/wrk2) to run. The latency graphs -can then be generated with HdrHistogram plotter, also available -online at https://hdrhistogram.github.io/HdrHistogram/plotFiles.html.""" -maintainer: ["Anil Madhavapeddy "] -authors: [ - "Anil Madhavapeddy" - "Stefano Zacchiroli" - "David Sheets" - "Thomas Gazagnaire" - "David Scott" - "Rudi Grinberg" - "Andy Ray" - "Anurag Soni" -] -license: "ISC" -homepage: "https://github.com/mirage/ocaml-cohttp" -doc: "https://mirage.github.io/ocaml-cohttp/" -bug-reports: "https://github.com/mirage/ocaml-cohttp/issues" -depends: [ - "dune" {>= "2.9"} - "core" {>= "v0.13.0"} - "core_bench" - "http" {= version} - "cohttp" {= version} - "cohttp-lwt-unix" {= version} - "cohttp-server-lwt-unix" {= version} - "cohttp-async" {= version} - "odoc" {with-doc} -] -build: [ - ["dune" "subst"] {dev} - [ - "dune" - "build" - "-p" - name - "-j" - jobs - "--promote-install-files=false" - "@install" - "@runtest" {with-test} - "@doc" {with-doc} - ] - ["dune" "install" "-p" name "--create-install-files" name] -] -dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git" -url { - src: - "https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz" - checksum: [ - "sha256=48226f19e0a6067694968eee390b85a6a4761bfd3dcecd511567ef7310a04529" - "sha512=1befe2ddf0b406b621f833bee95a4338071e27eca0b79c6853604758b422041f09f61a31b38984c3259ac93d46e524f6a1877e059382ef225b95567cfadaa239" - ] -} -x-commit-hash: "8ecb23a436504e78da38e369307be73f0f4b8863" From d6224dd03bdf4d5cb9cef5541e2e5eae77dd997d Mon Sep 17 00:00:00 2001 From: Marcello Seri Date: Mon, 24 Oct 2022 11:09:56 +0200 Subject: [PATCH 3/3] cohttp-curl-*: update dependencies --- packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam | 1 + packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam | 2 +- 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam b/packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam index f0bb2da7ae3..868177b738e 100644 --- a/packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam +++ b/packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam @@ -23,6 +23,7 @@ depends: [ "ocurl" "http" {= version} "stringext" + "cohttp-curl" {= version} "core" "core_unix" {>= "v0.14.0"} "async_kernel" diff --git a/packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam b/packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam index 2b3b1b35242..62dfba37e38 100644 --- a/packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam +++ b/packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam @@ -23,7 +23,7 @@ depends: [ "ocaml" {>= "4.08"} "ocurl" "http" {= version} - "cohttp-curl" + "cohttp-curl" {= version} "stringext" "lwt" "uri" {with-test & >= "4.2.0"}