Skip to content

Commit

Permalink
[new release] http, cohttp, cohttp-top, cohttp-server-lwt-unix, cohtt…
Browse files Browse the repository at this point in the history
…p-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)
  • Loading branch information
mseri committed Oct 27, 2022
1 parent 46f6ac7 commit 66345be
Show file tree
Hide file tree
Showing 13 changed files with 854 additions and 0 deletions.
76 changes: 76 additions & 0 deletions packages/cohttp-async/cohttp-async.6.0.0~alpha0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,76 @@
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 <anil@recoil.org>"]
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}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"--promote-install-files=false"
"@install"
"@cohttp-async/runtest" {with-test}
"@doc" {with-doc}
]
["dune" "install" "-p" name "--create-install-files" name]
]
available: opam-version >= "2.1.0" & arch != "s390x"
flags: [ avoid-version ]
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz"
checksum: [
"sha256=2ed4acd5ea309ca064731ec9f02a4b4afcec1ab000f471da68ae81355130b56e"
"sha512=e741293352d8376eaf7ccc7ba986dc8fd33cc560b8a786d4b4f8cffde5f1d78651dd5dbb944db00e57a48f25bffdde8d6d7b8c5828605ed02f295c297ef87fdd"
]
}
x-commit-hash: "ba9ca0791c3fd6242e28026feaa41fe4ac453089"
65 changes: 65 additions & 0 deletions packages/cohttp-curl-async/cohttp-curl-async.6.0.0~alpha0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
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 <anil@recoil.org>"]
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"
"cohttp-curl" {= version}
"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}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"--promote-install-files=false"
"@install"
"@cohttp-curl-async/runtest" {with-test}
"@doc" {with-doc}
]
["dune" "install" "-p" name "--create-install-files" name]
]
available: opam-version >= "2.1.0"
flags: [ avoid-version ]
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz"
checksum: [
"sha256=2ed4acd5ea309ca064731ec9f02a4b4afcec1ab000f471da68ae81355130b56e"
"sha512=e741293352d8376eaf7ccc7ba986dc8fd33cc560b8a786d4b4f8cffde5f1d78651dd5dbb944db00e57a48f25bffdde8d6d7b8c5828605ed02f295c297ef87fdd"
]
}
x-commit-hash: "ba9ca0791c3fd6242e28026feaa41fe4ac453089"
65 changes: 65 additions & 0 deletions packages/cohttp-curl-lwt/cohttp-curl-lwt.6.0.0~alpha0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
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 <anil@recoil.org>"]
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" {= version}
"stringext"
"lwt" {>= "5.3.0"}
"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}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"--promote-install-files=false"
"@install"
"@cohttp-curl-lwt/runtest" {with-test}
"@doc" {with-doc}
]
["dune" "install" "-p" name "--create-install-files" name]
]
available: opam-version >= "2.1.0"
flags: [ avoid-version ]
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz"
checksum: [
"sha256=2ed4acd5ea309ca064731ec9f02a4b4afcec1ab000f471da68ae81355130b56e"
"sha512=e741293352d8376eaf7ccc7ba986dc8fd33cc560b8a786d4b4f8cffde5f1d78651dd5dbb944db00e57a48f25bffdde8d6d7b8c5828605ed02f295c297ef87fdd"
]
}
x-commit-hash: "ba9ca0791c3fd6242e28026feaa41fe4ac453089"
54 changes: 54 additions & 0 deletions packages/cohttp-curl/cohttp-curl.6.0.0~alpha0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
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 <anil@recoil.org>"]
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}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"--promote-install-files=false"
"@install"
"@cohttp-curl/runtest" {with-test}
"@doc" {with-doc}
]
["dune" "install" "-p" name "--create-install-files" name]
]
available: opam-version >= "2.1.0"
flags: [ avoid-version ]
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz"
checksum: [
"sha256=2ed4acd5ea309ca064731ec9f02a4b4afcec1ab000f471da68ae81355130b56e"
"sha512=e741293352d8376eaf7ccc7ba986dc8fd33cc560b8a786d4b4f8cffde5f1d78651dd5dbb944db00e57a48f25bffdde8d6d7b8c5828605ed02f295c297ef87fdd"
]
}
x-commit-hash: "ba9ca0791c3fd6242e28026feaa41fe4ac453089"
58 changes: 58 additions & 0 deletions packages/cohttp-eio/cohttp-eio.6.0.0~alpha0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,58 @@
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 <anil@recoil.org>"]
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}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"--promote-install-files=false"
"@install"
"@cohttp-eio/runtest" {with-test}
"@doc" {with-doc}
]
["dune" "install" "-p" name "--create-install-files" name]
]
available: opam-version >= "2.1.0"
flags: [ avoid-version ]
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz"
checksum: [
"sha256=2ed4acd5ea309ca064731ec9f02a4b4afcec1ab000f471da68ae81355130b56e"
"sha512=e741293352d8376eaf7ccc7ba986dc8fd33cc560b8a786d4b4f8cffde5f1d78651dd5dbb944db00e57a48f25bffdde8d6d7b8c5828605ed02f295c297ef87fdd"
]
}
x-commit-hash: "ba9ca0791c3fd6242e28026feaa41fe4ac453089"
66 changes: 66 additions & 0 deletions packages/cohttp-lwt-jsoo/cohttp-lwt-jsoo.6.0.0~alpha0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,66 @@
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 <anil@recoil.org>"]
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}
]
dev-repo: "git+https://github.com/mirage/ocaml-cohttp.git"
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"--promote-install-files=false"
"@install"
"@cohttp-lwt-jsoo/runtest" {with-test}
"@doc" {with-doc}
]
["dune" "install" "-p" name "--create-install-files" name]
]
available: opam-version >= "2.1.0"
flags: [ avoid-version ]
url {
src:
"https://github.com/mirage/ocaml-cohttp/releases/download/v6.0.0_alpha0/cohttp-eio-6.0.0.alpha0.tbz"
checksum: [
"sha256=2ed4acd5ea309ca064731ec9f02a4b4afcec1ab000f471da68ae81355130b56e"
"sha512=e741293352d8376eaf7ccc7ba986dc8fd33cc560b8a786d4b4f8cffde5f1d78651dd5dbb944db00e57a48f25bffdde8d6d7b8c5828605ed02f295c297ef87fdd"
]
}
x-commit-hash: "ba9ca0791c3fd6242e28026feaa41fe4ac453089"
Loading

0 comments on commit 66345be

Please sign in to comment.