Can a bad package that I'm not using in opam-repository break my build?

I’m doing a release build of my application which involves compiling everything from scratch and it’s failing because:

[ERROR] undefined filter variable in dependencies of catala.0.7.0: catalaz3mode

However, I’m not even using catala. Is opam just doing a sanity check on its repositories?

I’m also seeing this error message in my debug output.

We should probably remove the dev variables from the released package. In the meantime, don’t use opam’s --strict flag (or OPAMSTRICT env variable)

I’ve proposed a workaround for now at catala.0.7.0: remvove references to dev variables by AltGr · Pull Request #21996 · ocaml/opam-repository · GitHub

Note that, by default, opam is set not to bother the user with any error related to repository packages (which likely don’t concern them) — but that behaviour is disabled by using --strict.

I agree though that this should definitely not have been a --strict error, a lint error would have made much more sense.

TL;DR: Answer to the title → No, unless you are using --strict

Thanks. :slight_smile: The issue that was blocking my build was related to ppx_sexp and the fact that it wanted to downgrade my system to OCaml 4.02.3 :man_facepalming: But it only said “ocaml” in the version conflict output. Then I discovered this error in the debug, but, not blocking.