diff --git a/Dockerfile b/Dockerfile index 7eefb7c5..155fd01e 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,6 +1,6 @@ # syntax=docker/dockerfile:1 FROM ocaml/opam:debian-12-ocaml-4.14 AS build -RUN sudo ln -sf /usr/bin/opam-2.3 /usr/bin/opam && opam init --reinit -ni +RUN sudo ln -sf /usr/bin/opam-2.5 /usr/bin/opam && opam init --reinit -ni RUN sudo rm -f /etc/apt/apt.conf.d/docker-clean; echo 'Binary::apt::APT::Keep-Downloaded-Packages "true";' | sudo tee /etc/apt/apt.conf.d/keep-cache RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ --mount=type=cache,target=/var/lib/apt,sharing=locked \ @@ -14,7 +14,7 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ m4 \ pkg-config \ libcapnp-dev -RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 164308699cf74247b8ad3b002e88bd80a586c79e && opam update +RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard a6b2f19780b2edfc4e5dba2566235c877dbf5acd && opam update COPY --chown=opam --link \ ocurrent/current_docker.opam \ ocurrent/current_github.opam \ diff --git a/Dockerfile.gitlab b/Dockerfile.gitlab index 01e9df5f..af7bdb4a 100644 --- a/Dockerfile.gitlab +++ b/Dockerfile.gitlab @@ -12,7 +12,7 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ libsqlite3-dev \ m4 \ pkg-config -RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 164308699cf74247b8ad3b002e88bd80a586c79e && opam update +RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard a6b2f19780b2edfc4e5dba2566235c877dbf5acd && opam update COPY --chown=opam --link \ ocurrent/current_docker.opam \ ocurrent/current_github.opam \ diff --git a/Dockerfile.web b/Dockerfile.web index 1bd9ea49..7e9e8c74 100644 --- a/Dockerfile.web +++ b/Dockerfile.web @@ -13,7 +13,7 @@ RUN --mount=type=cache,target=/var/cache/apt,sharing=locked \ libssl-dev \ m4 \ pkg-config -RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard 164308699cf74247b8ad3b002e88bd80a586c79e && opam update +RUN cd ~/opam-repository && git fetch -q origin master && git reset --hard a6b2f19780b2edfc4e5dba2566235c877dbf5acd && opam update COPY --chown=opam --link \ ocurrent/current_rpc.opam \ /src/ocurrent/ diff --git a/dune-project b/dune-project index 38ac4a50..bc3175b8 100644 --- a/dune-project +++ b/dune-project @@ -1,4 +1,4 @@ -(lang dune 3.16) +(lang dune 3.20) (name ocaml-ci) (generate_opam_files true) diff --git a/lib/opam_build.ml b/lib/opam_build.ml index 3b5910e3..b2bb5a83 100644 --- a/lib/opam_build.ml +++ b/lib/opam_build.ml @@ -205,6 +205,11 @@ let install_project_deps ~opam_version ~opam_files ~selection = "opam update --depexts && opam install --cli=2.4 --depext-only -y %s \ $DEPS" compatible_root_pkgs + | `V2_5 -> + run ~network ~cache + "opam update --depexts && opam install --cli=2.5 --depext-only -y %s \ + $DEPS" + compatible_root_pkgs in (if Variant.arch variant |> Ocaml_version.arch_is_32bit then [ shell [ "/usr/bin/linux32"; "/bin/sh"; "-c" ] ] diff --git a/lib/opam_version.ml b/lib/opam_version.ml index 8159566b..56852ab2 100644 --- a/lib/opam_version.ml +++ b/lib/opam_version.ml @@ -1,4 +1,4 @@ -type t = [ `V2_0 | `V2_1 | `V2_2 | `V2_3 | `V2_4 ] [@@deriving ord, yojson, eq] +type t = [ `V2_0 | `V2_1 | `V2_2 | `V2_3 | `V2_4 | `V2_5 ] [@@deriving ord, yojson, eq] let to_string = function | `V2_0 -> "2.0" @@ -6,6 +6,7 @@ let to_string = function | `V2_2 -> "2.2" | `V2_3 -> "2.3" | `V2_4 -> "2.4" + | `V2_5 -> "2.5" let to_string_with_patch = function | `V2_0 -> "2.0.10" @@ -13,6 +14,7 @@ let to_string_with_patch = function | `V2_2 -> "2.2.1" | `V2_3 -> "2.3.0" | `V2_4 -> "2.4.1" + | `V2_5 -> "2.5.0" let pp = Fmt.of_to_string to_string let default = `V2_0 @@ -23,4 +25,5 @@ let of_string = function | "2.2" -> Ok `V2_2 | "2.3" -> Ok `V2_3 | "2.4" -> Ok `V2_4 + | "2.5" -> Ok `V2_5 | s -> Error (`Msg (s ^ ": invalid opam version")) diff --git a/lib/opam_version.mli b/lib/opam_version.mli index 7d15e1e3..a159d983 100644 --- a/lib/opam_version.mli +++ b/lib/opam_version.mli @@ -1,6 +1,6 @@ (** Opam versions supported. *) -type t = [ `V2_0 | `V2_1 | `V2_2 | `V2_3 | `V2_4 ] [@@deriving ord, yojson, eq] +type t = [ `V2_0 | `V2_1 | `V2_2 | `V2_3 | `V2_4 | `V2_5 ] [@@deriving ord, yojson, eq] val pp : t Fmt.t val to_string : t -> string diff --git a/ocaml-ci-api.opam b/ocaml-ci-api.opam index 51381f6a..5828ee43 100644 --- a/ocaml-ci-api.opam +++ b/ocaml-ci-api.opam @@ -9,7 +9,7 @@ doc: "https://ocaml.ci.dev/documentation" bug-reports: "https://github.com/ocurrent/ocaml-ci/issues" depends: [ "ocaml" {>= "4.14"} - "dune" {>= "3.16"} + "dune" {>= "3.20"} "current_rpc" "capnp" {>= "3.4.0"} "capnp-rpc-lwt" {>= "1.2"} @@ -32,3 +32,4 @@ build: [ ] ] dev-repo: "git+https://github.com/ocurrent/ocaml-ci.git" +x-maintenance-intent: ["(latest)"] diff --git a/ocaml-ci-client.opam b/ocaml-ci-client.opam index 88cccb39..63f3ec00 100644 --- a/ocaml-ci-client.opam +++ b/ocaml-ci-client.opam @@ -9,7 +9,7 @@ doc: "https://ocaml.ci.dev/documentation" bug-reports: "https://github.com/ocurrent/ocaml-ci/issues" depends: [ "ocaml" {>= "4.14"} - "dune" {>= "3.16"} + "dune" {>= "3.20"} "ocaml-ci-api" "current_rpc" "capnp-rpc-unix" {>= "1.2"} @@ -34,3 +34,4 @@ build: [ ] ] dev-repo: "git+https://github.com/ocurrent/ocaml-ci.git" +x-maintenance-intent: ["(latest)"] diff --git a/ocaml-ci-gitlab.opam b/ocaml-ci-gitlab.opam index ee1ef70c..0d39ccb6 100644 --- a/ocaml-ci-gitlab.opam +++ b/ocaml-ci-gitlab.opam @@ -10,7 +10,7 @@ doc: "https://ocaml.ci.dev/documentation" bug-reports: "https://github.com/ocurrent/ocaml-ci/issues" depends: [ "ocaml" {>= "4.14"} - "dune" {>= "3.16"} + "dune" {>= "3.20"} "ocaml-ci" "ocaml-ci-service" "current" @@ -40,3 +40,4 @@ build: [ ] ] dev-repo: "git+https://github.com/ocurrent/ocaml-ci.git" +x-maintenance-intent: ["(latest)"] diff --git a/ocaml-ci-service.opam b/ocaml-ci-service.opam index 84172ea9..4ab233dc 100644 --- a/ocaml-ci-service.opam +++ b/ocaml-ci-service.opam @@ -9,7 +9,7 @@ doc: "https://ocaml.ci.dev/documentation" bug-reports: "https://github.com/ocurrent/ocaml-ci/issues" depends: [ "ocaml" {>= "4.14"} - "dune" {>= "3.16"} + "dune" {>= "3.20"} "ocaml-ci-api" "current_git" "current_github" @@ -59,3 +59,4 @@ build: [ ] ] dev-repo: "git+https://github.com/ocurrent/ocaml-ci.git" +x-maintenance-intent: ["(latest)"] diff --git a/ocaml-ci-web.opam b/ocaml-ci-web.opam index 91a1f748..69693995 100644 --- a/ocaml-ci-web.opam +++ b/ocaml-ci-web.opam @@ -9,7 +9,7 @@ doc: "https://ocaml.ci.dev/documentation" bug-reports: "https://github.com/ocurrent/ocaml-ci/issues" depends: [ "ocaml" {>= "4.14"} - "dune" {>= "3.16"} + "dune" {>= "3.20"} "ocaml-ci-api" "tailwindcss" "ansi" {>= "0.6.0"} @@ -42,6 +42,7 @@ build: [ ] ] dev-repo: "git+https://github.com/ocurrent/ocaml-ci.git" +x-maintenance-intent: ["(latest)"] pin-depends: [ ["tailwindcss.dev" "https://github.com/tmattio/opam-tailwindcss/archive/e5bb6361a50c7cc5cad802311e609336583ca08f.tar.gz"] ] diff --git a/ocaml-ci.opam b/ocaml-ci.opam index 4eddc4d4..c4e036c0 100644 --- a/ocaml-ci.opam +++ b/ocaml-ci.opam @@ -9,7 +9,7 @@ doc: "https://ocaml.ci.dev/documentation" bug-reports: "https://github.com/ocurrent/ocaml-ci/issues" depends: [ "ocaml" {>= "4.14"} - "dune" {>= "3.16"} + "dune" {>= "3.20"} "ocaml-ci-api" "current" "current_docker" @@ -47,3 +47,4 @@ build: [ ] ] dev-repo: "git+https://github.com/ocurrent/ocaml-ci.git" +x-maintenance-intent: ["(latest)"] diff --git a/ocaml-dockerfile b/ocaml-dockerfile index 318de523..57ed58f0 160000 --- a/ocaml-dockerfile +++ b/ocaml-dockerfile @@ -1 +1 @@ -Subproject commit 318de523b19794703da59baf067cca93f996c57a +Subproject commit 57ed58f00ac0f458ca75db31d87f3bef9b5577f7 diff --git a/ocurrent b/ocurrent index 575e5cf1..d59c22de 160000 --- a/ocurrent +++ b/ocurrent @@ -1 +1 @@ -Subproject commit 575e5cf1a4ade96ea4a5c43c4aa7ae12fc90dde0 +Subproject commit d59c22de7cb48c68fca9451fa27690a2d6dd80cf diff --git a/service/conf.ml b/service/conf.ml index 757de981..7c8964c8 100644 --- a/service/conf.ml +++ b/service/conf.ml @@ -100,7 +100,7 @@ let openbsd_distros = distro = "openbsd-77-amd64"; ocaml_version; arch = `X86_64; - opam_version = `V2_4; + opam_version = `V2_5; lower_bound = false; }) default_compilers @@ -116,7 +116,7 @@ let windows_distros = distro = "windows-server-2022-amd64"; ocaml_version; arch = `X86_64; - opam_version = `V2_4; + opam_version = `V2_5; lower_bound = false; }) default_compilers @@ -132,7 +132,7 @@ let freebsd_distros = distro = "freebsd-14.3"; ocaml_version; arch = `X86_64; - opam_version = `V2_4; + opam_version = `V2_5; lower_bound = false; }) default_compilers @@ -148,7 +148,7 @@ let macos_distros = distro = "macos-homebrew"; ocaml_version; arch = `X86_64; - opam_version = `V2_4; + opam_version = `V2_5; lower_bound = false; }) default_compilers @@ -161,7 +161,7 @@ let macos_distros = distro = "macos-homebrew"; ocaml_version; arch = `Aarch64; - opam_version = `V2_4; + opam_version = `V2_5; lower_bound = false; }) default_compilers @@ -345,9 +345,9 @@ let fetch_platforms ~query_uri ~include_macos ~include_freebsd ~include_windows Platform.get_local ~arch ~label ~builder ~pool ~distro ~ocaml_version ~host_base ~opam_version ~lower_bound base in - let v2_4 = - platforms ~profile:platforms_profile `V2_4 ~include_macos ~include_freebsd + let v2_5 = + platforms ~profile:platforms_profile `V2_5 ~include_macos ~include_freebsd ~include_windows ~include_openbsd |> merge_lower_bound_platforms in - Current.list_seq (List.map v v2_4) |> Current.map List.flatten + Current.list_seq (List.map v v2_5) |> Current.map List.flatten