From a3197c3fe7ad8f7c6469f3ea00b6ddcbbf454ad1 Mon Sep 17 00:00:00 2001 From: Sora Morimoto Date: Mon, 15 Apr 2024 16:14:14 +0900 Subject: [PATCH] Generate opam files with dune Signed-off-by: Sora Morimoto --- dune-project | 60 ++++++++++++++++++++++++++++++++++++++++++++++- lwt.opam | 57 ++++++++++++++++---------------------------- lwt.opam.template | 4 ++++ lwt_ppx.opam | 41 ++++++++++++++++++-------------- lwt_ppx_let.opam | 43 ++++++++++++++++++--------------- lwt_react.opam | 40 +++++++++++++++++-------------- 6 files changed, 152 insertions(+), 93 deletions(-) create mode 100644 lwt.opam.template diff --git a/dune-project b/dune-project index bfe19a2026..fcbe532a7b 100644 --- a/dune-project +++ b/dune-project @@ -1 +1,59 @@ -(lang dune 1.8) +(lang dune 1.12) + +(name lwt) + +(generate_opam_files true) + +(maintainers + "Raphaël Proust " + "Anton Bachin ") +(authors "Jérôme Vouillon" "Jérémie Dimino") +(license MIT) +(source (github ocsigen/lwt)) +(documentation "https://ocsigen.org/lwt") + +(package + (name lwt_ppx_let) + (synopsis "Dummy package context for ppx_let tests") + (description "Internal package used to partition ppx_let tests.") + (depends + (ocaml (>= 4.08)) + (ppx_let :with-test) + lwt)) + +(package + (name lwt_ppx) + (synopsis "PPX syntax for Lwt, providing something similar to async/await from JavaScript") + (depends + (ocaml (>= 4.08)) + (ppxlib (>= 0.16.0)) + lwt)) + +(package + (name lwt_react) + (synopsis "Helpers for using React with Lwt") + (depends + (ocaml (>= 4.08)) + (cppo (and :build (>= 1.1.0))) + (lwt (>= 3.0.0)) + (react (>= 1.0.0)))) + +(package + (name lwt) + (synopsis "Promises and event-driven I/O") + (description "A promise is a value that may become determined in the future. + +Lwt provides typed, composable promises. Promises that are resolved by I/O are +resolved by Lwt in parallel. + +Meanwhile, OCaml code, including code creating and waiting on promises, runs in +a single thread by default. This reduces the need for locks or other +synchronization primitives. Code can be run in parallel on an opt-in basis. +") + (depends + (ocaml (>= 4.08)) + (cppo (and :build (>= 1.1.0))) + (ocamlfind (and :dev (>= 1.7.3-1))) + dune-configurator + ocplib-endian) + (depopts base-threads base-unix conf-libev)) diff --git a/lwt.opam b/lwt.opam index 2cecf8b665..a8b3d3972f 100644 --- a/lwt.opam +++ b/lwt.opam @@ -1,52 +1,35 @@ +# This file is generated by dune, edit dune-project instead opam-version: "2.0" - synopsis: "Promises and event-driven I/O" +description: """ +A promise is a value that may become determined in the future. + +Lwt provides typed, composable promises. Promises that are resolved by I/O are +resolved by Lwt in parallel. -version: "5.7.0" +Meanwhile, OCaml code, including code creating and waiting on promises, runs in +a single thread by default. This reduces the need for locks or other +synchronization primitives. Code can be run in parallel on an opt-in basis. +""" +maintainer: [ + "Raphaël Proust " "Anton Bachin " +] +authors: ["Jérôme Vouillon" "Jérémie Dimino"] license: "MIT" homepage: "https://github.com/ocsigen/lwt" doc: "https://ocsigen.org/lwt" bug-reports: "https://github.com/ocsigen/lwt/issues" - -authors: [ - "Jérôme Vouillon" - "Jérémie Dimino" -] -maintainer: [ - "Raphaël Proust " - "Anton Bachin " -] -dev-repo: "git+https://github.com/ocsigen/lwt.git" - depends: [ + "dune" {>= "1.12"} + "ocaml" {>= "4.08"} "cppo" {build & >= "1.1.0"} - "dune" {>= "1.8.0"} + "ocamlfind" {dev & >= "1.7.3-1"} "dune-configurator" - "ocaml" {>= "4.08"} "ocplib-endian" - - # Until https://github.com/aantron/bisect_ppx/pull/327. - # "bisect_ppx" {dev & >= "2.0.0"} - "ocamlfind" {dev & >= "1.7.3-1"} ] - -depopts: [ - "base-threads" - "base-unix" - "conf-libev" -] - +depopts: ["base-threads" "base-unix" "conf-libev"] +dev-repo: "git+https://github.com/ocsigen/lwt.git" build: [ - ["dune" "exec" "-p" name "src/unix/config/discover.exe" "--" "--save" - "--use-libev" "%{conf-libev:installed}%"] + ["dune" "exec" "-p" name "src/unix/config/discover.exe" "--" "--save" "--use-libev" "%{conf-libev:installed}%"] ["dune" "build" "-p" name "-j" jobs] ] - -description: "A promise is a value that may become determined in the future. - -Lwt provides typed, composable promises. Promises that are resolved by I/O are -resolved by Lwt in parallel. - -Meanwhile, OCaml code, including code creating and waiting on promises, runs in -a single thread by default. This reduces the need for locks or other -synchronization primitives. Code can be run in parallel on an opt-in basis." diff --git a/lwt.opam.template b/lwt.opam.template new file mode 100644 index 0000000000..6ffbf088a8 --- /dev/null +++ b/lwt.opam.template @@ -0,0 +1,4 @@ +build: [ + ["dune" "exec" "-p" name "src/unix/config/discover.exe" "--" "--save" "--use-libev" "%{conf-libev:installed}%"] + ["dune" "build" "-p" name "-j" jobs] +] diff --git a/lwt_ppx.opam b/lwt_ppx.opam index 63c37abe81..958244c1f9 100644 --- a/lwt_ppx.opam +++ b/lwt_ppx.opam @@ -1,28 +1,33 @@ +# This file is generated by dune, edit dune-project instead opam-version: "2.0" - -synopsis: "PPX syntax for Lwt, providing something similar to async/await from JavaScript" - -version: "2.1.0" +synopsis: + "PPX syntax for Lwt, providing something similar to async/await from JavaScript" +maintainer: [ + "Raphaël Proust " "Anton Bachin " +] +authors: ["Jérôme Vouillon" "Jérémie Dimino"] license: "MIT" homepage: "https://github.com/ocsigen/lwt" -doc: "https://ocsigen.org/lwt/dev/api/Ppx_lwt" +doc: "https://ocsigen.org/lwt" bug-reports: "https://github.com/ocsigen/lwt/issues" - -authors: [ - "Gabriel Radanne" -] -maintainer: [ - "Anton Bachin " -] -dev-repo: "git+https://github.com/ocsigen/lwt.git" - depends: [ - "dune" {>= "1.8.0"} - "lwt" + "dune" {>= "1.12"} "ocaml" {>= "4.08"} "ppxlib" {>= "0.16.0"} + "lwt" ] - build: [ - ["dune" "build" "-p" name "-j" jobs] + ["dune" "subst"] {pinned} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] ] +dev-repo: "git+https://github.com/ocsigen/lwt.git" diff --git a/lwt_ppx_let.opam b/lwt_ppx_let.opam index 255acc4d42..8fbb382a3d 100644 --- a/lwt_ppx_let.opam +++ b/lwt_ppx_let.opam @@ -1,28 +1,33 @@ +# This file is generated by dune, edit dune-project instead opam-version: "2.0" - synopsis: "Dummy package context for ppx_let tests" - -version: "5.7.0" +description: "Internal package used to partition ppx_let tests." +maintainer: [ + "Raphaël Proust " "Anton Bachin " +] +authors: ["Jérôme Vouillon" "Jérémie Dimino"] license: "MIT" homepage: "https://github.com/ocsigen/lwt" doc: "https://ocsigen.org/lwt" bug-reports: "https://github.com/ocsigen/lwt/issues" - -authors: [ - "Jérôme Vouillon" - "Jérémie Dimino" -] -maintainer: [ - "Raphaël Proust " - "Anton Bachin " -] -dev-repo: "git+https://github.com/ocsigen/lwt.git" - depends: [ - "dune" {>= "1.8.0"} - "lwt" - "ppx_let" {with-test} + "dune" {>= "1.12"} "ocaml" {>= "4.08"} + "ppx_let" {with-test} + "lwt" ] - -description: "Internal package used to partition ppx_let tests." +build: [ + ["dune" "subst"] {pinned} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] +] +dev-repo: "git+https://github.com/ocsigen/lwt.git" diff --git a/lwt_react.opam b/lwt_react.opam index c1623389d1..7f5d7e1957 100644 --- a/lwt_react.opam +++ b/lwt_react.opam @@ -1,29 +1,33 @@ +# This file is generated by dune, edit dune-project instead opam-version: "2.0" - synopsis: "Helpers for using React with Lwt" - -version: "1.2.0" +maintainer: [ + "Raphaël Proust " "Anton Bachin " +] +authors: ["Jérôme Vouillon" "Jérémie Dimino"] license: "MIT" homepage: "https://github.com/ocsigen/lwt" -doc: "https://ocsigen.org/lwt/dev/api/Lwt_react" +doc: "https://ocsigen.org/lwt" bug-reports: "https://github.com/ocsigen/lwt/issues" - -authors: [ - "Jérémie Dimino" -] -maintainer: [ - "Anton Bachin " -] -dev-repo: "git+https://github.com/ocsigen/lwt.git" - depends: [ - "dune" {>= "1.8.0"} - "lwt" {>= "3.0.0"} + "dune" {>= "1.12"} "ocaml" {>= "4.08"} - "react" {>= "1.0.0"} "cppo" {build & >= "1.1.0"} + "lwt" {>= "3.0.0"} + "react" {>= "1.0.0"} ] - build: [ - ["dune" "build" "-p" name "-j" jobs] + ["dune" "subst"] {pinned} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] ] +dev-repo: "git+https://github.com/ocsigen/lwt.git"