forked from ocaml/opam-repository
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
[new release] eio (5 packages) (0.14)
CHANGES: New features / API changes: - Add `Eio.Executor_pool` (@SGrondin ocaml-multicore/eio#639, reviewed by @talex5). Provides an easy way to distribute jobs across domains. - Add `Fiber.first ~combine` and `Fiber.n_any` (@SGrondin @talex5 ocaml-multicore/eio#587). Allows keeping both results in the case where multiple fibers succeed. - Add `Eio_mock.Backend.run_full` with auto-advancing mock clock (@talex5 ocaml-multicore/eio#644, reviewed by @SGrondin). Simplifies testing of code using clocks. - Add `Buf_write.printf` (@SGrondin @talex5 ocaml-multicore/eio#655). - Add `Net.listening_addr` (@mefyl ocaml-multicore/eio#555, reviewed by @patricoferris @talex5). Useful to get the socket's address if the OS assigns it. - Add `Promise.try_resolve` (@talex5 ocaml-multicore/eio#646). - Remove `Cancel_hook_failed` exception (@talex5 ocaml-multicore/eio#640). Didn't seem to be used and broke dscheck. Tracing: - Improve tracing (@TheLortex @patricoferris @talex5 ocaml-multicore/eio#656). Trace cancellation contexts and OS operations, and simplify API. - Add labels to switches (@talex5 ocaml-multicore/eio#661, reviewed by @SGrondin). - `Fiber.all`: use the parent fiber (@talex5 ocaml-multicore/eio#665, reviewed by @SGrondin). Cleans up the traces a bit. Performance: - Faster and simpler `Lf_queue` (@talex5 ocaml-multicore/eio#647, based on work by @polytypic). - Optimise `Flow.copy` with `Buf_read.as_flow` (@talex5 ocaml-multicore/eio#663, reviewed by @SGrondin, reported by @leostera). Bug fixes: - Fix handling of very long IO vectors (@talex5 ocaml-multicore/eio#653, reported by @Cjen1). - eio_posix: use `caml_enter_blocking_section` in more places (@talex5 ocaml-multicore/eio#654, reviewed by @SGrondin). - eio_posix: work around `caml_unix_alloc_sockaddr` bug (@talex5 ocaml-multicore/eio#651). - Remove default backtrace from `Switch.fail` (@talex5 ocaml-multicore/eio#664). Documentation: - Organise eio.mli better (@talex5 ocaml-multicore/eio#667). - Fix quoting of quotes in process error messages (@talex5 ocaml-multicore/eio#666, reviewed by @SGrondin). - Mention Path module in File and Fs documentation (@talex5 ocaml-multicore/eio#659, requested by @clecat). - Minor documentation updates (@SGrondin @talex5 ocaml-multicore/eio#670). Build / internals: - Allow closing synchronous streams (@talex5 ocaml-multicore/eio#641, reviewed by @SGrondin). This isn't currently exposed in the public interface. - Fix non-idempotent tests (@SGrondin ocaml-multicore/eio#662). - eio_windows: add explicit fmt dependency (@talex5 ocaml-multicore/eio#643).
- Loading branch information
Showing
5 changed files
with
226 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,53 @@ | ||
opam-version: "2.0" | ||
synopsis: "Effect-based direct-style IO API for OCaml" | ||
description: "An effect-based IO API for multicore OCaml with fibers." | ||
maintainer: ["[email protected]"] | ||
authors: ["Anil Madhavapeddy" "Thomas Leonard"] | ||
license: "ISC" | ||
homepage: "https://github.com/ocaml-multicore/eio" | ||
doc: "https://ocaml-multicore.github.io/eio/" | ||
bug-reports: "https://github.com/ocaml-multicore/eio/issues" | ||
depends: [ | ||
"dune" {>= "3.9"} | ||
"ocaml" {>= "5.1.0"} | ||
"bigstringaf" {>= "0.9.0"} | ||
"cstruct" {>= "6.0.1"} | ||
"lwt-dllist" | ||
"optint" {>= "0.1.0"} | ||
"psq" {>= "0.2.0"} | ||
"fmt" {>= "0.8.9"} | ||
"hmap" {>= "0.8.1"} | ||
"domain-local-await" {>= "0.1.0"} | ||
"crowbar" {>= "0.2" & with-test} | ||
"mtime" {>= "2.0.0"} | ||
"mdx" {>= "2.2.0" & with-test} | ||
"dscheck" {>= "0.1.0" & with-test} | ||
"odoc" {with-doc} | ||
] | ||
conflicts: [ | ||
"seq" {< "0.3"} | ||
] | ||
build: [ | ||
["dune" "subst"] {dev} | ||
[ | ||
"dune" | ||
"build" | ||
"-p" | ||
name | ||
"-j" | ||
jobs | ||
"@install" | ||
"@runtest" {with-test} | ||
"@doc" {with-doc} | ||
] | ||
] | ||
dev-repo: "git+https://github.com/ocaml-multicore/eio.git" | ||
url { | ||
src: | ||
"https://github.com/ocaml-multicore/eio/releases/download/v0.14/eio-0.14.tbz" | ||
checksum: [ | ||
"sha256=52f85b947d3e0de70940b5bbaac0d3e78841fea5648e73af7d8a754ab51c871b" | ||
"sha512=944095b1131d2dcc1f0d415fe46fd78b883733e0f95985e3a0feafe73b1703606ec60560abf36c16c364cc60164b7330f236e39569e264c702bb5647e28bfd3c" | ||
] | ||
} | ||
x-commit-hash: "c502574915daadafb4f1a0af0d03c1bd1a20b0f4" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
opam-version: "2.0" | ||
synopsis: "Eio implementation for Linux using io-uring" | ||
description: "An Eio implementation for Linux using io-uring." | ||
maintainer: ["[email protected]"] | ||
authors: ["Anil Madhavapeddy" "Thomas Leonard"] | ||
license: "ISC" | ||
homepage: "https://github.com/ocaml-multicore/eio" | ||
doc: "https://ocaml-multicore.github.io/eio/" | ||
bug-reports: "https://github.com/ocaml-multicore/eio/issues" | ||
depends: [ | ||
"dune" {>= "3.9"} | ||
"alcotest" {>= "1.7.0" & with-test} | ||
"eio" {= version} | ||
"mdx" {>= "2.2.0" & with-test} | ||
"logs" {>= "0.7.0"} | ||
"fmt" {>= "0.8.9"} | ||
"cmdliner" {>= "1.1.0" & with-test} | ||
"uring" {>= "0.7"} | ||
"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/ocaml-multicore/eio.git" | ||
available: [os = "linux"] | ||
url { | ||
src: | ||
"https://github.com/ocaml-multicore/eio/releases/download/v0.14/eio-0.14.tbz" | ||
checksum: [ | ||
"sha256=52f85b947d3e0de70940b5bbaac0d3e78841fea5648e73af7d8a754ab51c871b" | ||
"sha512=944095b1131d2dcc1f0d415fe46fd78b883733e0f95985e3a0feafe73b1703606ec60560abf36c16c364cc60164b7330f236e39569e264c702bb5647e28bfd3c" | ||
] | ||
} | ||
x-commit-hash: "c502574915daadafb4f1a0af0d03c1bd1a20b0f4" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,45 @@ | ||
opam-version: "2.0" | ||
synopsis: "Effect-based direct-style IO mainloop for OCaml" | ||
description: "Selects an appropriate Eio backend for the current platform." | ||
maintainer: ["[email protected]"] | ||
authors: ["Anil Madhavapeddy" "Thomas Leonard"] | ||
license: "ISC" | ||
homepage: "https://github.com/ocaml-multicore/eio" | ||
doc: "https://ocaml-multicore.github.io/eio/" | ||
bug-reports: "https://github.com/ocaml-multicore/eio/issues" | ||
depends: [ | ||
"dune" {>= "3.9"} | ||
"mdx" {>= "2.2.0" & with-test} | ||
"kcas" {>= "0.3.0" & with-test} | ||
"yojson" {>= "2.0.2" & with-test} | ||
"eio_linux" | ||
{= version & os = "linux" & | ||
(os-distribution != "centos" | os-version > "7")} | ||
"eio_posix" {= version & os != "win32"} | ||
"eio_windows" {= version & os = "win32"} | ||
"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/ocaml-multicore/eio.git" | ||
url { | ||
src: | ||
"https://github.com/ocaml-multicore/eio/releases/download/v0.14/eio-0.14.tbz" | ||
checksum: [ | ||
"sha256=52f85b947d3e0de70940b5bbaac0d3e78841fea5648e73af7d8a754ab51c871b" | ||
"sha512=944095b1131d2dcc1f0d415fe46fd78b883733e0f95985e3a0feafe73b1703606ec60560abf36c16c364cc60164b7330f236e39569e264c702bb5647e28bfd3c" | ||
] | ||
} | ||
x-commit-hash: "c502574915daadafb4f1a0af0d03c1bd1a20b0f4" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,41 @@ | ||
opam-version: "2.0" | ||
synopsis: "Eio implementation for POSIX systems" | ||
description: "An Eio implementation for most Unix-like platforms" | ||
maintainer: ["[email protected]"] | ||
authors: ["Anil Madhavapeddy" "Thomas Leonard"] | ||
license: "ISC" | ||
homepage: "https://github.com/ocaml-multicore/eio" | ||
doc: "https://ocaml-multicore.github.io/eio/" | ||
bug-reports: "https://github.com/ocaml-multicore/eio/issues" | ||
depends: [ | ||
"dune" {>= "3.9"} | ||
"eio" {= version} | ||
"iomux" {>= "0.2"} | ||
"mdx" {>= "2.2.0" & with-test} | ||
"fmt" {>= "0.8.9"} | ||
"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/ocaml-multicore/eio.git" | ||
url { | ||
src: | ||
"https://github.com/ocaml-multicore/eio/releases/download/v0.14/eio-0.14.tbz" | ||
checksum: [ | ||
"sha256=52f85b947d3e0de70940b5bbaac0d3e78841fea5648e73af7d8a754ab51c871b" | ||
"sha512=944095b1131d2dcc1f0d415fe46fd78b883733e0f95985e3a0feafe73b1703606ec60560abf36c16c364cc60164b7330f236e39569e264c702bb5647e28bfd3c" | ||
] | ||
} | ||
x-commit-hash: "c502574915daadafb4f1a0af0d03c1bd1a20b0f4" |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,42 @@ | ||
opam-version: "2.0" | ||
synopsis: "Eio implementation for Windows" | ||
description: "An Eio implementation using OCaml's Unix.select" | ||
maintainer: ["[email protected]"] | ||
authors: ["Anil Madhavapeddy" "Thomas Leonard"] | ||
license: "ISC" | ||
homepage: "https://github.com/ocaml-multicore/eio" | ||
doc: "https://ocaml-multicore.github.io/eio/" | ||
bug-reports: "https://github.com/ocaml-multicore/eio/issues" | ||
depends: [ | ||
"dune" {>= "3.9"} | ||
"eio" {= version} | ||
"fmt" {>= "0.8.9"} | ||
"kcas" {>= "0.3.0" & with-test} | ||
"alcotest" {>= "1.7.0" & 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/ocaml-multicore/eio.git" | ||
url { | ||
src: | ||
"https://github.com/ocaml-multicore/eio/releases/download/v0.14/eio-0.14.tbz" | ||
checksum: [ | ||
"sha256=52f85b947d3e0de70940b5bbaac0d3e78841fea5648e73af7d8a754ab51c871b" | ||
"sha512=944095b1131d2dcc1f0d415fe46fd78b883733e0f95985e3a0feafe73b1703606ec60560abf36c16c364cc60164b7330f236e39569e264c702bb5647e28bfd3c" | ||
] | ||
} | ||
x-commit-hash: "c502574915daadafb4f1a0af0d03c1bd1a20b0f4" | ||
available: [os = "win32"] |