From 75bb0cc4e63c1cc4c077359cfe286ea8ab79b09f Mon Sep 17 00:00:00 2001 From: Anton Bachin Date: Tue, 20 Apr 2021 14:34:31 +0300 Subject: [PATCH] =?UTF-8?q?Dream=20=E2=80=94=20tidy,=20feature-complete=20?= =?UTF-8?q?Web=20framework?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/dream/dream.1.0.0~alpha1/opam | 128 +++++++++++++++++++++++++ 1 file changed, 128 insertions(+) create mode 100644 packages/dream/dream.1.0.0~alpha1/opam diff --git a/packages/dream/dream.1.0.0~alpha1/opam b/packages/dream/dream.1.0.0~alpha1/opam new file mode 100644 index 00000000000..0b55c58448f --- /dev/null +++ b/packages/dream/dream.1.0.0~alpha1/opam @@ -0,0 +1,128 @@ +opam-version: "2.0" + +synopsis: "Tidy, feature-complete Web framework" +tags: ["http" "web" "framework" "websocket" "graphql" "server" "http2" "tls"] +description: """ +Dream is a feature-complete Web framework with a simple programming +model and no boilerplate. It provides only two data types, request and +response. + +Almost everything else is either a built-in OCaml type, or an +abbreviation for a bare function. For example, a Web app, known in +Dream as a handler, is just an ordinary function from requests to +responses. And a middleware is then just a function from handlers to +handlers. + +Within this model, Dream adds: + +- Session management with pluggable back ends. +- A fully composable router. +- Support for HTTP/1.1, HTTP/2, and HTTPS. +- WebSockets. +- GraphQL, including subscriptions and a built-in GraphiQL editor. +- SQL connection pool helpers. +- Server-side HTML templates. +- Automatic secure handling of cookies and forms. +- Unified, internationalization-friendly error handling. +- A neat log, and OCaml runtime configuration. +- Helpers for Web formats, such as Base64url, and a modern cipher. + +Because of the simple programming model, everything is optional and +composable. It is trivailly possible to strip Dream down to just a +bare driver of the various HTTP protocols. + +Dream is presented as a single module, whose API is documented on one +page. In addition, Dream comes with a large number of examples. +Security topics are introduced throughout, wherever they are +applicable.""" + +license: "MIT" +homepage: "https://github.com/aantron/dream" +doc: "https://aantron.github.io/dream" +bug-reports: "https://github.com/aantron/dream/issues" +dev-repo: "git+https://github.com/aantron/dream.git" + +author: "Anton Bachin " +maintainer: "Anton Bachin " + +depends: [ + "base-unix" + "base64" {>= "3.1.0"} # Base64.encode_string. + "bigarray-compat" + "caqti-lwt" + "conf-libev" + "cstruct" + "dune" {>= "2.7.0"} # --instrument-with. + "fmt" {>= "0.8.7"} # `Italic. + "graphql_parser" + "graphql-lwt" + "hmap" + "lwt" + "lwt_ppx" + "lwt_ssl" + "logs" {>= "0.5.0"} + "magic-mime" + "mirage-crypto" {>= "0.8.1"} # AES-256-GCM. + "mirage-crypto-rng" {>= "0.8.0"} # Signature of initialize. + "multipart-form-data" {>= "0.3.0"} + "ocaml" {>= "4.08.0"} + "opam-installer" {build} + "uri" + "yojson" # ... + + # Currently vendored. + # "gluten" + # "gluten-lwt-unix" + # "httpaf" + # "httpaf-lwt-unix" + # "h2" + # "h2-lwt-unix" + # "websocketaf" + + # Dependencies of vendored packages. + "angstrom" {>= "0.14.0"} + "bigstringaf" {>= "0.4.0"} + "digestif" {>= "0.7"} # websocket/af, sha1. + "faraday" {>= "0.6.1"} + "faraday-lwt-unix" + "psq" # h2. + "result" # http/af, websocket/af. + + # Testing, development. + "alcotest" {with-test} + "bisect_ppx" {dev & >= "2.5.0"} # --instrument-with. + "ppx_expect" {with-test} +] + +conflicts: [ + "gluten" + "httpaf" + "h2" + "websocketaf" +] + +build: [ + ["dune" "build" "-p" + "dream,gluten,gluten-lwt,gluten-lwt-unix,websocketaf,httpaf,httpaf-lwt,httpaf-lwt-unix,hpack,h2,h2-lwt,h2-lwt-unix" + "-j" jobs] +] + +install: [ + ["opam-installer" "--prefix" prefix "dream.install"] + ["opam-installer" "--prefix" prefix "src/vendor/gluten/gluten.install"] + ["opam-installer" "--prefix" prefix "src/vendor/gluten/gluten-lwt.install"] + ["opam-installer" "--prefix" prefix "src/vendor/gluten/gluten-lwt-unix.install"] + ["opam-installer" "--prefix" prefix "src/vendor/websocketaf/websocketaf.install"] + ["opam-installer" "--prefix" prefix "src/vendor/httpaf/httpaf.install"] + ["opam-installer" "--prefix" prefix "src/vendor/httpaf/httpaf-lwt.install"] + ["opam-installer" "--prefix" prefix "src/vendor/httpaf/httpaf-lwt-unix.install"] + ["opam-installer" "--prefix" prefix "src/vendor/h2/hpack.install"] + ["opam-installer" "--prefix" prefix "src/vendor/h2/h2.install"] + ["opam-installer" "--prefix" prefix "src/vendor/h2/h2-lwt.install"] + ["opam-installer" "--prefix" prefix "src/vendor/h2/h2-lwt-unix.install"] +] + +url { + src: "https://github.com/aantron/dream/releases/download/1.0.0-alpha1/dream-1.0.0-alpha1.tar.gz" + checksum: "md5=b8ad7f3e30f3e88e5451d92e42b49ce4" +}