|
1 | | -opam-version: "1.2" |
| 1 | +opam-version: "2.0" |
| 2 | + |
| 3 | +synopsis: "Promises and event-driven I/O" |
| 4 | + |
2 | 5 | version: "dev" |
3 | | -maintainer: [ |
4 | | - "Anton Bachin <antonbachin@yahoo.com>" |
5 | | - "Mauricio Fernandez <mfp@acm.org>" |
6 | | - "Simon Cruanes <simon.cruanes.2007@m4x.org>" |
7 | | -] |
8 | | -authors: [ |
9 | | - "Jérôme Vouillon" |
10 | | - "Jérémie Dimino" |
11 | | -] |
| 6 | +license: "MIT" |
12 | 7 | homepage: "https://github.com/ocsigen/lwt" |
13 | 8 | doc: "https://ocsigen.org/lwt/manual/" |
14 | 9 | bug-reports: "https://github.com/ocsigen/lwt/issues" |
15 | | -license: "MIT" |
16 | | -dev-repo: "https://github.com/ocsigen/lwt.git" |
17 | 10 |
|
18 | | -build: [ |
19 | | - [ "dune" "build" "-p" name "-j" jobs ] |
| 11 | +authors: [ |
| 12 | + "Jérôme Vouillon" |
| 13 | + "Jérémie Dimino" |
| 14 | +] |
| 15 | +maintainer: [ |
| 16 | + "Anton Bachin <antonbachin@yahoo.com>" |
| 17 | + "Mauricio Fernandez <mfp@acm.org>" |
| 18 | + "Simon Cruanes <simon.cruanes.2007@m4x.org>" |
20 | 19 | ] |
| 20 | +dev-repo: "git+https://github.com/ocsigen/lwt.git" |
21 | 21 |
|
22 | 22 | depends: [ |
23 | | - # Bisect_ppx is used only during development. This dependency should be |
24 | | - # removed when preparing a release. |
25 | | - "bisect_ppx" {>= "1.3.0"} |
26 | | - # ocamlfind is a development dependency of the test suite. |
27 | | - "ocamlfind" {>= "1.7.3-1"} |
28 | 23 | "cppo" {build & >= "1.1.0"} |
29 | 24 | "dune" {build} |
30 | | - # result is needed as long as Lwt still supports OCaml 4.02. |
31 | | - "result" |
32 | | - # seq is needed as long as Lwt still supports OCaml < 4.07.0 |
33 | | - "seq" |
| 25 | + "ocaml" {>= "4.02.0"} |
| 26 | + "result" # result is needed as long as Lwt supports OCaml 4.02. |
| 27 | + "seq" # seq is needed as long as Lwt supports OCaml < 4.07.0. |
| 28 | + |
| 29 | + "bisect_ppx" {dev & >= "1.3.0"} |
| 30 | + "ocamlfind" {dev & >= "1.7.3-1"} |
34 | 31 | ] |
35 | 32 | depopts: [ |
36 | 33 | "base-threads" |
37 | 34 | "base-unix" |
38 | 35 | "conf-libev" |
39 | 36 | ] |
| 37 | + |
40 | 38 | conflicts: [ |
| 39 | + "ocaml" {= "4.02.1+BER"} |
41 | 40 | # ocamlfind 1.7.3-1 is the earliest release whose built-in "threads" package |
42 | 41 | # does not have incorrect error lines. See |
43 | 42 | # https://github.com/ocaml/opam-repository/pull/11071#issuecomment-353131128 |
44 | 43 | "ocamlfind" {< "1.7.3-1"} |
45 | 44 | ] |
46 | | -# In practice, Lwt requires OCaml >= 4.02.3, as that is a constraint of the |
47 | | -# dependency Dune. |
48 | | -available: [ocaml-version >= "4.02.0" & compiler != "4.02.1+BER"] |
| 45 | + |
| 46 | +build: [ |
| 47 | + [ "dune" "build" "-p" name "-j" jobs ] |
| 48 | +] |
| 49 | + |
| 50 | +description: "A promise is a value that may become determined in the future. |
| 51 | + |
| 52 | +Lwt provides typed, composable promises. Promises that are resolved by I/O are |
| 53 | +resolved by Lwt in parallel. |
| 54 | + |
| 55 | +Meanwhile, OCaml code, including code creating and waiting on promises, runs in |
| 56 | +a single thread by default. This reduces the need for locks or other |
| 57 | +synchronization primitives. Code can be run in parallel on an opt-in basis." |
0 commit comments