From 0aca1239800e976923b84c26ac5946b2730a27b1 Mon Sep 17 00:00:00 2001 From: Anil Madhavapeddy Date: Thu, 27 Nov 2025 12:55:55 +0000 Subject: [PATCH 1/2] add ocamlbuild,async_ssl,alcotest,sedlex,topkg,uutf updates This lets us compile many more upstream packages that would otherwise fail with constraint errors --- packages/alcotest/alcotest.1.9.0+ox/opam | 2 +- .../async_ssl.v0.18~preview.130.76+222/opam | 4 +- .../files/bigarray.patch | 11 ++ .../ctypes-foreign.0.24.0+ox/opam | 59 +++++++++ .../ctypes.0.24.0+ox/files/bigarray.patch | 11 ++ packages/ctypes/ctypes.0.24.0+ox/opam | 72 +++++++++++ .../hardcaml_c.v0.18~preview.130.76+222/opam | 4 +- .../opam | 4 +- .../js_of_ocaml-compiler.6.0.1+ox/opam | 2 +- packages/lsp/lsp.1.19.0+ox/opam | 2 +- .../notty-community.0.2.4+ox/opam | 2 +- .../ocaml-variants.5.2.0+ox/opam | 12 +- .../ocamlbuild.0.16.1+ox/files/flambda2.patch | 47 +++++++ packages/ocamlbuild/ocamlbuild.0.16.1+ox/opam | 50 ++++++++ .../ocamlformat-lib.0.26.2+ox/opam | 2 +- .../ppx_css.v0.18~preview.130.76+222/opam | 2 +- .../files/sedlex+syntax+ppx_sedlex.ml.patch | 116 ++++++++++++++++++ packages/sedlex/sedlex.3.7+ox/opam | 55 +++++++++ .../textutils.v0.18~preview.130.76+222/opam | 2 +- .../opam | 2 +- .../topkg.1.1.1+ox/files/topkg_string.patch | 20 +++ packages/topkg/topkg.1.1.1+ox/opam | 57 +++++++++ .../torch/torch.v0.18~preview.130.76+222/opam | 4 +- .../uutf.1.0.4+ox/files/uutf-locals.patch | 47 +++++++ .../uutf.1.0.4+ox/files/uutf-portable.patch | 92 ++++++++++++++ packages/uutf/uutf.1.0.4+ox/opam | 53 ++++++++ .../wasm_of_ocaml-compiler.6.0.1+ox/opam | 2 +- 27 files changed, 713 insertions(+), 23 deletions(-) create mode 100644 packages/ctypes-foreign/ctypes-foreign.0.24.0+ox/files/bigarray.patch create mode 100644 packages/ctypes-foreign/ctypes-foreign.0.24.0+ox/opam create mode 100644 packages/ctypes/ctypes.0.24.0+ox/files/bigarray.patch create mode 100644 packages/ctypes/ctypes.0.24.0+ox/opam create mode 100644 packages/ocamlbuild/ocamlbuild.0.16.1+ox/files/flambda2.patch create mode 100644 packages/ocamlbuild/ocamlbuild.0.16.1+ox/opam create mode 100644 packages/sedlex/sedlex.3.7+ox/files/sedlex+syntax+ppx_sedlex.ml.patch create mode 100644 packages/sedlex/sedlex.3.7+ox/opam create mode 100644 packages/topkg/topkg.1.1.1+ox/files/topkg_string.patch create mode 100644 packages/topkg/topkg.1.1.1+ox/opam create mode 100644 packages/uutf/uutf.1.0.4+ox/files/uutf-locals.patch create mode 100644 packages/uutf/uutf.1.0.4+ox/files/uutf-portable.patch create mode 100644 packages/uutf/uutf.1.0.4+ox/opam diff --git a/packages/alcotest/alcotest.1.9.0+ox/opam b/packages/alcotest/alcotest.1.9.0+ox/opam index 92d8149e8f..79cd5968bc 100644 --- a/packages/alcotest/alcotest.1.9.0+ox/opam +++ b/packages/alcotest/alcotest.1.9.0+ox/opam @@ -27,7 +27,7 @@ depends: [ "cmdliner" {with-test & < "2.0.0"} "re" {= "1.14.0+ox"} "stdlib-shims" - "uutf" {= "1.0.3+ox"} + "uutf" {= "1.0.4+ox"} "ocaml-syntax-shims" "odoc" {with-doc} ] diff --git a/packages/async_ssl/async_ssl.v0.18~preview.130.76+222/opam b/packages/async_ssl/async_ssl.v0.18~preview.130.76+222/opam index deb215354e..50d412d471 100644 --- a/packages/async_ssl/async_ssl.v0.18~preview.130.76+222/opam +++ b/packages/async_ssl/async_ssl.v0.18~preview.130.76+222/opam @@ -19,8 +19,8 @@ depends: [ "ppx_optcomp" {= "v0.18~preview.130.76+222"} "stdio" {= "v0.18~preview.130.76+222"} "conf-libssl" - "ctypes" {= "0.23.0+ox"} - "ctypes-foreign" {= "0.23.0+ox"} + "ctypes" {= "0.24.0+ox"} + "ctypes-foreign" {= "0.24.0+ox"} "dune" {>= "3.17.0"} "dune-configurator" "integers" diff --git a/packages/ctypes-foreign/ctypes-foreign.0.24.0+ox/files/bigarray.patch b/packages/ctypes-foreign/ctypes-foreign.0.24.0+ox/files/bigarray.patch new file mode 100644 index 0000000000..0710f20254 --- /dev/null +++ b/packages/ctypes-foreign/ctypes-foreign.0.24.0+ox/files/bigarray.patch @@ -0,0 +1,11 @@ +--- a/src/ctypes/ctypes_memory.ml ++++ b/src/ctypes/ctypes_memory.ml +@@ -301,7 +301,7 @@ + ba_repr: f; + bigarray: b; + carray: c; +- dims: d > bigarray_class -> b -> (a, f) Bigarray.kind = ++ dims: d > bigarray_class -> b @ immutable -> (a, f) Bigarray.kind = + function + | Genarray -> Genarray.kind + | Array1 -> Array1.kind diff --git a/packages/ctypes-foreign/ctypes-foreign.0.24.0+ox/opam b/packages/ctypes-foreign/ctypes-foreign.0.24.0+ox/opam new file mode 100644 index 0000000000..0ac118299c --- /dev/null +++ b/packages/ctypes-foreign/ctypes-foreign.0.24.0+ox/opam @@ -0,0 +1,59 @@ +opam-version: "2.0" +synopsis: "Dynamic access to foreign C libraries using Ctypes" +description: """ + +This installs the `ctypes-foreign` interface which +uses `libffi` to provide dynamic access to foreign libraries.""" +maintainer: ["Jeremy Yallop "] +authors: ["Jeremy Yallop"] +license: "MIT" +tags: ["org:mirage"] +homepage: "https://github.com/yallop/ocaml-ctypes" +doc: "https://yallop.github.io/ocaml-ctypes/" +bug-reports: "https://github.com/yallop/ocaml-ctypes/issues" +depends: [ + "dune" {>= "3.9"} + "ocaml" {>= "4.07.0"} + "integers" {with-test & >= "0.2.2"} + "ctypes" {= version} + "dune-configurator" + "conf-pkg-config" + "lwt" {with-test & >= "2.4.7"} + "ounit2" {with-test} + "conf-ncurses" {with-test} + "conf-fts" {with-test & os != "win32"} + "conf-libffi" {>= "2.0.0"} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/yallop/ocaml-ctypes.git" +url { + src: + "https://github.com/yallop/ocaml-ctypes/archive/refs/tags/0.24.0.tar.gz" + checksum: [ + "sha256=249c5604c8554659761a7282db4ad200aa8c0fdc408cdb53102bd70feeb51955" + "md5=064316aaf508a9db203f114bb8401dee" + ] +} +patches: ["bigarray.patch"] +extra-files: [ + [ + "bigarray.patch" + "sha256=c5d59b4624382cd61ff8da5c9ec3153ada0880efc43fbb2a20491984bd509a3e" + ] +] diff --git a/packages/ctypes/ctypes.0.24.0+ox/files/bigarray.patch b/packages/ctypes/ctypes.0.24.0+ox/files/bigarray.patch new file mode 100644 index 0000000000..0710f20254 --- /dev/null +++ b/packages/ctypes/ctypes.0.24.0+ox/files/bigarray.patch @@ -0,0 +1,11 @@ +--- a/src/ctypes/ctypes_memory.ml ++++ b/src/ctypes/ctypes_memory.ml +@@ -301,7 +301,7 @@ + ba_repr: f; + bigarray: b; + carray: c; +- dims: d > bigarray_class -> b -> (a, f) Bigarray.kind = ++ dims: d > bigarray_class -> b @ immutable -> (a, f) Bigarray.kind = + function + | Genarray -> Genarray.kind + | Array1 -> Array1.kind diff --git a/packages/ctypes/ctypes.0.24.0+ox/opam b/packages/ctypes/ctypes.0.24.0+ox/opam new file mode 100644 index 0000000000..8cfb43b89d --- /dev/null +++ b/packages/ctypes/ctypes.0.24.0+ox/opam @@ -0,0 +1,72 @@ +opam-version: "2.0" +synopsis: "Combinators for binding to C libraries without writing any C" +description: """ + +ctypes is a library for binding to C libraries using pure OCaml. The primary +aim is to make writing C extensions as straightforward as possible. +The core of ctypes is a set of combinators for describing the structure of C +types -- numeric types, arrays, pointers, structs, unions and functions. You +can use these combinators to describe the types of the functions that you want +to call, then bind directly to those functions -- all without writing or +generating any C! + +To install the optional `ctypes-foreign` interface (which uses `libffi` to +provide dynamic access to foreign libraries), you will need to also install +the `ctypes-foreign` package. + + opam install ctypes-foreign + +This will make the `ctypes-foreign` ocamlfind subpackage available.""" +maintainer: ["Jeremy Yallop "] +authors: ["Jeremy Yallop"] +license: "MIT" +tags: ["org:mirage"] +homepage: "https://github.com/yallop/ocaml-ctypes" +doc: "https://yallop.github.io/ocaml-ctypes/" +bug-reports: "https://github.com/yallop/ocaml-ctypes/issues" +depends: [ + "dune" {>= "3.9"} + "ocaml" {>= "4.07.0"} + "integers" + "dune-configurator" + "ounit2" {with-test} + "conf-fts" {with-test & os != "win32"} + "conf-pkg-config" {with-test} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "--promote-install-files=false" + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] + ["dune" "install" "-p" name "--create-install-files" name] +] +dev-repo: "git+https://github.com/yallop/ocaml-ctypes.git" +url { + src: + "https://github.com/yallop/ocaml-ctypes/archive/refs/tags/0.24.0.tar.gz" + checksum: [ + "sha256=249c5604c8554659761a7282db4ad200aa8c0fdc408cdb53102bd70feeb51955" + "md5=064316aaf508a9db203f114bb8401dee" + ] +} +conflicts: [ + "host-system-msvc" +] +x-maintenance-intent: ["(any).(any).(latest)"] +patches: ["bigarray.patch"] +extra-files: [ + [ + "bigarray.patch" + "sha256=c5d59b4624382cd61ff8da5c9ec3153ada0880efc43fbb2a20491984bd509a3e" + ] +] diff --git a/packages/hardcaml_c/hardcaml_c.v0.18~preview.130.76+222/opam b/packages/hardcaml_c/hardcaml_c.v0.18~preview.130.76+222/opam index 578059d3a2..8dfcdb5e05 100644 --- a/packages/hardcaml_c/hardcaml_c.v0.18~preview.130.76+222/opam +++ b/packages/hardcaml_c/hardcaml_c.v0.18~preview.130.76+222/opam @@ -19,8 +19,8 @@ depends: [ "ppx_hardcaml" {= "v0.18~preview.130.76+222"} "ppx_jane" {= "v0.18~preview.130.76+222"} "ppx_rope" {= "v0.18~preview.130.76+222"} - "ctypes" {= "0.23.0+ox"} - "ctypes-foreign" {= "0.23.0+ox"} + "ctypes" {= "0.24.0+ox"} + "ctypes-foreign" {= "0.24.0+ox"} "dune" {>= "3.17.0"} ] available: arch != "arm32" & arch != "x86_32" diff --git a/packages/hardcaml_verilator/hardcaml_verilator.v0.18~preview.130.76+222/opam b/packages/hardcaml_verilator/hardcaml_verilator.v0.18~preview.130.76+222/opam index 7fdbda7380..95da08555c 100644 --- a/packages/hardcaml_verilator/hardcaml_verilator.v0.18~preview.130.76+222/opam +++ b/packages/hardcaml_verilator/hardcaml_verilator.v0.18~preview.130.76+222/opam @@ -20,8 +20,8 @@ depends: [ "ppx_hardcaml" {= "v0.18~preview.130.76+222"} "ppx_jane" {= "v0.18~preview.130.76+222"} "stdio" {= "v0.18~preview.130.76+222"} - "ctypes" {= "0.23.0+ox"} - "ctypes-foreign" {= "0.23.0+ox"} + "ctypes" {= "0.24.0+ox"} + "ctypes-foreign" {= "0.24.0+ox"} "dune" {>= "3.17.0"} ] available: arch != "arm32" & arch != "x86_32" diff --git a/packages/js_of_ocaml-compiler/js_of_ocaml-compiler.6.0.1+ox/opam b/packages/js_of_ocaml-compiler/js_of_ocaml-compiler.6.0.1+ox/opam index 7a22043e3e..4386bc5a57 100644 --- a/packages/js_of_ocaml-compiler/js_of_ocaml-compiler.6.0.1+ox/opam +++ b/packages/js_of_ocaml-compiler/js_of_ocaml-compiler.6.0.1+ox/opam @@ -20,7 +20,7 @@ depends: [ "ppxlib" {= "0.33.0+ox"} "re" {with-test & = "1.14.0+ox"} "cmdliner" {>= "1.1.0"} - "sedlex" {= "3.6+ox"} + "sedlex" {= "3.7+ox"} "qcheck" {with-test} "menhir" "menhirLib" diff --git a/packages/lsp/lsp.1.19.0+ox/opam b/packages/lsp/lsp.1.19.0+ox/opam index 7a187b0f9e..d23d9013a5 100644 --- a/packages/lsp/lsp.1.19.0+ox/opam +++ b/packages/lsp/lsp.1.19.0+ox/opam @@ -29,7 +29,7 @@ depends: [ "ppx_yojson_conv" "cinaps" {with-test} "ppx_expect" {with-test} - "uutf" {= "1.0.3+ox"} + "uutf" {= "1.0.4+ox"} "odoc" {with-doc} "ocaml" {>= "4.14"} ] diff --git a/packages/notty-community/notty-community.0.2.4+ox/opam b/packages/notty-community/notty-community.0.2.4+ox/opam index d0fbc6df84..94b1c3ac94 100644 --- a/packages/notty-community/notty-community.0.2.4+ox/opam +++ b/packages/notty-community/notty-community.0.2.4+ox/opam @@ -21,7 +21,7 @@ depends: [ "dune" {>= "3.0"} "ocaml" {>= "4.08.0"} "cppo" {build & >= "1.1.0"} - "uutf" {= "1.0.3+ox"} + "uutf" {= "1.0.4+ox"} "uucp" {with-dev-setup} "lwt" {with-test} "base" diff --git a/packages/ocaml-variants/ocaml-variants.5.2.0+ox/opam b/packages/ocaml-variants/ocaml-variants.5.2.0+ox/opam index 5d3145dc95..0e3541fb98 100644 --- a/packages/ocaml-variants/ocaml-variants.5.2.0+ox/opam +++ b/packages/ocaml-variants/ocaml-variants.5.2.0+ox/opam @@ -108,8 +108,8 @@ conflicts: [ "base" {< "v0.18~"} "alcotest" {!= "1.9.0+ox"} "backoff" {!= "0.1.1+ox"} - "ctypes" {!= "0.23.0+ox"} - "ctypes-foreign" {!= "0.23.0+ox"} + "ctypes" {!= "0.24.0+ox"} + "ctypes-foreign" {!= "0.24.0+ox"} "dot-merlin-reader" {!= "5.2.1-502+ox"} "dune" {<= "3.20.2"} "gen_js_api" {!= "1.1.2+ox"} @@ -127,18 +127,18 @@ conflicts: [ "ocaml-compiler-libs" {!= "v0.17.0+ox"} "ocaml-index" {!= "1.1+ox"} "ocaml-lsp-server" {!= "1.19.0+ox"} - "ocamlbuild" {!= "0.15.0+ox"} + "ocamlbuild" {!= "0.16.1+ox"} "ocamlformat" {!= "0.26.2+ox"} "ocamlformat-lib" {!= "0.26.2+ox"} "ojs" {!= "1.1.2+ox"} "ppxlib" {!= "0.33.0+ox"} "ppxlib_ast" {!= "0.33.0+ox"} "re" {!= "1.14.0+ox"} - "sedlex" {!= "3.6+ox"} + "sedlex" {!= "3.7+ox"} "spawn" {!= "v0.15.1+ox"} - "topkg" {!= "1.0.8+ox"} + "topkg" {!= "1.1.1+ox"} "uTop" {!= "2.16.0+ox"} - "uutf" {!= "1.0.3+ox"} + "uutf" {!= "1.0.4+ox"} "wasm_of_ocaml-compiler" {!= "6.0.1+ox"} "zarith" {<"1.12"} "zarith" {="1.12"} diff --git a/packages/ocamlbuild/ocamlbuild.0.16.1+ox/files/flambda2.patch b/packages/ocamlbuild/ocamlbuild.0.16.1+ox/files/flambda2.patch new file mode 100644 index 0000000000..ffcad3a179 --- /dev/null +++ b/packages/ocamlbuild/ocamlbuild.0.16.1+ox/files/flambda2.patch @@ -0,0 +1,47 @@ +diff --git a/Makefile b/Makefile +index 3039625..1344f79 100644 +--- a/Makefile ++++ b/Makefile +@@ -412,10 +412,22 @@ endif + + # The generic rules + +-%.cmo: %.ml ++src/%.cmo: src/%.ml ++ $(OCAMLC) -for-pack Ocamlbuild_pack $(OCB_COMPFLAGS) -c $< ++ ++bin/%.cmo: bin/%.ml ++ $(OCAMLC) $(OCB_COMPFLAGS) -c $< ++ ++plugin-lib/%.cmo: plugin-lib/%.ml ++ $(OCAMLC) $(OCB_COMPFLAGS) -c $< ++ ++src/%.cmi: src/%.mli ++ $(OCAMLC) -for-pack Ocamlbuild_pack $(OCB_COMPFLAGS) -c $< ++ ++bin/%.cmi: bin/%.mli + $(OCAMLC) $(OCB_COMPFLAGS) -c $< + +-%.cmi: %.mli ++plugin-lib/%.cmi: plugin-lib/%.mli + $(OCAMLC) $(OCB_COMPFLAGS) -c $< + + src/%.cmx: src/%.ml +diff --git a/src/configuration.ml b/src/configuration.ml +index a209df5..ec620d0 100644 +--- a/src/configuration.ml ++++ b/src/configuration.ml +@@ -58,6 +58,14 @@ let apply_config s (config : t) init = + List.fold_left begin fun tags (key, v) -> + if key_match key s then + List.fold_right add v.plus_tags (List.fold_right remove v.minus_tags tags) ++ else if ++ List.mem (Filename.extension s) [".ml"; ".mli"] ++ && key_match key (Filename.remove_extension s ^ ".cmx") ++ then ++ let only_for_pack l = ++ List.filter (fun (tag, _) -> String.length tag >= 9 && String.sub tag 0 9 = "for-pack(") l ++ in ++ List.fold_right add (only_for_pack v.plus_tags) (List.fold_right remove (only_for_pack v.minus_tags) tags) + else tags + end init config diff --git a/packages/ocamlbuild/ocamlbuild.0.16.1+ox/opam b/packages/ocamlbuild/ocamlbuild.0.16.1+ox/opam new file mode 100644 index 0000000000..915b2c6b6c --- /dev/null +++ b/packages/ocamlbuild/ocamlbuild.0.16.1+ox/opam @@ -0,0 +1,50 @@ +opam-version: "2.0" +version: "0.16.1+ox" +name: "ocamlbuild" +synopsis: + "OCamlbuild is a build system with builtin rules to easily build most OCaml projects" +maintainer: "Gabriel Scherer " +authors: ["Nicolas Pouillard" "Berke Durak"] +license: "LGPL-2.0-or-later WITH OCaml-LGPL-linking-exception" +homepage: "https://github.com/ocaml/ocamlbuild/" +doc: "https://github.com/ocaml/ocamlbuild/blob/master/manual/manual.adoc" +bug-reports: "https://github.com/ocaml/ocamlbuild/issues" +depends: [ + "ocaml" {>= "4.08"} + "ocamlfind" {with-test} + "menhirLib" {with-test} +] +conflicts: [ + "base-ocamlbuild" + "ocamlfind" {< "1.6.2"} +] +build: [ + [ + make + "-f" + "configure.make" + "all" + "OCAMLBUILD_PREFIX=%{prefix}%" + "OCAMLBUILD_BINDIR=%{bin}%" + "OCAMLBUILD_LIBDIR=%{lib}%" + "OCAMLBUILD_MANDIR=%{man}%" + "OCAML_NATIVE=%{ocaml:native}%" + "OCAML_NATIVE_TOOLS=%{ocaml:native}%" + ] + [make "check-if-preinstalled" "all" "opam-install"] +] +dev-repo: "git+https://github.com/ocaml/ocamlbuild.git" + +url { + src: "https://github.com/ocaml/ocamlbuild/archive/refs/tags/0.16.1.tar.gz" + checksum: [ + "sha512=e918b9a0081f271e507c7a4f4d5d5a7cdf818ca51c52acec1bac85ddad5f6cad078cb3c568252fbcf5401c2d75323ed8f50fdd881bda1c9632840320408393ae" + ] +} +patches: ["flambda2.patch"] +extra-files: [ + [ + "flambda2.patch" + "sha256=d9a4c6425c8b56ea6a878661abc5704810a73003fd76b97073b9f998619dce8a" + ] +] diff --git a/packages/ocamlformat-lib/ocamlformat-lib.0.26.2+ox/opam b/packages/ocamlformat-lib/ocamlformat-lib.0.26.2+ox/opam index 534bce9df4..e6f7f6fef8 100644 --- a/packages/ocamlformat-lib/ocamlformat-lib.0.26.2+ox/opam +++ b/packages/ocamlformat-lib/ocamlformat-lib.0.26.2+ox/opam @@ -37,7 +37,7 @@ depends: [ "ocp-indent" {with-test = "false" & >= "1.8.0" | with-test & >= "1.8.1"} "stdio" "uuseg" {>= "10.0.0"} - "uutf" {= "1.0.3+ox"} + "uutf" {= "1.0.4+ox"} "csexp" {>= "1.4.0"} "astring" "result" diff --git a/packages/ppx_css/ppx_css.v0.18~preview.130.76+222/opam b/packages/ppx_css/ppx_css.v0.18~preview.130.76+222/opam index abc5cd8cd3..2f6055665d 100644 --- a/packages/ppx_css/ppx_css.v0.18~preview.130.76+222/opam +++ b/packages/ppx_css/ppx_css.v0.18~preview.130.76+222/opam @@ -31,7 +31,7 @@ depends: [ "ocaml-compiler-libs" {= "v0.17.0+ox"} "ocamlgraph" {= "2.0.0"} "ppxlib" {= "0.33.0+ox"} - "sedlex" {= "3.6+ox"} + "sedlex" {= "3.7+ox"} ] available: arch != "arm32" & arch != "x86_32" synopsis: diff --git a/packages/sedlex/sedlex.3.7+ox/files/sedlex+syntax+ppx_sedlex.ml.patch b/packages/sedlex/sedlex.3.7+ox/files/sedlex+syntax+ppx_sedlex.ml.patch new file mode 100644 index 0000000000..509a1bb8fa --- /dev/null +++ b/packages/sedlex/sedlex.3.7+ox/files/sedlex+syntax+ppx_sedlex.ml.patch @@ -0,0 +1,116 @@ +--- a/src/syntax/ppx_sedlex.ml ++++ b/src/syntax/ppx_sedlex.ml +@@ -4,7 +4,6 @@ + + open Ppxlib + open Ast_builder.Default +-open Ast_helper + + (* let ocaml_version = Versions.ocaml_408 *) + +@@ -232,7 +231,8 @@ let gen_state (lexbuf_name, lexbuf) auto + [ + value_binding ~loc + ~pat:(pvar ~loc (state_fun i)) +- ~expr:(Exp.fun_ ~loc Nolabel None lhs body); ++ ~expr:( ++ Ppxlib_jane.Ast_builder.Default.add_fun_param ~loc Nolabel None lhs body); + ] + in + match best_final final with +@@ -335,7 +335,7 @@ let regexp_of_pattern env = + let rec char_pair_op func name ~encoding p tuple = + (* Construct something like Sub(a,b) *) + match tuple with +- | Some { ppat_desc = Ppat_tuple [p0; p1] } -> begin ++ | Some { ppat_desc = Ppat_tuple ([None, p0; None, p1], Closed) } -> begin + match func (aux ~encoding p0) (aux ~encoding p1) with + | Some r -> r + | None -> +@@ -351,10 +351,14 @@ let regexp_of_pattern env = + (* interpret one pattern node *) + match p.ppat_desc with + | Ppat_or (p1, p2) -> Sedlex.alt (aux ~encoding p1) (aux ~encoding p2) +- | Ppat_tuple (p :: pl) -> +- List.fold_left +- (fun r p -> Sedlex.seq r (aux ~encoding p)) +- (aux ~encoding p) pl ++ | Ppat_tuple (labeled_pl, Closed) -> ++ (match Ppxlib_jane.as_unlabeled_tuple labeled_pl with ++ | Some (p :: pl) -> ++ List.fold_left ++ (fun r p -> Sedlex.seq r (aux ~encoding p)) ++ (aux ~encoding p) pl ++ | Some [] -> err p.ppat_loc "empty tuple unexpected" ++ | None -> err p.ppat_loc "labeled tuples not allowed in regexps") + | Ppat_construct ({ txt = Lident "Star" }, Some (_, p)) -> + Sedlex.rep (aux ~encoding p) + | Ppat_construct ({ txt = Lident "Plus" }, Some (_, p)) -> +@@ -372,13 +376,13 @@ let regexp_of_pattern env = + { + ppat_desc = + Ppat_tuple +- [ +- p0; +- { ++ ([ ++ None, p0; ++ None, { + ppat_desc = + Ppat_constant (i1 as i2) | Ppat_interval (i1, i2); + }; +- ]; ++ ], Closed); + } ) ) -> begin + match (i1, i2) with + | Pconst_integer (i1, _), Pconst_integer (i2, _) -> +@@ -471,6 +475,13 @@ let previous = ref [] + let regexps = ref [] + let should_set_cookies = ref false + ++let loc_ghoster = ++ object ++ inherit Ast_traverse.map as super ++ method! location location = super#location { location with loc_ghost = true } ++ end ++;; ++ + let mapper = + object (this) + inherit Ast_traverse.map as super +@@ -509,13 +520,13 @@ let mapper = + err e.pexp_loc "'when' guards are not supported") + cases + in +- gen_definition lexbuf cases error ++ loc_ghoster#expression @@ gen_definition lexbuf cases error + | [%expr + let [%p? { ppat_desc = Ppat_var { txt = name } }] = + [%sedlex.regexp? [%p? p]] + in + [%e? body]] -> +- (this#define_regexp name p)#expression body ++ loc_ghoster#expression @@ (this#define_regexp name p)#expression body + | [%expr [%sedlex [%e? _]]] -> + err e.pexp_loc + "the %%sedlex extension is only recognized on match expressions" +@@ -549,7 +560,7 @@ let mapper = + let tables = List.map table (get_tables ()) in + regexps := regexps'; + should_set_cookies := true; +- tables @ parts @ l) ++ loc_ghoster#structure (tables @ parts) @ l) + else fst (this#structure_with_regexps l) + end + +@@ -570,7 +581,9 @@ let extensions = + [ + Extension.declare "sedlex" Extension.Context.expression + Ast_pattern.(single_expr_payload __) +- (fun ~loc:_ ~path:_ expr -> mapper#expression expr); ++ (fun ~loc:_ ~path:_ expr -> ++ let output = mapper#expression expr in ++ loc_ghoster#expression output); + ] + + let () = diff --git a/packages/sedlex/sedlex.3.7+ox/opam b/packages/sedlex/sedlex.3.7+ox/opam new file mode 100644 index 0000000000..91a6c5dcf1 --- /dev/null +++ b/packages/sedlex/sedlex.3.7+ox/opam @@ -0,0 +1,55 @@ +# This file is generated by dune, edit dune-project instead +opam-version: "2.0" +synopsis: "An OCaml lexer generator for Unicode" +description: """ +sedlex is a lexer generator for OCaml. It is similar to ocamllex, but supports +Unicode. Unlike ocamllex, sedlex allows lexer specifications within regular +OCaml source files. Lexing specific constructs are provided via a ppx syntax +extension.""" +maintainer: ["Alain Frisch "] +authors: [ + "Alain Frisch " + "https://github.com/ocaml-community/sedlex/graphs/contributors" +] +license: "MIT" +homepage: "https://github.com/ocaml-community/sedlex" +bug-reports: "https://github.com/ocaml-community/sedlex/issues" +depends: [ + "ocaml" {>= "4.08"} + "dune" {>= "3.0"} + "ppxlib" {= "0.33.0+ox"} + "gen" + "ppx_expect" {with-test} + "odoc" {with-doc} +] +build: [ + ["dune" "subst"] {dev} + [ + "dune" + "build" + "-p" + name + "-j" + jobs + "@install" + "@runtest" {with-test} + "@doc" {with-doc} + ] +] +dev-repo: "git+https://github.com/ocaml-community/sedlex.git" +doc: "https://ocaml-community.github.io/sedlex/index.html" +url { + src: + "https://github.com/ocaml-community/sedlex/archive/refs/tags/v3.7.tar.gz" + checksum: [ + "md5=893790268f68a1bb60dcc139f390a2d3" + "sha512=053bceea4944309705e6b8014381711a2c4f7f0ab235cd239e2d2f5a2dbd3efe1b1c2d533631a8545dacf563cdb5b7469fe53982ef79ace270ee8a4a471f1fe2" + ] +} +patches: ["sedlex+syntax+ppx_sedlex.ml.patch"] +extra-files: [ + [ + "sedlex+syntax+ppx_sedlex.ml.patch" + "sha256=08231e9b4a12d7ce662031b104c91f2765be67da114ea26891a656e254a3e075" + ] +] diff --git a/packages/textutils/textutils.v0.18~preview.130.76+222/opam b/packages/textutils/textutils.v0.18~preview.130.76+222/opam index cf4a7d0f54..4b7f37895e 100644 --- a/packages/textutils/textutils.v0.18~preview.130.76+222/opam +++ b/packages/textutils/textutils.v0.18~preview.130.76+222/opam @@ -17,7 +17,7 @@ depends: [ "core_unix" {= "v0.18~preview.130.76+222"} "ppx_jane" {= "v0.18~preview.130.76+222"} "dune" {>= "3.17.0"} - "uutf" {= "1.0.3+ox"} + "uutf" {= "1.0.4+ox"} ] available: arch != "arm32" & arch != "x86_32" synopsis: "Text output utilities" diff --git a/packages/textutils_kernel/textutils_kernel.v0.18~preview.130.76+222/opam b/packages/textutils_kernel/textutils_kernel.v0.18~preview.130.76+222/opam index 0974220c68..b1a3af50c5 100644 --- a/packages/textutils_kernel/textutils_kernel.v0.18~preview.130.76+222/opam +++ b/packages/textutils_kernel/textutils_kernel.v0.18~preview.130.76+222/opam @@ -15,7 +15,7 @@ depends: [ "core" {= "v0.18~preview.130.76+222"} "ppx_jane" {= "v0.18~preview.130.76+222"} "dune" {>= "3.17.0"} - "uutf" {= "1.0.3+ox"} + "uutf" {= "1.0.4+ox"} ] available: arch != "arm32" & arch != "x86_32" synopsis: "Text output utilities" diff --git a/packages/topkg/topkg.1.1.1+ox/files/topkg_string.patch b/packages/topkg/topkg.1.1.1+ox/files/topkg_string.patch new file mode 100644 index 0000000000..a72adb7c1e --- /dev/null +++ b/packages/topkg/topkg.1.1.1+ox/files/topkg_string.patch @@ -0,0 +1,20 @@ +diff --git a/src/topkg_string.mli b/src/topkg_string.mli +index 5bd1d2358..24f075a8a 100644 +--- a/src/topkg_string.mli ++++ b/src/topkg_string.mli +@@ -20,13 +20,13 @@ val exists : (char -> bool) -> string -> bool + + val find_byte : ?start:int -> char -> string -> int option + +-val trim : string -> string ++val trim : string -> string @@ portable + val cut : ?rev:bool -> sep:char -> string -> (string * string) option + val cuts : ?empty:bool -> sep:char -> string -> string list + + val with_index_range : ?first:int -> ?last:int -> string -> string + +-val uppercase_ascii : string -> string ++val uppercase_ascii : string -> string @@ portable + + val parse_version : string -> (int * int * int * string option) option + val drop_initial_v : string -> string diff --git a/packages/topkg/topkg.1.1.1+ox/opam b/packages/topkg/topkg.1.1.1+ox/opam new file mode 100644 index 0000000000..f1b529e984 --- /dev/null +++ b/packages/topkg/topkg.1.1.1+ox/opam @@ -0,0 +1,57 @@ +opam-version: "2.0" +synopsis: "The transitory OCaml software packager" +description: """\ +**Warning** Topkg is in maintenance mode and should not longer be used. + +Topkg is a packager for distributing OCaml software. It provides an +API to describe the files a package installs in a given build +configuration and to specify information about the package's +distribution, creation and publication procedures. + +The optional topkg-care package provides the `topkg` command line tool +which helps with various aspects of a package's life cycle: creating +and linting a distribution, releasing it on the WWW, publish its +documentation, add it to the OCaml opam repository, etc. + +Topkg is distributed under the ISC license and has **no** +dependencies. This is what your packages will need as a *build* +dependency. + +Topkg-care is distributed under the ISC license it depends on +[fmt][fmt], [logs][logs], [bos][bos], [cmdliner][cmdliner], +[webbrowser][webbrowser] and `opam-format`. + +[fmt]: http://erratique.ch/software/fmt +[logs]: http://erratique.ch/software/logs +[bos]: http://erratique.ch/software/bos +[cmdliner]: http://erratique.ch/software/cmdliner +[webbrowser]: http://erratique.ch/software/webbrowser + +Home page: """ +maintainer: "Daniel Bünzli " +authors: "The topkg programmers" +license: "ISC" +tags: ["packaging" "ocamlbuild" "org:erratique"] +homepage: "https://erratique.ch/software/topkg" +doc: "https://erratique.ch/software/topkg/doc" +bug-reports: "https://github.com/dbuenzli/topkg/issues" +depends: [ + "ocaml" {>= "4.08.0"} + "ocamlfind" {build & >= "1.6.1"} + "ocamlbuild" +] +build: ["ocaml" "pkg/pkg.ml" "build" "--pkg-name" name "--dev-pkg" "%{dev}%"] +dev-repo: "git+https://erratique.ch/repos/topkg.git" +url { + src: "https://erratique.ch/software/topkg/releases/topkg-1.1.1.tbz" + checksum: + "sha512=c36c549a362ddf5b7fe3f6ff91c79b7ab531c43633bb9737576370bcbd69db7e1625d247c278a869b503d45a175e9753231ccf595e5bfa4e3b7e2602ac3d3b42" +} +x-maintenance-intent: ["(latest)"] +patches: ["topkg_string.patch"] +extra-files: [ + [ + "topkg_string.patch" + "sha256=014eda5595d4b93685d9c9641e8c6d3e6179932ca55a3a2575aa29e53ead28f9" + ] +] diff --git a/packages/torch/torch.v0.18~preview.130.76+222/opam b/packages/torch/torch.v0.18~preview.130.76+222/opam index 48625106f1..d9876471ab 100644 --- a/packages/torch/torch.v0.18~preview.130.76+222/opam +++ b/packages/torch/torch.v0.18~preview.130.76+222/opam @@ -22,8 +22,8 @@ depends: [ "ppx_module_timer" {= "v0.18~preview.130.76+222"} "ppx_string" {= "v0.18~preview.130.76+222"} "stdio" {= "v0.18~preview.130.76+222"} - "ctypes" {= "0.23.0+ox"} - "ctypes-foreign" {= "0.23.0+ox"} + "ctypes" {= "0.24.0+ox"} + "ctypes-foreign" {= "0.24.0+ox"} "dune" {>= "3.17.0"} "dune-configurator" "ocaml-compiler-libs" {= "v0.17.0+ox"} diff --git a/packages/uutf/uutf.1.0.4+ox/files/uutf-locals.patch b/packages/uutf/uutf.1.0.4+ox/files/uutf-locals.patch new file mode 100644 index 0000000000..7bf4e8d48e --- /dev/null +++ b/packages/uutf/uutf.1.0.4+ox/files/uutf-locals.patch @@ -0,0 +1,47 @@ +--- a/src/uutf.ml ++++ b/src/uutf.ml +@@ -719,7 +719,7 @@ module String = struct + | `UTF_16LE d -> `UTF_16LE, (d = `BOM) + + type 'a folder = +- 'a -> int -> [ `Uchar of Uchar.t | `Malformed of string ] -> 'a ++ 'a -> local_ (int -> [ `Uchar of Uchar.t | `Malformed of string ] -> 'a) + + let fold_utf_8 ?(pos = 0) ?len f acc s = + let rec loop acc f s i last = +--- a/src/uutf.mli ++++ b/src/uutf.mli +@@ -325,12 +325,12 @@ module String : sig + {b Note.} Initial {{:http://unicode.org/glossary/#byte_order_mark}BOM}s + are also folded over. *) + +- type 'a folder = 'a -> int -> [ `Uchar of Uchar.t | `Malformed of string ] -> +- 'a ++ type 'a folder = 'a -> local_ (int -> [ `Uchar of Uchar.t | `Malformed of string ] -> ++ 'a) + (** The type for character folders. The integer is the index in the + string where the [`Uchar] or [`Malformed] starts. *) + +- val fold_utf_8 : ?pos:int -> ?len:int -> 'a folder -> 'a -> string -> 'a ++ val fold_utf_8 : ?pos:int -> ?len:int -> local_ 'a folder -> 'a -> string -> 'a + (** [fold_utf_8 f a s ?pos ?len ()] is + [f (] ... [(f (f a pos u]{_0}[) j]{_1}[ u]{_1}[)] ... [)] ... [) + j]{_n}[ u]{_n} +@@ -339,7 +339,7 @@ module String : sig + long. The default value for [pos] is [0] and [len] is + [String.length s - pos]. *) + +- val fold_utf_16be : ?pos:int -> ?len:int -> 'a folder -> 'a -> string -> 'a ++ val fold_utf_16be : ?pos:int -> ?len:int -> local_ 'a folder -> 'a -> string -> 'a + (** [fold_utf_16be f a s ?pos ?len ()] is + [f (] ... [(f (f a pos u]{_0}[) j]{_1}[ u]{_1}[)] ... [)] ... [) + j]{_n}[ u]{_n} +@@ -348,7 +348,7 @@ module String : sig + long. The default value for [pos] is [0] and [len] is + [String.length s - pos]. *) + +- val fold_utf_16le : ?pos:int -> ?len:int -> 'a folder -> 'a -> string -> 'a ++ val fold_utf_16le : ?pos:int -> ?len:int -> local_ 'a folder -> 'a -> string -> 'a + (** [fold_utf_16le f a s ?pos ?len ()] is + [f (] ... [(f (f a pos u]{_0}[) j]{_1}[ u]{_1}[)] ... [)] ... [) + j]{_n}[ u]{_n} diff --git a/packages/uutf/uutf.1.0.4+ox/files/uutf-portable.patch b/packages/uutf/uutf.1.0.4+ox/files/uutf-portable.patch new file mode 100644 index 0000000000..d1b5ed0779 --- /dev/null +++ b/packages/uutf/uutf.1.0.4+ox/files/uutf-portable.patch @@ -0,0 +1,92 @@ +diff --git a/src/uutf.ml b/src/uutf.ml +index 8f8e431b4..380a8a892 100644 +--- a/src/uutf.ml ++++ b/src/uutf.ml +@@ -3,6 +3,9 @@ + SPDX-License-Identifier: ISC + ---------------------------------------------------------------------------*) + ++(* Safe because the array in question is immutable. *) ++external magic_uncontended : 'a array @ contended -> 'a array @@ portable = "%identity" ++ + let io_buffer_size = 65536 (* IO_BUFFER_SIZE 4.0.0 *) + + let pp = Format.fprintf +@@ -139,6 +142,7 @@ let r_utf_16_lo hi s j0 j1 = (* Combines [hi] with a low surrogate. *) + let r_encoding s j l = (* guess encoding with max. 3 bytes. *) + (* assert (0 <= j && 0 <= l && j + l <= String.length s) *) + let some i = if i < l then Some (unsafe_byte s (j + i)) else None in ++ let utf_8_len = magic_uncontended utf_8_len in + match (some 0), (some 1), (some 2) with + | Some 0xEF, Some 0xBB, Some 0xBF -> `UTF_8 `BOM + | Some 0xFE, Some 0xFF, _ -> `UTF_16BE `BOM +@@ -200,7 +204,7 @@ type decoder = + + let i_rem d = d.i_max - d.i_pos + 1 (* remaining bytes to read in [d.i]. *) + let eoi d = +- d.i <- Bytes.empty; d.i_pos <- 0; d.i_max <- min_int (* set eoi in [d]. *) ++ d.i <- Bytes.create 0; d.i_pos <- 0; d.i_max <- min_int (* set eoi in [d]. *) + + let src d s j l = (* set [d.i] with [s]. *) + if (j < 0 || l < 0 || j + l > Bytes.length s) then invalid_bounds j l else +@@ -252,6 +256,7 @@ let rec t_decode_utf_8 d = (* decode from [d.t]. *) + and decode_utf_8 d = + let rem = i_rem d in + if rem <= 0 then (if rem < 0 then `End else refill decode_utf_8 d) else ++ let utf_8_len = magic_uncontended utf_8_len in + let need = unsafe_array_get utf_8_len (unsafe_byte d.i d.i_pos) in + if rem < need then (t_need d need; t_fill t_decode_utf_8 d) else + let j = d.i_pos in +@@ -322,6 +327,7 @@ and decode_utf_16le d = + back in the stream. *) + + let guessed_utf_8 d = (* start decoder after `UTF_8 guess. *) ++ let utf_8_len = magic_uncontended utf_8_len in + let b3 d = (* handles the third read byte. *) + let b3 = unsafe_byte d.t 2 in + match utf_8_len.(b3) with +@@ -383,7 +389,7 @@ let guessed_utf_16 d be v = (* start decoder after `UTF_16{BE,LE} guess. *) + | `Malformed _ | `Uchar _ as v -> ret (b3 t_decode_utf_16) v 2 d + | `Hi hi -> + if d.t_len < 3 +- then ret decode_utf_16 (malformed_pair be hi Bytes.empty 0 0) d.t_len d ++ then ret decode_utf_16 (malformed_pair be hi (Bytes.create 0) 0 0) d.t_len d + else (b3 (t_decode_utf_16_lo hi)) d + + let guess_encoding d = (* guess encoding and start decoder. *) +@@ -499,7 +505,7 @@ let decoder ?nln ?encoding src = + | Some e -> (e :> decoder_encoding), decode_fun e + in + let i, i_pos, i_max = match src with +- | `Manual -> Bytes.empty, 1, 0 (* implies src_rem d = 0. *) ++ | `Manual -> Bytes.create 0, 1, 0 (* implies src_rem d = 0. *) + | `Channel _ -> Bytes.create io_buffer_size, 1, 0 (* idem. *) + | `String s -> Bytes.unsafe_of_string s, 0, String.length s - 1 + in +@@ -688,7 +694,7 @@ let encode_fun = function + + let encoder encoding dst = + let o, o_pos, o_max = match dst with +- | `Manual -> Bytes.empty, 1, 0 (* implies o_rem e = 0. *) ++ | `Manual -> Bytes.create 0, 1, 0 (* implies o_rem e = 0. *) + | `Buffer _ + | `Channel _ -> Bytes.create io_buffer_size, 0, io_buffer_size - 1 + in +@@ -723,6 +729,7 @@ module String = struct + let fold_utf_8 ?(pos = 0) ?len f acc s = + let rec loop acc f s i last = + if i > last then acc else ++ let utf_8_len = magic_uncontended utf_8_len in + let need = unsafe_array_get utf_8_len (unsafe_byte s i) in + if need = 0 then loop (f acc i (malformed s i 1)) f s (i + 1) last else + let rem = last - i + 1 in +diff --git a/src/uutf.mli b/src/uutf.mli +index caefc71e6..65680af53 100644 +--- a/src/uutf.mli ++++ b/src/uutf.mli +@@ -1,3 +1,5 @@ ++@@portable ++ + (*--------------------------------------------------------------------------- + Copyright (c) 2012 The uutf programmers. All rights reserved. + SPDX-License-Identifier: ISC diff --git a/packages/uutf/uutf.1.0.4+ox/opam b/packages/uutf/uutf.1.0.4+ox/opam new file mode 100644 index 0000000000..9add934e15 --- /dev/null +++ b/packages/uutf/uutf.1.0.4+ox/opam @@ -0,0 +1,53 @@ +opam-version: "2.0" +synopsis: "Non-blocking streaming Unicode codec for OCaml" +description: """\ +**Warning.** You are encouraged not to use this library. + +- As of OCaml 4.14, both UTF encoding and decoding are available + in the standard library, see the `String` and `Buffer` modules. +- If you are looking for a stream abstraction compatible with + effect based concurrency look into [`bytesrw`] package.""" +maintainer: "Daniel Bünzli " +authors: "The uutf programmers" +license: "ISC" +tags: ["unicode" "text" "utf-8" "utf-16" "codec" "org:erratique"] +homepage: "https://erratique.ch/software/uutf" +doc: "https://erratique.ch/software/uutf/doc/" +bug-reports: "https://github.com/dbuenzli/uutf/issues" +depends: [ + "ocaml" {>= "4.08.0"} + "ocamlfind" {build} + "ocamlbuild" {build} + "topkg" {build & >= "1.0.3"} +] +depopts: ["cmdliner"] +conflicts: [ + "cmdliner" {< "1.3.0"} +] +build: [ + "ocaml" + "pkg/pkg.ml" + "build" + "--dev-pkg" + "%{dev}%" + "--with-cmdliner" + "%{cmdliner:installed}%" +] +dev-repo: "git+https://erratique.ch/repos/uutf.git" +url { + src: "https://erratique.ch/software/uutf/releases/uutf-1.0.4.tbz" + checksum: + "sha512=e35f408bc971cd8da3077e6c3321e0d8f4eb569898e0e219fde62dae78fbd0a0095cb7f036287656f6a1b346584f7b9f0c6dec0a5a092180da36e43247027598" +} +x-maintenance-intent: ["(latest)"] +patches: ["uutf-locals.patch" "uutf-portable.patch"] +extra-files: [ + [ + "uutf-locals.patch" + "sha256=cf3a0969653b405ad165312dfa6ef9038fe087ac9dd070f4b27bf4790e84e0ce" + ] + [ + "uutf-portable.patch" + "sha256=add71ff1fd68676f4ebb90d782ff3291334d270f0aefa90b21822cd05c940be7" + ] +] diff --git a/packages/wasm_of_ocaml-compiler/wasm_of_ocaml-compiler.6.0.1+ox/opam b/packages/wasm_of_ocaml-compiler/wasm_of_ocaml-compiler.6.0.1+ox/opam index 1fd937da48..025e73f251 100644 --- a/packages/wasm_of_ocaml-compiler/wasm_of_ocaml-compiler.6.0.1+ox/opam +++ b/packages/wasm_of_ocaml-compiler/wasm_of_ocaml-compiler.6.0.1+ox/opam @@ -22,7 +22,7 @@ depends: [ "re" {with-test & = "1.14.0+ox"} "cmdliner" {>= "1.1.0"} "opam-format" {with-test} - "sedlex" {= "3.6+ox"} + "sedlex" {= "3.7+ox"} "menhir" "menhirLib" "menhirSdk" From 9bd0090ec73f4cd970181eb8b03c25e93f69a53b Mon Sep 17 00:00:00 2001 From: Anil Madhavapeddy Date: Thu, 27 Nov 2025 15:58:12 +0000 Subject: [PATCH 2/2] fix eio.1.3+ox on latest oxcaml --- packages/eio/eio.1.3+ox/opam | 2 +- packages/eio_linux/eio_linux.1.3+ox/opam | 2 +- packages/eio_main/eio_main.1.3+ox/opam | 2 +- packages/eio_posix/eio_posix.1.3+ox/opam | 2 +- 4 files changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/eio/eio.1.3+ox/opam b/packages/eio/eio.1.3+ox/opam index bbe904d2cf..ac9872b451 100644 --- a/packages/eio/eio.1.3+ox/opam +++ b/packages/eio/eio.1.3+ox/opam @@ -47,5 +47,5 @@ x-extra-doc-deps: [ ] url { src: - "git+https://github.com/oxcaml/eio.git#e6823784545a453af81493f744ddb2e73b8ea10a" + "git+https://github.com/oxcaml/eio.git#7de26f5331f1e7aac1c086a5ebe849dd940b5c3e" } diff --git a/packages/eio_linux/eio_linux.1.3+ox/opam b/packages/eio_linux/eio_linux.1.3+ox/opam index ecc79a7c07..e17ba37084 100644 --- a/packages/eio_linux/eio_linux.1.3+ox/opam +++ b/packages/eio_linux/eio_linux.1.3+ox/opam @@ -38,5 +38,5 @@ x-extra-doc-deps: [ ] url { src: - "git+https://github.com/oxcaml/eio.git#e6823784545a453af81493f744ddb2e73b8ea10a" + "git+https://github.com/oxcaml/eio.git#7de26f5331f1e7aac1c086a5ebe849dd940b5c3e" } diff --git a/packages/eio_main/eio_main.1.3+ox/opam b/packages/eio_main/eio_main.1.3+ox/opam index d8c03615e0..683139e870 100644 --- a/packages/eio_main/eio_main.1.3+ox/opam +++ b/packages/eio_main/eio_main.1.3+ox/opam @@ -39,5 +39,5 @@ x-extra-doc-deps: [ ] url { src: - "git+https://github.com/oxcaml/eio.git#e6823784545a453af81493f744ddb2e73b8ea10a" + "git+https://github.com/oxcaml/eio.git#7de26f5331f1e7aac1c086a5ebe849dd940b5c3e" } diff --git a/packages/eio_posix/eio_posix.1.3+ox/opam b/packages/eio_posix/eio_posix.1.3+ox/opam index 3327b6c419..383157587b 100644 --- a/packages/eio_posix/eio_posix.1.3+ox/opam +++ b/packages/eio_posix/eio_posix.1.3+ox/opam @@ -35,5 +35,5 @@ x-extra-doc-deps: [ ] url { src: - "git+https://github.com/oxcaml/eio.git#e6823784545a453af81493f744ddb2e73b8ea10a" + "git+https://github.com/oxcaml/eio.git#7de26f5331f1e7aac1c086a5ebe849dd940b5c3e" }