NixOS / nixpkgs

Nix Packages collection & NixOS
MIT License
17.82k stars 13.92k forks source link

ocamlPackages_4_12.dune is broken #114421

Closed tg-x closed 3 years ago

tg-x commented 3 years ago

Describe the bug

ocamlPackages_4_12.dune (dune-1.11.4 with ocaml-4.12.0) is broken due to this bug. This has been fixed in dune2 but not dune1.

Should either update all packages to use dune2, and/or try patching dune1 with the above fix.

To Reproduce Steps to reproduce the behavior:

> nix build 'nixpkgs#ocaml-ng.ocamlPackages_4_12.dune'
warning: ignoring the user-specified setting 'experimental-features', because it is a restricted setting and you are not a trusted user
[1/2/5 built, 21.2 MiB DL] building ocaml-4.12.0 (buildPhase): ./boot/ocamlrun ./ocamlopt -g -nostdlib -I stdlib -I otherlibs/dynlink -strict-sequence -principal -absname -w +a-4-9-40-41-42-44-45-48-66 -warn-error A -bin-annot -safe-string -strict-formats -I utils -I parsing -I typing -I bytecomp -I file_formats -I la[1/2/5 built, 21.2 MiB DL] building ocaml-4.12.0 (buildPhase): ./boot/ocamlrun ./ocamlopt -g -nostdlib -I stdlib -I otherlibs/dynlink -strict-sequence -principal -absname -w +a-4-9-40-41-42-44-45-48-66 -warn-error A -bin-annot -safe-string -strict-formats -I utils -I parsing -I typing -I bytecomp -I file_formats -I labuilder for '/nix/store/w0kqyczdkghfvi51cyfn5gqfinr8d4if-dune-1.11.4.drv' failed with exit code 2; last 10 log lines:
  29 |   }
  Error: Some record fields are undefined: forced_major_collections
  -> required by src/catapult/.catapult.objs/native/catapult.cmx
  -> required by src/.dune.objs/native/dune__Action.cmx
  -> required by bin/.main.objs/native/main.cmx
  -> required by bin/main.a
  -> required by bin/main/main_dune.exe
  -> required by install bin/dune
  -> required by dune.install
  make: *** [Makefile:12: release] Error 1
error: --- Error 
build of '/nix/store/w0kqyczdkghfvi51cyfn5gqfinr8d4if-dune-1.11.4.drv' failed

Notify maintainers

@vbgl @Zimmi48

Maintainer information:

# a list of nixpkgs attributes affected by the problem
attribute:
# a list of nixos modules affected by the problem
module:
Zimmi48 commented 3 years ago

It's probably time to try making Dune 2 the default in nixpkgs. I would mark Dune 1 and any package that strictly depend on it as incompatible with OCaml 4.12.

vbgl commented 3 years ago

PR #114478 will make this fail at evaluation time.