My aggregated monorepo of OCaml code, automaintained
0
fork

Configure Feed

Select the types of activity you want to include in your feed.

Fix: use base repo only for driver solve (avoids ox overlay conflicts)

Pass opam_repositories through to build_tools_and_run so the driver
can solve against only the first (base) repo, avoiding ox-specific
packages like ocaml-compiler-libs.v0.17.0+ox that are incompatible
with the driver compiler (5.4.1).

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

+14 -1
+1
day11/bin/cmd_batch.ml
··· 322 322 Day11_doc.Generate.build_tools_and_run env benv ~np ~os_dir 323 323 ~packages:git_packages ~opam_env ~mounts:[repo_mount] 324 324 ~driver_compiler ~odoc_repo ~build_one 325 + ~opam_repositories 325 326 ~nodes ~solutions ~blessing_maps 326 327 else begin 327 328 (* Build only — no docs *)
+12 -1
day11/doc/generate.ml
··· 321 321 322 322 let build_tools_and_run env benv ~np ~os_dir ~packages ~opam_env 323 323 ~mounts ~driver_compiler ~odoc_repo ~build_one 324 + ~opam_repositories 324 325 ~nodes ~solutions ~blessing_maps = 325 326 Printf.printf "\nBuilding doc tools...\n%!"; 326 327 let all_pins, all_source_dirs = match odoc_repo with ··· 338 339 let driver_pkg = OpamPackage.of_string "odoc-driver.3.1.0" in 339 340 Printf.printf "Building doc driver (%s)...\n%!" 340 341 (OpamPackage.to_string driver_compiler); 342 + (* Use only the base opam-repository for the driver solve to avoid 343 + overlay-specific packages incompatible with the driver compiler *) 344 + let driver_packages = 345 + let base_repo = List.hd opam_repositories in 346 + let pkgs, _ = 347 + Day11_solver.Git_packages.of_repositories [ (base_repo, None) ] in 348 + Bos.OS.Dir.set_default_tmp 349 + (Fpath.v (Filename.get_temp_dir_name ())); 350 + pkgs 351 + in 341 352 let driver_result = Day11_build.Tools.build_tool env benv ~np 342 - ~packages ~env:opam_env ~doc:false 353 + ~packages:driver_packages ~env:opam_env ~doc:false 343 354 ~mounts ~ocaml_version:driver_compiler driver_pkg in 344 355 match driver_result with 345 356 | Error (`Msg e) ->
+1
day11/doc/generate.mli
··· 56 56 driver_compiler:OpamPackage.t -> 57 57 odoc_repo:string option -> 58 58 build_one:(Day11_layer.Layer_type.build -> bool) -> 59 + opam_repositories:string list -> 59 60 nodes:Day11_layer.Layer_type.build list -> 60 61 solutions:(OpamPackage.t * Day11_graph.Graph.solution) list -> 61 62 blessing_maps:(OpamPackage.t * bool OpamPackage.Map.t) list ->