Skip to content

Commit f23474a

Browse files
authored
Merge pull request #33 from talex5/release
Prepare release
2 parents 1d34ecf + 1ed5794 commit f23474a

File tree

4 files changed

+24
-10
lines changed

4 files changed

+24
-10
lines changed

CHANGES.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
## dev
1+
## v0.1
22

3-
- no public release
3+
- Initial release.

README.md

Lines changed: 17 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,20 @@
11
# ocaml-uring -- bindings to Linux io_uring
22

3-
These are OCaml bindings for the Linux io_uring stack.
4-
They are intended to eventually be used with the multicore OCaml stack,
5-
but may also be useful for sequential code too.
3+
These are OCaml bindings for the Linux [io_uring][] stack
4+
(an alternative to using syscalls such as `select` or `epoll`).
65

7-
- Status: work in progress, unreleased.
6+
The [Eio][] library provides a higher-level effects-based API
7+
that uses this library to implement its Linux backend,
8+
but ocaml-uring may be useful with single-core non-effects versions of OCaml too.
9+
10+
To use the library directly:
11+
12+
1. Call `Uring.create` to initialise a ring.
13+
2. Add IO requests to the ring using functions such as `Uring.readv`.
14+
3. Call `Uring.submit` to notify the kernel of the new requests.
15+
4. Call `Uring.wait` to wait until an operation is complete.
16+
17+
The `tests` directory contains some examples.
18+
19+
[io_uring]: https://github.com/axboe/liburing
20+
[Eio]: https://github.com/ocaml-multicore/eio

dune-project

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -4,12 +4,12 @@
44
(formatting disabled)
55
(source (github ocaml-multicore/ocaml-uring))
66
(license ISC)
7-
(authors "Anil Madhavapeddy" "Sadiq Jaffer")
7+
(authors "Anil Madhavapeddy" "Sadiq Jaffer" "Thomas Leonard")
88
(maintainers "[email protected]")
99
(package
1010
(name uring)
1111
(synopsis "OCaml bindings for Linux io_uring")
12-
(description "Bindings to the Linux io_uring kernel IO interfaces.")
12+
(description "Bindings to the Linux io_uring kernel IO interfaces. See https://github.com/ocaml-multicore/eio for a higher-level API using this.")
1313
(depends
1414
(cstruct (>= 6.0.0))
1515
(ocaml (>= 4.12.0))

uring.opam

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,10 @@
11
# This file is generated by dune, edit dune-project instead
22
opam-version: "2.0"
33
synopsis: "OCaml bindings for Linux io_uring"
4-
description: "Bindings to the Linux io_uring kernel IO interfaces."
4+
description:
5+
"Bindings to the Linux io_uring kernel IO interfaces. See https://github.com/ocaml-multicore/eio for a higher-level API using this."
56
maintainer: ["[email protected]"]
6-
authors: ["Anil Madhavapeddy" "Sadiq Jaffer"]
7+
authors: ["Anil Madhavapeddy" "Sadiq Jaffer" "Thomas Leonard"]
78
license: "ISC"
89
homepage: "https://github.com/ocaml-multicore/ocaml-uring"
910
bug-reports: "https://github.com/ocaml-multicore/ocaml-uring/issues"

0 commit comments

Comments
 (0)