Skip to content

Commit

Permalink
[new release] hpack, h2, h2-mirage, h2-lwt, h2-lwt-unix, h2-eio and h…
Browse files Browse the repository at this point in the history
…2-async (0.10.0)

CHANGES:

- hpack: fix a case where hpack would raise an array out of bounds exception
  ([anmonteiro/ocaml-h2#183](anmonteiro/ocaml-h2#183))
  ([@jonathanjameswatson](https://github.com/jonathanjameswatson))
- h2: (client) handle multiple RST_STREAM frames
  ([anmonteiro/ocaml-h2#184](anmonteiro/ocaml-h2#184))
  ([@jonathanjameswatson](https://github.com/jonathanjameswatson))
- h2: (client) Fix a race condition with `~flush_headers_immediately:false` and
  empty request bodies
  ([anmonteiro/ocaml-h2#186](anmonteiro/ocaml-h2#186))
- h2: Make `H2.Reqd.error_code` part of the public interface
  ([anmonteiro/ocaml-h2#188](anmonteiro/ocaml-h2#188))
- h2: Add `~request_method` argument to `H2.Method.body_length`
  ([anmonteiro/ocaml-h2#190](anmonteiro/ocaml-h2#190))
  ([@jonathanjameswatson](https://github.com/jonathanjameswatson))
- h2: Don't send any frames on a stream after an `RST_STREAM` frame
  ([anmonteiro/ocaml-h2#187](anmonteiro/ocaml-h2#187),
  [anmonteiro/ocaml-h2#194](anmonteiro/ocaml-h2#194))
- h2: call error handler on the client if the remote peer closes the
  commmunication channel
  ([anmonteiro/ocaml-h2#177](anmonteiro/ocaml-h2#177),
  [anmonteiro/ocaml-h2#196](anmonteiro/ocaml-h2#194))
- h2: when reprioritizing a stream, respect its new priority (accounts for
  inferred default priority when a dependent stream is not in the tree
  ([RFC7540§5.3.1](https://www.rfc-editor.org/rfc/rfc7540.html#section-5.3.1)))
  ([anmonteiro/ocaml-h2#200](anmonteiro/ocaml-h2#200))
- h2: don't remove parent streams from the scheduler if they have children
  ([anmonteiro/ocaml-h2#201](anmonteiro/ocaml-h2#201))
- h2: don't schedule streams as dependencies of others marked for removal
  ([anmonteiro/ocaml-h2#205](anmonteiro/ocaml-h2#205))
- h2: revise scheduling algorithm to avoid starvation
  ([anmonteiro/ocaml-h2#199](anmonteiro/ocaml-h2#199),
  [anmonteiro/ocaml-h2#204](anmonteiro/ocaml-h2#204), reported in
  [anmonteiro/ocaml-h2#162](anmonteiro/ocaml-h2#162), thanks
  [@quernd](https://github.com/quernd))
- h2-eio: adapt to the next gluten-eio version
  ([anmonteiro/ocaml-h2#210](anmonteiro/ocaml-h2#210))
  • Loading branch information
anmonteiro committed Mar 17, 2023
1 parent 8c1bb91 commit e2acf10
Show file tree
Hide file tree
Showing 7 changed files with 299 additions and 0 deletions.
42 changes: 42 additions & 0 deletions packages/h2-async/h2-async.0.10.0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
opam-version: "2.0"
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."
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"
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
depends: [
"dune" {>= "2.7"}
"ocaml" {>= "4.08.0"}
"h2" {= version}
"faraday-async"
"gluten-async" {>= "0.2.1"}
"odoc" {with-doc}
]
depopts: ["async_ssl" "tls-async"]
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
url {
src:
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.10.0/h2-0.10.0.tbz"
checksum: [
"sha256=9fd6afa552fa1c3d8a04e3761699d47ae1f71ce503380dbd8929a375cc4c46f1"
"sha512=d0f4eab388df4f35eb2cfc93e7cd75e15c7ae5bbb382325e1219766558d52698f580e310cab3e4fa3eebe0fa2c2270af09d56537bd7191796bd0748d12633e35"
]
}
x-commit-hash: "fff323e57f08cc1ca58cf9a6cd4996c3ac5d24de"
40 changes: 40 additions & 0 deletions packages/h2-eio/h2-eio.0.10.0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
opam-version: "2.0"
synopsis: "EIO support for h2"
description:
"h2 is an implementation of the HTTP/2 specification entirely in OCaml. h2-eio provides an EIO runtime implementation for h2."
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"
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
depends: [
"dune" {>= "2.7"}
"ocaml" {>= "4.08.0"}
"h2" {= version}
"gluten-eio" {>= "0.4.1"}
"odoc" {with-doc}
]
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
url {
src:
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.10.0/h2-0.10.0.tbz"
checksum: [
"sha256=9fd6afa552fa1c3d8a04e3761699d47ae1f71ce503380dbd8929a375cc4c46f1"
"sha512=d0f4eab388df4f35eb2cfc93e7cd75e15c7ae5bbb382325e1219766558d52698f580e310cab3e4fa3eebe0fa2c2270af09d56537bd7191796bd0748d12633e35"
]
}
x-commit-hash: "fff323e57f08cc1ca58cf9a6cd4996c3ac5d24de"
42 changes: 42 additions & 0 deletions packages/h2-lwt-unix/h2-lwt-unix.0.10.0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,42 @@
opam-version: "2.0"
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."
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"
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
depends: [
"dune" {>= "2.7"}
"ocaml" {>= "4.08.0"}
"h2-lwt" {= version}
"faraday-lwt-unix"
"gluten-lwt-unix" {>= "0.2.1"}
"odoc" {with-doc}
]
depopts: ["tls-lwt" "lwt_ssl"]
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
url {
src:
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.10.0/h2-0.10.0.tbz"
checksum: [
"sha256=9fd6afa552fa1c3d8a04e3761699d47ae1f71ce503380dbd8929a375cc4c46f1"
"sha512=d0f4eab388df4f35eb2cfc93e7cd75e15c7ae5bbb382325e1219766558d52698f580e310cab3e4fa3eebe0fa2c2270af09d56537bd7191796bd0748d12633e35"
]
}
x-commit-hash: "fff323e57f08cc1ca58cf9a6cd4996c3ac5d24de"
41 changes: 41 additions & 0 deletions packages/h2-lwt/h2-lwt.0.10.0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
opam-version: "2.0"
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."
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"
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
depends: [
"dune" {>= "2.7"}
"ocaml" {>= "4.08.0"}
"h2" {= version}
"lwt" {>= "5.1.1"}
"gluten-lwt" {>= "0.2.1"}
"odoc" {with-doc}
]
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
url {
src:
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.10.0/h2-0.10.0.tbz"
checksum: [
"sha256=9fd6afa552fa1c3d8a04e3761699d47ae1f71ce503380dbd8929a375cc4c46f1"
"sha512=d0f4eab388df4f35eb2cfc93e7cd75e15c7ae5bbb382325e1219766558d52698f580e310cab3e4fa3eebe0fa2c2270af09d56537bd7191796bd0748d12633e35"
]
}
x-commit-hash: "fff323e57f08cc1ca58cf9a6cd4996c3ac5d24de"
44 changes: 44 additions & 0 deletions packages/h2-mirage/h2-mirage.0.10.0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,44 @@
opam-version: "2.0"
synopsis: "Lwt 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."
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"
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
depends: [
"dune" {>= "2.7"}
"ocaml" {>= "4.08.0"}
"h2-lwt" {= version}
"faraday-lwt"
"lwt"
"gluten-mirage" {>= "0.3.0"}
"mirage-flow" {>= "2.0.0"}
"cstruct"
"odoc" {with-doc}
]
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
url {
src:
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.10.0/h2-0.10.0.tbz"
checksum: [
"sha256=9fd6afa552fa1c3d8a04e3761699d47ae1f71ce503380dbd8929a375cc4c46f1"
"sha512=d0f4eab388df4f35eb2cfc93e7cd75e15c7ae5bbb382325e1219766558d52698f580e310cab3e4fa3eebe0fa2c2270af09d56537bd7191796bd0748d12633e35"
]
}
x-commit-hash: "fff323e57f08cc1ca58cf9a6cd4996c3ac5d24de"
49 changes: 49 additions & 0 deletions packages/h2/h2.0.10.0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
opam-version: "2.0"
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."
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"
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
depends: [
"dune" {>= "2.7"}
"ocaml" {>= "4.08.0"}
"base64" {>= "3.0.0"}
"angstrom" {>= "0.14.0"}
"faraday" {>= "0.7.3"}
"bigstringaf" {>= "0.5.0"}
"psq"
"hpack"
"httpaf"
"alcotest" {with-test}
"yojson" {with-test}
"hex" {with-test}
"odoc" {with-doc}
]
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
url {
src:
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.10.0/h2-0.10.0.tbz"
checksum: [
"sha256=9fd6afa552fa1c3d8a04e3761699d47ae1f71ce503380dbd8929a375cc4c46f1"
"sha512=d0f4eab388df4f35eb2cfc93e7cd75e15c7ae5bbb382325e1219766558d52698f580e310cab3e4fa3eebe0fa2c2270af09d56537bd7191796bd0748d12633e35"
]
}
x-commit-hash: "fff323e57f08cc1ca58cf9a6cd4996c3ac5d24de"
41 changes: 41 additions & 0 deletions packages/hpack/hpack.0.10.0/opam
Original file line number Diff line number Diff line change
@@ -0,0 +1,41 @@
opam-version: "2.0"
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."
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"
bug-reports: "https://github.com/anmonteiro/ocaml-h2/issues"
depends: [
"dune" {>= "2.7"}
"ocaml" {>= "4.08.0"}
"faraday" {>= "0.7.3"}
"yojson" {with-test}
"hex" {with-test}
"odoc" {with-doc}
]
build: [
["dune" "subst"] {dev}
[
"dune"
"build"
"-p"
name
"-j"
jobs
"@install"
"@runtest" {with-test}
"@doc" {with-doc}
]
]
dev-repo: "git+https://github.com/anmonteiro/ocaml-h2.git"
url {
src:
"https://github.com/anmonteiro/ocaml-h2/releases/download/0.10.0/h2-0.10.0.tbz"
checksum: [
"sha256=9fd6afa552fa1c3d8a04e3761699d47ae1f71ce503380dbd8929a375cc4c46f1"
"sha512=d0f4eab388df4f35eb2cfc93e7cd75e15c7ae5bbb382325e1219766558d52698f580e310cab3e4fa3eebe0fa2c2270af09d56537bd7191796bd0748d12633e35"
]
}
x-commit-hash: "fff323e57f08cc1ca58cf9a6cd4996c3ac5d24de"

0 comments on commit e2acf10

Please sign in to comment.