this repo has no description

[new release] hpack, h2, h2-mirage, h2-lwt, h2-lwt-unix and h2-async (0.9.0)

CHANGES:

- h2: Fix tests on 32-bit platforms
([anmonteiro/ocaml-h2#152](https://github.com/anmonteiro/ocaml-h2/pull/152))
- h2-mirage: adapt to Conduit v4 and remove `H2_mirage.Server_with_conduit`
([anmonteiro/ocaml-h2#154](https://github.com/anmonteiro/ocaml-h2/pull/154))
- h2: fix memory leaks related to trailer headers in the server and client
implementations ([anmonteiro/ocaml-h2#159](https://github.com/anmonteiro/ocaml-h2/pull/159)
(thanks [@quernd](https://github.com/quernd)!),
[anmonteiro/ocaml-h2#160](https://github.com/anmonteiro/ocaml-h2/pull/160))
- h2: allow configuring `flush_headers_immediately` on the client and default
to `false`. This means that h2 will wait for the first request body bytes to
be scheduled and batch `HEADERS` and `DATA` frames when sending requests
([anmonteiro/ocaml-h2#163](https://github.com/anmonteiro/ocaml-h2/pull/163),
[anmonteiro/ocaml-h2#164](https://github.com/anmonteiro/ocaml-h2/pull/164))
- h2: Split `Body.t` into `Body.Writer.t` and `Body.Reader.t`
([anmonteiro/ocaml-h2#165](https://github.com/anmonteiro/ocaml-h2/pull/165))
- h2: OCaml 5.00 compatibility -- add `seeded_hash` to `scheduler.ml`
([anmonteiro/ocaml-h2#168](https://github.com/anmonteiro/ocaml-h2/pull/168))
- h2: Use a tail-recursive version of `Angstrom.skip_many`. Fixes a memory leak
in long-running connections e.g. gRPC
([anmonteiro/ocaml-h2#172](https://github.com/anmonteiro/ocaml-h2/pull/172))
- h2-async: Add an OCaml-TLS client to `h2-async`
([anmonteiro/ocaml-h2#174](https://github.com/anmonteiro/ocaml-h2/pull/174))
- h2: Fix a bug that caused different requests to share the same headers buffer
under concurrency ([anmonteiro/ocaml-h2#182](https://github.com/anmonteiro/ocaml-h2/pull/182))

Changed files
+221
packages
h2
h2.0.9.0
h2-async
h2-async.0.9.0
h2-lwt
h2-lwt.0.9.0
h2-lwt-unix
h2-lwt-unix.0.9.0
h2-mirage
h2-mirage.0.9.0
hpack
hpack.0.9.0
+34
packages/h2-async/h2-async.0.9.0/opam
···
+
opam-version: "2.0"
+
maintainer: "Antonio Monteiro <anmonteiro@gmail.com>"
+
authors: [ "Antonio Monteiro <anmonteiro@gmail.com>" ]
+
license: "BSD-3-clause"
+
homepage: "https://github.com/anmonteiro/ocaml-h2"
+
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
+
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
+
doc: "https://anmonteiro.github.io/ocaml-h2/"
+
build: [
+
["dune" "build" "-p" name "-j" jobs]
+
]
+
depends: [
+
"ocaml" {>= "4.06"}
+
"dune" {>= "1.7"}
+
"faraday-async"
+
"async"
+
"gluten-async"
+
"h2" {>= version}
+
]
+
depopts: ["async_ssl"]
+
synopsis: "Async support for h2"
+
description: """
+
h2 is an implementation of the HTTP/2 specification entirely in OCaml.
+
h2-async provides an Async runtime implementation for h2.
+
"""
+
url {
+
src:
+
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.9.0/h2-0.9.0.tbz"
+
checksum: [
+
"sha256=ee08d1849b369ae7d06c89805e22854fd999d641c64871f08c25593397f40b5e"
+
"sha512=a226c64b8084688cc93e19fcf649d228d3e441949ea576ec3d89d5d29404ed07a2e0ed87539d48afc59c3cdd16b9621646ac98a1b62ceefc9c5dec57a73b9ec4"
+
]
+
}
+
x-commit-hash: "8ad7db35248e2d321b993fc60390ccfdd54cb096"
+38
packages/h2-lwt-unix/h2-lwt-unix.0.9.0/opam
···
+
opam-version: "2.0"
+
maintainer: "Antonio Monteiro <anmonteiro@gmail.com>"
+
authors: [ "Antonio Monteiro <anmonteiro@gmail.com>" ]
+
license: "BSD-3-clause"
+
homepage: "https://github.com/anmonteiro/ocaml-h2"
+
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
+
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
+
doc: "https://anmonteiro.github.io/ocaml-h2/"
+
build: [
+
["dune" "build" "-p" name "-j" jobs]
+
]
+
depends: [
+
"ocaml" {>= "4.06"}
+
"faraday-lwt-unix"
+
"h2-lwt" {>= version}
+
"dune" {>= "1.7"}
+
"lwt"
+
"gluten-lwt-unix" {>= "0.2.1"}
+
]
+
depopts: [
+
"tls"
+
"lwt_ssl"
+
]
+
synopsis: "Lwt + UNIX support for h2"
+
description: """
+
h2 is an implementation of the HTTP/2 specification entirely in OCaml.
+
h2-lwt-unix provides an Lwt runtime implementation for h2 that targets UNIX
+
binaries.
+
"""
+
url {
+
src:
+
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.9.0/h2-0.9.0.tbz"
+
checksum: [
+
"sha256=ee08d1849b369ae7d06c89805e22854fd999d641c64871f08c25593397f40b5e"
+
"sha512=a226c64b8084688cc93e19fcf649d228d3e441949ea576ec3d89d5d29404ed07a2e0ed87539d48afc59c3cdd16b9621646ac98a1b62ceefc9c5dec57a73b9ec4"
+
]
+
}
+
x-commit-hash: "8ad7db35248e2d321b993fc60390ccfdd54cb096"
+32
packages/h2-lwt/h2-lwt.0.9.0/opam
···
+
opam-version: "2.0"
+
maintainer: "Antonio Monteiro <anmonteiro@gmail.com>"
+
authors: [ "Antonio Monteiro <anmonteiro@gmail.com>" ]
+
license: "BSD-3-clause"
+
homepage: "https://github.com/anmonteiro/ocaml-h2"
+
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
+
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
+
doc: "https://anmonteiro.github.io/ocaml-h2/"
+
build: [
+
["dune" "build" "-p" name "-j" jobs]
+
]
+
depends: [
+
"ocaml" {>= "4.06"}
+
"h2" {>= version}
+
"dune" {>= "1.7"}
+
"lwt"
+
"gluten-lwt" {>= "0.2.1"}
+
]
+
synopsis: "Lwt support for h2"
+
description: """
+
h2 is an implementation of the HTTP/2 specification entirely in OCaml. h2-lwt
+
provides an Lwt runtime implementation for h2.
+
"""
+
url {
+
src:
+
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.9.0/h2-0.9.0.tbz"
+
checksum: [
+
"sha256=ee08d1849b369ae7d06c89805e22854fd999d641c64871f08c25593397f40b5e"
+
"sha512=a226c64b8084688cc93e19fcf649d228d3e441949ea576ec3d89d5d29404ed07a2e0ed87539d48afc59c3cdd16b9621646ac98a1b62ceefc9c5dec57a73b9ec4"
+
]
+
}
+
x-commit-hash: "8ad7db35248e2d321b993fc60390ccfdd54cb096"
+38
packages/h2-mirage/h2-mirage.0.9.0/opam
···
+
opam-version: "2.0"
+
maintainer: "Antonio Nuno Monteiro <anmonteiro@gmail.com>"
+
authors: [ "Antonio Nuno Monteiro <anmonteiro@gmail.com>" ]
+
license: "BSD-3-clause"
+
homepage: "https://github.com/anmonteiro/ocaml-h2"
+
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
+
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
+
doc: "https://anmonteiro.github.io/ocaml-h2/"
+
build: [
+
["dune" "build" "-p" name "-j" jobs]
+
]
+
depends: [
+
"ocaml" {>= "4.06"}
+
"faraday-lwt"
+
"h2-lwt" {>= version}
+
"gluten-lwt" {>= "0.2.0"}
+
"dune" {>= "1.7"}
+
"lwt"
+
"gluten-mirage" {>= "0.3.0"}
+
"conduit-mirage" {>= "2.0.2"}
+
"mirage-flow" {>= "2.0.0"}
+
"cstruct"
+
]
+
synopsis: "Mirage support for h2"
+
description: """
+
h2 is an implementation of the HTTP/2 specification entirely in OCaml.
+
h2-mirage provides an Lwt runtime implementation for h2 that targets MirageOS
+
unikernels.
+
"""
+
url {
+
src:
+
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.9.0/h2-0.9.0.tbz"
+
checksum: [
+
"sha256=ee08d1849b369ae7d06c89805e22854fd999d641c64871f08c25593397f40b5e"
+
"sha512=a226c64b8084688cc93e19fcf649d228d3e441949ea576ec3d89d5d29404ed07a2e0ed87539d48afc59c3cdd16b9621646ac98a1b62ceefc9c5dec57a73b9ec4"
+
]
+
}
+
x-commit-hash: "8ad7db35248e2d321b993fc60390ccfdd54cb096"
+43
packages/h2/h2.0.9.0/opam
···
+
opam-version: "2.0"
+
maintainer: "Antonio Monteiro <anmonteiro@gmail.com>"
+
authors: [ "Antonio Monteiro <anmonteiro@gmail.com>" ]
+
license: "BSD-3-clause"
+
homepage: "https://github.com/anmonteiro/ocaml-h2"
+
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
+
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
+
doc: "https://anmonteiro.github.io/ocaml-h2/"
+
build: [
+
["dune" "build" "-p" name "-j" jobs]
+
]
+
depends: [
+
"ocaml" {>= "4.06"}
+
"dune" {>= "1.7"}
+
"alcotest" {with-test}
+
"yojson" {with-test}
+
"hex" {with-test}
+
"base64" {>= "3.0.0"}
+
"bigstringaf" {>= "0.5.0"}
+
"angstrom" {>= "0.14.0"}
+
"faraday" {>= "0.5.0"}
+
"psq"
+
"hpack"
+
"httpaf"
+
]
+
synopsis:
+
"A high-performance, memory-efficient, and scalable HTTP/2 library for OCaml"
+
description: """
+
h2 is an implementation of the HTTP/2 specification entirely in OCaml. It
+
is based on the concepts in http/af, and therefore uses the Angstrom and
+
Faraday libraries to implement the parsing and serialization layers of the
+
HTTP/2 standard as a state machine that is agnostic to the underlying I/O
+
specifics. It also preserves the same API as http/af wherever possible.
+
"""
+
url {
+
src:
+
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.9.0/h2-0.9.0.tbz"
+
checksum: [
+
"sha256=ee08d1849b369ae7d06c89805e22854fd999d641c64871f08c25593397f40b5e"
+
"sha512=a226c64b8084688cc93e19fcf649d228d3e441949ea576ec3d89d5d29404ed07a2e0ed87539d48afc59c3cdd16b9621646ac98a1b62ceefc9c5dec57a73b9ec4"
+
]
+
}
+
x-commit-hash: "8ad7db35248e2d321b993fc60390ccfdd54cb096"
+36
packages/hpack/hpack.0.9.0/opam
···
+
opam-version: "2.0"
+
maintainer: "Antonio Nuno Monteiro <anmonteiro@gmail.com>"
+
authors: [ "Pieter Goetschalckx <3.14.e.ter@gmail.com>"
+
"Antonio Nuno Monteiro <anmonteiro@gmail.com>" ]
+
license: "BSD-3-clause"
+
homepage: "https://github.com/anmonteiro/ocaml-h2"
+
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
+
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
+
doc: "https://anmonteiro.github.io/ocaml-h2/"
+
depends: [
+
"ocaml" {>= "4.04"}
+
"dune" {>= "1.7"}
+
"yojson" {with-test}
+
"hex" {with-test}
+
"angstrom"
+
"faraday"
+
]
+
build: [
+
["dune" "build" "-p" name "-j" jobs]
+
]
+
synopsis:
+
"An HPACK (Header Compression for HTTP/2) implementation in OCaml"
+
description: """
+
hpack is an implementation of the HPACK: Header Compression for HTTP/2
+
specification (RFC7541) written in OCaml. It uses Angstrom and Faraday for
+
parsing and serialization, respectively.
+
"""
+
url {
+
src:
+
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.9.0/h2-0.9.0.tbz"
+
checksum: [
+
"sha256=ee08d1849b369ae7d06c89805e22854fd999d641c64871f08c25593397f40b5e"
+
"sha512=a226c64b8084688cc93e19fcf649d228d3e441949ea576ec3d89d5d29404ed07a2e0ed87539d48afc59c3cdd16b9621646ac98a1b62ceefc9c5dec57a73b9ec4"
+
]
+
}
+
x-commit-hash: "8ad7db35248e2d321b993fc60390ccfdd54cb096"