├── dune-project ├── client ├── index.js ├── index.css └── app.ml ├── esy.lock ├── overrides │ ├── 41b6fb3db953254b0cb4c5e1b546f3f4 │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── esy.lock.json │ │ ├── azure-pipelines.yml │ │ ├── esy │ │ │ ├── test.sh │ │ │ └── test.c │ │ ├── .ci │ │ │ └── build.yaml │ │ ├── package.json │ │ └── README.md │ ├── d202330d7742e66dddc1582a6de9f2de │ │ ├── .gitignore │ │ ├── esy │ │ │ ├── test.c │ │ │ └── test.sh │ │ ├── README.md │ │ ├── azure-pipelines.yml │ │ ├── .ci │ │ │ └── build.yaml │ │ └── package.json │ ├── opam__s__conf_m4_opam__c__1_opam_override │ │ └── package.json │ ├── opam__s__conf_libssl_opam__c__3_opam_override │ │ └── package.json │ ├── opam__s__ocamlfind_secondary_opam__c__1.8.1_opam_override │ │ ├── files │ │ │ ├── gen-meta.sh │ │ │ └── gen-findlib-conf.sh │ │ └── package.json │ ├── opam__s__conf_pkg_config_opam__c__2_opam_override │ │ └── package.json │ ├── opam__s__mtime_opam__c__1.2.0_opam_override │ │ ├── package.json │ │ └── files │ │ │ └── mtime-1.2.0.patch │ ├── opam__s__ocaml_secondary_compiler_opam__c__4.08.1_1_opam_override │ │ ├── files │ │ │ ├── clone-flexdll │ │ │ ├── esy-build │ │ │ ├── configure-windows │ │ │ └── esy-configure │ │ └── package.json │ ├── opam__s__ocamlbuild_opam__c__0.14.0_opam_override │ │ └── package.json │ └── opam__s__ocamlfind_opam__c__1.8.1_opam_override │ │ ├── package.json │ │ └── files │ │ └── findlib-1.8.1.patch ├── opam │ ├── seq.base │ │ ├── files │ │ │ ├── seq.install │ │ │ └── META.seq │ │ └── opam │ ├── ocamlfind.1.8.1 │ │ ├── files │ │ │ ├── ocaml-stub │ │ │ └── ocamlfind.install │ │ └── opam │ ├── ocamlfind-secondary.1.8.1 │ │ ├── files │ │ │ ├── META.in │ │ │ └── ocaml-secondary-compiler.conf.in │ │ └── opam │ ├── base-unix.base │ │ └── opam │ ├── base-threads.base │ │ └── opam │ ├── base-bytes.base │ │ └── opam │ ├── ocaml-secondary-compiler.4.08.1-1 │ │ ├── files │ │ │ ├── 0001-Don-t-build-manpages-for-stdlib-docs.patch │ │ │ ├── 0001-Fix-failure-to-install-tools-links.patch │ │ │ └── fix-gcc10.patch │ │ └── opam │ ├── conf-m4.1 │ │ └── opam │ ├── faraday-lwt.0.8.1 │ │ └── opam │ ├── fix.20201120 │ │ └── opam │ ├── mmap.1.1.0 │ │ └── opam │ ├── conf-libssl.3 │ │ ├── files │ │ │ └── homebrew.sh │ │ └── opam │ ├── ppx_derivers.1.2.1 │ │ └── opam │ ├── result.1.5 │ │ └── opam │ ├── lwt_ssl.1.1.3 │ │ └── opam │ ├── faraday-lwt-unix.0.8.1 │ │ └── opam │ ├── lwt_ppx.2.0.2 │ │ └── opam │ ├── bigarray-compat.1.0.0 │ │ └── opam │ ├── ppx_yojson_conv_lib.v0.14.0 │ │ └── opam │ ├── stdio.v0.14.0 │ │ └── opam │ ├── graphql_parser.0.13.0 │ │ └── opam │ ├── menhir.20210419 │ │ └── opam │ ├── sexplib0.v0.14.0 │ │ └── opam │ ├── menhirLib.20210419 │ │ └── opam │ ├── menhirSdk.20210419 │ │ └── opam │ ├── ssl.0.5.10 │ │ └── opam │ ├── graphql-lwt.0.13.0 │ │ └── opam │ ├── reason.3.7.0 │ │ └── opam │ ├── psq.0.2.0 │ │ └── opam │ ├── dot-merlin-reader.4.1 │ │ └── opam │ ├── stringext.1.6.0 │ │ └── opam │ ├── hmap.0.8.1 │ │ └── opam │ ├── ke.0.4 │ │ └── opam │ ├── ocaml-compiler-libs.v0.12.3 │ │ └── opam │ ├── fpath.0.7.3 │ │ └── opam │ ├── ocamlbuild.0.14.0 │ │ └── opam │ ├── dune-glob.2.9.0 │ │ └── opam │ ├── merlin-extend.0.6 │ │ └── opam │ ├── uchar.0.0.2 │ │ └── opam │ ├── duration.0.1.3 │ │ └── opam │ ├── ocaml-syntax-shims.1.0.0 │ │ └── opam │ ├── re.1.9.0 │ │ └── opam │ ├── rresult.0.6.0 │ │ └── opam │ ├── stdlib-shims.0.3.0 │ │ └── opam │ ├── caqti-lwt.1.6.0 │ │ └── opam │ ├── faraday.0.8.1 │ │ └── opam │ ├── pecu.0.5 │ │ └── opam │ ├── base.v0.14.1 │ │ └── opam │ ├── eqaf.0.7 │ │ └── opam │ ├── yojson.1.7.0 │ │ └── opam │ ├── unstrctrd.0.2 │ │ └── opam │ ├── cppo.1.6.7 │ │ └── opam │ ├── dune-private-libs.2.9.0 │ │ └── opam │ ├── uri.4.2.0 │ │ └── opam │ ├── base64.3.5.0 │ │ └── opam │ ├── graphql.0.13.0 │ │ └── opam │ ├── prettym.0.0.1 │ │ └── opam │ ├── angstrom.0.15.0 │ │ └── opam │ ├── astring.0.8.5 │ │ └── opam │ ├── dune-build-info.2.9.0 │ │ └── opam │ ├── dune-action-plugin.2.9.0 │ │ └── opam │ ├── uutf.1.0.2 │ │ └── opam │ ├── uucp.13.0.0 │ │ └── opam │ ├── dune-configurator.2.9.0 │ │ └── opam │ ├── ocaml-lsp-server.1.7.0 │ │ └── opam │ ├── bigstringaf.0.8.0 │ │ └── opam │ ├── ocaml-migrate-parsetree.2.2.0 │ │ └── opam │ ├── fmt.0.8.9 │ │ └── opam │ ├── mtime.1.2.0 │ │ └── opam │ ├── cmdliner.1.0.4 │ │ └── opam │ ├── multipart_form.0.3.0 │ │ └── opam │ ├── odoc-parser.0.9.0 │ │ └── opam │ ├── cstruct.6.0.0 │ │ └── opam │ ├── magic-mime.1.2.0 │ │ └── opam │ ├── mirage-crypto.0.10.2 │ │ └── opam │ ├── mirage-crypto-rng.0.10.2 │ │ └── opam │ ├── ocplib-endian.1.1 │ │ └── opam │ ├── bigarray-overlap.0.2.0 │ │ └── opam │ ├── ptime.0.8.5 │ │ └── opam │ ├── easy-format.1.3.2 │ │ └── opam │ ├── biniou.1.2.1 │ │ └── opam │ ├── ocamlformat.0.19.0 │ │ └── opam │ ├── uuseg.13.0.0 │ │ └── opam │ ├── topkg.1.0.3 │ │ └── opam │ ├── conf-pkg-config.2 │ │ └── opam │ ├── pp.1.1.2 │ │ └── opam │ ├── ocp-indent.1.8.1 │ │ └── opam │ ├── ppxlib.0.22.2 │ │ └── opam │ ├── lwt.5.4.1 │ │ └── opam │ ├── csexp.1.5.1 │ │ └── opam │ ├── caqti.1.6.0 │ │ └── opam │ ├── digestif.1.0.0 │ │ └── opam │ ├── logs.0.7.0 │ │ └── opam │ ├── dune.2.9.0 │ │ └── opam │ └── dream.1.0.0~alpha2 │ │ └── opam ├── .gitignore └── .gitattributes ├── screenshot.png ├── .ocamlformat ├── bin └── dev.sh ├── server ├── dune └── server.eml.re ├── .gitignore ├── bsconfig.json ├── tailwind.config.js ├── package.json ├── esy.json └── README.md /dune-project: -------------------------------------------------------------------------------- 1 | (lang dune 2.7) 2 | (using action-plugin 0.1) 3 | -------------------------------------------------------------------------------- /client/index.js: -------------------------------------------------------------------------------- 1 | var app = require("./app.bs.js").main(document.body); 2 | -------------------------------------------------------------------------------- /esy.lock/overrides/41b6fb3db953254b0cb4c5e1b546f3f4/.gitignore: -------------------------------------------------------------------------------- 1 | test_dir 2 | -------------------------------------------------------------------------------- /esy.lock/overrides/d202330d7742e66dddc1582a6de9f2de/.gitignore: -------------------------------------------------------------------------------- 1 | test_dir 2 | -------------------------------------------------------------------------------- /esy.lock/opam/seq.base/files/seq.install: -------------------------------------------------------------------------------- 1 | lib:[ 2 | "META.seq" {"META"} 3 | ] 4 | -------------------------------------------------------------------------------- /client/index.css: -------------------------------------------------------------------------------- 1 | @tailwind base; 2 | @tailwind components; 3 | @tailwind utilities; 4 | -------------------------------------------------------------------------------- /screenshot.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/tcoopman/dream-melange-tea-tailwind/HEAD/screenshot.png -------------------------------------------------------------------------------- /esy.lock/.gitignore: -------------------------------------------------------------------------------- 1 | 2 | # Reset any possible .gitignore, we want all esy.lock to be un-ignored. 3 | !* 4 | -------------------------------------------------------------------------------- /.ocamlformat: -------------------------------------------------------------------------------- 1 | profile = sparse 2 | margin = 100 3 | parse-docstrings = true 4 | break-string-literals = never 5 | -------------------------------------------------------------------------------- /esy.lock/.gitattributes: -------------------------------------------------------------------------------- 1 | 2 | # Set eol to LF so files aren't converted to CRLF-eol on Windows. 3 | * text eol=lf linguist-generated 4 | -------------------------------------------------------------------------------- /bin/dev.sh: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env bash 2 | 3 | pkill -f "server/server.exe" 4 | esy 5 | npm run build 6 | npm run build-css 7 | npm run pack 8 | esy start & 9 | -------------------------------------------------------------------------------- /esy.lock/opam/ocamlfind.1.8.1/files/ocaml-stub: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | 3 | BINDIR=$(dirname "$(command -v ocamlc)") 4 | "$BINDIR/ocaml" -I "$OCAML_TOPLEVEL_PATH" "$@" 5 | -------------------------------------------------------------------------------- /esy.lock/opam/seq.base/files/META.seq: -------------------------------------------------------------------------------- 1 | name="seq" 2 | version="[distributed with OCaml 4.07 or above]" 3 | description="dummy backward-compatibility package for iterators" 4 | requires="" 5 | -------------------------------------------------------------------------------- /esy.lock/opam/ocamlfind-secondary.1.8.1/files/META.in: -------------------------------------------------------------------------------- 1 | description = "OCaml Secondary Compiler" 2 | version = "%{ocaml-secondary-compiler:version}%" 3 | directory = "%{ocaml-secondary-compiler:share}%/bin" 4 | -------------------------------------------------------------------------------- /server/dune: -------------------------------------------------------------------------------- 1 | (executable 2 | (name server) 3 | (libraries dream)) 4 | 5 | (rule 6 | (targets server.re) 7 | (deps server.eml.re) 8 | (action (run dream_eml %{deps} --workspace %{workspace_root}))) 9 | -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | # npm. 2 | node_modules/ 3 | 4 | # Melange, Dune. 5 | _build/ 6 | _esy/ 7 | .melange.eobjs/ 8 | dune.bsb 9 | /dune 10 | .merlin 11 | .bsb.lock 12 | 13 | 14 | # esbuild. 15 | static/ 16 | -------------------------------------------------------------------------------- /esy.lock/opam/base-unix.base/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "https://github.com/ocaml/opam-repository/issues" 3 | description: """ 4 | Unix library distributed with the OCaml compiler 5 | """ 6 | 7 | -------------------------------------------------------------------------------- /esy.lock/opam/base-threads.base/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "https://github.com/ocaml/opam-repository/issues" 3 | description: """ 4 | Threads library distributed with the OCaml compiler 5 | """ 6 | 7 | -------------------------------------------------------------------------------- /esy.lock/overrides/d202330d7742e66dddc1582a6de9f2de/esy/test.c: -------------------------------------------------------------------------------- 1 | #include 2 | 3 | int main(int arc, char *argv[]) 4 | { 5 | struct ev_loop *loop = ev_loop_new(EVFLAG_FORKCHECK); 6 | return 0; 7 | } 8 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__conf_m4_opam__c__1_opam_override/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "build": "true", 3 | "dependencies": { 4 | "esy-m4": "esy-packages/esy-m4#c7cf0ac9221be2b1f9d90e83559ca08397a629e7" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /esy.lock/opam/ocamlfind.1.8.1/files/ocamlfind.install: -------------------------------------------------------------------------------- 1 | bin: [ 2 | "src/findlib/ocamlfind" {"ocamlfind"} 3 | "?src/findlib/ocamlfind_opt" {"ocamlfind"} 4 | "?tools/safe_camlp4" 5 | ] 6 | toplevel: ["src/findlib/topfind"] 7 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__conf_libssl_opam__c__3_opam_override/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "build": "true", 3 | "dependencies": { 4 | "esy-openssl": "esy-packages/esy-openssl#44762916645a5b6d4f6037aabf80e95fa4140547" 5 | } 6 | } 7 | -------------------------------------------------------------------------------- /esy.lock/opam/base-bytes.base/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: " " 3 | authors: " " 4 | homepage: " " 5 | depends: [ 6 | "ocaml" {>= "4.02.0"} 7 | "ocamlfind" {>= "1.5.3"} 8 | ] 9 | synopsis: "Bytes library distributed with the OCaml compiler" 10 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocamlfind_secondary_opam__c__1.8.1_opam_override/files/gen-meta.sh: -------------------------------------------------------------------------------- 1 | OCAML_SECONDARY_COMPILER=$1 2 | 3 | cat >META < 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | }; 11 | 12 | let () = 13 | Dream.run 14 | @@ Dream.logger 15 | @@ Dream.router([ 16 | 17 | Dream.get("/", 18 | (_ => Dream.html(home))), 19 | 20 | Dream.get("/static/**", 21 | Dream.static("./static")), 22 | 23 | ]) 24 | @@ Dream.not_found; 25 | -------------------------------------------------------------------------------- /esy.lock/opam/seq.base/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: " " 3 | authors: " " 4 | homepage: " " 5 | depends: [ 6 | "ocaml" {>= "4.07.0"} 7 | ] 8 | dev-repo: "git+https://github.com/ocaml/ocaml.git" 9 | bug-reports: "https://caml.inria.fr/mantis/main_page.php" 10 | synopsis: 11 | "Compatibility package for OCaml's standard iterator type starting from 4.07." 12 | extra-files: [ 13 | ["seq.install" "md5=026b31e1df290373198373d5aaa26e42"] 14 | ["META.seq" "md5=b33c8a1a6c7ed797816ce27df4855107"] 15 | ] 16 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocaml_secondary_compiler_opam__c__4.08.1_1_opam_override/files/clone-flexdll: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | # clone-flexdll 4 | # 5 | # Brings in flexdll, if necessary 6 | 7 | if [ -d "flexdll" ] && [ -f "flexdll/flexdll.c" ]; then 8 | echo "[Flexdll] Already present, no need to clone." 9 | else 10 | echo "[Flexdll] Cloning..." 11 | git clone https://github.com/esy-ocaml/flexdll.git 12 | cd flexdll 13 | git checkout f84baaeae463f96f9582883a9cfb7dd1096757ff 14 | cd .. 15 | echo "[Flexdll] Clone successful!" 16 | fi -------------------------------------------------------------------------------- /esy.lock/overrides/41b6fb3db953254b0cb4c5e1b546f3f4/azure-pipelines.yml: -------------------------------------------------------------------------------- 1 | jobs: 2 | - template: .ci/build.yaml # Template reference 3 | parameters: 4 | host: macOS 5 | pool: 6 | vmImage: 'macOS-latest' 7 | 8 | - template: .ci/build.yaml # Template reference 9 | parameters: 10 | host: Linux 11 | pool: 12 | vmImage: 'ubuntu-latest' 13 | 14 | - template: .ci/build.yaml # Template reference 15 | parameters: 16 | host: Windows 17 | pool: 18 | vmImage: 'windows-latest' 19 | sign: true # Extra step on Windows only 20 | -------------------------------------------------------------------------------- /esy.lock/overrides/d202330d7742e66dddc1582a6de9f2de/azure-pipelines.yml: -------------------------------------------------------------------------------- 1 | jobs: 2 | - template: .ci/build.yaml # Template reference 3 | parameters: 4 | host: macOS 5 | pool: 6 | vmImage: 'macOS-10.13' 7 | 8 | - template: .ci/build.yaml # Template reference 9 | parameters: 10 | host: Linux 11 | pool: 12 | vmImage: 'Ubuntu-16.04' 13 | 14 | - template: .ci/build.yaml # Template reference 15 | parameters: 16 | host: Windows 17 | pool: 18 | vmImage: 'vs2017-win2016' 19 | sign: true # Extra step on Windows only 20 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocaml_secondary_compiler_opam__c__4.08.1_1_opam_override/files/esy-build: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env bash 2 | 3 | # esy-build 4 | # 5 | # Wrapper to execute appropriate build strategy, based on platform 6 | 7 | set -u 8 | set -e 9 | set -o pipefail 10 | 11 | case "$(uname -s)" in 12 | CYGWIN*|MINGW32*|MSYS*) 13 | echo "[esy-build] Detected windows environment..." 14 | make -j4 world.opt 15 | make flexlink.opt 16 | ;; 17 | *) 18 | echo "[esy-build] Detected OSX / Linux environment" 19 | make -j4 world.opt 20 | ;; 21 | esac 22 | 23 | # Common build steps 24 | make install -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocaml_secondary_compiler_opam__c__4.08.1_1_opam_override/files/configure-windows: -------------------------------------------------------------------------------- 1 | #! /bin/sh 2 | 3 | # configure-windows 4 | # 5 | # Creates a native Windows MingW build, based on: 6 | # https://github.com/ocaml/ocaml/blob/trunk/README.win32.adoc 7 | 8 | 9 | export prefix=C:/ocamlmgw64 10 | while : ; do 11 | case "$1" in 12 | "") break;; 13 | -prefix|--prefix) 14 | prefix=$2; shift;; 15 | esac 16 | shift 17 | done 18 | 19 | echo "[configure-windows] Setting up flexdll" 20 | ./clone-flexdll 21 | ./configure --build=x86_64-unknown-cygwin --host=x86_64-w64-mingw32 --prefix=$prefix 22 | make flexdll 23 | -------------------------------------------------------------------------------- /esy.lock/overrides/41b6fb3db953254b0cb4c5e1b546f3f4/esy/test.sh: -------------------------------------------------------------------------------- 1 | pwd 2 | mkdir -p _test 3 | cd _test 4 | 5 | if which x86_64-w64-mingw32-gcc; then 6 | CC=x86_64-w64-mingw32-gcc 7 | else 8 | CC=gcc 9 | fi 10 | 11 | echo "Using compiler: $CC" 12 | 13 | echo "include..." 14 | #ls -a $INCLUDE 15 | echo "lib.." 16 | #ls -a $cur__lib 17 | 18 | $CC ./../../esy/test.c -o ./test.exe -I$OPENSSL_INCLUDE_PATH -L$OPENSSL_LIB_PATH -lssl -lcrypto 19 | 20 | #export PATH=$PATH:$cur__bin:$cur__lib 21 | #export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$cur__lib 22 | 23 | #echo "Augmented path: $PATH" 24 | 25 | echo "Copying binaries..." 26 | #cp $cur__bin/*.dll . 27 | 28 | echo "Test executable path:" 29 | ls -a . 30 | 31 | ./test.exe 32 | -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dream-melange-tea-tailwind", 3 | "devDependencies": { 4 | "esbuild": "^0.12.15", 5 | "esy": "^0.6.10", 6 | "tailwindcss": "^2.2.7" 7 | }, 8 | "dependencies": { 9 | "bucklescript-tea": "^0.15.0" 10 | }, 11 | "scripts": { 12 | "postinstall": "esy", 13 | "build": "esy bsb -make-world -- --root .", 14 | "pack": "cp ./client/index.js _build/default/client && esbuild _build/default/client/index.js --bundle --outfile=static/index.js", 15 | "build-css": "tailwindcss -i ./client/index.css -o ./static/index.css", 16 | "start": "npm run build && npm run build-css && npm run pack && esy start", 17 | "dev": "watchexec -w client -w server bin/dev.sh" 18 | } 19 | } 20 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocamlbuild_opam__c__0.14.0_opam_override/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "build": [ 3 | [ 4 | "bash", 5 | "-c", 6 | "#{os == 'windows' ? 'patch -p1 < ocamlbuild-0.14.0.patch' : 'true'}" 7 | ], 8 | [ 9 | "make", 10 | "-f", 11 | "configure.make", 12 | "all", 13 | "OCAMLBUILD_PREFIX=#{self.install}", 14 | "OCAMLBUILD_BINDIR=#{self.bin}", 15 | "OCAMLBUILD_LIBDIR=#{self.lib}", 16 | "OCAMLBUILD_MANDIR=#{self.man}", 17 | "OCAMLBUILD_NATIVE=true", 18 | "OCAMLBUILD_NATIVE_TOOLS=true" 19 | ], 20 | [ 21 | "make", 22 | "check-if-preinstalled", 23 | "all", 24 | "#{os == 'windows' ? 'install' : 'opam-install'}" 25 | ] 26 | ] 27 | } 28 | -------------------------------------------------------------------------------- /esy.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "dream-melange-tea-tailwind", 3 | "dependencies": { 4 | "@opam/dream": "1.0.0~alpha2", 5 | "@opam/dune": "^2.0", 6 | "melange": "melange-re/melange", 7 | "ocaml": "4.12.x" 8 | }, 9 | "devDependencies": { 10 | "@opam/ocaml-lsp-server": "*", 11 | "@opam/ocamlfind-secondary": "*", 12 | "@opam/ocamlformat": "0.19.0" 13 | }, 14 | "resolutions": { 15 | "@opam/conf-libev": "esy-packages/libev:package.json#0b5eb6685b688649045aceac55dc559f6f21b829" 16 | }, 17 | "esy": { 18 | "buildsInSource": "unsafe", 19 | "build": [ 20 | "ln -sfn #{melange.install} node_modules/bs-platform", 21 | "bsb -make-world" 22 | ] 23 | }, 24 | "scripts": { 25 | "start": "dune exec --root . server/server.exe" 26 | } 27 | } 28 | -------------------------------------------------------------------------------- /esy.lock/opam/ocamlfind-secondary.1.8.1/files/ocaml-secondary-compiler.conf.in: -------------------------------------------------------------------------------- 1 | path(secondary) = "%{ocaml-secondary-compiler:share}%/lib" 2 | destdir(secondary) = "%{ocaml-secondary-compiler:share}%/lib" 3 | stdlib(secondary) = "%{ocaml-secondary-compiler:share}%/lib" 4 | ocamlc(secondary) = "%{ocaml-secondary-compiler:share}%/bin/ocamlc" 5 | ocamlopt(secondary) = "%{ocaml-secondary-compiler:share}%/bin/ocamlopt" 6 | ocamlcp(secondary) = "%{ocaml-secondary-compiler:share}%/bin/ocamlcp" 7 | ocamlmklib(secondary) = "%{ocaml-secondary-compiler:share}%/bin/ocamlmklib" 8 | ocamlmktop(secondary) = "%{ocaml-secondary-compiler:share}%/bin/ocamlmktop" 9 | ocamldoc(secondary) = "%{ocaml-secondary-compiler:share}%/bin/ocamldoc" 10 | ocamldep(secondary) = "%{ocaml-secondary-compiler:share}%/bin/ocamldep" 11 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # `dream-melange-tea-tailwind` 2 | 3 | ![screenshot](./screenshot.png) 4 | 5 | An example repo with that integrates [dream](https://github.com/aantron/dream) and [melange](https://github.com/melange-re/melange) with [bucklescript-tea](https://github.com/OvermindDL1/bucklescript-tea), 6 | build with [esbuild](https://esbuild.github.io) and integrating [tailwindcss](https://tailwindcss.com/) 7 | 8 | To install, do 9 | 10 | ```bash 11 | npm install 12 | ``` 13 | 14 | if you have [watchexec](https://github.com/watchexec/watchexec) installed, you can run `npm run dev` 15 | to have watch mode enabled. This will rebuild on changes in the `client` and `server` directory. 16 | 17 | or run `npm run start` without watchmode 18 | 19 | Then visit [http://localhost:8080](http://localhost:8080) 20 | 21 | 22 | -------------------------------------------------------------------------------- /esy.lock/opam/ocaml-secondary-compiler.4.08.1-1/files/0001-Don-t-build-manpages-for-stdlib-docs.patch: -------------------------------------------------------------------------------- 1 | From 0cf3c6ad7ce2a2b2806faceccfb0a9321da5e22a Mon Sep 17 00:00:00 2001 2 | From: David Allsopp 3 | Date: Fri, 26 Jul 2019 12:12:19 +0100 4 | Subject: [PATCH] Don't build manpages for stdlib docs 5 | --- 6 | ocamldoc/Makefile | 2 +- 7 | 1 file changed, 1 insertion(+), 1 deletion(-) 8 | 9 | diff --git a/ocamldoc/Makefile b/ocamldoc/Makefile 10 | index b109815071..e31e441f61 100644 11 | --- a/ocamldoc/Makefile 12 | +++ b/ocamldoc/Makefile 13 | @@ -170,7 +170,7 @@ LIBCMIFILES = $(LIBCMOFILES:.cmo=.cmi) 14 | 15 | 16 | .PHONY: all 17 | -all: lib exe generators manpages 18 | +all: lib exe generators 19 | 20 | manpages: generators 21 | 22 | -- 23 | 2.20.1 24 | 25 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocamlfind_secondary_opam__c__1.8.1_opam_override/files/gen-findlib-conf.sh: -------------------------------------------------------------------------------- 1 | OCAML_SECONDARY_COMPILER=$1 2 | 3 | cat >ocaml-secondary-compiler.conf <" 3 | authors: [ "Spiros Eliopoulos " ] 4 | license: "BSD-3-clause" 5 | homepage: "https://github.com/inhabitedtype/faraday" 6 | bug-reports: "https://github.com/inhabitedtype/faraday/issues" 7 | dev-repo: "git+https://github.com/inhabitedtype/faraday.git" 8 | build: [ 9 | ["dune" "subst"] {dev} 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 12 | ] 13 | depends: [ 14 | "ocaml" {>= "4.03.0"} 15 | "dune" {>= "1.11"} 16 | "faraday" {>= "0.5.0"} 17 | "lwt" 18 | ] 19 | synopsis: "Lwt support for Faraday" 20 | url { 21 | src: "https://github.com/inhabitedtype/faraday/archive/0.8.1.tar.gz" 22 | checksum: "md5=51b97f082af4679e3b428a03c3b657de" 23 | } 24 | -------------------------------------------------------------------------------- /esy.lock/opam/fix.20201120/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "francois.pottier@inria.fr" 3 | authors: [ 4 | "François Pottier " 5 | ] 6 | homepage: "https://gitlab.inria.fr/fpottier/fix" 7 | dev-repo: "git+https://gitlab.inria.fr/fpottier/fix.git" 8 | bug-reports: "francois.pottier@inria.fr" 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | depends: [ 13 | "ocaml" { >= "4.03" } 14 | "dune" {>= "1.3" } 15 | ] 16 | synopsis: "Facilities for memoization and fixed points" 17 | url { 18 | src: 19 | "https://gitlab.inria.fr/fpottier/fix/-/archive/20201120/archive.tar.gz" 20 | checksum: [ 21 | "md5=7eb570b759635fe66f3556d2b1cc88e3" 22 | "sha512=344dcc619f9e8b8a6c998775b6d2dab2ea5253e6a67abe4797f76dc5dd30bc776568abce1e90477422e9db447821579889737e3531c42139708f813e983ea5d4" 23 | ] 24 | } 25 | -------------------------------------------------------------------------------- /esy.lock/opam/mmap.1.1.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "jeremie@dimino.org" 3 | authors: ["Jérémie Dimino " "Anton Bachin" ] 4 | homepage: "https://github.com/mirage/mmap" 5 | bug-reports: "https://github.com/mirage/mmap/issues" 6 | doc: "https://mirage.github.io/mmap/" 7 | dev-repo: "git+https://github.com/mirage/mmap.git" 8 | license: "LGPL-2.1-only with OCaml-LGPL-linking-exception" 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | depends: [ 13 | "ocaml" 14 | "dune" {>= "1.6"} 15 | ] 16 | synopsis: "File mapping functionality" 17 | description: """ 18 | This project provides a Mmap.map_file functions for mapping files in memory. 19 | """ 20 | url { 21 | src: 22 | "https://github.com/mirage/mmap/releases/download/v1.1.0/mmap-v1.1.0.tbz" 23 | checksum: "md5=8c5d5fbc537296dc525867535fb878ba" 24 | } 25 | -------------------------------------------------------------------------------- /esy.lock/opam/conf-libssl.3/files/homebrew.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh -ex 2 | 3 | # check the openssl installation 4 | # and symlink the homebrew pkg-config files for openssl to the opam local pkgconfig directory 5 | 6 | brew_pkg_config=$(brew --prefix openssl)/lib/pkgconfig 7 | 8 | case "$1" in 9 | check) 10 | if test "$#" != 1; then 11 | echo "Usage: $0 check" 12 | exit 1 13 | fi 14 | export PKG_CONFIG_PATH=$brew_pkg_config:$PKG_CONFIG_PATH 15 | pkg-config --print-errors --exists openssl;; 16 | install) 17 | if test "$#" != 2; then 18 | echo "Usage: $0 install " 19 | exit 1 20 | fi 21 | cd "$brew_pkg_config" 22 | for file in $(ls *.pc); do 23 | if test -f "$file"; then 24 | ln -s "$brew_pkg_config/$file" "$2/pkgconfig/$file" 25 | fi 26 | done;; 27 | *) 28 | echo "Usage: $0 " 29 | exit 1;; 30 | esac 31 | -------------------------------------------------------------------------------- /esy.lock/opam/ppx_derivers.1.2.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "jeremie@dimino.org" 3 | authors: ["Jérémie Dimino"] 4 | license: "BSD-3-Clause" 5 | homepage: "https://github.com/ocaml-ppx/ppx_derivers" 6 | bug-reports: "https://github.com/ocaml-ppx/ppx_derivers/issues" 7 | dev-repo: "git://github.com/ocaml-ppx/ppx_derivers.git" 8 | build: [ 9 | ["dune" "build" "-p" name "-j" jobs] 10 | ] 11 | depends: [ 12 | "ocaml" 13 | "dune" 14 | ] 15 | synopsis: "Shared [@@deriving] plugin registry" 16 | description: """ 17 | Ppx_derivers is a tiny package whose sole purpose is to allow 18 | ppx_deriving and ppx_type_conv to inter-operate gracefully when linked 19 | as part of the same ocaml-migrate-parsetree driver.""" 20 | url { 21 | src: "https://github.com/ocaml-ppx/ppx_derivers/archive/1.2.1.tar.gz" 22 | checksum: "md5=5dc2bf130c1db3c731fe0fffc5648b41" 23 | } 24 | -------------------------------------------------------------------------------- /esy.lock/opam/result.1.5/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Jane Street developers" 3 | authors: ["Jane Street Group, LLC"] 4 | homepage: "https://github.com/janestreet/result" 5 | dev-repo: "git+https://github.com/janestreet/result.git" 6 | bug-reports: "https://github.com/janestreet/result/issues" 7 | license: "BSD-3-Clause" 8 | build: [["dune" "build" "-p" name "-j" jobs]] 9 | depends: [ 10 | "ocaml" 11 | "dune" {>= "1.0"} 12 | ] 13 | synopsis: "Compatibility Result module" 14 | description: """ 15 | Projects that want to use the new result type defined in OCaml >= 4.03 16 | while staying compatible with older version of OCaml should use the 17 | Result module defined in this library.""" 18 | url { 19 | src: 20 | "https://github.com/janestreet/result/releases/download/1.5/result-1.5.tbz" 21 | checksum: "md5=1b82dec78849680b49ae9a8a365b831b" 22 | } 23 | -------------------------------------------------------------------------------- /esy.lock/opam/lwt_ssl.1.1.3/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | 3 | synopsis: "OpenSSL binding with concurrent I/O" 4 | 5 | license: "LGPL with OpenSSL linking exception" 6 | homepage: "https://github.com/ocsigen/lwt_ssl" 7 | doc: "https://github.com/ocsigen/lwt_ssl/blob/master/src/lwt_ssl.mli" 8 | bug-reports: "https://github.com/ocsigen/lwt_ssl/issues" 9 | 10 | authors: [ 11 | "Jérôme Vouillon" 12 | "Jérémie Dimino" 13 | ] 14 | maintainer: "Anton Bachin " 15 | dev-repo: "git+https://github.com/ocsigen/lwt_ssl.git" 16 | 17 | depends: [ 18 | "base-unix" 19 | "dune" 20 | "lwt" {>= "3.0.0"} 21 | "ocaml" 22 | "ssl" {>= "0.5.0"} 23 | ] 24 | 25 | build: [ 26 | ["dune" "build" "-p" name "-j" jobs] 27 | ] 28 | 29 | url { 30 | src: "https://github.com/ocsigen/lwt_ssl/archive/1.1.3.tar.gz" 31 | checksum: "md5=b18414b2ef71ededa07666dfc467f10a" 32 | } 33 | -------------------------------------------------------------------------------- /esy.lock/opam/faraday-lwt-unix.0.8.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Spiros Eliopoulos " 3 | authors: [ "Spiros Eliopoulos " ] 4 | license: "BSD-3-clause" 5 | homepage: "https://github.com/inhabitedtype/faraday" 6 | bug-reports: "https://github.com/inhabitedtype/faraday/issues" 7 | dev-repo: "git+https://github.com/inhabitedtype/faraday.git" 8 | build: [ 9 | ["dune" "subst"] {dev} 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 12 | ] 13 | depends: [ 14 | "ocaml" {>= "4.03.0"} 15 | "dune" {>= "1.11"} 16 | "faraday-lwt" 17 | "lwt" {>= "2.7.0"} 18 | "base-unix" 19 | ] 20 | synopsis: "Lwt_unix support for Faraday" 21 | url { 22 | src: "https://github.com/inhabitedtype/faraday/archive/0.8.1.tar.gz" 23 | checksum: "md5=51b97f082af4679e3b428a03c3b657de" 24 | } 25 | -------------------------------------------------------------------------------- /esy.lock/opam/lwt_ppx.2.0.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: 3 | "PPX syntax for Lwt, providing something similar to async/await from JavaScript" 4 | maintainer: "Anton Bachin " 5 | authors: "Gabriel Radanne" 6 | license: "MIT" 7 | homepage: "https://github.com/ocsigen/lwt" 8 | doc: "https://ocsigen.org/lwt/dev/api/Ppx_lwt" 9 | bug-reports: "https://github.com/ocsigen/lwt/issues" 10 | depends: [ 11 | "dune" {>= "1.8.0"} 12 | "lwt" 13 | "ocaml" {>= "4.02.0"} 14 | "ppxlib" {>= "0.16.0"} 15 | ] 16 | build: ["dune" "build" "-p" name "-j" jobs] 17 | dev-repo: "git+https://github.com/ocsigen/lwt.git" 18 | url { 19 | src: "https://github.com/ocsigen/lwt/archive/5.4.0.zip" 20 | checksum: [ 21 | "md5=fc4721bdb1a01225b96e3a2debde95fa" 22 | "sha512=e427f08223b77f9af696c9e6f90ff68e27e02e446910ef90d3da542e7b00bf23dd191ac77c1871288faa2289f8d28fc2f44efc3d3fe9165fe1c7a6be88ee49ff" 23 | ] 24 | } -------------------------------------------------------------------------------- /esy.lock/opam/bigarray-compat.1.0.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Compatibility library to use Stdlib.Bigarray when possible" 3 | maintainer: "Lucas Pluvinage " 4 | authors: "Lucas Pluvinage " 5 | license: "ISC" 6 | homepage: "https://github.com/mirage/bigarray-compat" 7 | bug-reports: "https://github.com/mirage/bigarray-compat/issues" 8 | depends: [ 9 | "ocaml" {>= "4.02.3"} 10 | "dune" {>= "1.0"} 11 | ] 12 | build: [ 13 | ["dune" "subst"] {dev} 14 | ["dune" "build" "-p" name "-j" jobs] 15 | ] 16 | dev-repo: "git+https://github.com/mirage/bigarray-compat.git" 17 | url { 18 | src: "https://github.com/mirage/bigarray-compat/archive/v1.0.0.tar.gz" 19 | checksum: [ 20 | "md5=1cc7c25382a8900bada34aadfd66632e" 21 | "sha512=c365fee15582aca35d7b05268cde29e54774ad7df7be56762b4aad78ca1409d4326ad3b34af0f1cc2c7b872837290a9cd9ff43b47987c03bba7bba32fe8a030f" 22 | ] 23 | } 24 | -------------------------------------------------------------------------------- /esy.lock/opam/ppx_yojson_conv_lib.v0.14.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Jane Street developers" 3 | authors: ["Jane Street Group, LLC"] 4 | homepage: "https://github.com/janestreet/ppx_yojson_conv_lib" 5 | bug-reports: "https://github.com/janestreet/ppx_yojson_conv_lib/issues" 6 | dev-repo: "git+https://github.com/janestreet/ppx_yojson_conv_lib.git" 7 | doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/ppx_yojson_conv_lib/index.html" 8 | license: "MIT" 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | depends: [ 13 | "ocaml" {>= "4.02.3"} 14 | "dune" {>= "2.0.0"} 15 | "yojson" {>= "1.7.0"} 16 | ] 17 | synopsis: "Runtime lib for ppx_yojson_conv" 18 | description: " 19 | Part of the Jane Street's PPX rewriters collection. 20 | " 21 | url { 22 | src: "https://ocaml.janestreet.com/ocaml-core/v0.14/files/ppx_yojson_conv_lib-v0.14.0.tar.gz" 23 | checksum: "md5=e23c5593a7211ad4fb09e26e9a74698a" 24 | } 25 | -------------------------------------------------------------------------------- /esy.lock/opam/ocaml-secondary-compiler.4.08.1-1/files/0001-Fix-failure-to-install-tools-links.patch: -------------------------------------------------------------------------------- 1 | From 705739fa54260b7a0e6cbba0b5a99e52c79f9c09 Mon Sep 17 00:00:00 2001 2 | From: David Allsopp 3 | Date: Tue, 6 Aug 2019 09:23:06 +0100 4 | Subject: [PATCH] Fix failure to install tools links 5 | 6 | In --disable-installing-bytecode-programs mode, the .opt version of the 7 | tools is installed, but the symlink for the tool itself is not created. 8 | --- 9 | tools/Makefile | 1 + 10 | 1 file changed, 1 insertion(+) 11 | 12 | diff --git a/tools/Makefile b/tools/Makefile 13 | index 530dd37f34..1b3014a3ab 100644 14 | --- a/tools/Makefile 15 | +++ b/tools/Makefile 16 | @@ -197,6 +197,7 @@ else 17 | do \ 18 | if test -f "$$i".opt; then \ 19 | $(INSTALL_PROG) "$$i.opt" "$(INSTALL_BINDIR)/$$i.opt$(EXE)"; \ 20 | + (cd "$(INSTALL_BINDIR)/" && $(LN) "$$i.opt$(EXE)" "$$i$(EXE)"); \ 21 | fi; \ 22 | done 23 | endif 24 | -- 25 | 2.20.1 26 | 27 | -------------------------------------------------------------------------------- /esy.lock/opam/stdio.v0.14.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Jane Street developers" 3 | authors: ["Jane Street Group, LLC"] 4 | homepage: "https://github.com/janestreet/stdio" 5 | bug-reports: "https://github.com/janestreet/stdio/issues" 6 | dev-repo: "git+https://github.com/janestreet/stdio.git" 7 | doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/stdio/index.html" 8 | license: "MIT" 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | depends: [ 13 | "ocaml" {>= "4.04.2"} 14 | "base" {>= "v0.14" & < "v0.15"} 15 | "dune" {>= "2.0.0"} 16 | ] 17 | synopsis: "Standard IO library for OCaml" 18 | description: " 19 | Stdio implements simple input/output functionalities for OCaml. 20 | 21 | It re-exports the input/output functions of the OCaml standard 22 | libraries using a more consistent API. 23 | " 24 | url { 25 | src: "https://ocaml.janestreet.com/ocaml-core/v0.14/files/stdio-v0.14.0.tar.gz" 26 | checksum: "md5=4cbdf15f0be88c3258aaeff9e04e00e9" 27 | } 28 | -------------------------------------------------------------------------------- /esy.lock/opam/graphql_parser.0.13.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Andreas Garnaes " 3 | authors: "Andreas Garnaes " 4 | homepage: "https://github.com/andreas/ocaml-graphql-server" 5 | doc: "https://andreas.github.io/ocaml-graphql-server/" 6 | bug-reports: "https://github.com/andreas/ocaml-graphql-server/issues" 7 | dev-repo: "git+https://github.com/andreas/ocaml-graphql-server.git" 8 | 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 12 | ] 13 | 14 | depends: [ 15 | "ocaml" {>= "4.03.0"} 16 | "dune" {>= "1.4"} 17 | "menhir" {build & >= "20180523"} 18 | "alcotest" {with-test & >= "0.8.1"} 19 | "fmt" {>= "0.8.0"} 20 | "re" {>= "1.5.0"} 21 | ] 22 | 23 | synopsis: "Library for parsing GraphQL queries" 24 | 25 | url { 26 | archive: "https://github.com/andreas/ocaml-graphql-server/releases/download/0.13.0/graphql-0.13.0.tbz" 27 | checksum: "089104444ae28ebcfa85fec88628507a" 28 | } 29 | -------------------------------------------------------------------------------- /esy.lock/overrides/41b6fb3db953254b0cb4c5e1b546f3f4/esy/test.c: -------------------------------------------------------------------------------- 1 | /* From: https://wiki.openssl.org/index.php/Libcrypto_API */ 2 | 3 | #include 4 | #include 5 | #include 6 | 7 | int main(int arc, char *argv[]) 8 | { 9 | /* Load the human readable error strings for libcrypto */ 10 | ERR_load_crypto_strings(); 11 | 12 | /* Load all digest and cipher algorithms */ 13 | OpenSSL_add_all_algorithms(); 14 | 15 | /* Load config file, and other important initialisation */ 16 | CONF_modules_load(NULL, NULL, 0); 17 | 18 | printf("OpenSSL successfully initialized.\n"); 19 | 20 | /* Clean up */ 21 | 22 | /* Removes all digests and ciphers */ 23 | EVP_cleanup(); 24 | 25 | /* if you omit the next, a small leak may be left when you make use of the BIO (low level API) for e.g. base64 transformations */ 26 | CRYPTO_cleanup_all_ex_data(); 27 | 28 | /* Remove error strings */ 29 | ERR_free_strings(); 30 | 31 | return 0; 32 | } 33 | -------------------------------------------------------------------------------- /esy.lock/opam/menhir.20210419/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "francois.pottier@inria.fr" 3 | authors: [ 4 | "François Pottier " 5 | "Yann Régis-Gianas " 6 | ] 7 | homepage: "http://gitlab.inria.fr/fpottier/menhir" 8 | dev-repo: "git+https://gitlab.inria.fr/fpottier/menhir.git" 9 | bug-reports: "https://gitlab.inria.fr/fpottier/menhir/-/issues" 10 | license: "LGPL-2.0-only with OCaml-LGPL-linking-exception" 11 | build: [ 12 | ["dune" "build" "-p" name "-j" jobs] 13 | ] 14 | depends: [ 15 | "ocaml" {>= "4.02.3"} 16 | "dune" {>= "2.2.0"} 17 | "menhirLib" {= version} 18 | "menhirSdk" {= version} 19 | ] 20 | synopsis: "An LR(1) parser generator" 21 | url { 22 | src: 23 | "https://gitlab.inria.fr/fpottier/menhir/-/archive/20210419/archive.tar.gz" 24 | checksum: [ 25 | "md5=1af2d137eb20811c74ca516500164fd4" 26 | "sha512=37a88b3ea0bde6089e5fbf0c1f10c1867c4edcd033ed3d5b75e7ed93e14ddd4f4c4db96baf638a054f65e294b83411497615c7fc14c6ff3a2a007e70f9d12c98" 27 | ] 28 | } 29 | -------------------------------------------------------------------------------- /esy.lock/opam/sexplib0.v0.14.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Jane Street developers" 3 | authors: ["Jane Street Group, LLC"] 4 | homepage: "https://github.com/janestreet/sexplib0" 5 | bug-reports: "https://github.com/janestreet/sexplib0/issues" 6 | dev-repo: "git+https://github.com/janestreet/sexplib0.git" 7 | doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/sexplib0/index.html" 8 | license: "MIT" 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | depends: [ 13 | "ocaml" {>= "4.04.2"} 14 | "dune" {>= "2.0.0"} 15 | ] 16 | synopsis: "Library containing the definition of S-expressions and some base converters" 17 | description: " 18 | Part of Jane Street's Core library 19 | The Core suite of libraries is an industrial strength alternative to 20 | OCaml's standard library that was developed by Jane Street, the 21 | largest industrial user of OCaml. 22 | " 23 | url { 24 | src: "https://ocaml.janestreet.com/ocaml-core/v0.14/files/sexplib0-v0.14.0.tar.gz" 25 | checksum: "md5=37aff0af8f8f6f759249475684aebdc4" 26 | } 27 | -------------------------------------------------------------------------------- /esy.lock/opam/menhirLib.20210419/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "francois.pottier@inria.fr" 3 | authors: [ 4 | "François Pottier " 5 | "Yann Régis-Gianas " 6 | ] 7 | homepage: "http://gitlab.inria.fr/fpottier/menhir" 8 | dev-repo: "git+https://gitlab.inria.fr/fpottier/menhir.git" 9 | bug-reports: "https://gitlab.inria.fr/fpottier/menhir/-/issues" 10 | license: "LGPL-2.0-only with OCaml-LGPL-linking-exception" 11 | build: [ 12 | ["dune" "build" "-p" name "-j" jobs] 13 | ] 14 | depends: [ 15 | "ocaml" { >= "4.02.3" } 16 | "dune" { >= "2.0.0" } 17 | ] 18 | conflicts: [ 19 | "menhir" { != version } 20 | ] 21 | synopsis: "Runtime support library for parsers generated by Menhir" 22 | url { 23 | src: 24 | "https://gitlab.inria.fr/fpottier/menhir/-/archive/20210419/archive.tar.gz" 25 | checksum: [ 26 | "md5=1af2d137eb20811c74ca516500164fd4" 27 | "sha512=37a88b3ea0bde6089e5fbf0c1f10c1867c4edcd033ed3d5b75e7ed93e14ddd4f4c4db96baf638a054f65e294b83411497615c7fc14c6ff3a2a007e70f9d12c98" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /esy.lock/opam/menhirSdk.20210419/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "francois.pottier@inria.fr" 3 | authors: [ 4 | "François Pottier " 5 | "Yann Régis-Gianas " 6 | ] 7 | homepage: "http://gitlab.inria.fr/fpottier/menhir" 8 | dev-repo: "git+https://gitlab.inria.fr/fpottier/menhir.git" 9 | bug-reports: "https://gitlab.inria.fr/fpottier/menhir/-/issues" 10 | license: "LGPL-2.0-only with OCaml-LGPL-linking-exception" 11 | build: [ 12 | ["dune" "build" "-p" name "-j" jobs] 13 | ] 14 | depends: [ 15 | "ocaml" { >= "4.02.3" } 16 | "dune" { >= "2.0.0" } 17 | ] 18 | conflicts: [ 19 | "menhir" { != version } 20 | ] 21 | synopsis: "Compile-time library for auxiliary tools related to Menhir" 22 | url { 23 | src: 24 | "https://gitlab.inria.fr/fpottier/menhir/-/archive/20210419/archive.tar.gz" 25 | checksum: [ 26 | "md5=1af2d137eb20811c74ca516500164fd4" 27 | "sha512=37a88b3ea0bde6089e5fbf0c1f10c1867c4edcd033ed3d5b75e7ed93e14ddd4f4c4db96baf638a054f65e294b83411497615c7fc14c6ff3a2a007e70f9d12c98" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /esy.lock/opam/ssl.0.5.10/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Samuel Mimram " 3 | homepage: "https://github.com/savonet/ocaml-ssl" 4 | dev-repo: "git+https://github.com/savonet/ocaml-ssl.git" 5 | bug-reports: "https://github.com/savonet/ocaml-ssl/issues" 6 | build: [ 7 | ["dune" "subst"] {dev} 8 | ["dune" "build" "-p" name "-j" jobs] 9 | ] 10 | depends: [ 11 | "ocaml" {>= "4.02.0"} 12 | "dune" {>= "2.0.0"} 13 | "dune-configurator" 14 | "base-unix" 15 | "conf-libssl" 16 | ] 17 | x-ci-accept-failures: [ 18 | "centos-7" # https://github.com/savonet/ocaml-ssl/pull/73 19 | "oraclelinux-7" # https://github.com/savonet/ocaml-ssl/pull/73 20 | ] 21 | synopsis: "Bindings for OpenSSL" 22 | authors: "Samuel Mimram " 23 | url { 24 | src: "https://github.com/savonet/ocaml-ssl/archive/v0.5.10.tar.gz" 25 | checksum: [ 26 | "md5=afebbdc3130c1addf1da31e3b92c1dcd" 27 | "sha512=f2d0acc8dcdb0a36c8ad236f60c6e9d7f8f76ea25183017218953dbe3432a19de5b0be8214714add71b88b211ac78318f09429d4df7ecba1e19dc94d4414f0e1" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /esy.lock/overrides/41b6fb3db953254b0cb4c5e1b546f3f4/.ci/build.yaml: -------------------------------------------------------------------------------- 1 | parameters: 2 | host: '' 3 | pool: '' 4 | sign: false 5 | 6 | jobs: 7 | - job: ${{ parameters.host }} 8 | pool: ${{ parameters.pool }} 9 | steps: 10 | - ${{ if eq(parameters.sign, 'true') }}: 11 | - script: 'npm install -g esy@latest --unsafe-perm' 12 | displayName: 'Installing deps' 13 | - ${{ if eq(parameters.sign, 'false') }}: 14 | - script: 'sudo npm install -g esy@latest --unsafe-perm' 15 | displayName: 'Installing deps' 16 | - script: mkdir -p test_dir 17 | displayName: 'make test dir' 18 | - bash: | 19 | cd test_dir 20 | echo '{"dependencies": {"@esy-packages/esy-openssl" : "esy-packages/esy-openssl:package.json#'$(git rev-parse --short HEAD)'"}}' > package.json 21 | displayName: 'create test package.json' 22 | - script: | 23 | cd test_dir 24 | esy install 25 | displayName: 'Install esy-deps' 26 | - script: | 27 | cd test_dir 28 | esy x which openssl 29 | esy sh ../esy/test.sh 30 | displayName: 'Building and dry run' 31 | -------------------------------------------------------------------------------- /esy.lock/opam/graphql-lwt.0.13.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Andreas Garnaes " 3 | authors: "Andreas Garnaes " 4 | homepage: "https://github.com/andreas/ocaml-graphql-server" 5 | doc: "https://andreas.github.io/ocaml-graphql-server/" 6 | bug-reports: "https://github.com/andreas/ocaml-graphql-server/issues" 7 | dev-repo: "git+https://github.com/andreas/ocaml-graphql-server.git" 8 | 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 12 | ] 13 | 14 | depends: [ 15 | "ocaml" {>= "4.03.0"} 16 | "dune" {>= "1.1"} 17 | "graphql" {>= "0.13.0"} 18 | "alcotest" {with-test} 19 | "lwt" 20 | ] 21 | 22 | synopsis: "Build GraphQL schemas with Lwt support" 23 | 24 | description: """ 25 | `graphql-lwt` adds support for Lwt to `graphql`, so you can use Lwt in your GraphQL schema resolver functions.""" 26 | 27 | url { 28 | archive: "https://github.com/andreas/ocaml-graphql-server/releases/download/0.13.0/graphql-0.13.0.tbz" 29 | checksum: "089104444ae28ebcfa85fec88628507a" 30 | } -------------------------------------------------------------------------------- /esy.lock/overrides/d202330d7742e66dddc1582a6de9f2de/.ci/build.yaml: -------------------------------------------------------------------------------- 1 | parameters: 2 | host: '' 3 | pool: '' 4 | sign: false 5 | 6 | jobs: 7 | - job: ${{ parameters.host }} 8 | pool: ${{ parameters.pool }} 9 | steps: 10 | - ${{ if eq(parameters.sign, 'true') }}: 11 | - script: 'npm install -g esy@latest --unsafe-perm' 12 | displayName: 'Installing deps' 13 | - ${{ if eq(parameters.sign, 'false') }}: 14 | - script: 'sudo npm install -g esy@latest --unsafe-perm' 15 | displayName: 'Installing deps' 16 | - script: mkdir -p test_dir 17 | displayName: 'make test dir' 18 | - bash: | 19 | cd test_dir 20 | echo '{"dependencies": {"@esy-packages/libev" : "esy-packages/libev:package.json#'$(git rev-parse --short HEAD)'"}}' > package.json 21 | displayName: 'create test package.json' 22 | - script: | 23 | cd test_dir 24 | esy install 25 | displayName: 'Install esy-deps' 26 | - script: | 27 | cd test_dir 28 | esy sh ../esy/test.sh 29 | displayName: 'Building and dry run' 30 | condition: ne( variables['Agent.OS'], 'Windows_NT' ) 31 | -------------------------------------------------------------------------------- /esy.lock/opam/reason.3.7.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Jordan Walke " 3 | authors: [ "Jordan Walke " ] 4 | license: "MIT" 5 | homepage: "https://github.com/facebook/reason" 6 | doc: "http://reasonml.github.io/" 7 | bug-reports: "https://github.com/facebook/reason/issues" 8 | dev-repo: "git://github.com/facebook/reason.git" 9 | tags: [ "syntax" ] 10 | build: [ 11 | ["dune" "build" "-p" name "-j" jobs] 12 | ] 13 | depends: [ 14 | "ocaml" {>= "4.03" & < "4.13"} 15 | "dune" {>= "1.4"} 16 | "ocamlfind" {build} 17 | "menhir" {>= "20180523"} 18 | "merlin-extend" {>= "0.6"} 19 | "ppx_derivers" {< "2.0"} 20 | "fix" 21 | "result" 22 | ] 23 | synopsis: "Reason: Syntax & Toolchain for OCaml" 24 | description: """ 25 | Reason gives OCaml a new syntax that is remniscient of languages like 26 | JavaScript. It's also the umbrella project for a set of tools for the OCaml & 27 | JavaScript ecosystem.""" 28 | url { 29 | src: "https://registry.npmjs.org/@esy-ocaml/reason/-/reason-3.7.0.tgz" 30 | checksum: "md5=7eb8cbbff8565b93ebfabf4eca7254d4" 31 | } 32 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocaml_secondary_compiler_opam__c__4.08.1_1_opam_override/files/esy-configure: -------------------------------------------------------------------------------- 1 | #! /usr/bin/env bash 2 | 3 | # esy-configure 4 | # 5 | # Wrapper to delegate to configuration to the 6 | # appropriate `configure` strategy based on the active platform. 7 | # 8 | # Today, OCaml has separate build strategies: 9 | # - Linux, OSX, Cygwin (gcc) - https://github.com/ocaml/ocaml/blob/trunk/INSTALL.adoc 10 | # - Windows, Cygin (mingw) - https://github.com/ocaml/ocaml/blob/trunk/README.win32.adoc 11 | # 12 | # We want `esy` to work cross-platform, so this is a shim script that will delegate to the 13 | # appropriate script depending on the platform. We assume that if the platform is `CYGWIN` 14 | # that the `mingw` (native executable) strategy is desired. 15 | 16 | set -u 17 | set -e 18 | set -o pipefail 19 | 20 | case "$(uname -s)" in 21 | CYGWIN*|MINGW32*|MSYS*) 22 | echo "[esy-configure] Detected windows environment..." 23 | ./configure-windows "$@" 24 | ;; 25 | *) 26 | echo "[esy-configure] Detected OSX / Linux environment" 27 | ./configure "$@" 28 | ;; 29 | esac -------------------------------------------------------------------------------- /esy.lock/opam/psq.0.2.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "David Kaloper Meršinjak " 3 | authors: ["David Kaloper Meršinjak "] 4 | homepage: "https://github.com/pqwy/psq" 5 | doc: "https://pqwy.github.io/psq/doc" 6 | license: "ISC" 7 | dev-repo: "git+https://github.com/pqwy/psq.git" 8 | bug-reports: "https://github.com/pqwy/psq/issues" 9 | synopsis: "Functional Priority Search Queues" 10 | build: [ [ "dune" "subst" ] {dev} 11 | [ "dune" "build" "-p" name "-j" jobs ] 12 | [ "dune" "runtest" "-p" name ] {with-test & ocaml:version >= "4.07.0"} ] 13 | depends: [ 14 | "ocaml" {>="4.03.0"} 15 | "dune" {>= "1.7"} 16 | "seq" 17 | "qcheck-core" {with-test} 18 | "qcheck-alcotest" {with-test} 19 | "alcotest" {with-test} 20 | ] 21 | description: """ 22 | Typical applications are searches, schedulers and caches. If you ever scratched 23 | your head because that A* didn't look quite right, a PSQ is what you needed. 24 | """ 25 | url { 26 | src: "https://github.com/pqwy/psq/releases/download/v0.2.0/psq-v0.2.0.tbz" 27 | checksum: "md5=b94fb15f8878172bf58446b7d0fb7c1e" 28 | } 29 | -------------------------------------------------------------------------------- /esy.lock/opam/dot-merlin-reader.4.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "defree@gmail.com" 3 | authors: "The Merlin team" 4 | synopsis: "Reads config files for merlin" 5 | homepage: "https://github.com/ocaml/merlin" 6 | bug-reports: "https://github.com/ocaml/merlin/issues" 7 | dev-repo: "git+https://github.com/ocaml/merlin.git" 8 | build: [ 9 | ["dune" "subst"] {dev} 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | depends: [ 13 | "ocaml" {>= "4.06.1" } 14 | "dune" {>= "2.7.0"} 15 | "yojson" {>= "1.6.0"} 16 | "ocamlfind" {>= "1.6.0"} 17 | "csexp" {>= "1.2.3"} 18 | "result" {>= "1.5"} 19 | ] 20 | description: 21 | "Helper process: reads .merlin files and gives the normalized content to merlin" 22 | x-commit-hash: "ab02f60994c81166820791b5f465f467d752b8dc" 23 | url { 24 | src: 25 | "https://github.com/ocaml/merlin/releases/download/v4.1/dot-merlin-reader-v4.1.tbz" 26 | checksum: [ 27 | "sha256=14a36d6fb8646a5df4530420a7861722f1a4ee04753717947305e3676031e7cd" 28 | "sha512=65fd4ab08904c05651a7ef8971802ffaa428daa920765dbcf162e3c56e8047e4c9e4356daa45efccce7c73a586635c8f6cf8118fd3059789de9aff68579bd436" 29 | ] 30 | } 31 | -------------------------------------------------------------------------------- /esy.lock/opam/stringext.1.6.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "rudi.grinberg@gmail.com" 3 | authors: "Rudi Grinberg" 4 | license: "MIT" 5 | homepage: "https://github.com/rgrinberg/stringext" 6 | bug-reports: "https://github.com/rgrinberg/stringext/issues" 7 | depends: [ 8 | "ocaml" {>= "4.02.3"} 9 | "dune" {>= "1.0"} 10 | "ounit" {with-test} 11 | "qtest" {with-test & >= "2.2"} 12 | "base-bytes" 13 | ] 14 | build: [ 15 | ["dune" "subst"] {dev} 16 | ["dune" "build" "-p" name "-j" jobs] 17 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 18 | ] 19 | dev-repo: "git+https://github.com/rgrinberg/stringext.git" 20 | synopsis: "Extra string functions for OCaml" 21 | description: """ 22 | Extra string functions for OCaml. Mainly splitting. All functions are in the 23 | Stringext module. 24 | """ 25 | url { 26 | src: 27 | "https://github.com/rgrinberg/stringext/releases/download/1.6.0/stringext-1.6.0.tbz" 28 | checksum: [ 29 | "sha256=db41f5d52e9eab17615f110b899dfeb27dd7e7f89cd35ae43827c5119db206ea" 30 | "sha512=d8ebe40f42b598a9bd99f1ef4b00ba93458385a4accd121af66a0bf3b3f8d7135f576740adf1a43081dd409977c2219fd4bdbb5b3d1308890d301d553ed49900" 31 | ] 32 | } 33 | -------------------------------------------------------------------------------- /esy.lock/opam/hmap.0.8.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["Daniel Bünzli "] 4 | homepage: "http://erratique.ch/software/hmap" 5 | doc: "http://erratique.ch/software/hmap/doc" 6 | license: "ISC" 7 | dev-repo: "git+http://erratique.ch/repos/hmap.git" 8 | bug-reports: "http://github.com/dbuenzli/hmap/issues" 9 | tags: ["data-structure" "org:erratique"] 10 | depends: [ 11 | "ocaml" {>= "4.02.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build} 15 | ] 16 | build: [[ 17 | "ocaml" "pkg/pkg.ml" "build" 18 | "--pinned" "%{pinned}%" ]] 19 | synopsis: "Heterogeneous value maps for OCaml" 20 | description: """ 21 | Hmap provides heterogeneous value maps for OCaml. These maps bind keys 22 | to values with arbitrary types. Keys witness the type of the value 23 | they are bound to which allows to add and lookup bindings in a type 24 | safe manner. 25 | 26 | Hmap has no dependency and is distributed under the ISC license.""" 27 | url { 28 | src: "http://erratique.ch/software/hmap/releases/hmap-0.8.1.tbz" 29 | checksum: "md5=04169252265a11d852e1547445177196" 30 | } 31 | -------------------------------------------------------------------------------- /esy.lock/opam/ke.0.4/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Romain Calascibetta " 3 | authors: "Romain Calascibetta " 4 | homepage: "https://github.com/mirage/ke" 5 | bug-reports: "https://github.com/mirage/ke/issues" 6 | dev-repo: "git+https://github.com/mirage/ke.git" 7 | doc: "https://mirage.github.io/ke/" 8 | license: "MIT" 9 | synopsis: "Queue implementation" 10 | description: """Queue implementation in OCaml (functional and imperative queue)""" 11 | 12 | build: [ "dune" "build" "-p" name "-j" jobs ] 13 | run-test: [ "dune" "runtest" "-p" name "-j" jobs ] 14 | 15 | depends: [ 16 | "ocaml" {>= "4.03.0"} 17 | "dune" {>= "1.5"} 18 | "fmt" {>= "0.8.5"} 19 | "bigarray-compat" 20 | "alcotest" {with-test} 21 | "bigstringaf" {with-test} 22 | ] 23 | url { 24 | src: "https://github.com/mirage/ke/releases/download/v0.4/ke-v0.4.tbz" 25 | checksum: [ 26 | "sha256=ddf60f66569b77c35c664087beb8934b3e43df1f70bccb6d4d02d70d8cef898d" 27 | "sha512=3e4b9a30d2eb8af842b7953ba04ba64aadeafad807e098c203234924301e1b020b0fdf5f4f46e688c23058dacf5de86deae2c29e6874f4672cf990564cb9b8d3" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /esy.lock/opam/ocaml-compiler-libs.v0.12.3/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Jane Street developers" 3 | authors: ["Jane Street Group, LLC"] 4 | homepage: "https://github.com/janestreet/ocaml-compiler-libs" 5 | bug-reports: "https://github.com/janestreet/ocaml-compiler-libs/issues" 6 | dev-repo: "git+https://github.com/janestreet/ocaml-compiler-libs.git" 7 | license: "MIT" 8 | build: [ 9 | ["dune" "build" "-p" name "-j" jobs] 10 | ] 11 | depends: [ 12 | "ocaml" {>= "4.04.1"} 13 | "dune" {>= "1.5.1"} 14 | ] 15 | synopsis: """OCaml compiler libraries repackaged""" 16 | description: """ 17 | 18 | This packages exposes the OCaml compiler libraries repackages under 19 | the toplevel names Ocaml_common, Ocaml_bytecomp, Ocaml_optcomp, ... 20 | """ 21 | x-commit-hash: "7f5d1d2931b96fb3ee6dd569a469b51f621a6dd4" 22 | url { 23 | src: 24 | "https://github.com/janestreet/ocaml-compiler-libs/releases/download/v0.12.3/ocaml-compiler-libs-v0.12.3.tbz" 25 | checksum: [ 26 | "sha256=a8403531439c14bbda2d504ef93610fd29a8e9520fc700f21889d893a513e3c9" 27 | "sha512=0bb03b38e93bab3274a8ade38d017808110bc02f2181a594d8775c68fdd465733393f0451dbbf8860e6b50b56c45671d2182637c0840d1d6574803ec18673972" 28 | ] 29 | } 30 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocamlfind_opam__c__1.8.1_opam_override/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "build": [ 3 | [ 4 | "bash", 5 | "-c", 6 | "#{os == 'windows' ? 'patch -p1 < findlib-1.8.1.patch' : 'true'}" 7 | ], 8 | [ 9 | "./configure", 10 | "-bindir", 11 | "#{self.bin}", 12 | "-sitelib", 13 | "#{self.lib}", 14 | "-mandir", 15 | "#{self.man}", 16 | "-config", 17 | "#{self.lib}/findlib.conf", 18 | "-no-custom", 19 | "-no-topfind" 20 | ], 21 | [ 22 | "make", 23 | "all" 24 | ], 25 | [ 26 | "make", 27 | "opt" 28 | ] 29 | ], 30 | "install": [ 31 | [ 32 | "make", 33 | "install" 34 | ], 35 | [ 36 | "install", 37 | "-m", 38 | "0755", 39 | "ocaml-stub", 40 | "#{self.bin}/ocaml" 41 | ], 42 | [ 43 | "mkdir", 44 | "-p", 45 | "#{self.toplevel}" 46 | ], 47 | [ 48 | "install", 49 | "-m", 50 | "0644", 51 | "src/findlib/topfind", 52 | "#{self.toplevel}/topfind" 53 | ] 54 | ], 55 | "exportedEnv": { 56 | "OCAML_TOPLEVEL_PATH": { 57 | "val": "#{self.toplevel}", 58 | "scope": "global" 59 | } 60 | } 61 | } 62 | -------------------------------------------------------------------------------- /esy.lock/opam/fpath.0.7.3/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["The fpath programmers"] 4 | homepage: "https://erratique.ch/software/fpath" 5 | doc: "https://erratique.ch/software/fpath/doc" 6 | dev-repo: "git+https://erratique.ch/repos/fpath.git" 7 | bug-reports: "https://github.com/dbuenzli/fpath/issues" 8 | tags: [ "file" "system" "path" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ 11 | "ocaml" {>= "4.03.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build & >= "0.9.0"} 15 | "astring" 16 | ] 17 | build: [[ 18 | "ocaml" "pkg/pkg.ml" "build" 19 | "--dev-pkg=true" {dev} ]] 20 | 21 | synopsis: """File system paths for OCaml""" 22 | description: """\ 23 | 24 | Fpath is an OCaml module for handling file system paths with POSIX or 25 | Windows conventions. Fpath processes paths without accessing the file 26 | system and is independent from any system library. 27 | 28 | Fpath depends on [Astring][astring] and is distributed under the ISC 29 | license. 30 | 31 | [astring]: http://erratique.ch/software/astring 32 | """ 33 | url { 34 | archive: "https://erratique.ch/software/fpath/releases/fpath-0.7.3.tbz" 35 | checksum: "0740b530e8fed5b0adc5eee8463cfc2f" 36 | } 37 | -------------------------------------------------------------------------------- /esy.lock/opam/ocamlbuild.0.14.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Gabriel Scherer " 3 | authors: ["Nicolas Pouillard" "Berke Durak"] 4 | homepage: "https://github.com/ocaml/ocamlbuild/" 5 | bug-reports: "https://github.com/ocaml/ocamlbuild/issues" 6 | license: "LGPL-2.1-only with OCaml-LGPL-linking-exception" 7 | doc: "https://github.com/ocaml/ocamlbuild/blob/master/manual/manual.adoc" 8 | dev-repo: "git+https://github.com/ocaml/ocamlbuild.git" 9 | build: [ 10 | [ 11 | make 12 | "-f" 13 | "configure.make" 14 | "all" 15 | "OCAMLBUILD_PREFIX=%{prefix}%" 16 | "OCAMLBUILD_BINDIR=%{bin}%" 17 | "OCAMLBUILD_LIBDIR=%{lib}%" 18 | "OCAMLBUILD_MANDIR=%{man}%" 19 | "OCAML_NATIVE=%{ocaml:native}%" 20 | "OCAML_NATIVE_TOOLS=%{ocaml:native}%" 21 | ] 22 | [make "check-if-preinstalled" "all" "opam-install"] 23 | ] 24 | conflicts: [ 25 | "base-ocamlbuild" 26 | "ocamlfind" {< "1.6.2"} 27 | ] 28 | synopsis: 29 | "OCamlbuild is a build system with builtin rules to easily build most OCaml projects." 30 | depends: [ 31 | "ocaml" {>= "4.03"} 32 | ] 33 | url { 34 | src: "https://github.com/ocaml/ocamlbuild/archive/0.14.0.tar.gz" 35 | checksum: "sha256=87b29ce96958096c0a1a8eeafeb6268077b2d11e1bf2b3de0f5ebc9cf8d42e78" 36 | } 37 | -------------------------------------------------------------------------------- /esy.lock/opam/dune-glob.2.9.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Glob string matching language supported by dune" 3 | description: 4 | "dune-glob provides a parser and interpreter for globs as understood by dune language." 5 | maintainer: ["Jane Street Group, LLC "] 6 | authors: ["Jane Street Group, LLC "] 7 | license: "MIT" 8 | homepage: "https://github.com/ocaml/dune" 9 | doc: "https://dune.readthedocs.io/" 10 | bug-reports: "https://github.com/ocaml/dune/issues" 11 | depends: [ 12 | "dune" {>= "2.9"} 13 | "dune-private-libs" {= version} 14 | "odoc" {with-doc} 15 | ] 16 | dev-repo: "git+https://github.com/ocaml/dune.git" 17 | build: [ 18 | ["dune" "subst"] {dev} 19 | [ 20 | "dune" 21 | "build" 22 | "-p" 23 | name 24 | "-j" 25 | jobs 26 | "@install" 27 | "@doc" {with-doc} 28 | ] 29 | ] 30 | x-commit-hash: "641a95d2254ca7c51c97f07f2eed85b7a95db954" 31 | url { 32 | src: "https://github.com/ocaml/dune/releases/download/2.9.0/dune-2.9.0.tbz" 33 | checksum: [ 34 | "sha256=bb217cfb17e893a0b1eb002ac83c14f96adc9d0703cb51ff34ed3ef5a639a41e" 35 | "sha512=fcd8bc3ea7e9a14e6787a3b0384a488e45fa51e164a175ad1b147bebb3fbcccfd8f321b9b6a7665ac3dafeb18a2a6f8626d182af3b1796691f6ed79c166a5f44" 36 | ] 37 | } 38 | -------------------------------------------------------------------------------- /esy.lock/opam/merlin-extend.0.6/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Frederic Bour " 3 | authors: "Frederic Bour " 4 | homepage: "https://github.com/let-def/merlin-extend" 5 | bug-reports: "https://github.com/let-def/merlin-extend" 6 | license: "MIT" 7 | dev-repo: "git+https://github.com/let-def/merlin-extend.git" 8 | build: [ 9 | ["dune" "subst"] {dev} 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | depends: [ 13 | "dune" {>= "1.0"} 14 | "cppo" {build & >= "1.1.0"} 15 | "ocaml" {>= "4.02.3"} 16 | ] 17 | synopsis: "A protocol to provide custom frontend to Merlin" 18 | description: """ 19 | This protocol allows to replace the OCaml frontend of Merlin. 20 | It extends what used to be done with the `-pp' flag to handle a few more cases.""" 21 | doc: "https://let-def.github.io/merlin-extend" 22 | x-commit-hash: "640620568a5f5c7798239ecf7c707c813e3df3cf" 23 | url { 24 | src: 25 | "https://github.com/let-def/merlin-extend/releases/download/v0.6/merlin-extend-v0.6.tbz" 26 | checksum: [ 27 | "sha256=c2f236ae97feb6ba0bc90f33beb7b7343e42f9871b66de9ba07974917e256c43" 28 | "sha512=4c64a490e2ece04fc89aef679c1d9202175df4fe045b5fdc7a37cd7cebe861226fddd9648c1bf4f06175ecfcd2ed7686c96bd6a8cae003a5096f6134c240f857" 29 | ] 30 | } 31 | -------------------------------------------------------------------------------- /esy.lock/opam/uchar.0.0.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["Daniel Bünzli "] 4 | homepage: "http://ocaml.org" 5 | doc: "https://ocaml.github.io/uchar/" 6 | dev-repo: "git+https://github.com/ocaml/uchar.git" 7 | bug-reports: "https://github.com/ocaml/uchar/issues" 8 | tags: [ "text" "character" "unicode" "compatibility" "org:ocaml.org" ] 9 | license: "typeof OCaml system" 10 | depends: [ 11 | "ocaml" {>= "3.12.0"} 12 | "ocamlbuild" {build} 13 | ] 14 | build: [ 15 | ["ocaml" "pkg/git.ml"] 16 | [ 17 | "ocaml" 18 | "pkg/build.ml" 19 | "native=%{ocaml:native}%" 20 | "native-dynlink=%{ocaml:native-dynlink}%" 21 | ] 22 | ] 23 | synopsis: "Compatibility library for OCaml's Uchar module" 24 | description: """ 25 | The `uchar` package provides a compatibility library for the 26 | [`Uchar`][1] module introduced in OCaml 4.03. 27 | 28 | The `uchar` package is distributed under the license of the OCaml 29 | compiler. See [LICENSE](LICENSE) for details. 30 | 31 | [1]: http://caml.inria.fr/pub/docs/manual-ocaml/libref/Uchar.html""" 32 | url { 33 | src: 34 | "https://github.com/ocaml/uchar/releases/download/v0.0.2/uchar-0.0.2.tbz" 35 | checksum: "md5=c9ba2c738d264c420c642f7bb1cf4a36" 36 | } 37 | -------------------------------------------------------------------------------- /esy.lock/opam/duration.0.1.3/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Hannes Mehnert " 3 | authors: "Hannes Mehnert " 4 | license: "ISC" 5 | homepage: "https://github.com/hannesm/duration" 6 | doc: "https://hannesm.github.io/duration/doc" 7 | bug-reports: "https://github.com/hannesm/duration/issues" 8 | depends: [ 9 | "ocaml" {>= "4.04.2"} 10 | "dune" {>= "1.0"} 11 | "alcotest" {with-test & >= "0.8.1"} 12 | ] 13 | build: [ 14 | ["dune" "subst"] {dev} 15 | ["dune" "build" "-p" name "-j" jobs] 16 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 17 | ] 18 | dev-repo: "git+https://github.com/hannesm/duration.git" 19 | synopsis: "Conversions to various time units" 20 | description: """ 21 | A duration is represented in nanoseconds as an unsigned 64 bit integer. This 22 | has a range of up to 584 years. Functions provided check the input and raise 23 | on negative or out of bound input. 24 | """ 25 | url { 26 | src: 27 | "https://github.com/hannesm/duration/releases/download/0.1.3/duration-0.1.3.tbz" 28 | checksum: [ 29 | "sha256=b0a41b0487b79d1e6447bbb048a32447684b296b72e5de767a28d10bbd023955" 30 | "sha512=e7c0270f9e32adecee3c1e25e25c560f646360f146162a66ef15c7231b991cb746178ab806c35feb3494b78f978659db83e9c895329886e76c09f8a0facbd0f2" 31 | ] 32 | } 33 | -------------------------------------------------------------------------------- /esy.lock/opam/ocaml-syntax-shims.1.0.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Backport new syntax to older OCaml versions" 3 | description: """ 4 | This packages backports new features of the language to older 5 | compilers, such as let+. 6 | """ 7 | maintainer: ["jeremie@dimino.org"] 8 | authors: ["Jérémie Dimino "] 9 | license: "MIT" 10 | homepage: "https://github.com/ocaml-ppx/ocaml-syntax-shims" 11 | doc: "https://ocaml-ppx.github.io/ocaml-syntax-shims/" 12 | bug-reports: "https://github.com/ocaml-ppx/ocaml-syntax-shims/issues" 13 | depends: [ 14 | "dune" {>= "2.0"} 15 | "ocaml" {>= "4.02.3"} 16 | ] 17 | build: [ 18 | ["dune" "subst"] {dev} 19 | [ 20 | "dune" 21 | "build" 22 | "-p" 23 | name 24 | "-j" 25 | jobs 26 | "@install" 27 | "@runtest" {with-test} 28 | "@doc" {with-doc} 29 | ] 30 | ] 31 | dev-repo: "git+https://github.com/ocaml-ppx/ocaml-syntax-shims.git" 32 | url { 33 | src: 34 | "https://github.com/ocaml-ppx/ocaml-syntax-shims/releases/download/1.0.0/ocaml-syntax-shims-1.0.0.tbz" 35 | checksum: [ 36 | "sha256=89b2e193e90a0c168b6ec5ddf6fef09033681bdcb64e11913c97440a2722e8c8" 37 | "sha512=75c4c6b0bfa1267a8a49a82ba494d08cf0823fc8350863d6d3d4971528cb09e5a2a29e2981d04c75e76ad0f49360b05a432c9efeff9a4fbc1ec6b28960399852" 38 | ] 39 | } 40 | -------------------------------------------------------------------------------- /esy.lock/opam/re.1.9.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | 3 | maintainer: "rudi.grinberg@gmail.com" 4 | authors: [ 5 | "Jerome Vouillon" 6 | "Thomas Gazagnaire" 7 | "Anil Madhavapeddy" 8 | "Rudi Grinberg" 9 | "Gabriel Radanne" 10 | ] 11 | license: "LGPL-2.0-only with OCaml-LGPL-linking-exception" 12 | homepage: "https://github.com/ocaml/ocaml-re" 13 | bug-reports: "https://github.com/ocaml/ocaml-re/issues" 14 | dev-repo: "git+https://github.com/ocaml/ocaml-re.git" 15 | 16 | build: [ 17 | ["dune" "subst"] {dev} 18 | ["dune" "build" "-p" name "-j" jobs] 19 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 20 | ] 21 | 22 | depends: [ 23 | "ocaml" {>= "4.02"} 24 | "dune" 25 | "ounit" {with-test} 26 | "seq" 27 | ] 28 | 29 | synopsis: "RE is a regular expression library for OCaml" 30 | description: """ 31 | Pure OCaml regular expressions with: 32 | * Perl-style regular expressions (module Re.Perl) 33 | * Posix extended regular expressions (module Re.Posix) 34 | * Emacs-style regular expressions (module Re.Emacs) 35 | * Shell-style file globbing (module Re.Glob) 36 | * Compatibility layer for OCaml's built-in Str module (module Re.Str) 37 | """ 38 | url { 39 | src: 40 | "https://github.com/ocaml/ocaml-re/releases/download/1.9.0/re-1.9.0.tbz" 41 | checksum: "md5=bddaed4f386a22cace7850c9c7dac296" 42 | } 43 | -------------------------------------------------------------------------------- /esy.lock/opam/rresult.0.6.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["Daniel Bünzli "] 4 | homepage: "http://erratique.ch/software/rresult" 5 | doc: "http://erratique.ch/software/rresult" 6 | dev-repo: "git+http://erratique.ch/repos/rresult.git" 7 | bug-reports: "https://github.com/dbuenzli/rresult/issues" 8 | tags: [ "result" "error" "declarative" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ 11 | "ocaml" {>= "4.01.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build} 15 | "result" 16 | ] 17 | build:[[ 18 | "ocaml" "pkg/pkg.ml" "build" 19 | "--pinned" "%{pinned}%" ]] 20 | 21 | synopsis: """Result value combinators for OCaml""" 22 | description: """\ 23 | 24 | Rresult is an OCaml module for handling computation results and errors 25 | in an explicit and declarative manner, without resorting to 26 | exceptions. It defines combinators to operate on the `result` type 27 | available from OCaml 4.03 in the standard library. 28 | 29 | Rresult depends on the compatibility `result` package and is 30 | distributed under the ISC license. 31 | """ 32 | url { 33 | archive: "http://erratique.ch/software/rresult/releases/rresult-0.6.0.tbz" 34 | checksum: "aba88cffa29081714468c2c7bcdf7fb1" 35 | } 36 | -------------------------------------------------------------------------------- /esy.lock/opam/stdlib-shims.0.3.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "The stdlib-shims programmers" 3 | authors: "The stdlib-shims programmers" 4 | homepage: "https://github.com/ocaml/stdlib-shims" 5 | doc: "https://ocaml.github.io/stdlib-shims/" 6 | dev-repo: "git+https://github.com/ocaml/stdlib-shims.git" 7 | bug-reports: "https://github.com/ocaml/stdlib-shims/issues" 8 | tags: ["stdlib" "compatibility" "org:ocaml"] 9 | license: ["typeof OCaml system"] 10 | depends: [ 11 | "dune" 12 | "ocaml" {>= "4.02.3"} 13 | ] 14 | build: [ "dune" "build" "-p" name "-j" jobs ] 15 | synopsis: "Backport some of the new stdlib features to older compiler" 16 | description: """ 17 | Backport some of the new stdlib features to older compiler, 18 | such as the Stdlib module. 19 | 20 | This allows projects that require compatibility with older compiler to 21 | use these new features in their code. 22 | """ 23 | x-commit-hash: "fb6815e5d745f07fd567c11671149de6ef2e74c8" 24 | url { 25 | src: 26 | "https://github.com/ocaml/stdlib-shims/releases/download/0.3.0/stdlib-shims-0.3.0.tbz" 27 | checksum: [ 28 | "sha256=babf72d3917b86f707885f0c5528e36c63fccb698f4b46cf2bab5c7ccdd6d84a" 29 | "sha512=1151d7edc8923516e9a36995a3f8938d323aaade759ad349ed15d6d8501db61ffbe63277e97c4d86149cf371306ac23df0f581ec7e02611f58335126e1870980" 30 | ] 31 | } 32 | -------------------------------------------------------------------------------- /esy.lock/opam/caqti-lwt.1.6.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Petter A. Urkedal " 3 | authors: "Petter A. Urkedal " 4 | license: "LGPL-3.0-or-later WITH OCaml-LGPL-linking-exception" 5 | homepage: "https://github.com/paurkedal/ocaml-caqti/" 6 | doc: "https://paurkedal.github.io/ocaml-caqti/index.html" 7 | bug-reports: "https://github.com/paurkedal/ocaml-caqti/issues" 8 | depends: [ 9 | "ocaml" 10 | "caqti" {>= "1.6.0" & < "1.7.0~"} 11 | "caqti-dynload" {with-test & >= "1.0.0" & < "2.0.0~"} 12 | "caqti-driver-sqlite3" {with-test & >= "1.0.0" & < "2.0.0~"} 13 | "dune" {>= "1.11"} 14 | "logs" 15 | "lwt" {>= "3.2.0"} 16 | ] 17 | build: [ 18 | ["dune" "build" "-p" name "-j" jobs] 19 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 20 | ] 21 | dev-repo: "git+https://github.com/paurkedal/ocaml-caqti.git" 22 | synopsis: "Lwt support for Caqti" 23 | x-commit-hash: "b8857da5edca852295c1d11f6b185bef196e70b2" 24 | url { 25 | src: 26 | "https://github.com/paurkedal/ocaml-caqti/releases/download/v1.6.0/caqti-v1.6.0.tbz" 27 | checksum: [ 28 | "sha256=1bf0c0d60547033c10d6148cf5297b25ab66c9a2832b680329df2f3816bc674d" 29 | "sha512=0b03bd1788d99bbac59679338768a5633ec473346eed333fca4c104bc88f04c24e138af2228fc20dcf295b7106778328d228643ae8235a3f722f54cc69919295" 30 | ] 31 | } 32 | -------------------------------------------------------------------------------- /esy.lock/opam/faraday.0.8.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Spiros Eliopoulos " 3 | authors: [ "Spiros Eliopoulos " ] 4 | license: "BSD-3-clause" 5 | homepage: "https://github.com/inhabitedtype/faraday" 6 | bug-reports: "https://github.com/inhabitedtype/faraday/issues" 7 | dev-repo: "git+https://github.com/inhabitedtype/faraday.git" 8 | build: [ 9 | ["dune" "subst"] {dev} 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 12 | ] 13 | depends: [ 14 | "ocaml" {>= "4.03.0"} 15 | "dune" {>= "1.11"} 16 | "alcotest" {with-test & >= "0.4.1"} 17 | "bigstringaf" 18 | ] 19 | synopsis: "A library for writing fast and memory-efficient serializers" 20 | description: """ 21 | Faraday is a library for writing fast and memory-efficient serializers. Its 22 | core type and related operation gives the user fine-grained control over 23 | copying and allocation behavior while serializing user-defined types, and 24 | presents the output in a form that makes it possible to use vectorized write 25 | operations, such as the writev system call, or any other platform or 26 | application-specific output APIs.""" 27 | url { 28 | src: "https://github.com/inhabitedtype/faraday/archive/0.8.1.tar.gz" 29 | checksum: "md5=51b97f082af4679e3b428a03c3b657de" 30 | } 31 | -------------------------------------------------------------------------------- /esy.lock/opam/pecu.0.5/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Romain Calascibetta " 3 | authors: "Romain Calascibetta " 4 | homepage: "https://github.com/mirage/pecu" 5 | bug-reports: "https://github.com/mirage/pecu/issues" 6 | dev-repo: "git+https://github.com/mirage/pecu.git" 7 | doc: "https://mirage.github.io/pecu/" 8 | license: "MIT" 9 | synopsis: "Encoder/Decoder of Quoted-Printable (RFC2045 & RFC2047)" 10 | description: """A non-blocking encoder/decoder of Quoted-Printable according to 11 | RFC2045 and RFC2047 (about encoded-word). Useful to translate contents of emails.""" 12 | 13 | build: [ 14 | ["dune" "build" "-p" name "-j" jobs] 15 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 16 | ] 17 | 18 | depends: [ 19 | "ocaml" {>= "4.03.0"} 20 | "dune" {>= "1.4"} 21 | "fmt" {with-test} 22 | "alcotest" {with-test} 23 | ] 24 | x-commit-hash: "c4d01536a303f2051d831b8714fc972724a04191" 25 | url { 26 | src: "https://github.com/mirage/pecu/releases/download/v0.5/pecu-v0.5.tbz" 27 | checksum: [ 28 | "sha256=713753cd6ba3f4609a26d94576484e83ffef7de5f2208a2993576a1b22f0e0e7" 29 | "sha512=99d9b26ff194d810585b74b0ea77cee4f081427078a2574f0e7effa01d11ea30b72446e82e958a809f5ced33c25c382129eade2ef525cb941ddb4a53309acef0" 30 | ] 31 | } 32 | -------------------------------------------------------------------------------- /esy.lock/opam/base.v0.14.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Jane Street developers" 3 | authors: ["Jane Street Group, LLC"] 4 | homepage: "https://github.com/janestreet/base" 5 | bug-reports: "https://github.com/janestreet/base/issues" 6 | dev-repo: "git+https://github.com/janestreet/base.git" 7 | doc: "https://ocaml.janestreet.com/ocaml-core/latest/doc/base/index.html" 8 | license: "MIT" 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | depends: [ 13 | "ocaml" {>= "4.08.0"} 14 | "sexplib0" {>= "v0.14" & < "v0.15"} 15 | "dune" {>= "2.0.0"} 16 | "dune-configurator" 17 | ] 18 | synopsis: "Full standard library replacement for OCaml" 19 | description: " 20 | Full standard library replacement for OCaml 21 | 22 | Base is a complete and portable alternative to the OCaml standard 23 | library. It provides all standard functionalities one would expect 24 | from a language standard library. It uses consistent conventions 25 | across all of its module. 26 | 27 | Base aims to be usable in any context. As a result system dependent 28 | features such as I/O are not offered by Base. They are instead 29 | provided by companion libraries such as stdio: 30 | 31 | https://github.com/janestreet/stdio 32 | " 33 | url { 34 | src: "https://github.com/janestreet/base/archive/v0.14.1.tar.gz" 35 | checksum: "md5=e4419eae60f57e553b154856f0cacf42" 36 | } 37 | -------------------------------------------------------------------------------- /esy.lock/opam/eqaf.0.7/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: [ "Romain Calascibetta " ] 3 | authors: [ "Romain Calascibetta " ] 4 | homepage: "https://github.com/mirage/eqaf" 5 | bug-reports: "https://github.com/mirage/eqaf/issues" 6 | dev-repo: "git+https://github.com/mirage/eqaf.git" 7 | doc: "https://mirage.github.io/eqaf/" 8 | license: "MIT" 9 | synopsis: "Constant-time equal function on string" 10 | description: """ 11 | This package provides an equal function on string in constant-time to avoid timing-attack with crypto stuff. 12 | """ 13 | 14 | build: [ 15 | [ "dune" "subst" ] {dev} 16 | [ "dune" "build" "-p" name "-j" jobs ] 17 | ] 18 | 19 | depends: [ 20 | "ocaml" {>= "4.03.0"} 21 | "dune" 22 | "base64" {with-test} 23 | "alcotest" {with-test} 24 | "crowbar" {with-test} 25 | ] 26 | 27 | depopts: [ 28 | "cstruct" 29 | "bigarray-compat" 30 | ] 31 | 32 | conflicts: [ 33 | "cstruct" {< "4.0.0"} 34 | ] 35 | url { 36 | src: "https://github.com/mirage/eqaf/releases/download/v0.7/eqaf-v0.7.tbz" 37 | checksum: [ 38 | "sha256=10e666aea9a413e63c5e9dd1c0566aed78a2bf0f4e09caa2bb3b88a021bf09e0" 39 | "sha512=38a2687bafb5cd1d1deb51ceceba94fcff9ce88515fd2c61ec1182808c50c0e3373a4d71fe51a17a23c74616c5ab350a4cf7914de656886981538abf2b57ff61" 40 | ] 41 | } 42 | -------------------------------------------------------------------------------- /esy.lock/opam/ocaml-secondary-compiler.4.08.1-1/files/fix-gcc10.patch: -------------------------------------------------------------------------------- 1 | commit 3f10a16153308f967149917585d2bc0b9c06492c 2 | Author: Anil Madhavapeddy 3 | Date: Sun Jun 21 18:40:27 2020 +0100 4 | 5 | Add `-fcommon` unconditionally to CFLAGS to fix gcc10 build 6 | 7 | Signed-off-by: Anil Madhavapeddy 8 | 9 | diff --git a/configure b/configure 10 | index 9a78a4554..0c54b560b 100755 11 | --- a/configure 12 | +++ b/configure 13 | @@ -12424,7 +12424,7 @@ $as_echo "$as_me: WARNING: Consider using GCC version 4.2 or above." >&2;}; 14 | -fno-builtin-memcmp"; 15 | internal_cflags="$gcc_warnings" ;; #( 16 | gcc-*) : 17 | - common_cflags="-O2 -fno-strict-aliasing -fwrapv"; 18 | + common_cflags="-O2 -fno-strict-aliasing -fwrapv -fcommon"; 19 | internal_cflags="$gcc_warnings" ;; #( 20 | msvc-*) : 21 | common_cflags="-nologo -O2 -Gy- -MD" 22 | diff --git a/configure.ac b/configure.ac 23 | index f5d8a2687..775e0e2db 100644 24 | --- a/configure.ac 25 | +++ b/configure.ac 26 | @@ -540,7 +540,7 @@ AS_CASE([$host], 27 | -fno-builtin-memcmp"; 28 | internal_cflags="$gcc_warnings"], 29 | [gcc-*], 30 | - [common_cflags="-O2 -fno-strict-aliasing -fwrapv"; 31 | + [common_cflags="-O2 -fno-strict-aliasing -fwrapv -fcommon"; 32 | internal_cflags="$gcc_warnings"], 33 | [msvc-*], 34 | [common_cflags="-nologo -O2 -Gy- -MD" 35 | -------------------------------------------------------------------------------- /esy.lock/opam/yojson.1.7.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "martin@mjambon.com" 3 | authors: ["Martin Jambon"] 4 | homepage: "https://github.com/ocaml-community/yojson" 5 | bug-reports: "https://github.com/ocaml-community/yojson/issues" 6 | dev-repo: "git+https://github.com/ocaml-community/yojson.git" 7 | doc: "https://ocaml-community.github.io/yojson/" 8 | build: [ 9 | ["dune" "subst"] {dev} 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ] 12 | run-test: [["dune" "runtest" "-p" name "-j" jobs]] 13 | depends: [ 14 | "ocaml" {>= "4.02.3"} 15 | "dune" 16 | "cppo" {build} 17 | "easy-format" 18 | "biniou" {>= "1.2.0"} 19 | "alcotest" {with-test & >= "0.8.5"} 20 | ] 21 | synopsis: 22 | "Yojson is an optimized parsing and printing library for the JSON format" 23 | description: """ 24 | Yojson is an optimized parsing and printing library for the JSON format. 25 | 26 | It addresses a few shortcomings of json-wheel including 2x speedup, 27 | polymorphic variants and optional syntax for tuples and variants. 28 | 29 | ydump is a pretty-printing command-line program provided with the 30 | yojson package. 31 | 32 | The program atdgen can be used to derive OCaml-JSON serializers and 33 | deserializers from type definitions.""" 34 | url { 35 | src: 36 | "https://github.com/ocaml-community/yojson/releases/download/1.7.0/yojson-1.7.0.tbz" 37 | checksum: "md5=b89d39ca3f8c532abe5f547ad3b8f84d" 38 | } 39 | -------------------------------------------------------------------------------- /esy.lock/opam/unstrctrd.0.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Romain Calascibetta " 3 | authors: "Romain Calascibetta " 4 | homepage: "https://github.com/dinosaure/unstrctrd" 5 | bug-reports: "https://github.com/dinosaure/unstrctrd/issues" 6 | dev-repo: "git+https://github.com/dinosaure/unstrctrd.git" 7 | doc: "https://dinosaure.github.io/unstrctrd/" 8 | license: "MIT" 9 | synopsis: "Unstructured parser" 10 | description: """Fast and compliant Unstructured parser according RFC 822 11 | """ 12 | 13 | build: [ "dune" "build" "-p" name "-j" jobs ] 14 | run-test: [ "dune" "runtest" "-p" name "-j" jobs ] 15 | 16 | depends: [ 17 | "ocaml" {>= "4.07.0"} 18 | "dune" {>= "1.10"} 19 | "uutf" 20 | "angstrom" {>= "0.14.0"} 21 | "rresult" {with-test} 22 | "alcotest" {with-test} 23 | "ke" {with-test} 24 | "bigstringaf" {with-test} 25 | "hxd" {with-test & < "0.3.0"} 26 | "fmt" {with-test} 27 | ] 28 | url { 29 | src: 30 | "https://github.com/dinosaure/unstrctrd/releases/download/v0.2/unstrctrd-v0.2.tbz" 31 | checksum: [ 32 | "sha256=1040bfcd411a345faaf4ce5aafea1201bfc43077bd252939579aed96ffb16979" 33 | "sha512=245389add87e0995a3a82a9f189148bb6339370132c9160920c3de238a30351883dec8528ac8a4ff2a78ae467033f40666f92ebef7eea432806b377aca2a5bdb" 34 | ] 35 | } 36 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocamlfind_secondary_opam__c__1.8.1_opam_override/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "build": [ 3 | [ 4 | "bash", 5 | "-c", 6 | "#{os == 'windows' ? 'patch -p1 < findlib-1.8.1.patch' : 'true'}" 7 | ], 8 | [ 9 | "./configure", 10 | "-bindir", 11 | "#{self.bin}", 12 | "-sitelib", 13 | "#{self.lib}", 14 | "-mandir", 15 | "#{self.man}", 16 | "-config", 17 | "#{self.lib}/findlib.conf", 18 | "-no-custom", 19 | "-no-topfind" 20 | ] 21 | ], 22 | "install": [ 23 | [ 24 | "make", 25 | "install-meta" 26 | ], 27 | "bash gen-findlib-conf.sh #{@opam/ocaml-secondary-compiler.share / 'ocaml-secondary-compiler'}", 28 | "bash gen-meta.sh #{@opam/ocaml-secondary-compiler.share / 'ocaml-secondary-compiler'}", 29 | "mkdir -p $cur__install/lib/findlib.conf.d/", 30 | "cp ocaml-secondary-compiler.conf $cur__install/lib/findlib.conf.d/", 31 | "mkdir $cur__install/lib/ocaml", 32 | "cp META $cur__install/lib/ocaml" 33 | ], 34 | "dependencies": { 35 | "@opam/ocaml-secondary-compiler": "*" 36 | }, 37 | "exportedEnv": { 38 | "OCAMLFIND_SECONDARY_PREFIX": { 39 | "scope": "global", 40 | "val": "#{self.install}" 41 | }, 42 | "OCAML_SECONDARY_COMPILER_PREFIX": { 43 | "scope": "global", 44 | "val": "#{@opam/ocaml-secondary-compiler.install}" 45 | } 46 | } 47 | } 48 | -------------------------------------------------------------------------------- /esy.lock/opam/cppo.1.6.7/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "martin@mjambon.com" 3 | authors: "Martin Jambon" 4 | license: "BSD-3-Clause" 5 | homepage: "https://github.com/ocaml-community/cppo" 6 | doc: "https://ocaml-community.github.io/cppo/" 7 | bug-reports: "https://github.com/ocaml-community/cppo/issues" 8 | depends: [ 9 | "ocaml" {>= "4.02.3"} 10 | "dune" {>= "1.0"} 11 | "base-unix" 12 | ] 13 | build: [ 14 | ["dune" "subst"] {dev} 15 | ["dune" "build" "-p" name "-j" jobs] 16 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 17 | ] 18 | dev-repo: "git+https://github.com/ocaml-community/cppo.git" 19 | synopsis: "Code preprocessor like cpp for OCaml" 20 | description: """ 21 | Cppo is an equivalent of the C preprocessor for OCaml programs. 22 | It allows the definition of simple macros and file inclusion. 23 | 24 | Cppo is: 25 | 26 | * more OCaml-friendly than cpp 27 | * easy to learn without consulting a manual 28 | * reasonably fast 29 | * simple to install and to maintain 30 | """ 31 | x-commit-hash: "7d217864a5fdc4551699e248137a2f8b719d2078" 32 | url { 33 | src: 34 | "https://github.com/ocaml-community/cppo/releases/download/v1.6.7/cppo-v1.6.7.tbz" 35 | checksum: [ 36 | "sha256=db553e3e6c206df09b1858c3aef5e21e56564d593642a3c78bcedb6af36f529d" 37 | "sha512=9722b50fd23aaccf86816313333a3bf8fc7c6b4ef06b153e5e1e1aaf14670cf51a4aac52fb1b4a0e5531699c4047a1eff6c24c969f7e5063e78096c2195b5819" 38 | ] 39 | } 40 | -------------------------------------------------------------------------------- /esy.lock/opam/dune-private-libs.2.9.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Private libraries of Dune" 3 | description: """ 4 | !!!!!!!!!!!!!!!!!!!!!! 5 | !!!!! DO NOT USE !!!!! 6 | !!!!!!!!!!!!!!!!!!!!!! 7 | 8 | This package contains code that is shared between various dune-xxx 9 | packages. However, it is not meant for public consumption and provides 10 | no stability guarantee. 11 | """ 12 | maintainer: ["Jane Street Group, LLC "] 13 | authors: ["Jane Street Group, LLC "] 14 | license: "MIT" 15 | homepage: "https://github.com/ocaml/dune" 16 | doc: "https://dune.readthedocs.io/" 17 | bug-reports: "https://github.com/ocaml/dune/issues" 18 | depends: [ 19 | "dune" {>= "2.9"} 20 | "ocaml" {>= "4.08"} 21 | "odoc" {with-doc} 22 | ] 23 | dev-repo: "git+https://github.com/ocaml/dune.git" 24 | build: [ 25 | ["dune" "subst"] {dev} 26 | [ 27 | "dune" 28 | "build" 29 | "-p" 30 | name 31 | "-j" 32 | jobs 33 | "@install" 34 | "@doc" {with-doc} 35 | ] 36 | ] 37 | x-commit-hash: "641a95d2254ca7c51c97f07f2eed85b7a95db954" 38 | url { 39 | src: "https://github.com/ocaml/dune/releases/download/2.9.0/dune-2.9.0.tbz" 40 | checksum: [ 41 | "sha256=bb217cfb17e893a0b1eb002ac83c14f96adc9d0703cb51ff34ed3ef5a639a41e" 42 | "sha512=fcd8bc3ea7e9a14e6787a3b0384a488e45fa51e164a175ad1b147bebb3fbcccfd8f321b9b6a7665ac3dafeb18a2a6f8626d182af3b1796691f6ed79c166a5f44" 43 | ] 44 | } 45 | -------------------------------------------------------------------------------- /esy.lock/opam/uri.4.2.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "anil@recoil.org" 3 | authors: ["Anil Madhavapeddy" "David Sheets" "Rudi Grinberg"] 4 | license: "ISC" 5 | tags: ["url" "uri" "org:mirage" "org:xapi-project"] 6 | homepage: "https://github.com/mirage/ocaml-uri" 7 | bug-reports: "https://github.com/mirage/ocaml-uri/issues" 8 | dev-repo: "git+https://github.com/mirage/ocaml-uri.git" 9 | doc: "https://mirage.github.io/ocaml-uri/" 10 | synopsis: "An RFC3986 URI/URL parsing library" 11 | description: """ 12 | This is an OCaml implementation of the [RFC3986](http://tools.ietf.org/html/rfc3986) specification 13 | for parsing URI or URLs. 14 | """ 15 | depends: [ 16 | "ocaml" {>= "4.04.0"} 17 | "dune" {>= "1.2.0"} 18 | "ounit" {with-test & >= "1.0.2"} 19 | "ppx_sexp_conv" {with-test & >= "v0.9.0"} 20 | "stringext" {>= "1.4.0"} 21 | "angstrom" {>= "0.14.0"} 22 | ] 23 | build: [ 24 | ["dune" "subst"] {dev} 25 | ["dune" "build" "-p" name "-j" jobs] 26 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 27 | ] 28 | x-commit-hash: "0ff3efbbc235bef5a7d67cc01bc1dadbe2e859b9" 29 | url { 30 | src: 31 | "https://github.com/mirage/ocaml-uri/releases/download/v4.2.0/uri-v4.2.0.tbz" 32 | checksum: [ 33 | "sha256=c5c013d940dbb6731ea2ee75c2bf991d3435149c3f3659ec2e55476f5473f16b" 34 | "sha512=119e39bf53db9e94383a4e3a3df492b60b2db097266b3a8660de431ad85bc87997718305972fd2abbfb529973475ce6b210ba5e34d12e85a5dabbb0e24130aa1" 35 | ] 36 | } 37 | -------------------------------------------------------------------------------- /esy.lock/opam/conf-libssl.3/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "David Sheets " 3 | authors: ["The OpenSSL Project"] 4 | bug-reports: "https://github.com/ocaml/opam-repository/issues" 5 | homepage: "https://www.openssl.org/" 6 | license: "Apache-1.0" 7 | build: [ 8 | ["pkg-config" "--print-errors" "--exists" "openssl"] 9 | {os != "freebsd" & os != "openbsd" & os != "netbsd" & # libssl is provided by base system on BSDs 10 | os-distribution != "homebrew"} 11 | ["sh" "-ex" "./homebrew.sh" "check"] {os-distribution = "homebrew"} 12 | ] 13 | install: [ 14 | ["sh" "-ex" "./homebrew.sh" "install" lib] {os-distribution = "homebrew"} 15 | ] 16 | depends: [ 17 | "conf-pkg-config" {build} 18 | ] 19 | depexts: [ 20 | ["libssl-dev"] {os-family = "debian"} 21 | ["libssl-dev"] {os-family = "ubuntu"} 22 | ["openssl-devel"] {os-distribution = "centos"} 23 | ["openssl-devel"] {os-distribution = "ol"} 24 | ["openssl-devel"] {os-distribution = "fedora"} 25 | ["libopenssl-devel"] {os-family = "suse"} 26 | ["openssl-dev"] {os-family = "alpine"} 27 | ["openssl"] {os-family = "arch"} 28 | ["openssl"] {os-distribution = "homebrew"} 29 | ["openssl"] {os-distribution = "macports"} 30 | ["openssl"] {os-distribution = "nixos"} 31 | ] 32 | synopsis: "Virtual package relying on an OpenSSL library system installation" 33 | description: 34 | "This package can only install if the OpenSSL library is installed on the system." 35 | flags: conf 36 | -------------------------------------------------------------------------------- /esy.lock/opam/base64.3.5.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "mirageos-devel@lists.xenproject.org" 3 | authors: [ "Thomas Gazagnaire" 4 | "Anil Madhavapeddy" "Calascibetta Romain" 5 | "Peter Zotov" ] 6 | license: "ISC" 7 | homepage: "https://github.com/mirage/ocaml-base64" 8 | doc: "http://mirage.github.io/ocaml-base64/" 9 | bug-reports: "https://github.com/mirage/ocaml-base64/issues" 10 | dev-repo: "git+https://github.com/mirage/ocaml-base64.git" 11 | synopsis: "Base64 encoding for OCaml" 12 | description: """ 13 | Base64 is a group of similar binary-to-text encoding schemes that represent 14 | binary data in an ASCII string format by translating it into a radix-64 15 | representation. It is specified in RFC 4648. 16 | """ 17 | depends: [ 18 | "ocaml" {>= "4.03.0"} 19 | "dune" {>= "2.0"} 20 | "bos" {with-test} 21 | "rresult" {with-test} 22 | "alcotest" {with-test} 23 | ] 24 | build: [ 25 | ["dune" "subst"] {dev} 26 | ["dune" "build" "-p" name "-j" jobs] 27 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 28 | ] 29 | x-commit-hash: "3a5e259895acef979a0fab8bb59d396e1bccead0" 30 | url { 31 | src: 32 | "https://github.com/mirage/ocaml-base64/releases/download/v3.5.0/base64-v3.5.0.tbz" 33 | checksum: [ 34 | "sha256=589de9c00578ebfe784198ac9818d3586c474b2316b6cd3e1c46ccb1f62ae3a4" 35 | "sha512=82efc76ca75717dbd533eac20845ca8731f535233f6a3e6081114d7e3dc7ee8367ded16f402ef05ad0bf1217a3a6224161c92b9467023e44fc7f3598a314a432" 36 | ] 37 | } 38 | -------------------------------------------------------------------------------- /esy.lock/opam/graphql.0.13.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Andreas Garnaes " 3 | authors: "Andreas Garnaes " 4 | homepage: "https://github.com/andreas/ocaml-graphql-server" 5 | doc: "https://andreas.github.io/ocaml-graphql-server/" 6 | bug-reports: "https://github.com/andreas/ocaml-graphql-server/issues" 7 | dev-repo: "git+https://github.com/andreas/ocaml-graphql-server.git" 8 | 9 | build: [ 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 12 | ] 13 | 14 | depends: [ 15 | "ocaml" {>= "4.03.0"} 16 | "dune" {>= "1.1"} 17 | "graphql_parser" {>= "0.9.0"} 18 | "yojson" 19 | "rresult" 20 | "seq" 21 | "alcotest" {with-test} 22 | ] 23 | 24 | synopsis: "Build GraphQL schemas and execute queries against them" 25 | 26 | description: """ 27 | `graphql` is a package for creating GraphQL servers. Current feature set includes: 28 | 29 | - Type-safe schema design 30 | - GraphQL parser in pure OCaml using Menhir 31 | - Query execution 32 | - Introspection of schemas 33 | - Arguments for fields 34 | - Allows variables in queries 35 | - Subscriptions 36 | 37 | Supporting packages: 38 | 39 | - Use `graphql-lwt` for Lwt support. 40 | - Use `graphql-async` for Async support. 41 | - Use `graphql-cohttp` to run a GraphQL server with `cohttp`.""" 42 | 43 | url { 44 | archive: "https://github.com/andreas/ocaml-graphql-server/releases/download/0.13.0/graphql-0.13.0.tbz" 45 | checksum: "089104444ae28ebcfa85fec88628507a" 46 | } 47 | -------------------------------------------------------------------------------- /esy.lock/opam/prettym.0.0.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Romain Calascibetta " 3 | authors: "Romain Calascibetta " 4 | homepage: "https://github.com/dinosaure/prettym" 5 | bug-reports: "https://github.com/dinosaure/prettym/issues" 6 | dev-repo: "git+https://github.com/dinosaure/prettym.git" 7 | doc: "https://dinosaure.github.io/prettym/" 8 | license: "MIT" 9 | synopsis: "An memory-bounded encoder according to RFC 822" 10 | description: """A best effort memory-bounded encoder to respect the 80 column limitation""" 11 | 12 | build: [ 13 | ["dune" "build" "-p" name "-j" jobs] 14 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 15 | ] 16 | 17 | depends: [ 18 | "ocaml" {>= "4.07.0"} 19 | "dune" {>= "2.8"} 20 | "bigarray-overlap" 21 | "fmt" 22 | "ke" {>= "0.4"} 23 | "bigstringaf" 24 | "bigarray-compat" 25 | "ptime" {with-test} 26 | "alcotest" {with-test} 27 | "jsonm" {with-test} 28 | "base64" {with-test} 29 | ] 30 | x-commit-hash: "9e389b2c4cec8800b00907a7cfd604d3f496bf38" 31 | url { 32 | src: 33 | "https://github.com/dinosaure/prettym/releases/download/0.0.1/prettym-0.0.1.tbz" 34 | checksum: [ 35 | "sha256=4920decb20187df0a1f651e8d5abf456b341633adf3e7b23aa01adf28f6e95b4" 36 | "sha512=bfefaaf5fcc01657c126a105c3a997428a5c82735f7576e120a5251e1e7c7eccbc0ecec1e750ba17d7a688fddea4474213299a25f6012e76dd6acf3ac4abc530" 37 | ] 38 | } 39 | -------------------------------------------------------------------------------- /esy.lock/opam/angstrom.0.15.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Spiros Eliopoulos " 3 | authors: [ "Spiros Eliopoulos " ] 4 | license: "BSD-3-clause" 5 | homepage: "https://github.com/inhabitedtype/angstrom" 6 | bug-reports: "https://github.com/inhabitedtype/angstrom/issues" 7 | dev-repo: "git+https://github.com/inhabitedtype/angstrom.git" 8 | build: [ 9 | ["dune" "subst"] {dev} 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 12 | ] 13 | depends: [ 14 | "ocaml" {>= "4.04.0"} 15 | "dune" {>= "1.8"} 16 | "alcotest" {with-test & >= "0.8.1"} 17 | "bigstringaf" 18 | "result" 19 | "ppx_let" {with-test & >= "0.14.0"} 20 | "ocaml-syntax-shims" {build} 21 | ] 22 | synopsis: "Parser combinators built for speed and memory-efficiency" 23 | description: """ 24 | Angstrom is a parser-combinator library that makes it easy to write efficient, 25 | expressive, and reusable parsers suitable for high-performance applications. It 26 | exposes monadic and applicative interfaces for composition, and supports 27 | incremental input through buffered and unbuffered interfaces. Both interfaces 28 | give the user total control over the blocking behavior of their application, 29 | with the unbuffered interface enabling zero-copy IO. Parsers are backtracking by 30 | default and support unbounded lookahead.""" 31 | url { 32 | src: "https://github.com/inhabitedtype/angstrom/archive/0.15.0.tar.gz" 33 | checksum: "md5=5104768c404ea92fd0a53a5b0f75cd50" 34 | } 35 | -------------------------------------------------------------------------------- /esy.lock/opam/astring.0.8.5/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["The astring programmers"] 4 | homepage: "https://erratique.ch/software/astring" 5 | doc: "https://erratique.ch/software/astring/doc" 6 | dev-repo: "git+http://erratique.ch/repos/astring.git" 7 | bug-reports: "https://github.com/dbuenzli/astring/issues" 8 | tags: [ "string" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ 11 | "ocaml" {>= "4.05.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build} ] 15 | build: [[ "ocaml" "pkg/pkg.ml" "build" "--pinned" "%{pinned}%" ]] 16 | 17 | synopsis: """Alternative String module for OCaml""" 18 | description: """\ 19 | 20 | Astring exposes an alternative `String` module for OCaml. This module 21 | tries to balance minimality and expressiveness for basic, index-free, 22 | string processing and provides types and functions for substrings, 23 | string sets and string maps. 24 | 25 | Remaining compatible with the OCaml `String` module is a non-goal. The 26 | `String` module exposed by Astring has exception safe functions, 27 | removes deprecated and rarely used functions, alters some signatures 28 | and names, adds a few missing functions and fully exploits OCaml's 29 | newfound string immutability. 30 | 31 | Astring depends only on the OCaml standard library. It is distributed 32 | under the ISC license. 33 | """ 34 | url { 35 | archive: "https://erratique.ch/software/astring/releases/astring-0.8.5.tbz" 36 | checksum: "e148907c24157d1df43bec89b58b3ec8" 37 | } 38 | -------------------------------------------------------------------------------- /esy.lock/opam/dune-build-info.2.9.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Embed build informations inside executable" 3 | description: """ 4 | The build-info library allows to access information about how the 5 | executable was built, such as the version of the project at which it 6 | was built or the list of statically linked libraries with their 7 | versions. It supports reporting the version from the version control 8 | system during development to get an precise reference of when the 9 | executable was built. 10 | """ 11 | maintainer: ["Jane Street Group, LLC "] 12 | authors: ["Jane Street Group, LLC "] 13 | license: "MIT" 14 | homepage: "https://github.com/ocaml/dune" 15 | doc: "https://dune.readthedocs.io/" 16 | bug-reports: "https://github.com/ocaml/dune/issues" 17 | depends: [ 18 | "dune" {>= "2.9"} 19 | "odoc" {with-doc} 20 | ] 21 | dev-repo: "git+https://github.com/ocaml/dune.git" 22 | build: [ 23 | ["dune" "subst"] {dev} 24 | [ 25 | "dune" 26 | "build" 27 | "-p" 28 | name 29 | "-j" 30 | jobs 31 | "@install" 32 | "@doc" {with-doc} 33 | ] 34 | ] 35 | x-commit-hash: "641a95d2254ca7c51c97f07f2eed85b7a95db954" 36 | url { 37 | src: "https://github.com/ocaml/dune/releases/download/2.9.0/dune-2.9.0.tbz" 38 | checksum: [ 39 | "sha256=bb217cfb17e893a0b1eb002ac83c14f96adc9d0703cb51ff34ed3ef5a639a41e" 40 | "sha512=fcd8bc3ea7e9a14e6787a3b0384a488e45fa51e164a175ad1b147bebb3fbcccfd8f321b9b6a7665ac3dafeb18a2a6f8626d182af3b1796691f6ed79c166a5f44" 41 | ] 42 | } 43 | -------------------------------------------------------------------------------- /esy.lock/opam/ocamlfind-secondary.1.8.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "David Allsopp " 3 | homepage: "https://github.com/ocaml/opam-repository" 4 | bug-reports: "https://github.com/ocaml/opam-repository/issues" 5 | build: ["./configure" "-sitelib" "%{ocaml-secondary-compiler:share}%/lib" "-no-camlp4"] 6 | install: [ 7 | [make "install-meta"] 8 | ["mkdir" "-p" "%{lib}%/findlib.conf.d/"] 9 | ["cp" "ocaml-secondary-compiler.conf" "%{lib}%/findlib.conf.d/"] 10 | ["mkdir" "-p" "%{ocaml-secondary-compiler:share}%/lib/ocaml"] 11 | ["cp" "META" "%{ocaml-secondary-compiler:share}%/lib/ocaml"] 12 | ] 13 | depends: [ 14 | "ocaml-secondary-compiler" 15 | "ocamlfind" {= "1.8.1"} 16 | ] 17 | synopsis: "ocamlfind support for ocaml-secondary-compiler" 18 | description: """ 19 | Exposes the compiler built by the ocaml-secondary-compielr package via 20 | -toolchain secondary. A virtual package called ocaml is also installed to 21 | locate the binary directory via `ocamlfind -toolchain secondary query ocaml`.""" 22 | authors: ["Gerd Stolpmann " "David Allsopp "] 23 | substs: ["META" "ocaml-secondary-compiler.conf"] 24 | extra-files: [ 25 | ["META.in" "md5=8c6ea8a0158a33ed87e6c38a7d686d49"] 26 | ["ocaml-secondary-compiler.conf.in" "md5=367a7bb68e2e1e65a31356421ddc809c"] 27 | ] 28 | url { 29 | src: "http://download.camlcity.org/download/findlib-1.8.1.tar.gz" 30 | checksum: "md5=18ca650982c15536616dea0e422cbd8c" 31 | mirrors: "http://download2.camlcity.org/download/findlib-1.8.1.tar.gz" 32 | } 33 | -------------------------------------------------------------------------------- /esy.lock/opam/dune-action-plugin.2.9.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "[experimental] API for writing dynamic Dune actions" 3 | description: """ 4 | 5 | This library is experimental. No backwards compatibility is implied. 6 | 7 | dune-action-plugin provides an API for writing dynamic Dune actions. 8 | Dynamic dune actions do not need to declare their dependencies 9 | upfront; they are instead discovered automatically during the 10 | execution of the action. 11 | """ 12 | maintainer: ["Jane Street Group, LLC "] 13 | authors: ["Jane Street Group, LLC "] 14 | license: "MIT" 15 | homepage: "https://github.com/ocaml/dune" 16 | doc: "https://dune.readthedocs.io/" 17 | bug-reports: "https://github.com/ocaml/dune/issues" 18 | depends: [ 19 | "dune" {>= "2.9"} 20 | "dune-glob" 21 | "ppx_expect" {with-test} 22 | "dune-private-libs" {= version} 23 | "odoc" {with-doc} 24 | ] 25 | dev-repo: "git+https://github.com/ocaml/dune.git" 26 | build: [ 27 | ["dune" "subst"] {dev} 28 | [ 29 | "dune" 30 | "build" 31 | "-p" 32 | name 33 | "-j" 34 | jobs 35 | "@install" 36 | "@doc" {with-doc} 37 | ] 38 | ] 39 | x-commit-hash: "641a95d2254ca7c51c97f07f2eed85b7a95db954" 40 | url { 41 | src: "https://github.com/ocaml/dune/releases/download/2.9.0/dune-2.9.0.tbz" 42 | checksum: [ 43 | "sha256=bb217cfb17e893a0b1eb002ac83c14f96adc9d0703cb51ff34ed3ef5a639a41e" 44 | "sha512=fcd8bc3ea7e9a14e6787a3b0384a488e45fa51e164a175ad1b147bebb3fbcccfd8f321b9b6a7665ac3dafeb18a2a6f8626d182af3b1796691f6ed79c166a5f44" 45 | ] 46 | } 47 | -------------------------------------------------------------------------------- /esy.lock/opam/uutf.1.0.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["Daniel Bünzli "] 4 | homepage: "http://erratique.ch/software/uutf" 5 | doc: "http://erratique.ch/software/uutf/doc/Uutf" 6 | dev-repo: "git+http://erratique.ch/repos/uutf.git" 7 | bug-reports: "https://github.com/dbuenzli/uutf/issues" 8 | tags: [ "unicode" "text" "utf-8" "utf-16" "codec" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ 11 | "ocaml" {>= "4.01.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build} 15 | "uchar" 16 | ] 17 | depopts: ["cmdliner"] 18 | conflicts: ["cmdliner" { < "0.9.6"} ] 19 | build: [[ 20 | "ocaml" "pkg/pkg.ml" "build" 21 | "--pinned" "%{pinned}%" 22 | "--with-cmdliner" "%{cmdliner:installed}%" ]] 23 | synopsis: """Non-blocking streaming Unicode codec for OCaml""" 24 | description: """\ 25 | 26 | Uutf is a non-blocking streaming codec to decode and encode the UTF-8, 27 | UTF-16, UTF-16LE and UTF-16BE encoding schemes. It can efficiently 28 | work character by character without blocking on IO. Decoders perform 29 | character position tracking and support newline normalization. 30 | 31 | Functions are also provided to fold over the characters of UTF encoded 32 | OCaml string values and to directly encode characters in OCaml 33 | Buffer.t values. 34 | 35 | Uutf has no dependency and is distributed under the ISC license. 36 | """ 37 | url { 38 | archive: "http://erratique.ch/software/uutf/releases/uutf-1.0.2.tbz" 39 | checksum: "a7c542405a39630c689a82bd7ef2292c" 40 | } 41 | -------------------------------------------------------------------------------- /esy.lock/opam/uucp.13.0.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: [ "The uucp programmers" ] 4 | homepage: "https://erratique.ch/software/uucp" 5 | doc: "https://erratique.ch/software/uucp/doc/Uucp" 6 | dev-repo: "git+https://erratique.ch/repos/uucp.git" 7 | bug-reports: "https://github.com/dbuenzli/uucp/issues" 8 | tags: [ "unicode" "text" "character" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ 11 | "ocaml" {>= "4.03.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build & >= "0.9.0"} 15 | "uucd" {with-test} # dev really 16 | "uunf" {with-test} 17 | "uutf" {with-test} 18 | ] 19 | depopts: [ "uunf" "uutf" "cmdliner" ] 20 | conflicts: [ "uutf" {< "1.0.1"} 21 | "cmdliner" {< "1.0.0"} ] 22 | build: [[ 23 | "ocaml" "pkg/pkg.ml" "build" 24 | "--dev-pkg" "%{pinned}%" 25 | "--with-uutf" "%{uutf:installed}%" 26 | "--with-uunf" "%{uunf:installed}%" 27 | "--with-cmdliner" "%{cmdliner:installed}%" 28 | ]] 29 | 30 | synopsis: """Unicode character properties for OCaml""" 31 | description: """\ 32 | 33 | Uucp is an OCaml library providing efficient access to a selection of 34 | character properties of the [Unicode character database][1]. 35 | 36 | Uucp is independent from any Unicode text data structure and has no 37 | dependencies. It is distributed under the ISC license. 38 | 39 | [1]: http://www.unicode.org/reports/tr44/ 40 | """ 41 | url { 42 | archive: "https://erratique.ch/software/uucp/releases/uucp-13.0.0.tbz" 43 | checksum: "07e706249ddb2d02f0fa298804d3c739" 44 | } 45 | -------------------------------------------------------------------------------- /esy.lock/opam/dune-configurator.2.9.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Helper library for gathering system configuration" 3 | description: """ 4 | dune-configurator is a small library that helps writing OCaml scripts that 5 | test features available on the system, in order to generate config.h 6 | files for instance. 7 | Among other things, dune-configurator allows one to: 8 | - test if a C program compiles 9 | - query pkg-config 10 | - import #define from OCaml header files 11 | - generate config.h file 12 | """ 13 | maintainer: ["Jane Street Group, LLC "] 14 | authors: ["Jane Street Group, LLC "] 15 | license: "MIT" 16 | homepage: "https://github.com/ocaml/dune" 17 | doc: "https://dune.readthedocs.io/" 18 | bug-reports: "https://github.com/ocaml/dune/issues" 19 | depends: [ 20 | "dune" {>= "2.9"} 21 | "ocaml" {>= "4.03.0"} 22 | "result" 23 | "csexp" {>= "1.3.0"} 24 | "odoc" {with-doc} 25 | ] 26 | dev-repo: "git+https://github.com/ocaml/dune.git" 27 | build: [ 28 | ["dune" "subst"] {dev} 29 | [ 30 | "dune" 31 | "build" 32 | "-p" 33 | name 34 | "-j" 35 | jobs 36 | "@install" 37 | "@doc" {with-doc} 38 | ] 39 | ] 40 | x-commit-hash: "641a95d2254ca7c51c97f07f2eed85b7a95db954" 41 | url { 42 | src: "https://github.com/ocaml/dune/releases/download/2.9.0/dune-2.9.0.tbz" 43 | checksum: [ 44 | "sha256=bb217cfb17e893a0b1eb002ac83c14f96adc9d0703cb51ff34ed3ef5a639a41e" 45 | "sha512=fcd8bc3ea7e9a14e6787a3b0384a488e45fa51e164a175ad1b147bebb3fbcccfd8f321b9b6a7665ac3dafeb18a2a6f8626d182af3b1796691f6ed79c166a5f44" 46 | ] 47 | } 48 | -------------------------------------------------------------------------------- /esy.lock/opam/ocaml-lsp-server.1.7.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "LSP Server for OCaml" 3 | description: "An LSP server for OCaml." 4 | maintainer: ["Rudi Grinberg "] 5 | authors: [ 6 | "Andrey Popp <8mayday@gmail.com>" 7 | "Rusty Key " 8 | "Louis Roché " 9 | "Oleksiy Golovko " 10 | "Rudi Grinberg " 11 | "Sacha Ayoun " 12 | "cannorin " 13 | ] 14 | license: "ISC" 15 | homepage: "https://github.com/ocaml/ocaml-lsp" 16 | bug-reports: "https://github.com/ocaml/ocaml-lsp/issues" 17 | depends: [ 18 | "dune" {>= "2.7"} 19 | "yojson" 20 | "re" 21 | "ppx_yojson_conv_lib" {>= "v0.14"} 22 | "dune-build-info" 23 | "dot-merlin-reader" 24 | "pp" {>= "1.1.2"} 25 | "csexp" {>= "1.4"} 26 | "result" {>= "1.5"} 27 | "ocamlformat" {with-test} 28 | "odoc" {with-doc} 29 | "ocaml" {>= "4.12" & < "4.13"} 30 | ] 31 | dev-repo: "git+https://github.com/ocaml/ocaml-lsp.git" 32 | build: [ 33 | ["dune" "subst"] {dev} 34 | [ 35 | "dune" 36 | "build" 37 | "-j" 38 | jobs 39 | "ocaml-lsp-server.install" 40 | "--release" 41 | ] 42 | ] 43 | x-commit-hash: "c728032b4717c265aa364314288d67bd722b9ce9" 44 | url { 45 | src: 46 | "https://github.com/ocaml/ocaml-lsp/releases/download/1.7.0/jsonrpc-1.7.0.tbz" 47 | checksum: [ 48 | "sha256=ca43b6608366ddf891d7c1e1cc38de2c7f93a6da0511de164959db1f88fc42ed" 49 | "sha512=43a00604f25bd1d3e93bfd43f1ef9c4cad9aa392c15a5db0c5ba0264f396e7ca6f60a0293467609402e87aeec441a05e7ee2990b37c98dc27b92a22afbebfd02" 50 | ] 51 | } 52 | -------------------------------------------------------------------------------- /esy.lock/opam/bigstringaf.0.8.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Spiros Eliopoulos " 3 | authors: [ "Spiros Eliopoulos " ] 4 | license: "BSD-3-clause" 5 | homepage: "https://github.com/inhabitedtype/bigstringaf" 6 | bug-reports: "https://github.com/inhabitedtype/bigstringaf/issues" 7 | dev-repo: "git+https://github.com/inhabitedtype/bigstringaf.git" 8 | build: [ 9 | ["dune" "subst"] {dev} 10 | ["dune" "build" "-p" name "-j" jobs] 11 | ["dune" "runtest" "-p" name] {with-test & arch != "x86_32" & arch != "arm32"} 12 | ] 13 | depends: [ 14 | "dune" {>= "2.6.0"} 15 | "alcotest" {with-test} 16 | "bigarray-compat" 17 | "ocaml" {>= "4.03.0"} 18 | "conf-pkg-config" {build} 19 | ] 20 | depopts: [ 21 | "ocaml-freestanding" 22 | ] 23 | conflicts: [ 24 | "mirage-xen" {< "6.0.0"} 25 | "ocaml-freestanding" {< "0.4.1"} 26 | "js_of_ocaml" {< "3.5.0"} 27 | ] 28 | synopsis: "Bigstring intrinsics and fast blits based on memcpy/memmove" 29 | description: """ 30 | Bigstring intrinsics and fast blits based on memcpy/memmove 31 | 32 | The OCaml compiler has a bunch of intrinsics for Bigstrings, but they're not 33 | widely-known, sometimes misused, and so programs that use Bigstrings are slower 34 | than they have to be. And even if a library got that part right and exposed the 35 | intrinsics properly, the compiler doesn't have any fast blits between 36 | Bigstrings and other string-like types. 37 | 38 | So here they are. Go crazy. 39 | """ 40 | url { 41 | src: "https://github.com/inhabitedtype/bigstringaf/archive/0.8.0.tar.gz" 42 | checksum: "md5=c3b8164c1ed1eba9977dcd0c5490e61d" 43 | } 44 | -------------------------------------------------------------------------------- /esy.lock/opam/ocaml-migrate-parsetree.2.2.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "frederic.bour@lakaban.net" 3 | authors: [ 4 | "Frédéric Bour " 5 | "Jérémie Dimino " 6 | ] 7 | license: "LGPL-2.1-only with OCaml-LGPL-linking-exception" 8 | homepage: "https://github.com/ocaml-ppx/ocaml-migrate-parsetree" 9 | bug-reports: "https://github.com/ocaml-ppx/ocaml-migrate-parsetree/issues" 10 | dev-repo: "git+https://github.com/ocaml-ppx/ocaml-migrate-parsetree.git" 11 | doc: "https://ocaml-ppx.github.io/ocaml-migrate-parsetree/" 12 | tags: [ "syntax" "org:ocamllabs" ] 13 | build: ["dune" "build" "-p" name "-j" jobs] 14 | run-test: ["dune" "runtest" "-p" name "-j" jobs] 15 | depends: [ 16 | "dune" {>= "2.3"} 17 | "ocaml" {>= "4.02.3" & < "4.14"} 18 | "cinaps" {with-test & >= "v0.13.0"} 19 | ] 20 | synopsis: "Convert OCaml parsetrees between different versions" 21 | description: """ 22 | Convert OCaml parsetrees between different versions 23 | 24 | This library converts parsetrees, outcometree and ast mappers between 25 | different OCaml versions. High-level functions help making PPX 26 | rewriters independent of a compiler version. 27 | """ 28 | url { 29 | src: 30 | "https://github.com/ocaml-ppx/ocaml-migrate-parsetree/releases/download/v2.2.0/ocaml-migrate-parsetree-v2.2.0.tbz" 31 | checksum: [ 32 | "sha256=b2a68f3d3899cec3a50a99b05738295cc8a18672680406d0f68fbc95c01f1ba1" 33 | "sha512=d1a6e2a639f77d297690f9ed79318b7a403444585b062d2add9f370320f735ba54bca191a34401f15c576c7ee55b5ed232f20d9599aa67821c747d7e684fc5a7" 34 | ] 35 | } 36 | x-commit-hash: "aeeb9317936937d360aa6cdb0cab953d11ff2c5d" 37 | -------------------------------------------------------------------------------- /esy.lock/opam/fmt.0.8.9/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: [ "The fmt programmers" ] 4 | homepage: "https://erratique.ch/software/fmt" 5 | doc: "https://erratique.ch/software/fmt" 6 | dev-repo: "git+https://erratique.ch/repos/fmt.git" 7 | bug-reports: "https://github.com/dbuenzli/fmt/issues" 8 | tags: [ "string" "format" "pretty-print" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ 11 | "ocaml" {>= "4.05.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build & >= "0.9.0"} 15 | # Can be removed once ocaml >= 4.07 16 | "seq" 17 | "stdlib-shims" 18 | ] 19 | depopts: [ "base-unix" "cmdliner" ] 20 | conflicts: [ "cmdliner" {< "0.9.8"} ] 21 | build: [[ 22 | "ocaml" "pkg/pkg.ml" "build" 23 | "--dev-pkg" "%{pinned}%" 24 | "--with-base-unix" "%{base-unix:installed}%" 25 | "--with-cmdliner" "%{cmdliner:installed}%" ]] 26 | 27 | synopsis: """OCaml Format pretty-printer combinators""" 28 | description: """\ 29 | 30 | Fmt exposes combinators to devise `Format` pretty-printing functions. 31 | 32 | Fmt depends only on the OCaml standard library. The optional `Fmt_tty` 33 | library that allows to setup formatters for terminal color output 34 | depends on the Unix library. The optional `Fmt_cli` library that 35 | provides command line support for Fmt depends on [`Cmdliner`][cmdliner]. 36 | 37 | Fmt is distributed under the ISC license. 38 | 39 | [cmdliner]: http://erratique.ch/software/cmdliner 40 | """ 41 | url { 42 | archive: "https://erratique.ch/software/fmt/releases/fmt-0.8.9.tbz" 43 | checksum: "4001b51cde90ea4fd99a4a5033ecf411" 44 | } 45 | -------------------------------------------------------------------------------- /esy.lock/overrides/d202330d7742e66dddc1582a6de9f2de/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "@esy-packages/libev", 3 | "version": "0.1.0", 4 | "description": "libev packaged for Esy", 5 | "license": "GPLv2", 6 | "source": "http://dist.schmorp.de/libev/Attic/libev-4.27.tar.gz#b67aff18f6f1ffec4422e188c98d9fe458c5ed0b", 7 | "override": { 8 | "build": [ 9 | [ 10 | "bash", 11 | "-c", 12 | "#{os == 'windows' ? './configure mingw64 --host x86_64-w64-mingw32 --prefix=$cur__install' : './configure --prefix=$cur__install --disable-dependency-tracking'}" 13 | ], 14 | [ 15 | "make" 16 | ] 17 | ], 18 | "install": [ 19 | [ 20 | "make", 21 | "install" 22 | ] 23 | ], 24 | "buildsInSource": true, 25 | "exportedEnv": { 26 | "LIBEV_LIBS": { 27 | "val": "-L#{self.lib} -lev", 28 | "scope": "global" 29 | }, 30 | "LIBEV_CFLAGS": { 31 | "val": "-I#{self.install / 'include'}", 32 | "scope": "global" 33 | }, 34 | "LDFLAGS": { 35 | "scope": "global", 36 | "val": "-L#{self.lib} -lev" 37 | }, 38 | "CPPFLAGS": { 39 | "scope": "global", 40 | "val": "-I#{self.install / 'include'}" 41 | }, 42 | "LD_LIBRARY_PATH": { 43 | "scope": "global", 44 | "val": "#{self.lib}:$LD_LIBRARY_PATH" 45 | }, 46 | "LIBRARY_PATH": { 47 | "scope": "global", 48 | "val": "#{self.lib}:$LIBRARY_PATH" 49 | }, 50 | "CPATH": { 51 | "scope": "global", 52 | "val": "#{self.install / 'include'}:$CPATH" 53 | } 54 | } 55 | } 56 | } 57 | -------------------------------------------------------------------------------- /esy.lock/opam/mtime.1.2.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: [ "The mtime programmers" ] 4 | homepage: "https://erratique.ch/software/mtime" 5 | doc: "https://erratique.ch/software/mtime" 6 | dev-repo: "git+https://erratique.ch/repos/mtime.git" 7 | bug-reports: "https://github.com/dbuenzli/mtime/issues" 8 | tags: [ "time" "monotonic" "system" "org:erratique" ] 9 | license: "ISC" 10 | depends: 11 | [ 12 | "ocaml" {>= "4.03.0"} 13 | "ocamlfind" {build} 14 | "ocamlbuild" {build} 15 | "topkg" {build} 16 | ] 17 | depopts: [ "js_of_ocaml" ] 18 | conflicts: ["js_of_ocaml" {<= "3.3.0"} ] 19 | build: [[ 20 | "ocaml" "pkg/pkg.ml" "build" 21 | "--pinned" "%{pinned}%" 22 | "--with-js_of_ocaml" "%{js_of_ocaml:installed}%" ]] 23 | 24 | synopsis: """Monotonic wall-clock time for OCaml""" 25 | description: """\ 26 | 27 | Mtime has platform independent support for monotonic wall-clock time 28 | in pure OCaml. This time increases monotonically and is not subject to 29 | operating system calendar time adjustments. The library has types to 30 | represent nanosecond precision timestamps and time spans. 31 | 32 | The additional Mtime_clock library provide access to a system 33 | monotonic clock. 34 | 35 | Mtime has a no dependency. Mtime_clock depends on your system library. 36 | The optional JavaScript support depends on [js_of_ocaml][jsoo]. Mtime 37 | and its libraries are distributed under the ISC license. 38 | 39 | [jsoo]: http://ocsigen.org/js_of_ocaml/ 40 | """ 41 | url { 42 | archive: "https://erratique.ch/software/mtime/releases/mtime-1.2.0.tbz" 43 | checksum: "f3f4c1333c0f74fc27b05c35b9c0dab9" 44 | } 45 | -------------------------------------------------------------------------------- /esy.lock/opam/cmdliner.1.0.4/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["Daniel Bünzli "] 4 | homepage: "http://erratique.ch/software/cmdliner" 5 | doc: "http://erratique.ch/software/cmdliner/doc/Cmdliner" 6 | dev-repo: "git+http://erratique.ch/repos/cmdliner.git" 7 | bug-reports: "https://github.com/dbuenzli/cmdliner/issues" 8 | tags: [ "cli" "system" "declarative" "org:erratique" ] 9 | license: "ISC" 10 | depends:[ "ocaml" {>= "4.03.0"} ] 11 | build: [[ make "all" "PREFIX=%{prefix}%" ]] 12 | install: 13 | [[make "install" "LIBDIR=%{_:lib}%" "DOCDIR=%{_:doc}%" ] 14 | [make "install-doc" "LIBDIR=%{_:lib}%" "DOCDIR=%{_:doc}%" ]] 15 | 16 | synopsis: """Declarative definition of command line interfaces for OCaml""" 17 | description: """\ 18 | 19 | Cmdliner allows the declarative definition of command line interfaces 20 | for OCaml. 21 | 22 | It provides a simple and compositional mechanism to convert command 23 | line arguments to OCaml values and pass them to your functions. The 24 | module automatically handles syntax errors, help messages and UNIX man 25 | page generation. It supports programs with single or multiple commands 26 | and respects most of the [POSIX][1] and [GNU][2] conventions. 27 | 28 | Cmdliner has no dependencies and is distributed under the ISC license. 29 | 30 | [1]: http://pubs.opengroup.org/onlinepubs/009695399/basedefs/xbd_chap12.html 31 | [2]: http://www.gnu.org/software/libc/manual/html_node/Argument-Syntax.html 32 | """ 33 | url { 34 | archive: "http://erratique.ch/software/cmdliner/releases/cmdliner-1.0.4.tbz" 35 | checksum: "fe2213d0bc63b1e10a2d0aa66d2fc8d9" 36 | } 37 | -------------------------------------------------------------------------------- /esy.lock/opam/multipart_form.0.3.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Multipart-form: RFC2183, RFC2388 & RFC7578" 3 | description: """\ 4 | Implementation of RFC7578 in OCaml 5 | 6 | Returning values from forms: multipart/form-data""" 7 | maintainer: "Romain Calascibetta " 8 | authors: "Romain Calascibetta " 9 | license: "MIT" 10 | homepage: "https://github.com/dinosaure/multipart_form" 11 | doc: "https://dinosaure.github.io/multipart_form/" 12 | bug-reports: "https://github.com/dinosaure/multipart_form/issues" 13 | depends: [ 14 | "ocaml" {>= "4.08.0"} 15 | "dune" {>= "2.0.0"} 16 | "angstrom" {>= "0.14.0"} 17 | "base64" {>= "3.0.0"} 18 | "unstrctrd" {>= "0.2"} 19 | "rresult" 20 | "uutf" 21 | "stdlib-shims" 22 | "pecu" {>= "0.4"} 23 | "lwt" 24 | "prettym" 25 | "fmt" 26 | "logs" 27 | "ke" {>= "0.4"} 28 | "alcotest" {with-test} 29 | "rosetta" {with-test} 30 | "bigarray-compat" {>= "1.0.0"} 31 | "bigstringaf" {>= "0.7.0"} 32 | "result" {>= "1.5"} 33 | ] 34 | build: [ 35 | ["dune" "build" "-p" name "-j" jobs] 36 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 37 | ] 38 | dev-repo: "git+https://github.com/dinosaure/multipart_form.git" 39 | x-commit-hash: "a3ba1c7cb2f65c93716b5b0ca4b4b754ade8fc5c" 40 | url { 41 | src: 42 | "https://github.com/dinosaure/multipart_form/releases/download/v0.3.0/multipart_form-v0.3.0.tbz" 43 | checksum: [ 44 | "sha256=f4cd9e300b9cf5d9f2425f091ef89fdf0ffa17ba0c45e7ab3de6f98d9dd08b15" 45 | "sha512=9077001b74fbfe0f020636d2b1a8154c98297ae5cb89e43713c4e5a4eb89be78ec3f89372c7945886b138201d2eaeaff4e90d43f7245aa3480a590decba5d612" 46 | ] 47 | } 48 | -------------------------------------------------------------------------------- /esy.lock/opam/odoc-parser.0.9.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Parser for ocaml documentation comments" 3 | description: """ 4 | Odoc_parser is a library for parsing the contents of OCaml documentation 5 | comments, formatted using 'odoc' syntax, an extension of the language 6 | understood by ocamldoc.""" 7 | maintainer: ["Jon Ludlam "] 8 | authors: ["Anton Bachin "] 9 | license: "ISC" 10 | homepage: "https://github.com/ocaml-doc/odoc-parser" 11 | bug-reports: "https://github.com/ocaml-doc/odoc-parser/issues" 12 | dev-repo: "git+https://github.com/ocaml-doc/odoc-parser.git" 13 | # This template exists because without it dune pop is dependencies and build rules 14 | # involving odoc. Since odoc depends on this package, this doesn't work. 15 | doc: "https://ocaml-doc.github.io/odoc-parser/" 16 | depends: [ 17 | "dune" {>= "2.8"} 18 | "ocaml" {>= "4.02.0"} 19 | "astring" 20 | "result" 21 | "ppx_expect" {with-test} 22 | ("ocaml" {< "4.04.1" & with-test} | "sexplib0" {with-test}) 23 | ] 24 | build: [ 25 | ["dune" "subst"] {dev} 26 | [ 27 | "dune" 28 | "build" 29 | "-p" 30 | name 31 | "-j" 32 | jobs 33 | "@install" 34 | "@runtest" {with-test} 35 | ] 36 | ] 37 | x-commit-hash: "c5ce41b1e1841a2005bb3c4ca3bf1f77876d509d" 38 | url { 39 | src: 40 | "https://github.com/ocaml-doc/odoc-parser/releases/download/0.9.0/odoc-parser-0.9.0.tbz" 41 | checksum: [ 42 | "sha256=df0dad1bad39bf4de6be666c4b63b973bd72eba3b75be9f726317121b5f0bd79" 43 | "sha512=5222debc190784cee62fee177d39fcff56f326b1a3c5b4beb408d0c0eb3d43bf7dcfcffcd25ccc6c3d3c0c098771f01780cb687495ac2a4d95a4bc6401643316" 44 | ] 45 | } 46 | -------------------------------------------------------------------------------- /esy.lock/opam/cstruct.6.0.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "anil@recoil.org" 3 | authors: ["Anil Madhavapeddy" "Richard Mortier" "Thomas Gazagnaire" 4 | "Pierre Chambart" "David Kaloper" "Jeremy Yallop" "David Scott" 5 | "Mindy Preston" "Thomas Leonard" "Anton Kochkov" "Etienne Millon" ] 6 | homepage: "https://github.com/mirage/ocaml-cstruct" 7 | license: "ISC" 8 | dev-repo: "git+https://github.com/mirage/ocaml-cstruct.git" 9 | bug-reports: "https://github.com/mirage/ocaml-cstruct/issues" 10 | doc: "https://mirage.github.io/ocaml-cstruct/" 11 | 12 | tags: [ "org:mirage" "org:ocamllabs" ] 13 | build: [ 14 | ["dune" "subst"] {dev} 15 | ["dune" "build" "-p" name "-j" jobs] 16 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 17 | ] 18 | depends: [ 19 | "ocaml" {>= "4.03.0"} 20 | "dune" {>= "2.0.0"} 21 | "bigarray-compat" 22 | "alcotest" {with-test} 23 | ] 24 | conflicts: [ "js_of_ocaml" {<"3.5.0"} ] 25 | synopsis: "Access C-like structures directly from OCaml" 26 | description: """ 27 | Cstruct is a library and syntax extension to make it easier to access C-like 28 | structures directly from OCaml. It supports both reading and writing to these 29 | structures, and they are accessed via the `Bigarray` module.""" 30 | x-commit-hash: "8864ed511f9ef051efcf445bdc346b8847de24da" 31 | url { 32 | src: 33 | "https://github.com/mirage/ocaml-cstruct/releases/download/v6.0.0/cstruct-v6.0.0.tbz" 34 | checksum: [ 35 | "sha256=78a16d2f258cf308e9600374d8fe4ec21cf09e618acf86337663805f90642676" 36 | "sha512=9f8be171ec365f04df18cb4c144c9cfb843f6a3190d01006138a7736b80b3012788b9b799d784b9a2bea480f92d635edd138ee8ac619442ca2fb666279d7c2d1" 37 | ] 38 | } 39 | -------------------------------------------------------------------------------- /esy.lock/opam/magic-mime.1.2.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Map filenames to common MIME types" 3 | description: """ 4 | This library contains a database of MIME types that maps filename extensions 5 | into MIME types suitable for use in many Internet protocols such as HTTP or 6 | e-mail. It is generated from the `mime.types` file found in Unix systems, but 7 | has no dependency on a filesystem since it includes the contents of the 8 | database as an ML datastructure. 9 | 10 | For example, here's how to lookup MIME types in the [utop] REPL: 11 | 12 | #require "magic-mime";; 13 | Magic_mime.lookup "/foo/bar.txt";; 14 | - : bytes = "text/plain" 15 | Magic_mime.lookup "bar.css";; 16 | - : bytes = "text/css" 17 | """ 18 | maintainer: "Anil Madhavapeddy " 19 | authors: ["Anil Madhavapeddy" "Maxence Guesdon"] 20 | license: "ISC" 21 | homepage: "https://github.com/mirage/ocaml-magic-mime" 22 | doc: "https://mirage.github.io/ocaml-magic-mime/" 23 | bug-reports: "https://github.com/mirage/ocaml-magic-mime/issues" 24 | dev-repo: "git+https://github.com/mirage/ocaml-magic-mime.git" 25 | depends: [ 26 | "ocaml" {>= "4.03.0"} 27 | "dune" 28 | ] 29 | build: [ 30 | ["dune" "subst"] {dev} 31 | ["dune" "build" "-p" name "-j" jobs] 32 | ] 33 | url { 34 | src: 35 | "https://github.com/mirage/ocaml-magic-mime/releases/download/v1.2.0/magic-mime-v1.2.0.tbz" 36 | checksum: [ 37 | "sha256=f121b67500f8dd97e2fc9fd5d01c7325e4c84bc5c0237442779fbd6fa20694f5" 38 | "sha512=f55e39b11e145f97eaec6796cb99bdca3ac62130995fc36f82fdd097ab5ed6ff9130c671546b76b7c21777284977c02f6b6f74d5549a367481210342708886da" 39 | ] 40 | } 41 | x-commit-hash: "11afeba987ca94cb9a6b1e4e1695f1d54c6e23b2" 42 | -------------------------------------------------------------------------------- /esy.lock/opam/mirage-crypto.0.10.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | homepage: "https://github.com/mirage/mirage-crypto" 3 | dev-repo: "git+https://github.com/mirage/mirage-crypto.git" 4 | bug-reports: "https://github.com/mirage/mirage-crypto/issues" 5 | doc: "https://mirage.github.io/mirage-crypto/doc" 6 | authors: ["David Kaloper " "Hannes Mehnert " ] 7 | maintainer: "Hannes Mehnert " 8 | license: "ISC" 9 | synopsis: "Simple symmetric cryptography for the modern age" 10 | 11 | build: [ ["dune" "subst"] {dev} 12 | ["dune" "build" "-p" name "-j" jobs ] 13 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} ] 14 | 15 | depends: [ 16 | "conf-pkg-config" {build} 17 | "ocaml" {>= "4.08.0"} 18 | "dune" {>= "2.6"} 19 | "dune-configurator" {>= "2.0.0"} 20 | "ounit" {with-test} 21 | "cstruct" {>="3.2.0"} 22 | "eqaf" {>= "0.7"} 23 | "bigarray-compat" # required to get eqaf.cstruct 24 | ] 25 | depopts: [ 26 | "ocaml-freestanding" 27 | ] 28 | conflicts: [ 29 | "mirage-xen" {< "6.0.0"} 30 | "ocaml-freestanding" {< "0.6.0"} 31 | ] 32 | description: """ 33 | Mirage-crypto provides symmetric ciphers (DES, AES, RC4, ChaCha20/Poly1305), and 34 | hashes (MD5, SHA-1, SHA-2). 35 | """ 36 | x-commit-hash: "e5509dee20aa862ca817c1c4e10460421efc7c27" 37 | url { 38 | src: 39 | "https://github.com/mirage/mirage-crypto/releases/download/v0.10.2/mirage-crypto-v0.10.2.tbz" 40 | checksum: [ 41 | "sha256=96c4826fa3532c9d2ba21cd5fa25df003be3df20b2cc01068b60d59e0222d906" 42 | "sha512=4ff95ce88686220a0cf5705bd938ac067d64521ed31cb316141190b662c1bbc92b49abd5244895f59724ba068f963002df00820ab1fb2677dc4132a94657d78b" 43 | ] 44 | } 45 | -------------------------------------------------------------------------------- /esy.lock/opam/mirage-crypto-rng.0.10.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | homepage: "https://github.com/mirage/mirage-crypto" 3 | dev-repo: "git+https://github.com/mirage/mirage-crypto.git" 4 | bug-reports: "https://github.com/mirage/mirage-crypto/issues" 5 | doc: "https://mirage.github.io/mirage-crypto/doc" 6 | authors: ["David Kaloper " "Hannes Mehnert " ] 7 | maintainer: "Hannes Mehnert " 8 | license: "ISC" 9 | synopsis: "A cryptographically secure PRNG" 10 | 11 | build: [ ["dune" "subst"] {dev} 12 | ["dune" "build" "-p" name "-j" jobs ] 13 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} ] 14 | 15 | depends: [ 16 | "ocaml" {>= "4.08.0"} 17 | "dune" {>= "2.6"} 18 | "dune-configurator" {>= "2.0.0"} 19 | "duration" 20 | "cstruct" {>= "4.0.0"} 21 | "logs" 22 | "mirage-crypto" {=version} 23 | "ounit" {with-test} 24 | "randomconv" {with-test & >= "0.1.3"} 25 | # lwt sublibrary 26 | "mtime" {>= "1.0.0"} 27 | "lwt" {>= "4.0.0"} 28 | ] 29 | conflicts: [ "mirage-runtime" {< "3.8.0"} ] 30 | description: """ 31 | Mirage-crypto-rng provides a random number generator interface, and 32 | implementations: Fortuna, HMAC-DRBG, getrandom/getentropy based (in the unix 33 | sublibrary) 34 | """ 35 | x-commit-hash: "e5509dee20aa862ca817c1c4e10460421efc7c27" 36 | url { 37 | src: 38 | "https://github.com/mirage/mirage-crypto/releases/download/v0.10.2/mirage-crypto-v0.10.2.tbz" 39 | checksum: [ 40 | "sha256=96c4826fa3532c9d2ba21cd5fa25df003be3df20b2cc01068b60d59e0222d906" 41 | "sha512=4ff95ce88686220a0cf5705bd938ac067d64521ed31cb316141190b662c1bbc92b49abd5244895f59724ba068f963002df00820ab1fb2677dc4132a94657d78b" 42 | ] 43 | } 44 | -------------------------------------------------------------------------------- /esy.lock/opam/ocplib-endian.1.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: 3 | "Optimised functions to read and write int16/32/64 from strings and bigarrays" 4 | description: """ 5 | The library implements three modules: 6 | * [EndianString](https://github.com/OCamlPro/ocplib-endian/blob/master/src/endianString.mli) works directly on strings, and provides submodules BigEndian and LittleEndian, with their unsafe counter-parts; 7 | * [EndianBytes](https://github.com/OCamlPro/ocplib-endian/blob/master/src/endianBytes.mli) works directly on bytes, and provides submodules BigEndian and LittleEndian, with their unsafe counter-parts; 8 | * [EndianBigstring](https://github.com/OCamlPro/ocplib-endian/blob/master/src/endianBigstring.mli) works on bigstrings (Bigarrays of chars), and provides submodules BigEndian and LittleEndian, with their unsafe counter-parts.""" 9 | maintainer: "pierre.chambart@ocamlpro.com" 10 | authors: "Pierre Chambart" 11 | homepage: "https://github.com/OCamlPro/ocplib-endian" 12 | doc: "https://ocamlpro.github.io/ocplib-endian/ocplib-endian/" 13 | bug-reports: "https://github.com/OCamlPro/ocplib-endian/issues" 14 | depends: [ 15 | "base-bytes" 16 | "ocaml" {>= "4.02.3"} 17 | "cppo" {>= "1.1.0" & build} 18 | "dune" {>= "1.0"} 19 | ] 20 | build: [ 21 | "dune" 22 | "build" 23 | "-p" 24 | name 25 | "-j" 26 | jobs 27 | "@install" 28 | "@runtest" {with-test} 29 | "@doc" {with-doc} 30 | ] 31 | dev-repo: "git+https://github.com/OCamlPro/ocplib-endian.git" 32 | url { 33 | src: "https://github.com/OCamlPro/ocplib-endian/archive/1.1.tar.gz" 34 | checksum: [ 35 | "md5=dedf4d69c1b87b3c6c7234f632399285" 36 | "sha512=39351c666d1394770696fa89ac62f7c137ad1697d99888bfba2cc8de2c61df05dd8b3aa327c117bf38f3e29e081026d2c575c5ad0022bde92b3d43aba577d3f9" 37 | ] 38 | } -------------------------------------------------------------------------------- /esy.lock/opam/bigarray-overlap.0.2.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Romain Calascibetta " 3 | authors: "Romain Calascibetta " 4 | homepage: "https://github.com/dinosaure/overlap" 5 | bug-reports: "https://github.com/dinosaure/overlap/issues" 6 | dev-repo: "git+https://github.com/dinosaure/overlap.git" 7 | doc: "https://dinosaure.github.io/overlap/" 8 | license: "MIT" 9 | synopsis: "Bigarray.overlap" 10 | description: """A minimal library to know that 2 bigarray share physically the same memory or not.""" 11 | 12 | build: [ 13 | [ "dune" "build" "-p" name "-j" jobs ] 14 | [ "dune" "runtest" "-p" name "-j" jobs ] {with-test} 15 | ] 16 | 17 | install: [ 18 | [ "dune" "install" "-p" name ] {with-test} 19 | [ "./test/test_runes.ml" ] {with-test} 20 | ] 21 | 22 | depends: [ 23 | "ocaml" {>= "4.07.0"} 24 | "dune" {>= "2.3"} 25 | "bigarray-compat" 26 | "alcotest" {with-test} 27 | "astring" {with-test} 28 | "fpath" {with-test} 29 | "bos" {with-test} 30 | "ocamlfind" {with-test} 31 | "conf-pkg-config" {with-test} 32 | ] 33 | 34 | depopts: [ 35 | "ocaml-freestanding" 36 | "mirage-xen-posix" 37 | "js_of_ocaml-compiler" 38 | ] 39 | 40 | conflicts: [ 41 | "mirage-xen-posix" {< "3.1.0"} 42 | "ocaml-freestanding" {< "0.4.3"} 43 | ] 44 | url { 45 | src: 46 | "https://github.com/dinosaure/overlap/releases/download/v0.2.0/bigarray-overlap-v0.2.0.tbz" 47 | checksum: [ 48 | "sha256=9e5142802b9d4eaa18ac630bd226585f0a1d86b72f79e01993dd2fedd45606ed" 49 | "sha512=976ece7d9275117f4bd6ee3d449b15bab79746af5e1259990d581fada33fdcf371ffc7589e906a231b89d76487c6cc2af97069046fd3a2520c77a61f2ed5b1be" 50 | ] 51 | } 52 | -------------------------------------------------------------------------------- /esy.lock/opam/ptime.0.8.5/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["The ptime programmers"] 4 | homepage: "https://erratique.ch/software/ptime" 5 | doc: "https://erratique.ch/software/ptime/doc" 6 | dev-repo: "git+http://erratique.ch/repos/ptime.git" 7 | bug-reports: "https://github.com/dbuenzli/ptime/issues" 8 | tags: [ "time" "posix" "system" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ 11 | "ocaml" {>= "4.01.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build} 15 | "result" 16 | ] 17 | depopts: [ "js_of_ocaml" ] 18 | conflicts: [ "js_of_ocaml" { < "3.3.0" } ] 19 | build:[[ 20 | "ocaml" "pkg/pkg.ml" "build" 21 | "--pinned" "%{pinned}%" 22 | "--with-js_of_ocaml" "%{js_of_ocaml:installed}%" ]] 23 | 24 | synopsis: """POSIX time for OCaml""" 25 | description: """\ 26 | 27 | Ptime has platform independent POSIX time support in pure OCaml. It 28 | provides a type to represent a well-defined range of POSIX timestamps 29 | with picosecond precision, conversion with date-time values, 30 | conversion with [RFC 3339 timestamps][rfc3339] and pretty printing to a 31 | human-readable, locale-independent representation. 32 | 33 | The additional Ptime_clock library provides access to a system POSIX 34 | clock and to the system's current time zone offset. 35 | 36 | Ptime is not a calendar library. 37 | 38 | Ptime depends on the `result` compatibility package. Ptime_clock 39 | depends on your system library. Ptime_clock's optional JavaScript 40 | support depends on [js_of_ocaml][jsoo]. Ptime and its libraries are 41 | distributed under the ISC license. 42 | 43 | [rfc3339]: http://tools.ietf.org/html/rfc3339 44 | [jsoo]: http://ocsigen.org/js_of_ocaml/ 45 | """ 46 | url { 47 | archive: "https://erratique.ch/software/ptime/releases/ptime-0.8.5.tbz" 48 | checksum: "4d48055d623ecf2db792439b3e96a520" 49 | } 50 | -------------------------------------------------------------------------------- /esy.lock/overrides/41b6fb3db953254b0cb4c5e1b546f3f4/package.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "esy-openssl", 3 | "version": "1.1.1g", 4 | "description": "Mirror of OpenSSL", 5 | "license": "Apache 2.0", 6 | "source": "https://github.com/openssl/openssl/archive/OpenSSL_1_1_1g.tar.gz#33324ff957edaae8ae575817b456320378da46ff", 7 | "override": { 8 | "build": [ 9 | [ 10 | "bash", 11 | "-c", 12 | "#{os == 'windows' ? './configure mingw64 --prefix=$cur__install --openssldir=$cur__install/ssl --cross-compile-prefix=x86_64-w64-mingw32-' : './config --prefix=$cur__install --openssldir=$cur__install/ssl'}" 13 | ], 14 | [ 15 | "make", 16 | "-j4" 17 | ] 18 | ], 19 | "install": [ 20 | [ 21 | "make", 22 | "install" 23 | ], 24 | [ 25 | "bash", 26 | "-c", 27 | "mkdir -p #{self.install / 'ssl'}" 28 | ], 29 | [ 30 | "bash", 31 | "-c", 32 | "mv cert.pem #{self.install / 'ssl'}" 33 | ] 34 | ], 35 | "buildsInSource": true, 36 | "exportedEnv": { 37 | "LD_LIBRARY_PATH": { 38 | "val": "#{self.lib : $LD_LIBRARY_PATH}", 39 | "scope": "global" 40 | }, 41 | "OPENSSL_LIB_PATH": { 42 | "val": "#{self.lib}", 43 | "scope": "global" 44 | }, 45 | "OPENSSL_INCLUDE_PATH": { 46 | "val": "#{self.install / 'include'}", 47 | "scope": "global" 48 | }, 49 | "OPENSSL_BIN_PATH": { 50 | "val": "#{self.bin}", 51 | "scope": "global" 52 | }, 53 | "PKG_CONFIG_PATH": { 54 | "val": "#{self.lib / 'pkgconfig'}", 55 | "scope": "global" 56 | } 57 | }, 58 | "dependencies": { 59 | "@opam/conf-autoconf": "esy-packages/esy-autoconf:package.json#fb93edf", 60 | "@opam/conf-pkg-config": "*" 61 | } 62 | } 63 | } 64 | -------------------------------------------------------------------------------- /esy.lock/opam/easy-format.1.3.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | build: [ 3 | ["dune" "subst"] {dev} 4 | ["dune" "build" "-p" name "-j" jobs] 5 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 6 | ["dune" "build" "-p" name "@doc"] {with-doc} 7 | ] 8 | maintainer: ["martin@mjambon.com" "rudi.grinberg@gmail.com"] 9 | authors: ["Martin Jambon"] 10 | bug-reports: "https://github.com/mjambon/easy-format/issues" 11 | homepage: "https://github.com/mjambon/easy-format" 12 | doc: "https://mjambon.github.io/easy-format/" 13 | license: "BSD-3-Clause" 14 | dev-repo: "git+https://github.com/mjambon/easy-format.git" 15 | synopsis: 16 | "High-level and functional interface to the Format module of the OCaml standard library" 17 | description: """ 18 | 19 | This module offers a high-level and functional interface to the Format module of 20 | the OCaml standard library. It is a pretty-printing facility, i.e. it takes as 21 | input some code represented as a tree and formats this code into the most 22 | visually satisfying result, breaking and indenting lines of code where 23 | appropriate. 24 | 25 | Input data must be first modelled and converted into a tree using 3 kinds of 26 | nodes: 27 | 28 | * atoms 29 | * lists 30 | * labelled nodes 31 | 32 | Atoms represent any text that is guaranteed to be printed as-is. Lists can model 33 | any sequence of items such as arrays of data or lists of definitions that are 34 | labelled with something like "int main", "let x =" or "x:".""" 35 | depends: [ 36 | "dune" {>= "1.10"} 37 | "ocaml" {>= "4.02.3"} 38 | ] 39 | url { 40 | src: 41 | "https://github.com/mjambon/easy-format/releases/download/1.3.2/easy-format-1.3.2.tbz" 42 | checksum: [ 43 | "sha256=3440c2b882d537ae5e9011eb06abb53f5667e651ea4bb3b460ea8230fa8c1926" 44 | "sha512=e39377a2ff020ceb9ac29e8515a89d9bdbc91dfcfa871c4e3baafa56753fac2896768e5d9822a050dc1e2ade43c8967afb69391a386c0a8ecd4e1f774e236135" 45 | ] 46 | } 47 | -------------------------------------------------------------------------------- /esy.lock/opam/biniou.1.2.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | build: [ 3 | ["dune" "subst"] {dev} 4 | ["dune" "build" "-p" name "-j" jobs] 5 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 6 | ["dune" "build" "-p" name "@doc"] {with-doc} 7 | ] 8 | maintainer: ["martin@mjambon.com"] 9 | authors: ["Martin Jambon"] 10 | bug-reports: "https://github.com/mjambon/biniou/issues" 11 | homepage: "https://github.com/mjambon/biniou" 12 | doc: "https://mjambon.github.io/biniou/" 13 | license: "BSD-3-Clause" 14 | dev-repo: "git+https://github.com/mjambon/biniou.git" 15 | synopsis: 16 | "Binary data format designed for speed, safety, ease of use and backward compatibility as protocols evolve" 17 | description: """ 18 | 19 | Biniou (pronounced "be new") is a binary data format designed for speed, safety, 20 | ease of use and backward compatibility as protocols evolve. Biniou is vastly 21 | equivalent to JSON in terms of functionality but allows implementations several 22 | times faster (4 times faster than yojson), with 25-35% space savings. 23 | 24 | Biniou data can be decoded into human-readable form without knowledge of type 25 | definitions except for field and variant names which are represented by 31-bit 26 | hashes. A program named bdump is provided for routine visualization of biniou 27 | data files. 28 | 29 | The program atdgen is used to derive OCaml-Biniou serializers and deserializers 30 | from type definitions. 31 | 32 | Biniou format specification: mjambon.github.io/atdgen-doc/biniou-format.txt""" 33 | depends: [ 34 | "easy-format" 35 | "dune" {>= "1.10"} 36 | "ocaml" {>= "4.02.3"} 37 | ] 38 | url { 39 | src: 40 | "https://github.com/mjambon/biniou/releases/download/1.2.1/biniou-1.2.1.tbz" 41 | checksum: [ 42 | "sha256=35546c68b1929a8e6d27a3b39ecd17b38303a0d47e65eb9d1480c2061ea84335" 43 | "sha512=82670cc77bf3e869ee26e5fbe5a5affa45a22bc8b6c4bd7e85473912780e0111baca59b34a2c14feae3543ce6e239d7fddaeab24b686a65bfe642cdb91d27ebf" 44 | ] 45 | } 46 | -------------------------------------------------------------------------------- /esy.lock/opam/ocamlformat.0.19.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Auto-formatter for OCaml code" 3 | description: 4 | "OCamlFormat is a tool to automatically format OCaml code in a uniform style." 5 | maintainer: ["OCamlFormat Team "] 6 | authors: ["Josh Berdine "] 7 | license: ["MIT" "LGPL-2.1-only WITH OCaml-LGPL-linking-exception"] # OCamlFormat is distributed under the MIT license. Parts of the OCaml library are vendored for OCamlFormat and distributed under their original LGPL 2.1 license 8 | homepage: "https://github.com/ocaml-ppx/ocamlformat" 9 | bug-reports: "https://github.com/ocaml-ppx/ocamlformat/issues" 10 | depends: [ 11 | "dune" {>= "2.8"} 12 | "ocaml" {>= "4.08" & < "4.14"} 13 | "alcotest" {with-test} 14 | "base" {>= "v0.12.0" & < "v0.15"} 15 | "base-unix" 16 | "cmdliner" 17 | "dune-build-info" 18 | "fix" 19 | "fpath" 20 | "menhir" {>= "20201216"} 21 | "menhirLib" {>= "20201216"} 22 | "menhirSdk" {>= "20201216"} 23 | "ocp-indent" 24 | "bisect_ppx" {with-test & >= "2.5.0"} 25 | "odoc-parser" {>= "0.9.0"} 26 | "re" {>= "1.7.2"} 27 | "stdio" {< "v0.15"} 28 | "uuseg" {>= "10.0.0"} 29 | "uutf" {>= "1.0.1"} 30 | "odoc" {with-doc} 31 | ] 32 | build: [ 33 | ["dune" "subst"] {dev} 34 | [ 35 | "dune" 36 | "build" 37 | "-p" 38 | name 39 | "-j" 40 | jobs 41 | "@install" 42 | "@runtest" {with-test} 43 | "@doc" {with-doc} 44 | ] 45 | ] 46 | dev-repo: "git+https://github.com/ocaml-ppx/ocamlformat.git" 47 | url { 48 | src: 49 | "https://github.com/ocaml-ppx/ocamlformat/releases/download/0.19.0/ocamlformat-0.19.0.tbz" 50 | checksum: [ 51 | "sha256=62fc46aae8f0a4a33ce7f8d7726d7109bff615ea6fcb50d1482f21d20ee50f46" 52 | "sha512=408b3af533169f201d7492be869f8ae4acde5583e01693c586929f44b76d569d3d6d555bc056378743d7cb3bd8e11ebc9cbd178ca196bcb82db33127d14902f8" 53 | ] 54 | } 55 | x-commit-hash: "ba67af28ddca8718ef8816b2b0dc1e5b2f5e9591" 56 | -------------------------------------------------------------------------------- /esy.lock/opam/uuseg.13.0.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["The uuseg programmers"] 4 | homepage: "https://erratique.ch/software/uuseg" 5 | doc: "https://erratique.ch/software/uuseg" 6 | dev-repo: "git+https://erratique.ch/repos/uuseg.git" 7 | bug-reports: "https://github.com/dbuenzli/uuseg/issues" 8 | tags: [ "segmentation" "text" "unicode" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ "ocaml" {>= "4.03.0"} 11 | "ocamlfind" {build} 12 | "ocamlbuild" {build} 13 | "topkg" {build} 14 | "uucp" {>= "13.0.0" & < "14.0.0"} ] 15 | depopts: [ "uutf" 16 | "cmdliner" 17 | "uutf" {with-test} 18 | "cmdliner" {with-test} ] 19 | conflicts: [ "uutf" {< "1.0.0"} ] 20 | build: [[ 21 | "ocaml" "pkg/pkg.ml" "build" 22 | "--pinned" "%{pinned}%" 23 | "--with-uutf" "%{uutf:installed}%" 24 | "--with-cmdliner" "%{cmdliner:installed}%" ]] 25 | 26 | synopsis: """Unicode text segmentation for OCaml""" 27 | description: """\ 28 | 29 | Uuseg is an OCaml library for segmenting Unicode text. It implements 30 | the locale independent [Unicode text segmentation algorithms][1] to 31 | detect grapheme cluster, word and sentence boundaries and the 32 | [Unicode line breaking algorithm][2] to detect line break 33 | opportunities. 34 | 35 | The library is independent from any IO mechanism or Unicode text data 36 | structure and it can process text without a complete in-memory 37 | representation. 38 | 39 | Uuseg depends on [Uucp](http://erratique.ch/software/uucp) and 40 | optionally on [Uutf](http://erratique.ch/software/uutf) for support on 41 | OCaml UTF-X encoded strings. It is distributed under the ISC license. 42 | 43 | [1]: http://www.unicode.org/reports/tr29/ 44 | [2]: http://www.unicode.org/reports/tr14/ 45 | """ 46 | url { 47 | archive: "https://erratique.ch/software/uuseg/releases/uuseg-13.0.0.tbz" 48 | checksum: "a07a97fff61da604614ea8da0547ef6a" 49 | } 50 | -------------------------------------------------------------------------------- /esy.lock/opam/topkg.1.0.3/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["Daniel Bünzli "] 4 | homepage: "http://erratique.ch/software/topkg" 5 | doc: "http://erratique.ch/software/topkg/doc" 6 | license: "ISC" 7 | dev-repo: "git+http://erratique.ch/repos/topkg.git" 8 | bug-reports: "https://github.com/dbuenzli/topkg/issues" 9 | tags: ["packaging" "ocamlbuild" "org:erratique"] 10 | depends: [ 11 | "ocaml" {>= "4.03.0"} 12 | "ocamlfind" {build & >= "1.6.1"} 13 | "ocamlbuild" ] 14 | build: [[ 15 | "ocaml" "pkg/pkg.ml" "build" 16 | "--pkg-name" name 17 | "--dev-pkg" "%{pinned}%" ]] 18 | synopsis: """The transitory OCaml software packager""" 19 | description: """\ 20 | 21 | Topkg is a packager for distributing OCaml software. It provides an 22 | API to describe the files a package installs in a given build 23 | configuration and to specify information about the package's 24 | distribution, creation and publication procedures. 25 | 26 | The optional topkg-care package provides the `topkg` command line tool 27 | which helps with various aspects of a package's life cycle: creating 28 | and linting a distribution, releasing it on the WWW, publish its 29 | documentation, add it to the OCaml opam repository, etc. 30 | 31 | Topkg is distributed under the ISC license and has **no** 32 | dependencies. This is what your packages will need as a *build* 33 | dependency. 34 | 35 | Topkg-care is distributed under the ISC license it depends on 36 | [fmt][fmt], [logs][logs], [bos][bos], [cmdliner][cmdliner], 37 | [webbrowser][webbrowser] and `opam-format`. 38 | 39 | [fmt]: http://erratique.ch/software/fmt 40 | [logs]: http://erratique.ch/software/logs 41 | [bos]: http://erratique.ch/software/bos 42 | [cmdliner]: http://erratique.ch/software/cmdliner 43 | [webbrowser]: http://erratique.ch/software/webbrowser 44 | """ 45 | url { 46 | archive: "http://erratique.ch/software/topkg/releases/topkg-1.0.3.tbz" 47 | checksum: "e285f7a296d77ee7d831ba9a6bfb396f" 48 | } 49 | -------------------------------------------------------------------------------- /esy.lock/opam/ocamlfind.1.8.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "A library manager for OCaml" 3 | maintainer: "Thomas Gazagnaire " 4 | authors: "Gerd Stolpmann " 5 | homepage: "http://projects.camlcity.org/projects/findlib.html" 6 | bug-reports: "https://gitlab.camlcity.org/gerd/lib-findlib/issues" 7 | dev-repo: "git+https://gitlab.camlcity.org/gerd/lib-findlib.git" 8 | description: """ 9 | Findlib is a library manager for OCaml. It provides a convention how 10 | to store libraries, and a file format ("META") to describe the 11 | properties of libraries. There is also a tool (ocamlfind) for 12 | interpreting the META files, so that it is very easy to use libraries 13 | in programs and scripts. 14 | """ 15 | build: [ 16 | [ 17 | "./configure" 18 | "-bindir" 19 | bin 20 | "-sitelib" 21 | lib 22 | "-mandir" 23 | man 24 | "-config" 25 | "%{lib}%/findlib.conf" 26 | "-no-custom" 27 | "-no-camlp4" {!ocaml:preinstalled & ocaml:version >= "4.02.0"} 28 | "-no-topfind" {ocaml:preinstalled} 29 | ] 30 | [make "all"] 31 | [make "opt"] {ocaml:native} 32 | ] 33 | install: [ 34 | [ 35 | "./configure" 36 | "-bindir" 37 | bin 38 | "-sitelib" 39 | lib 40 | "-mandir" 41 | man 42 | "-config" 43 | "%{lib}%/findlib.conf" 44 | "-no-custom" 45 | "-no-camlp4" {!ocaml:preinstalled & ocaml:version >= "4.02.0"} 46 | "-no-topfind" {ocaml:preinstalled} 47 | ] 48 | [make "install"] 49 | ["install" "-m" "0755" "ocaml-stub" "%{bin}%/ocaml"] {ocaml:preinstalled} 50 | ] 51 | depends: [ 52 | "ocaml" {>= "4.00.0" & < "4.13"} 53 | "conf-m4" {build} 54 | ] 55 | extra-files: [ 56 | ["ocamlfind.install" "md5=06f2c282ab52d93aa6adeeadd82a2543"] 57 | ["ocaml-stub" "md5=181f259c9e0bad9ef523e7d4abfdf87a"] 58 | ] 59 | url { 60 | src: "http://download.camlcity.org/download/findlib-1.8.1.tar.gz" 61 | checksum: "md5=18ca650982c15536616dea0e422cbd8c" 62 | mirrors: "http://download2.camlcity.org/download/findlib-1.8.1.tar.gz" 63 | } 64 | depopts: ["graphics"] 65 | -------------------------------------------------------------------------------- /esy.lock/opam/conf-pkg-config.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "unixjunkie@sdf.org" 3 | authors: ["Francois Berenger"] 4 | homepage: "http://www.freedesktop.org/wiki/Software/pkg-config/" 5 | bug-reports: "https://github.com/ocaml/opam-repository/issues" 6 | license: "GPL-1.0-or-later" 7 | setenv: [PKG_CONFIG_PATH += "%{lib}%/pkgconfig"] 8 | build: [ 9 | ["pkg-config" "--help"] {os != "openbsd"} 10 | ["/usr/local/bin/pkgconf" "--help"] {os = "openbsd"} 11 | ] 12 | install: [ 13 | ["mkdir" "-p" "%{lib}%/pkgconfig"] 14 | ["ln" "-s" "/usr/local/bin/pkgconf" "%{bin}%/pkg-config"] {os = "openbsd"} 15 | ] 16 | post-messages: [ 17 | "conf-pkg-config: A symlink to /usr/local/bin/pkgconf has been installed in the OPAM bin directory (%{bin}%) on your PATH as 'pkg-config'. This is necessary for correct operation." {os = "openbsd"} 18 | ] 19 | depexts: [ 20 | ["pkg-config"] {os-family = "debian"} 21 | ["pkgconf"] {os-distribution = "arch"} 22 | ["pkgconf-pkg-config"] {os-distribution = "fedora"} 23 | ["pkgconfig"] {os-distribution = "centos" & os-version <= "7"} 24 | ["pkgconf-pkg-config"] {os-distribution = "mageia"} 25 | ["pkgconfig"] {os-distribution = "rhel" & os-version <= "7"} 26 | ["pkgconfig"] {os-distribution = "ol" & os-version <= "7"} 27 | ["pkgconf"] {os-distribution = "alpine"} 28 | ["pkgconfig"] {os-distribution = "nixos"} 29 | ["devel/pkgconf"] {os = "openbsd"} 30 | ["pkg-config"] {os = "macos" & os-distribution = "homebrew"} 31 | ["pkgconfig"] {os = "macos" & os-distribution = "macports"} 32 | ["pkgconf"] {os = "freebsd"} 33 | ["pkgconf-pkg-config"] {os-distribution = "rhel" & os-version >= "8"} 34 | ["pkgconf-pkg-config"] {os-distribution = "centos" & os-version >= "8"} 35 | ["pkgconf-pkg-config"] {os-distribution = "ol" & os-version >= "8"} 36 | ["system:pkgconf"] {os = "win32" & os-distribution = "cygwinports"} 37 | ] 38 | synopsis: "Check if pkg-config is installed and create an opam switch local pkgconfig folder" 39 | description: """ 40 | This package can only install if the pkg-config package is installed 41 | on the system.""" 42 | flags: conf 43 | -------------------------------------------------------------------------------- /esy.lock/opam/pp.1.1.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Pretty-printing library" 3 | description: """ 4 | 5 | This library provides a lean alternative to the Format [1] module of 6 | the OCaml standard library. It aims to make it easy for users to do 7 | the right thing. If you have tried Format before but find its API 8 | complicated and difficult to use, then Pp might be a good choice for 9 | you. 10 | 11 | Pp uses the same concepts of boxes and break hints, and the final 12 | rendering is done to formatter from the Format module. However it 13 | defines its own algebra which some might find easier to work with and 14 | reason about. No previous knowledge is required to start using this 15 | library, however the various guides for the Format module such as this 16 | one [2] should be applicable to Pp as well. 17 | 18 | [1]: https://caml.inria.fr/pub/docs/manual-ocaml/libref/Format.html 19 | [2]: http://caml.inria.fr/resources/doc/guides/format.en.html 20 | """ 21 | maintainer: ["Jeremie Dimino "] 22 | authors: [ 23 | "Jane Street Group, LLC" 24 | "Jeremie Dimino " 25 | ] 26 | license: "MIT" 27 | homepage: "https://github.com/ocaml-dune/pp" 28 | doc: "https://ocaml-dune.github.io/pp/" 29 | bug-reports: "https://github.com/ocaml-dune/pp/issues" 30 | depends: [ 31 | "dune" {>= "2.0"} 32 | "ocaml" {>= "4.08.0"} 33 | "ppx_expect" {with-test} 34 | ] 35 | build: [ 36 | ["dune" "subst"] {dev} 37 | [ 38 | "dune" 39 | "build" 40 | "-p" 41 | name 42 | "-j" 43 | jobs 44 | "@install" 45 | "@runtest" {with-test} 46 | "@doc" {with-doc} 47 | ] 48 | ] 49 | dev-repo: "git+https://github.com/ocaml-dune/pp.git" 50 | x-commit-hash: "395b95c89cfe2c6d538dad9d56721b6a7278d46c" 51 | url { 52 | src: 53 | "https://github.com/ocaml-dune/pp/releases/download/1.1.2/pp-1.1.2.tbz" 54 | checksum: [ 55 | "sha256=e4a4e98d96b1bb76950fcd6da4e938c86d989df4d7e48f02f7a44595f5af1d56" 56 | "sha512=58f78b083483006b40814be9aac33c895349eb1c6427d2762b4d760192613401262478bd5deff909763517560b06af7bf013c6a6f87d549aafa77b26345303f2" 57 | ] 58 | } 59 | -------------------------------------------------------------------------------- /esy.lock/opam/ocp-indent.1.8.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "contact@ocamlpro.com" 3 | synopsis: "A simple tool to indent OCaml programs" 4 | description: """ 5 | Ocp-indent is based on an approximate, tolerant OCaml parser and a simple stack 6 | machine ; this is much faster and more reliable than using regexps. Presets and 7 | configuration options available, with the possibility to set them project-wide. 8 | Supports most common syntax extensions, and extensible for others. 9 | 10 | Includes: 11 | - An indentor program, callable from the command-line or from within editors 12 | - Bindings for popular editors 13 | - A library that can be directly used by editor writers, or just for 14 | fault-tolerant/approximate parsing. 15 | """ 16 | authors: [ 17 | "Louis Gesbert " 18 | "Thomas Gazagnaire " 19 | "Jun Furuse" 20 | ] 21 | homepage: "http://www.typerex.org/ocp-indent.html" 22 | bug-reports: "https://github.com/OCamlPro/ocp-indent/issues" 23 | license: "LGPL-2.1-only with OCaml-LGPL-linking-exception" 24 | tags: ["org:ocamlpro" "org:typerex"] 25 | dev-repo: "git+https://github.com/OCamlPro/ocp-indent.git" 26 | build: [ 27 | ["dune" "build" "-p" name "-j" jobs] 28 | ] 29 | run-test: [ 30 | ["dune" "runtest" "-p" name "-j" jobs] 31 | ] 32 | depends: [ 33 | "ocaml" 34 | "dune" {>= "1.0"} 35 | "cmdliner" {>= "1.0.0"} 36 | "ocamlfind" 37 | "base-bytes" 38 | ] 39 | post-messages: [ 40 | "This package requires additional configuration for use in editors. Install package 'user-setup', or manually: 41 | 42 | * for Emacs, add these lines to ~/.emacs: 43 | (add-to-list 'load-path \"%{share}%/emacs/site-lisp\") 44 | (require 'ocp-indent) 45 | 46 | * for Vim, add this line to ~/.vimrc: 47 | set rtp^=\"%{share}%/ocp-indent/vim\" 48 | " 49 | {success & !user-setup:installed} 50 | ] 51 | url { 52 | src: "https://github.com/OCamlPro/ocp-indent/archive/1.8.1.tar.gz" 53 | checksum: [ 54 | "md5=70db6649a8c08a682ad63730c9752e31" 55 | "sha512=565353de333dd44375366fff75e85a6256c3cd9ff52b3db79803141f975e77cda04dfe32f5e0f2d4c82c59be8f04e9c2bf4d066b113b2cdf267f4c3dcfa401da" 56 | ] 57 | } 58 | -------------------------------------------------------------------------------- /esy.lock/opam/ocaml-secondary-compiler.4.08.1-1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "OCaml 4.08.1 Secondary Switch Compiler" 3 | maintainer: "platform@lists.ocaml.org" 4 | authors: "Xavier Leroy and many contributors" 5 | homepage: "https://ocaml.org" 6 | bug-reports: "https://github.com/ocaml/opam-repository/issues" 7 | dev-repo: "git://github.com/ocaml/ocaml" 8 | depends: "ocaml" {< "4.08.0" | >= "4.09~"} 9 | build: [ 10 | [ 11 | "./configure" 12 | "--prefix=%{_:share}%" 13 | "--libdir=%{_:share}%/lib" 14 | "--disable-debugger" 15 | "--disable-installing-bytecode-programs" 16 | "--disable-debug-runtime" 17 | "--disable-instrumented-runtime" 18 | "--disable-graph-lib" 19 | "CC=cc" {os = "openbsd" | os = "freebsd" | os = "macos"} 20 | "ASPP=cc -c" {os = "openbsd" | os = "freebsd" | os = "macos"} 21 | ] 22 | [make "-j%{jobs}%" {os != "cygwin"} "world.opt"] 23 | ] 24 | install: [make "install"] 25 | url { 26 | src: "https://github.com/ocaml/ocaml/archive/4.08.1.tar.gz" 27 | checksum: "md5=723b6bfe8cf5abcbccc6911143f71055" 28 | } 29 | extra-files: [ 30 | ["0001-Don-t-build-manpages-for-stdlib-docs.patch" "md5=6caa580fe6031c109d2dc96b19bd40cd"] 31 | ["0001-Fix-failure-to-install-tools-links.patch" "md5=e973762c0b3d62b0b25a26468086fae3"] 32 | ["fix-gcc10.patch" "md5=17ecd696a8f5647a4c543280599f6974"] 33 | ] 34 | patches: [ 35 | "0001-Don-t-build-manpages-for-stdlib-docs.patch" 36 | "0001-Fix-failure-to-install-tools-links.patch" 37 | "fix-gcc10.patch" 38 | ] 39 | available: !(os = "macos" & arch = "arm64") 40 | post-messages: [ 41 | "A failure in the middle of the build may be caused by build parallelism 42 | (enabled by default). 43 | Please file a bug report at https://github.com/ocaml/opam-repository/issues" 44 | {failure & jobs > 1 & os != "cygwin"} 45 | "You can try installing again including --jobs=1 46 | to force a sequential build instead." 47 | {failure & jobs > 1 & os != "cygwin" & opam-version >= "2.0.5"} 48 | ] 49 | description: "Installs an additional compiler to the opam switch in 50 | %{_:share}%/ocaml-secondary-compiler which can be accessed using 51 | `ocamlfind -toolchain secondary`." 52 | -------------------------------------------------------------------------------- /esy.lock/opam/ppxlib.0.22.2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Standard library for ppx rewriters" 3 | description: """ 4 | Ppxlib is the standard library for ppx rewriters and other programs 5 | that manipulate the in-memory reprensation of OCaml programs, a.k.a 6 | the "Parsetree". 7 | 8 | It also comes bundled with two ppx rewriters that are commonly used to 9 | write tools that manipulate and/or generate Parsetree values; 10 | `ppxlib.metaquot` which allows to construct Parsetree values using the 11 | OCaml syntax directly and `ppxlib.traverse` which provides various 12 | ways of automatically traversing values of a given type, in particular 13 | allowing to inject a complex structured value into generated code. 14 | """ 15 | maintainer: ["opensource@janestreet.com"] 16 | authors: ["Jane Street Group, LLC "] 17 | license: "MIT" 18 | homepage: "https://github.com/ocaml-ppx/ppxlib" 19 | doc: "https://ocaml-ppx.github.io/ppxlib/" 20 | bug-reports: "https://github.com/ocaml-ppx/ppxlib/issues" 21 | depends: [ 22 | "dune" {>= "2.7"} 23 | "ocaml" {>= "4.04.1" & < "4.14"} 24 | "ocaml-compiler-libs" {>= "v0.11.0"} 25 | "ocaml-migrate-parsetree" {>= "2.2.0"} 26 | "ppx_derivers" {>= "1.0"} 27 | "sexplib0" {>= "v0.12"} 28 | "stdlib-shims" 29 | "ocamlfind" {with-test} 30 | "re" {with-test & >= "1.9.0"} 31 | "cinaps" {with-test & >= "v0.12.1"} 32 | "base" {with-test} 33 | "stdio" {with-test} 34 | "odoc" {with-doc} 35 | ] 36 | build: [ 37 | ["dune" "subst"] {dev} 38 | [ 39 | "dune" 40 | "build" 41 | "-p" 42 | name 43 | "-j" 44 | jobs 45 | "@install" 46 | "@runtest" {with-test} 47 | "@doc" {with-doc} 48 | ] 49 | ] 50 | dev-repo: "git+https://github.com/ocaml-ppx/ppxlib.git" 51 | x-commit-hash: "3cf57772fef4666a2992041cf3a670dd2be98603" 52 | url { 53 | src: 54 | "https://github.com/ocaml-ppx/ppxlib/releases/download/0.22.2/ppxlib-0.22.2.tbz" 55 | checksum: [ 56 | "sha256=d0e8a1ebdc6220b1574d7a926f008460c5118ccef79bf9a0ce0242f34cff225a" 57 | "sha512=6010a59be6af873eaf193670f9cc8c9a7f091cfd89ec6c5b68d1f0c72d7c6015eec6371c009fc473cf2cb37d24f0934d04d0eacefa567a4945234197c3b31741" 58 | ] 59 | } 60 | -------------------------------------------------------------------------------- /esy.lock/opam/lwt.5.4.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | 3 | synopsis: "Promises and event-driven I/O" 4 | 5 | license: "MIT" 6 | homepage: "https://github.com/ocsigen/lwt" 7 | doc: "https://ocsigen.org/lwt" 8 | bug-reports: "https://github.com/ocsigen/lwt/issues" 9 | 10 | authors: [ 11 | "Jérôme Vouillon" 12 | "Jérémie Dimino" 13 | ] 14 | maintainer: [ 15 | "Raphaël Proust " 16 | "Anton Bachin " 17 | ] 18 | dev-repo: "git+https://github.com/ocsigen/lwt.git" 19 | 20 | depends: [ 21 | "cppo" {build & >= "1.1.0"} 22 | "dune" {>= "1.8.0"} 23 | "dune-configurator" 24 | "mmap" {>= "1.1.0"} # mmap is needed as long as Lwt supports OCaml < 4.06.0. 25 | "ocaml" {>= "4.02.0"} 26 | ("ocaml" {>= "4.08.0"} | "ocaml-syntax-shims") 27 | "ocplib-endian" 28 | "result" # result is needed as long as Lwt supports OCaml 4.02. 29 | "seq" # seq is needed as long as Lwt supports OCaml < 4.07.0. 30 | 31 | # Until https://github.com/aantron/bisect_ppx/pull/327. 32 | # "bisect_ppx" {dev & >= "2.0.0"} 33 | "ocamlfind" {dev & >= "1.7.3-1"} 34 | ] 35 | 36 | depopts: [ 37 | "base-threads" 38 | "base-unix" 39 | "conf-libev" 40 | ] 41 | 42 | conflicts: [ 43 | "ocaml-variants" {= "4.02.1+BER"} 44 | ] 45 | 46 | build: [ 47 | ["dune" "exec" "-p" name "src/unix/config/discover.exe" "--" "--save" 48 | "--use-libev" "%{conf-libev:installed}%"] 49 | ["dune" "build" "-p" name "-j" jobs] 50 | ] 51 | 52 | description: "A promise is a value that may become determined in the future. 53 | 54 | Lwt provides typed, composable promises. Promises that are resolved by I/O are 55 | resolved by Lwt in parallel. 56 | 57 | Meanwhile, OCaml code, including code creating and waiting on promises, runs in 58 | a single thread by default. This reduces the need for locks or other 59 | synchronization primitives. Code can be run in parallel on an opt-in basis." 60 | url { 61 | src: "https://github.com/ocsigen/lwt/archive/refs/tags/5.4.1.tar.gz" 62 | checksum: [ 63 | "md5=5a8d2a83ee9314781f137d147a4c62ae" 64 | "sha512=b872b7abe546c431ba62fe466423d7ace8e487ebd85ea5e859f462eb4c0a6884b242d9efd4a557b6da3ae699b0b695e0a783f89a1d1147cba7d99c4ae9d2db17" 65 | ] 66 | } 67 | -------------------------------------------------------------------------------- /esy.lock/opam/csexp.1.5.1/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Parsing and printing of S-expressions in Canonical form" 3 | description: """ 4 | 5 | This library provides minimal support for Canonical S-expressions 6 | [1]. Canonical S-expressions are a binary encoding of S-expressions 7 | that is super simple and well suited for communication between 8 | programs. 9 | 10 | This library only provides a few helpers for simple applications. If 11 | you need more advanced support, such as parsing from more fancy input 12 | sources, you should consider copying the code of this library given 13 | how simple parsing S-expressions in canonical form is. 14 | 15 | To avoid a dependency on a particular S-expression library, the only 16 | module of this library is parameterised by the type of S-expressions. 17 | 18 | [1] https://en.wikipedia.org/wiki/Canonical_S-expressions 19 | """ 20 | maintainer: ["Jeremie Dimino "] 21 | authors: [ 22 | "Quentin Hocquet " 23 | "Jane Street Group, LLC" 24 | "Jeremie Dimino " 25 | ] 26 | license: "MIT" 27 | homepage: "https://github.com/ocaml-dune/csexp" 28 | doc: "https://ocaml-dune.github.io/csexp/" 29 | bug-reports: "https://github.com/ocaml-dune/csexp/issues" 30 | depends: [ 31 | "dune" {>= "1.11"} 32 | "ocaml" {>= "4.03.0"} 33 | # "ppx_expect" {with-test & >= "v0.14"} 34 | "odoc" {with-doc} 35 | ] 36 | dev-repo: "git+https://github.com/ocaml-dune/csexp.git" 37 | build: [ 38 | ["dune" "subst"] {dev} 39 | [ 40 | "dune" 41 | "build" 42 | "-p" 43 | name 44 | "-j" 45 | jobs 46 | "@install" 47 | # Tests disabled because of a cyclic dependency with csexp, dune-configurator and ppx_expect 48 | # "@runtest" {with-test} 49 | "@doc" {with-doc} 50 | ] 51 | ] 52 | x-commit-hash: "7eeb86206819d2b1782d6cde1be9d6cf8b5fc851" 53 | url { 54 | src: 55 | "https://github.com/ocaml-dune/csexp/releases/download/1.5.1/csexp-1.5.1.tbz" 56 | checksum: [ 57 | "sha256=d605e4065fa90a58800440ef2f33a2d931398bf2c22061a8acb7df845c0aac02" 58 | "sha512=d785bbabaff9f6bf601399149ef0a42e5e99647b54e27f97ef1625907793dda22a45bf83e0e8a1eba2c63634c5484b54739ff0904ef556f5fc592efa38af7505" 59 | ] 60 | } 61 | -------------------------------------------------------------------------------- /esy.lock/opam/caqti.1.6.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Petter A. Urkedal " 3 | authors: [ 4 | "Petter A. Urkedal " 5 | "Nathan Rebours " 6 | ] 7 | license: "LGPL-3.0-or-later WITH OCaml-LGPL-linking-exception" 8 | homepage: "https://github.com/paurkedal/ocaml-caqti/" 9 | doc: "https://paurkedal.github.io/ocaml-caqti/index.html" 10 | bug-reports: "https://github.com/paurkedal/ocaml-caqti/issues" 11 | depends: [ 12 | "cppo" {build & >= "1.1.0"} 13 | "dune" {>= "1.11"} 14 | "logs" 15 | "ocaml" {>= "4.04.0"} 16 | "ptime" 17 | "uri" {>= "1.9.0"} 18 | ] 19 | build: [ 20 | ["dune" "build" "-p" name "-j" jobs] 21 | ["dune" "runtest" "-p" name "-j" jobs] {with-test} 22 | ] 23 | dev-repo: "git+https://github.com/paurkedal/ocaml-caqti.git" 24 | synopsis: "Unified interface to relational database libraries" 25 | description: """ 26 | Caqti provides a monadic cooperative-threaded OCaml connector API for 27 | relational databases. 28 | 29 | The purpose of Caqti is further to help make applications independent of a 30 | particular database system. This is achieved by defining a common signature, 31 | which is implemented by the database drivers. Connection parameters are 32 | specified as an URI, which is typically provided at run-time. Caqti then 33 | loads a driver which can handle the URI, and provides a first-class module 34 | which implements the driver API and additional convenience functionality. 35 | 36 | Caqti does not make assumptions about the structure of the query language, 37 | and only provides the type information needed at the edges of communication 38 | between the OCaml code and the database; i.e. for encoding parameters and 39 | decoding returned tuples. It is hoped that this agnostic choice makes it a 40 | suitable target for higher level interfaces and code generators.""" 41 | x-commit-hash: "b8857da5edca852295c1d11f6b185bef196e70b2" 42 | url { 43 | src: 44 | "https://github.com/paurkedal/ocaml-caqti/releases/download/v1.6.0/caqti-v1.6.0.tbz" 45 | checksum: [ 46 | "sha256=1bf0c0d60547033c10d6148cf5297b25ab66c9a2832b680329df2f3816bc674d" 47 | "sha512=0b03bd1788d99bbac59679338768a5633ec473346eed333fca4c104bc88f04c24e138af2228fc20dcf295b7106778328d228643ae8235a3f722f54cc69919295" 48 | ] 49 | } 50 | -------------------------------------------------------------------------------- /esy.lock/opam/digestif.1.0.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: [ "Eyyüb Sari " 3 | "Romain Calascibetta " ] 4 | authors: [ "Eyyüb Sari " 5 | "Romain Calascibetta " ] 6 | homepage: "https://github.com/mirage/digestif" 7 | bug-reports: "https://github.com/mirage/digestif/issues" 8 | dev-repo: "git+https://github.com/mirage/digestif.git" 9 | doc: "https://mirage.github.io/digestif/" 10 | license: "MIT" 11 | synopsis: "Hashes implementations (SHA*, RIPEMD160, BLAKE2* and MD5)" 12 | description: """ 13 | Digestif is a toolbox to provide hashes implementations in C and OCaml. 14 | 15 | It uses the linking trick and user can decide at the end to use the C implementation or the OCaml implementation. 16 | 17 | We provides implementation of: 18 | * MD5 19 | * SHA1 20 | * SHA224 21 | * SHA256 22 | * SHA384 23 | * SHA512 24 | * BLAKE2B 25 | * BLAKE2S 26 | * RIPEMD160 27 | """ 28 | 29 | build: [ 30 | [ "dune" "build" "-p" name "-j" jobs ] 31 | [ "./install/install.ml" ] 32 | [ "dune" "runtest" "-p" name "-j" jobs ] {with-test} 33 | ] 34 | install: [ 35 | [ "dune" "install" "-p" name ] {with-test} 36 | [ "./test/test_runes.ml" ] {with-test} 37 | ] 38 | 39 | depends: [ 40 | "ocaml" {>= "4.03.0"} 41 | "dune" {>= "2.6.0"} 42 | "conf-pkg-config" {build} 43 | "eqaf" 44 | "base-bytes" 45 | "bigarray-compat" 46 | "stdlib-shims" 47 | "fmt" {with-test} 48 | "alcotest" {with-test} 49 | "bos" {with-test} 50 | "astring" {with-test} 51 | "fpath" {with-test} 52 | "rresult" {with-test} 53 | "ocamlfind" {with-test} 54 | ] 55 | depopts: [ 56 | "ocaml-freestanding" 57 | ] 58 | 59 | conflicts: [ 60 | "mirage-xen" {< "6.0.0"} 61 | "ocaml-freestanding" {< "0.6.0"} 62 | ] 63 | x-commit-hash: "f7e043938d9bb6fda9865086074e60929095cd9e" 64 | url { 65 | src: 66 | "https://github.com/mirage/digestif/releases/download/v1.0.0/digestif-v1.0.0.tbz" 67 | checksum: [ 68 | "sha256=29450c1fecb93b3c5c19588f8abcbf4891ddf1f84a1bbd3fb860e96994472884" 69 | "sha512=30f4e2ea85a0aa50dbafb7c52d55b49f5612fbeeaa4ed8bfbd1610848a8f397c4cd1589fe0bd7ab3f165974697151279d56c37bae44c7f29a2d5a514af9d4942" 70 | ] 71 | } 72 | -------------------------------------------------------------------------------- /esy.lock/opam/logs.0.7.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | maintainer: "Daniel Bünzli " 3 | authors: ["The logs programmers"] 4 | homepage: "https://erratique.ch/software/logs" 5 | doc: "https://erratique.ch/software/logs/doc" 6 | dev-repo: "git+https://erratique.ch/repos/logs.git" 7 | bug-reports: "https://github.com/dbuenzli/logs/issues" 8 | tags: [ "log" "system" "org:erratique" ] 9 | license: "ISC" 10 | depends: [ 11 | "ocaml" {>= "4.03.0"} 12 | "ocamlfind" {build} 13 | "ocamlbuild" {build} 14 | "topkg" {build} 15 | "mtime" {with-test} ] 16 | depopts: [ 17 | "js_of_ocaml" 18 | "fmt" 19 | "cmdliner" 20 | "lwt" 21 | "base-threads" 22 | ] 23 | conflicts: [ 24 | "js_of_ocaml" { < "3.3.0" } ] 25 | 26 | build: [[ 27 | "ocaml" "pkg/pkg.ml" "build" 28 | "--pinned" "%{pinned}%" 29 | "--with-js_of_ocaml" "%{js_of_ocaml:installed}%" 30 | "--with-fmt" "%{fmt:installed}%" 31 | "--with-cmdliner" "%{cmdliner:installed}%" 32 | "--with-lwt" "%{lwt:installed}%" 33 | "--with-base-threads" "%{base-threads:installed}%" 34 | ]] 35 | 36 | synopsis: """Logging infrastructure for OCaml""" 37 | description: """\ 38 | 39 | Logs provides a logging infrastructure for OCaml. Logging is performed 40 | on sources whose reporting level can be set independently. Log message 41 | report is decoupled from logging and is handled by a reporter. 42 | 43 | A few optional log reporters are distributed with the base library and 44 | the API easily allows to implement your own. 45 | 46 | `Logs` has no dependencies. The optional `Logs_fmt` reporter on OCaml 47 | formatters depends on [Fmt][fmt]. The optional `Logs_browser` 48 | reporter that reports to the web browser console depends on 49 | [js_of_ocaml][jsoo]. The optional `Logs_cli` library that provides 50 | command line support for controlling Logs depends on 51 | [`Cmdliner`][cmdliner]. The optional `Logs_lwt` library that provides 52 | Lwt logging functions depends on [`Lwt`][lwt] 53 | 54 | Logs and its reporters are distributed under the ISC license. 55 | 56 | [fmt]: http://erratique.ch/software/fmt 57 | [jsoo]: http://ocsigen.org/js_of_ocaml/ 58 | [cmdliner]: http://erratique.ch/software/cmdliner 59 | [lwt]: http://ocsigen.org/lwt/ 60 | """ 61 | url { 62 | archive: "https://erratique.ch/software/logs/releases/logs-0.7.0.tbz" 63 | checksum: "2bf021ca13331775e33cf34ab60246f7" 64 | } 65 | -------------------------------------------------------------------------------- /esy.lock/opam/dune.2.9.0/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | synopsis: "Fast, portable, and opinionated build system" 3 | description: """ 4 | 5 | dune is a build system that was designed to simplify the release of 6 | Jane Street packages. It reads metadata from "dune" files following a 7 | very simple s-expression syntax. 8 | 9 | dune is fast, has very low-overhead, and supports parallel builds on 10 | all platforms. It has no system dependencies; all you need to build 11 | dune or packages using dune is OCaml. You don't need make or bash 12 | as long as the packages themselves don't use bash explicitly. 13 | 14 | dune supports multi-package development by simply dropping multiple 15 | repositories into the same directory. 16 | 17 | It also supports multi-context builds, such as building against 18 | several opam roots/switches simultaneously. This helps maintaining 19 | packages across several versions of OCaml and gives cross-compilation 20 | for free. 21 | """ 22 | maintainer: ["Jane Street Group, LLC "] 23 | authors: ["Jane Street Group, LLC "] 24 | license: "MIT" 25 | homepage: "https://github.com/ocaml/dune" 26 | doc: "https://dune.readthedocs.io/" 27 | bug-reports: "https://github.com/ocaml/dune/issues" 28 | conflicts: [ 29 | "merlin" {< "3.4.0"} 30 | "ocaml-lsp-server" {< "1.3.0"} 31 | "dune-configurator" {< "2.3.0"} 32 | "odoc" {< "1.3.0"} 33 | "dune-release" {< "1.3.0"} 34 | "js_of_ocaml-compiler" {< "3.6.0"} 35 | "jbuilder" {= "transition"} 36 | ] 37 | dev-repo: "git+https://github.com/ocaml/dune.git" 38 | build: [ 39 | # opam 2 sets OPAM_SWITCH_PREFIX, so we don't need a hardcoded path 40 | ["ocaml" "configure.ml" "--libdir" lib] {opam-version < "2"} 41 | ["ocaml" "bootstrap.ml" "-j" jobs] 42 | ["./dune.exe" "build" "-p" name "--profile" "dune-bootstrap" "-j" jobs] 43 | ] 44 | depends: [ 45 | # Please keep the lower bound in sync with .github/workflows/workflow.yml, 46 | # dune-project and min_ocaml_version in bootstrap.ml 47 | ("ocaml" {>= "4.08"} | ("ocaml" {< "4.08~~"} & "ocamlfind-secondary")) 48 | "base-unix" 49 | "base-threads" 50 | ] 51 | x-commit-hash: "641a95d2254ca7c51c97f07f2eed85b7a95db954" 52 | url { 53 | src: "https://github.com/ocaml/dune/releases/download/2.9.0/dune-2.9.0.tbz" 54 | checksum: [ 55 | "sha256=bb217cfb17e893a0b1eb002ac83c14f96adc9d0703cb51ff34ed3ef5a639a41e" 56 | "sha512=fcd8bc3ea7e9a14e6787a3b0384a488e45fa51e164a175ad1b147bebb3fbcccfd8f321b9b6a7665ac3dafeb18a2a6f8626d182af3b1796691f6ed79c166a5f44" 57 | ] 58 | } 59 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__mtime_opam__c__1.2.0_opam_override/files/mtime-1.2.0.patch: -------------------------------------------------------------------------------- 1 | --- ./myocamlbuild.ml 2 | +++ ./myocamlbuild.ml 3 | @@ -22,6 +22,11 @@ 4 | in 5 | rule "js_of_ocaml: .byte -> .js" ~dep ~prod f 6 | 7 | +let lib s = 8 | + match !Ocamlbuild_plugin.Options.ext_lib with 9 | + | "" -> s ^ ".a" 10 | + | x -> s ^ "." ^ x 11 | + 12 | let () = 13 | dispatch begin function 14 | | After_rules -> 15 | @@ -33,10 +38,10 @@ 16 | 17 | (* mtime-clock-os *) 18 | 19 | - dep ["record_mtime_clock_os_stubs"] ["src-os/libmtime_clock_stubs.a"]; 20 | + dep ["record_mtime_clock_os_stubs"] [lib "src-os/libmtime_clock_stubs"]; 21 | flag_and_dep 22 | ["link"; "ocaml"; "link_mtime_clock_os_stubs"] 23 | - (P "src-os/libmtime_clock_stubs.a"); 24 | + (P (lib "src-os/libmtime_clock_stubs")); 25 | flag ["library"; "ocaml"; "byte"; "record_mtime_clock_os_stubs"] 26 | (S ([A "-dllib"; A "-lmtime_clock_stubs"] @ system_support_lib)); 27 | flag ["library"; "ocaml"; (* byte and native *) 28 | Nur in .: myocamlbuild.ml.orig. 29 | --- ./src-os/mtime_clock_stubs.c 30 | +++ ./src-os/mtime_clock_stubs.c 31 | @@ -26,6 +26,8 @@ 32 | #if defined(_POSIX_VERSION) 33 | #define OCAML_MTIME_POSIX 34 | #endif 35 | +#elif defined(_WIN32) 36 | +#define OCAML_MTIME_WINDOWS 37 | #endif 38 | 39 | /* Darwin */ 40 | @@ -123,6 +125,72 @@ 41 | CAMLreturn (some); 42 | } 43 | 44 | +#elif defined(OCAML_MTIME_WINDOWS) 45 | +#define WIN32_LEAN_AND_MEAN 46 | +#include 47 | + 48 | +static double performance_frequency; 49 | +static void set_performance_frequency(void) 50 | +{ 51 | + LARGE_INTEGER t_freq; 52 | + if (!QueryPerformanceFrequency(&t_freq)) { 53 | + OCAML_MTIME_RAISE_SYS_ERROR ("clock_gettime () failed"); 54 | + } 55 | + performance_frequency = (1000000000.0 / t_freq.QuadPart); 56 | +} 57 | + 58 | +CAMLprim value ocaml_mtime_clock_elapsed_ns (value unit) 59 | +{ 60 | + (void) unit; 61 | + static LARGE_INTEGER start; 62 | + if (performance_frequency == 0.0) { 63 | + set_performance_frequency(); 64 | + } 65 | + if ( start.QuadPart == 0 ) 66 | + { 67 | + if (!QueryPerformanceCounter(&start)) { 68 | + OCAML_MTIME_RAISE_SYS_ERROR ("clock_gettime () failed"); 69 | + } 70 | + } 71 | + static LARGE_INTEGER now; 72 | + if ( !QueryPerformanceCounter(&now)) { 73 | + OCAML_MTIME_RAISE_SYS_ERROR ("clock_gettime () failed"); 74 | + } 75 | + uint64_t ret = (now.QuadPart - start.QuadPart) * performance_frequency; 76 | + return caml_copy_int64(ret); 77 | +} 78 | + 79 | +CAMLprim value ocaml_mtime_clock_now_ns (value unit) 80 | +{ 81 | + (void) unit; 82 | + if (performance_frequency == 0.0) { 83 | + set_performance_frequency(); 84 | + } 85 | + static LARGE_INTEGER now; 86 | + if ( !QueryPerformanceCounter(&now)) { 87 | + OCAML_MTIME_RAISE_SYS_ERROR ("clock_gettime () failed"); 88 | + } 89 | + uint64_t ret = now.QuadPart * performance_frequency; 90 | + return caml_copy_int64(ret); 91 | +} 92 | + 93 | +CAMLprim value ocaml_mtime_clock_period_ns (value unit) 94 | +{ 95 | + (void) unit; 96 | + if (performance_frequency == 0.0) { 97 | + set_performance_frequency(); 98 | + } 99 | + if ( performance_frequency <= 0.0 ) { 100 | + return Val_none; 101 | + } 102 | + value ret; 103 | + value p = caml_copy_int64(performance_frequency); 104 | + Begin_roots1(p); 105 | + ret = caml_alloc_small(1,0); 106 | + Field(ret,0) = p; 107 | + End_roots(); 108 | + return ret; 109 | +} 110 | /* Unsupported */ 111 | 112 | #else 113 | -------------------------------------------------------------------------------- /esy.lock/overrides/41b6fb3db953254b0cb4c5e1b546f3f4/README.md: -------------------------------------------------------------------------------- 1 | ### `esy` build status 2 | [![Build status](https://ci.appveyor.com/api/projects/status/54y3s6ip6ti7y3vm/branch/esy?svg=true)](https://ci.appveyor.com/project/bryphe/esy-openssl/branch/esy) 3 | [![Build Status](https://travis-ci.org/bryphe/esy-openssl.svg?branch=esy)](https://travis-ci.org/bryphe/esy-openssl) 4 | 5 | ----------- 6 | 7 | OpenSSL 1.1.1 11 Sep 2018 8 | 9 | Copyright (c) 1998-2018 The OpenSSL Project 10 | Copyright (c) 1995-1998 Eric A. Young, Tim J. Hudson 11 | All rights reserved. 12 | 13 | DESCRIPTION 14 | ----------- 15 | 16 | The OpenSSL Project is a collaborative effort to develop a robust, 17 | commercial-grade, fully featured, and Open Source toolkit implementing the 18 | Transport Layer Security (TLS) protocols (including SSLv3) as well as a 19 | full-strength general purpose cryptographic library. 20 | 21 | OpenSSL is descended from the SSLeay library developed by Eric A. Young 22 | and Tim J. Hudson. The OpenSSL toolkit is licensed under a dual-license (the 23 | OpenSSL license plus the SSLeay license), which means that you are free to 24 | get and use it for commercial and non-commercial purposes as long as you 25 | fulfill the conditions of both licenses. 26 | 27 | OVERVIEW 28 | -------- 29 | 30 | The OpenSSL toolkit includes: 31 | 32 | libssl (with platform specific naming): 33 | Provides the client and server-side implementations for SSLv3 and TLS. 34 | 35 | libcrypto (with platform specific naming): 36 | Provides general cryptographic and X.509 support needed by SSL/TLS but 37 | not logically part of it. 38 | 39 | openssl: 40 | A command line tool that can be used for: 41 | Creation of key parameters 42 | Creation of X.509 certificates, CSRs and CRLs 43 | Calculation of message digests 44 | Encryption and decryption 45 | SSL/TLS client and server tests 46 | Handling of S/MIME signed or encrypted mail 47 | And more... 48 | 49 | INSTALLATION 50 | ------------ 51 | 52 | See the appropriate file: 53 | INSTALL Linux, Unix, Windows, OpenVMS, ... 54 | NOTES.* INSTALL addendums for different platforms 55 | 56 | SUPPORT 57 | ------- 58 | 59 | See the OpenSSL website www.openssl.org for details on how to obtain 60 | commercial technical support. Free community support is available through the 61 | openssl-users email list (see 62 | https://www.openssl.org/community/mailinglists.html for further details). 63 | 64 | If you have any problems with OpenSSL then please take the following steps 65 | first: 66 | 67 | - Download the latest version from the repository 68 | to see if the problem has already been addressed 69 | - Configure with no-asm 70 | - Remove compiler optimization flags 71 | 72 | If you wish to report a bug then please include the following information 73 | and create an issue on GitHub: 74 | 75 | - OpenSSL version: output of 'openssl version -a' 76 | - Configuration data: output of 'perl configdata.pm --dump' 77 | - OS Name, Version, Hardware platform 78 | - Compiler Details (name, version) 79 | - Application Details (name, version) 80 | - Problem Description (steps that will reproduce the problem, if known) 81 | - Stack Traceback (if the application dumps core) 82 | 83 | Just because something doesn't work the way you expect does not mean it 84 | is necessarily a bug in OpenSSL. Use the openssl-users email list for this type 85 | of query. 86 | 87 | HOW TO CONTRIBUTE TO OpenSSL 88 | ---------------------------- 89 | 90 | See CONTRIBUTING 91 | 92 | LEGALITIES 93 | ---------- 94 | 95 | A number of nations restrict the use or export of cryptography. If you 96 | are potentially subject to such restrictions you should seek competent 97 | professional legal advice before attempting to develop or distribute 98 | cryptographic code. 99 | -------------------------------------------------------------------------------- /esy.lock/opam/dream.1.0.0~alpha2/opam: -------------------------------------------------------------------------------- 1 | opam-version: "2.0" 2 | 3 | synopsis: "Tidy, feature-complete Web framework" 4 | tags: ["http" "web" "framework" "websocket" "graphql" "server" "http2" "tls"] 5 | 6 | description: """ 7 | Dream is a feature-complete Web framework with a simple programming 8 | model and no boilerplate. It provides only two data types, request and 9 | response. 10 | 11 | Almost everything else is either a built-in OCaml type, or an 12 | abbreviation for a bare function. For example, a Web app, known in 13 | Dream as a handler, is just an ordinary function from requests to 14 | responses. And a middleware is then just a function from handlers to 15 | handlers. 16 | 17 | Within this model, Dream adds: 18 | 19 | - Session management with pluggable back ends. 20 | - A fully composable router. 21 | - Support for HTTP/1.1, HTTP/2, and HTTPS. 22 | - WebSockets. 23 | - GraphQL, including subscriptions and a built-in GraphiQL editor. 24 | - SQL connection pool helpers. 25 | - Server-side HTML templates. 26 | - Automatic secure handling of cookies and forms. 27 | - Unified, internationalization-friendly error handling. 28 | - A neat log, and OCaml runtime configuration. 29 | - Helpers for Web formats, such as Base64url, and a modern cipher. 30 | 31 | Because of the simple programming model, everything is optional and 32 | composable. It is trivailly possible to strip Dream down to just a 33 | bare driver of the various HTTP protocols. 34 | 35 | Dream is presented as a single module, whose API is documented on one 36 | page. In addition, Dream comes with a large number of examples. 37 | Security topics are introduced throughout, wherever they are 38 | applicable.""" 39 | 40 | license: "MIT" 41 | homepage: "https://github.com/aantron/dream" 42 | doc: "https://aantron.github.io/dream" 43 | bug-reports: "https://github.com/aantron/dream/issues" 44 | dev-repo: "git+https://github.com/aantron/dream.git" 45 | 46 | author: "Anton Bachin " 47 | maintainer: "Anton Bachin " 48 | 49 | depends: [ 50 | "base-unix" 51 | "base64" {>= "3.1.0"} # Base64.encode_string. 52 | "bigarray-compat" 53 | "caqti" {>= "1.4.0"} # ~post_connect. 54 | "caqti-lwt" 55 | "conf-libev" {os != "win32"} 56 | "cstruct" {>= "6.0.0"} 57 | "dune" {>= "2.7.0"} # --instrument-with. 58 | "fmt" {>= "0.8.7"} # `Italic. 59 | "graphql_parser" 60 | "graphql-lwt" 61 | "hmap" 62 | "lwt" 63 | "lwt_ppx" {>= "1.2.2"} 64 | "lwt_ssl" 65 | "ssl" {>= "0.5.8"} 66 | "logs" {>= "0.5.0"} 67 | "magic-mime" 68 | "mirage-crypto" {>= "0.8.1"} # AES-256-GCM. 69 | "mirage-crypto-rng" {>= "0.8.0"} # Signature of initialize. 70 | "multipart_form" {>= "0.3.0"} 71 | "ocaml" {>= "4.08.0"} 72 | "uri" {>= "4.2.0"} 73 | "yojson" # ... 74 | 75 | # Currently vendored. 76 | # "gluten" 77 | # "gluten-lwt-unix" 78 | # "httpaf" 79 | # "httpaf-lwt-unix" 80 | # "h2" 81 | # "h2-lwt-unix" 82 | # "hpack" 83 | # "websocketaf" 84 | 85 | # Dependencies of vendored packages. 86 | "angstrom" {>= "0.14.0"} 87 | "bigstringaf" {>= "0.5.0"} 88 | "digestif" {>= "0.7.2"} # websocket/af, sha1, default impl. 89 | "faraday" {>= "0.6.1"} 90 | "faraday-lwt-unix" 91 | "psq" # h2. 92 | "result" # http/af, websocket/af. 93 | 94 | # Testing, development. 95 | "alcotest" {with-test} 96 | "bisect_ppx" {with-test & >= "2.5.0"} # --instrument-with. 97 | "caqti-driver-sqlite3" {with-test} 98 | "crunch" {with-test} 99 | "lambdasoup" {with-test} 100 | "ppx_expect" {with-test} 101 | "ppx_yojson_conv" {with-test} 102 | "reason" {with-test} 103 | "tyxml" {with-test & >= "4.5.0"} 104 | "tyxml-jsx" {with-test & >= "4.5.0"} 105 | "tyxml-ppx" {with-test & >= "4.5.0"} 106 | ] 107 | 108 | build: [ 109 | ["dune" "build" "-p" name "-j" jobs] 110 | ] 111 | 112 | url { 113 | src: "https://github.com/aantron/dream/releases/download/1.0.0-alpha2/dream-1.0.0-alpha2.tar.gz" 114 | checksum: "md5=1220f17530522e488653eb91115867e3" 115 | } 116 | -------------------------------------------------------------------------------- /client/app.ml: -------------------------------------------------------------------------------- 1 | (* This line opens the Tea.App modules into the current scope for Program access functions and types *) 2 | open Tea.App 3 | 4 | (* This opens the Elm-style virtual-dom functions and types into the current scope *) 5 | open Tea.Html 6 | 7 | (* Let's create a new type here to be our main message type that is passed around *) 8 | type msg = 9 | | Increment (* This will be our message to increment the counter *) 10 | | Decrement (* This will be our message to decrement the counter *) 11 | | Reset (* This will be our message to reset the counter to 0 *) 12 | | Set of int (* This will be our message to set the counter to a specific value *) 13 | [@@bs.deriving { accessors }] 14 | (* This is a nice quality-of-life addon from Bucklescript, it will generate function names for each constructor name, optional, but nice to cut down on code, this is unused in this example but good to have regardless *) 15 | 16 | (* This is optional for such a simple example, but it is good to have an `init` function to define your initial model default values, the model for Counter is just an integer *) 17 | let init () = 4 18 | 19 | (* This is the central message handler, it takes the model as the first argument *) 20 | let update model = function 21 | (* These should be simple enough to be self-explanatory, mutate the model based on the message, easy to read and follow *) 22 | | Increment -> 23 | model + 1 24 | | Decrement -> 25 | model - 1 26 | | Reset -> 27 | 0 28 | | Set v -> 29 | v 30 | 31 | 32 | (* This is just a helper function for the view, a simple function that returns a button based on some argument *) 33 | let view_button ?(warn = false) title msg = 34 | let className = 35 | if warn 36 | then 37 | "inline-flex items-center px-4 py-2 border border-transparent text-sm font-medium rounded-md shadow-sm text-white bg-red-600 justify-center hover:bg-red-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-red-500" 38 | else 39 | "inline-flex items-center px-4 py-2 border border-transparent text-sm font-medium rounded-md shadow-sm text-white bg-indigo-600 justify-center hover:bg-indigo-700 focus:outline-none focus:ring-2 focus:ring-offset-2 focus:ring-indigo-500" 40 | in 41 | button [ class' className; onClick msg ] [ text title ] 42 | 43 | 44 | (* This is the main callback to generate the virtual-dom. 45 | This returns a virtual-dom node that becomes the view, only changes from call-to-call are set on the real DOM for efficiency, this is also only called once per frame even with many messages sent in within that frame, otherwise does nothing *) 46 | let check_mark_icon = 47 | Tea.Svg.svg 48 | [ Tea.Svg.Attributes.class' "flex-shrink-0 h-5 w-5 text-cyan-500" 49 | ; Tea.Svg.Attributes.fill "currentColor" 50 | ; Tea.Svg.Attributes.viewBox "0 0 20 20" 51 | ] 52 | [ Tea.Svg.path 53 | [ Tea.Svg.Attributes.clipRule "evenodd" 54 | ; Tea.Svg.Attributes.d 55 | "M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" 56 | ; Tea.Svg.Attributes.fillRule "evenodd" 57 | ] 58 | [] 59 | ] 60 | 61 | 62 | let view model = 63 | let list_item (text', url) = 64 | li 65 | [ class' "flex items-start" ] 66 | [ span [ class' "h-6 flex items-center sm:h-7" ] [ check_mark_icon ] 67 | ; p [ class' "ml-2" ] [ a [ href url ] [ text text' ] ] 68 | ] 69 | in 70 | 71 | div 72 | [ class' "min-h-screen bg-blue-100 bg-gray-100 py-6 flex flex-col justify-center sm:py-12" ] 73 | [ div 74 | [ class' "relative py-3 sm:max-w-xl sm:mx-auto" ] 75 | [ div 76 | [ class' 77 | "absolute inset-0 bg-gradient-to-r from-cyan-400 to-sky-500 shadow-lg transform -skew-y-6 sm:skew-y-0 sm:-rotate-6 sm:rounded-3xl" 78 | ] 79 | [] 80 | ; div 81 | [ class' "relative px-4 py-10 bg-white shadow-lg sm:rounded-3xl sm:p-20" ] 82 | [ div 83 | [ class' "max-w-md mx-auto" ] 84 | [ div 85 | [ class' "divide-y divide-gray-200" ] 86 | [ div 87 | [ class' 88 | "py-8 text-base leading-6 space-y-4 text-gray-700 sm:text-lg sm:leading-7" 89 | ] 90 | [ p 91 | [ class' "text-3xl text-cyan-900" ] 92 | [ text "A simple example repo with" ] 93 | ; ul 94 | [ class' "list-disc space-y-2" ] 95 | (List.map 96 | list_item 97 | [ ("Dream", "https://github.com/aantron/dream") 98 | ; ("Melange", "https://github.com/melange-re/melange") 99 | ; ( "Bucklescript-tea" 100 | , "https://github.com/OvermindDL1/bucklescript-tea" ) 101 | ; ("Esbuild", "https://esbuild.github.io") 102 | ; ("Tailwindcss", "https://tailwindcss.com/") 103 | ] ) 104 | ; p [] [ text "And an interactive model..." ] 105 | ; div 106 | [ class' "flex flex-col gap-4" ] 107 | [ span [ style "text-weight" "bold" ] [ text (string_of_int model) ] 108 | ; div 109 | [ class' "grid grid-cols-4 gap-3" ] 110 | [ view_button "Increment" Increment 111 | ; view_button "Decrement" Decrement 112 | ; view_button "Set to 42" (Set 42) 113 | ; ( if model <> 0 114 | then view_button ~warn:true "Reset" Reset 115 | else noNode ) 116 | ] 117 | ] 118 | ] 119 | ] 120 | ] 121 | ] 122 | ] 123 | ] 124 | 125 | 126 | (* This is the main function, it can be named anything you want but `main` is traditional. 127 | The Program returned here has a set of callbacks that can easily be called from 128 | Bucklescript or from javascript for running this main attached to an element, 129 | or even to pass a message into the event loop. You can even expose the 130 | constructors to the messages to javascript via the above [@@bs.deriving {accessors}] 131 | attribute on the `msg` type or manually, that way even javascript can use it safely. *) 132 | let main = 133 | beginnerProgram 134 | { (* The beginnerProgram just takes a set model state and the update and view functions *) 135 | model = init () 136 | ; (* Since model is a set value here, we call our init function to generate that value *) 137 | update 138 | ; view 139 | } 140 | -------------------------------------------------------------------------------- /esy.lock/overrides/opam__s__ocamlfind_opam__c__1.8.1_opam_override/files/findlib-1.8.1.patch: -------------------------------------------------------------------------------- 1 | --- ./Makefile 2 | +++ ./Makefile 3 | @@ -57,16 +57,16 @@ 4 | cat findlib.conf.in | \ 5 | $(SH) tools/patch '@SITELIB@' '$(OCAML_SITELIB)' >findlib.conf 6 | if ./tools/cmd_from_same_dir ocamlc; then \ 7 | - echo 'ocamlc="ocamlc.opt"' >>findlib.conf; \ 8 | + echo 'ocamlc="ocamlc.opt$(EXEC_SUFFIX)"' >>findlib.conf; \ 9 | fi 10 | if ./tools/cmd_from_same_dir ocamlopt; then \ 11 | - echo 'ocamlopt="ocamlopt.opt"' >>findlib.conf; \ 12 | + echo 'ocamlopt="ocamlopt.opt$(EXEC_SUFFIX)"' >>findlib.conf; \ 13 | fi 14 | if ./tools/cmd_from_same_dir ocamldep; then \ 15 | - echo 'ocamldep="ocamldep.opt"' >>findlib.conf; \ 16 | + echo 'ocamldep="ocamldep.opt$(EXEC_SUFFIX)"' >>findlib.conf; \ 17 | fi 18 | if ./tools/cmd_from_same_dir ocamldoc; then \ 19 | - echo 'ocamldoc="ocamldoc.opt"' >>findlib.conf; \ 20 | + echo 'ocamldoc="ocamldoc.opt$(EXEC_SUFFIX)"' >>findlib.conf; \ 21 | fi 22 | 23 | .PHONY: install-doc 24 | --- ./src/findlib/findlib_config.mlp 25 | +++ ./src/findlib/findlib_config.mlp 26 | @@ -24,3 +24,5 @@ 27 | | "MacOS" -> "" (* don't know *) 28 | | _ -> failwith "Unknown Sys.os_type" 29 | ;; 30 | + 31 | +let exec_suffix = "@EXEC_SUFFIX@";; 32 | --- ./src/findlib/findlib.ml 33 | +++ ./src/findlib/findlib.ml 34 | @@ -28,15 +28,20 @@ 35 | let conf_ldconf = ref "";; 36 | let conf_ignore_dups_in = ref ([] : string list);; 37 | 38 | -let ocamlc_default = "ocamlc";; 39 | -let ocamlopt_default = "ocamlopt";; 40 | -let ocamlcp_default = "ocamlcp";; 41 | -let ocamloptp_default = "ocamloptp";; 42 | -let ocamlmklib_default = "ocamlmklib";; 43 | -let ocamlmktop_default = "ocamlmktop";; 44 | -let ocamldep_default = "ocamldep";; 45 | -let ocamlbrowser_default = "ocamlbrowser";; 46 | -let ocamldoc_default = "ocamldoc";; 47 | +let add_exec str = 48 | + match Findlib_config.exec_suffix with 49 | + | "" -> str 50 | + | a -> str ^ a ;; 51 | +let ocamlc_default = add_exec "ocamlc";; 52 | +let ocamlopt_default = add_exec "ocamlopt";; 53 | +let ocamlcp_default = add_exec "ocamlcp";; 54 | +let ocamloptp_default = add_exec "ocamloptp";; 55 | +let ocamlmklib_default = add_exec "ocamlmklib";; 56 | +let ocamlmktop_default = add_exec "ocamlmktop";; 57 | +let ocamldep_default = add_exec "ocamldep";; 58 | +let ocamlbrowser_default = add_exec "ocamlbrowser";; 59 | +let ocamldoc_default = add_exec "ocamldoc";; 60 | + 61 | 62 | 63 | let init_manually 64 | --- ./src/findlib/fl_package_base.ml 65 | +++ ./src/findlib/fl_package_base.ml 66 | @@ -133,7 +133,15 @@ 67 | List.find (fun def -> def.def_var = "exists_if") p.package_defs in 68 | let files = Fl_split.in_words def.def_value in 69 | List.exists 70 | - (fun file -> Sys.file_exists (Filename.concat d' file)) 71 | + (fun file -> 72 | + let fln = Filename.concat d' file in 73 | + let e = Sys.file_exists fln in 74 | + (* necessary for ppx executables *) 75 | + if e || Sys.os_type <> "Win32" || Filename.check_suffix fln ".exe" then 76 | + e 77 | + else 78 | + Sys.file_exists (fln ^ ".exe") 79 | + ) 80 | files 81 | with Not_found -> true in 82 | 83 | --- ./src/findlib/fl_split.ml 84 | +++ ./src/findlib/fl_split.ml 85 | @@ -126,10 +126,17 @@ 86 | | '/' | '\\' -> true 87 | | _ -> false in 88 | let norm_dir_win() = 89 | - if l >= 1 && s.[0] = '/' then 90 | - Buffer.add_char b '\\' else Buffer.add_char b s.[0]; 91 | - if l >= 2 && s.[1] = '/' then 92 | - Buffer.add_char b '\\' else Buffer.add_char b s.[1]; 93 | + if l >= 1 then ( 94 | + if s.[0] = '/' then 95 | + Buffer.add_char b '\\' 96 | + else 97 | + Buffer.add_char b s.[0] ; 98 | + if l >= 2 then 99 | + if s.[1] = '/' then 100 | + Buffer.add_char b '\\' 101 | + else 102 | + Buffer.add_char b s.[1]; 103 | + ); 104 | for k = 2 to l - 1 do 105 | let c = s.[k] in 106 | if is_slash c then ( 107 | --- ./src/findlib/frontend.ml 108 | +++ ./src/findlib/frontend.ml 109 | @@ -31,10 +31,18 @@ 110 | else 111 | Sys_error (arg ^ ": " ^ Unix.error_message code) 112 | 113 | +let is_win = Sys.os_type = "Win32" 114 | + 115 | +let () = 116 | + match Findlib_config.system with 117 | + | "win32" | "win64" | "mingw" | "cygwin" | "mingw64" | "cygwin64" -> 118 | + (try set_binary_mode_out stdout true with _ -> ()); 119 | + (try set_binary_mode_out stderr true with _ -> ()); 120 | + | _ -> () 121 | 122 | let slashify s = 123 | match Findlib_config.system with 124 | - | "mingw" | "mingw64" | "cygwin" -> 125 | + | "win32" | "win64" | "mingw" | "cygwin" | "mingw64" | "cygwin64" -> 126 | let b = Buffer.create 80 in 127 | String.iter 128 | (function 129 | @@ -49,7 +57,7 @@ 130 | 131 | let out_path ?(prefix="") s = 132 | match Findlib_config.system with 133 | - | "mingw" | "mingw64" | "cygwin" -> 134 | + | "win32" | "win64" | "mingw" | "mingw64" | "cygwin" -> 135 | let u = slashify s in 136 | prefix ^ 137 | (if String.contains u ' ' then 138 | @@ -273,11 +281,9 @@ 139 | 140 | 141 | let identify_dir d = 142 | - match Sys.os_type with 143 | - | "Win32" -> 144 | - failwith "identify_dir" (* not available *) 145 | - | _ -> 146 | - let s = Unix.stat d in 147 | + if is_win then 148 | + failwith "identify_dir"; (* not available *) 149 | + let s = Unix.stat d in 150 | (s.Unix.st_dev, s.Unix.st_ino) 151 | ;; 152 | 153 | @@ -459,6 +465,96 @@ 154 | ) 155 | packages 156 | 157 | +let rewrite_cmd s = 158 | + if s = "" || not is_win then 159 | + s 160 | + else 161 | + let s = 162 | + let l = String.length s in 163 | + let b = Buffer.create l in 164 | + for i = 0 to pred l do 165 | + match s.[i] with 166 | + | '/' -> Buffer.add_char b '\\' 167 | + | x -> Buffer.add_char b x 168 | + done; 169 | + Buffer.contents b 170 | + in 171 | + if (Filename.is_implicit s && String.contains s '\\' = false) || 172 | + Filename.check_suffix (String.lowercase s) ".exe" then 173 | + s 174 | + else 175 | + let s' = s ^ ".exe" in 176 | + if Sys.file_exists s' then 177 | + s' 178 | + else 179 | + s 180 | + 181 | +let rewrite_cmd s = 182 | + if s = "" || not is_win then s else 183 | + let s = 184 | + let l = String.length s in 185 | + let b = Buffer.create l in 186 | + for i = 0 to pred l do 187 | + match s.[i] with 188 | + | '/' -> Buffer.add_char b '\\' 189 | + | x -> Buffer.add_char b x 190 | + done; 191 | + Buffer.contents b 192 | + in 193 | + if (Filename.is_implicit s && String.contains s '\\' = false) || 194 | + Filename.check_suffix (String.lowercase s) ".exe" then 195 | + s 196 | + else 197 | + let s' = s ^ ".exe" in 198 | + if Sys.file_exists s' then 199 | + s' 200 | + else 201 | + s 202 | + 203 | +let rewrite_pp cmd = 204 | + if not is_win then cmd else 205 | + let module T = struct exception Keep end in 206 | + let is_whitespace = function 207 | + | ' ' | '\011' | '\012' | '\n' | '\r' | '\t' -> true 208 | + | _ -> false in 209 | + (* characters that triggers special behaviour (cmd.exe, not unix shell) *) 210 | + let is_unsafe_char = function 211 | + | '(' | ')' | '%' | '!' | '^' | '<' | '>' | '&' -> true 212 | + | _ -> false in 213 | + let len = String.length cmd in 214 | + let buf = Buffer.create (len + 4) in 215 | + let buf_cmd = Buffer.create len in 216 | + let rec iter_ws i = 217 | + if i >= len then () else 218 | + let cur = cmd.[i] in 219 | + if is_whitespace cur then ( 220 | + Buffer.add_char buf cur; 221 | + iter_ws (succ i) 222 | + ) 223 | + else 224 | + iter_cmd i 225 | + and iter_cmd i = 226 | + if i >= len then add_buf_cmd () else 227 | + let cur = cmd.[i] in 228 | + if is_unsafe_char cur || cur = '"' || cur = '\'' then 229 | + raise T.Keep; 230 | + if is_whitespace cur then ( 231 | + add_buf_cmd (); 232 | + Buffer.add_substring buf cmd i (len - i) 233 | + ) 234 | + else ( 235 | + Buffer.add_char buf_cmd cur; 236 | + iter_cmd (succ i) 237 | + ) 238 | + and add_buf_cmd () = 239 | + if Buffer.length buf_cmd > 0 then 240 | + Buffer.add_string buf (rewrite_cmd (Buffer.contents buf_cmd)) 241 | + in 242 | + try 243 | + iter_ws 0; 244 | + Buffer.contents buf 245 | + with 246 | + | T.Keep -> cmd 247 | 248 | let process_pp_spec syntax_preds packages pp_opts = 249 | (* Returns: pp_command *) 250 | @@ -549,7 +645,7 @@ 251 | None -> [] 252 | | Some cmd -> 253 | ["-pp"; 254 | - cmd ^ " " ^ 255 | + (rewrite_cmd cmd) ^ " " ^ 256 | String.concat " " (List.map Filename.quote pp_i_options) ^ " " ^ 257 | String.concat " " (List.map Filename.quote pp_archives) ^ " " ^ 258 | String.concat " " (List.map Filename.quote pp_opts)] 259 | @@ -625,9 +721,11 @@ 260 | in 261 | try 262 | let preprocessor = 263 | + rewrite_cmd ( 264 | resolve_path 265 | ~base ~explicit:true 266 | - (package_property predicates pname "ppx") in 267 | + (package_property predicates pname "ppx") ) 268 | + in 269 | ["-ppx"; String.concat " " (preprocessor :: options)] 270 | with Not_found -> [] 271 | ) 272 | @@ -895,6 +993,14 @@ 273 | switch (e.g. -L instead of -L ) 274 | *) 275 | 276 | +(* We may need to remove files on which we do not have complete control. 277 | + On Windows, removing a read-only file fails so try to change the 278 | + mode of the file first. *) 279 | +let remove_file fname = 280 | + try Sys.remove fname 281 | + with Sys_error _ when is_win -> 282 | + (try Unix.chmod fname 0o666 with Unix.Unix_error _ -> ()); 283 | + Sys.remove fname 284 | 285 | let ocamlc which () = 286 | 287 | @@ -1022,9 +1128,12 @@ 288 | 289 | "-intf", 290 | Arg.String (fun s -> pass_files := !pass_files @ [ Intf(slashify s) ]); 291 | - 292 | + 293 | "-pp", 294 | - Arg.String (fun s -> pp_specified := true; add_spec_fn "-pp" s); 295 | + Arg.String (fun s -> pp_specified := true; add_spec_fn "-pp" (rewrite_pp s)); 296 | + 297 | + "-ppx", 298 | + Arg.String (fun s -> add_spec_fn "-ppx" (rewrite_pp s)); 299 | 300 | "-thread", 301 | Arg.Unit (fun _ -> threads := threads_default); 302 | @@ -1237,7 +1346,7 @@ 303 | with 304 | any -> 305 | close_out initl; 306 | - Sys.remove initl_file_name; 307 | + remove_file initl_file_name; 308 | raise any 309 | end; 310 | 311 | @@ -1245,9 +1354,9 @@ 312 | at_exit 313 | (fun () -> 314 | let tr f x = try f x with _ -> () in 315 | - tr Sys.remove initl_file_name; 316 | - tr Sys.remove (Filename.chop_extension initl_file_name ^ ".cmi"); 317 | - tr Sys.remove (Filename.chop_extension initl_file_name ^ ".cmo"); 318 | + tr remove_file initl_file_name; 319 | + tr remove_file (Filename.chop_extension initl_file_name ^ ".cmi"); 320 | + tr remove_file (Filename.chop_extension initl_file_name ^ ".cmo"); 321 | ); 322 | 323 | let exclude_list = [ stdlibdir; threads_dir; vmthreads_dir ] in 324 | @@ -1493,7 +1602,9 @@ 325 | [ "-v", Arg.Unit (fun () -> verbose := Verbose); 326 | "-pp", Arg.String (fun s -> 327 | pp_specified := true; 328 | - options := !options @ ["-pp"; s]); 329 | + options := !options @ ["-pp"; rewrite_pp s]); 330 | + "-ppx", Arg.String (fun s -> 331 | + options := !options @ ["-ppx"; rewrite_pp s]); 332 | ] 333 | ) 334 | ) 335 | @@ -1672,7 +1783,9 @@ 336 | Arg.String (fun s -> add_spec_fn "-I" (slashify (resolve_path s))); 337 | 338 | "-pp", Arg.String (fun s -> pp_specified := true; 339 | - add_spec_fn "-pp" s); 340 | + add_spec_fn "-pp" (rewrite_pp s)); 341 | + "-ppx", Arg.String (fun s -> add_spec_fn "-ppx" (rewrite_pp s)); 342 | + 343 | ] 344 | ) 345 | ) 346 | @@ -1830,7 +1943,10 @@ 347 | output_string ch_out append; 348 | close_out ch_out; 349 | close_in ch_in; 350 | - Unix.utimes outpath s.Unix.st_mtime s.Unix.st_mtime; 351 | + (try Unix.utimes outpath s.Unix.st_mtime s.Unix.st_mtime 352 | + with Unix.Unix_error(e,_,_) -> 353 | + prerr_endline("Warning: setting utimes for " ^ outpath 354 | + ^ ": " ^ Unix.error_message e)); 355 | 356 | prerr_endline("Installed " ^ outpath); 357 | with 358 | @@ -1882,6 +1998,8 @@ 359 | Unix.openfile (Filename.concat dir owner_file) [Unix.O_RDONLY] 0 in 360 | let f = 361 | Unix.in_channel_of_descr fd in 362 | + if is_win then 363 | + set_binary_mode_in f false; 364 | try 365 | let line = input_line f in 366 | let is_my_file = (line = pkg) in 367 | @@ -2208,7 +2326,7 @@ 368 | let lines = read_ldconf !ldconf in 369 | let dlldir_norm = Fl_split.norm_dir dlldir in 370 | let dlldir_norm_lc = string_lowercase_ascii dlldir_norm in 371 | - let ci_filesys = (Sys.os_type = "Win32") in 372 | + let ci_filesys = is_win in 373 | let check_dir d = 374 | let d' = Fl_split.norm_dir d in 375 | (d' = dlldir_norm) || 376 | @@ -2356,7 +2474,7 @@ 377 | List.iter 378 | (fun file -> 379 | let absfile = Filename.concat dlldir file in 380 | - Sys.remove absfile; 381 | + remove_file absfile; 382 | prerr_endline ("Removed " ^ absfile) 383 | ) 384 | dll_files 385 | @@ -2365,7 +2483,7 @@ 386 | (* Remove the files from the package directory: *) 387 | if Sys.file_exists pkgdir then begin 388 | let files = Sys.readdir pkgdir in 389 | - Array.iter (fun f -> Sys.remove (Filename.concat pkgdir f)) files; 390 | + Array.iter (fun f -> remove_file (Filename.concat pkgdir f)) files; 391 | Unix.rmdir pkgdir; 392 | prerr_endline ("Removed " ^ pkgdir) 393 | end 394 | @@ -2415,7 +2533,9 @@ 395 | 396 | 397 | let print_configuration() = 398 | + let sl = slashify in 399 | let dir s = 400 | + let s = sl s in 401 | if Sys.file_exists s then 402 | s 403 | else 404 | @@ -2453,27 +2573,27 @@ 405 | if md = "" then "the corresponding package directories" else dir md 406 | ); 407 | Printf.printf "The standard library is assumed to reside in:\n %s\n" 408 | - (Findlib.ocaml_stdlib()); 409 | + (sl (Findlib.ocaml_stdlib())); 410 | Printf.printf "The ld.conf file can be found here:\n %s\n" 411 | - (Findlib.ocaml_ldconf()); 412 | + (sl (Findlib.ocaml_ldconf())); 413 | flush stdout 414 | | Some "conf" -> 415 | - print_endline (Findlib.config_file()) 416 | + print_endline (sl (Findlib.config_file())) 417 | | Some "path" -> 418 | - List.iter print_endline (Findlib.search_path()) 419 | + List.iter ( fun x -> print_endline (sl x)) (Findlib.search_path()) 420 | | Some "destdir" -> 421 | - print_endline (Findlib.default_location()) 422 | + print_endline ( sl (Findlib.default_location())) 423 | | Some "metadir" -> 424 | - print_endline (Findlib.meta_directory()) 425 | + print_endline ( sl (Findlib.meta_directory())) 426 | | Some "metapath" -> 427 | let mdir = Findlib.meta_directory() in 428 | let ddir = Findlib.default_location() in 429 | - print_endline 430 | - (if mdir <> "" then mdir ^ "/META.%s" else ddir ^ "/%s/META") 431 | + print_endline ( sl 432 | + (if mdir <> "" then mdir ^ "/META.%s" else ddir ^ "/%s/META")) 433 | | Some "stdlib" -> 434 | - print_endline (Findlib.ocaml_stdlib()) 435 | + print_endline ( sl (Findlib.ocaml_stdlib())) 436 | | Some "ldconf" -> 437 | - print_endline (Findlib.ocaml_ldconf()) 438 | + print_endline ( sl (Findlib.ocaml_ldconf())) 439 | | _ -> 440 | assert false 441 | ;; 442 | @@ -2481,7 +2601,7 @@ 443 | 444 | let ocamlcall pkg cmd = 445 | let dir = package_directory pkg in 446 | - let path = Filename.concat dir cmd in 447 | + let path = rewrite_cmd (Filename.concat dir cmd) in 448 | begin 449 | try Unix.access path [ Unix.X_OK ] 450 | with 451 | @@ -2647,6 +2767,10 @@ 452 | | Sys_error f -> 453 | prerr_endline ("ocamlfind: " ^ f); 454 | exit 2 455 | + | Unix.Unix_error (e, fn, f) -> 456 | + prerr_endline ("ocamlfind: " ^ fn ^ " " ^ f 457 | + ^ ": " ^ Unix.error_message e); 458 | + exit 2 459 | | Findlib.No_such_package(pkg,info) -> 460 | prerr_endline ("ocamlfind: Package `" ^ pkg ^ "' not found" ^ 461 | (if info <> "" then " - " ^ info else "")); 462 | --- ./src/findlib/Makefile 463 | +++ ./src/findlib/Makefile 464 | @@ -90,6 +90,7 @@ 465 | cat findlib_config.mlp | \ 466 | $(SH) $(TOP)/tools/patch '@CONFIGFILE@' '$(OCAMLFIND_CONF)' | \ 467 | $(SH) $(TOP)/tools/patch '@STDLIB@' '$(OCAML_CORE_STDLIB)' | \ 468 | + $(SH) $(TOP)/tools/patch '@EXEC_SUFFIX@' '$(EXEC_SUFFIX)' | \ 469 | sed -e 's;@AUTOLINK@;$(OCAML_AUTOLINK);g' \ 470 | -e 's;@SYSTEM@;$(SYSTEM);g' \ 471 | >findlib_config.ml 472 | --------------------------------------------------------------------------------