From c04251a19a010dc4f1ba8770c57da4cf379ad180 Mon Sep 17 00:00:00 2001 From: Stephen Sherratt Date: Wed, 23 Aug 2023 19:19:46 +1000 Subject: [PATCH] More pedantic about dependency versions --- .../dune-monorepo-benchmark-runner.opam | 13 +++++++------ dune-monorepo-benchmark-runner/dune-project | 19 +++++++++++++------ 2 files changed, 20 insertions(+), 12 deletions(-) diff --git a/dune-monorepo-benchmark-runner/dune-monorepo-benchmark-runner.opam b/dune-monorepo-benchmark-runner/dune-monorepo-benchmark-runner.opam index b3e94b7..097a450 100644 --- a/dune-monorepo-benchmark-runner/dune-monorepo-benchmark-runner.opam +++ b/dune-monorepo-benchmark-runner/dune-monorepo-benchmark-runner.opam @@ -8,12 +8,13 @@ homepage: bug-reports: "https://github.com/ocaml-dune/ocaml-monorepo-benchmark/issues" depends: [ "dune" {>= "3.5"} - "ocaml" {>= "4.14"} - "dune-rpc-lwt" {>= "3.8" & < "3.9"} - "fmt" {>= "0.9" & < "0.10"} - "logs" {>= "0.7" & < "0.8"} - "re" {>= "1.10" & < "1.11"} - "yojson" {>= "2.1" & < "2.2"} + "ocaml" {= "4.14.1"} + "dune-rpc-lwt" + "lwt" {= "5.6.1"} + "fmt" {= "0.9.0"} + "logs" {= "0.7.0"} + "re" {= "1.10.4"} + "yojson" {= "2.1.0"} "odoc" {with-doc} ] build: [ diff --git a/dune-monorepo-benchmark-runner/dune-project b/dune-monorepo-benchmark-runner/dune-project index f2841d9..0ef57ad 100644 --- a/dune-monorepo-benchmark-runner/dune-project +++ b/dune-monorepo-benchmark-runner/dune-project @@ -11,9 +11,16 @@ (name dune-monorepo-benchmark-runner) (synopsis "Tool for running dune monorepo benchmarks") (depends - (ocaml (>= "4.14")) - (dune-rpc-lwt (and (>= "3.8") (< "3.9"))) - (fmt (and (>= "0.9") (< "0.10"))) - (logs (and (>= "0.7") (< "0.8"))) - (re (and (>= "1.10") (< "1.11"))) - (yojson (and (>= "2.1") (< "2.2"))))) + ; This is constrained since the monorepo was assembled with this version of ocaml + (ocaml (= "4.14.1")) + ; No version constraint here since it will need to build with the latest + ; version of dune anyway since in practice this will be re-built with dune + ; pinned to the version being benchmarked. + dune-rpc-lwt + ; Other dependencies are constrained to specific values to reduce the risk of + ; this package failing to build due to an API change in one of its dependencies. + (lwt (= "5.6.1")) + (fmt (= "0.9.0")) + (logs (= "0.7.0")) + (re (= "1.10.4")) + (yojson (= "2.1.0"))))