Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

pkg: Failure on non-atoms in depends fields #10956

Closed
Julow opened this issue Sep 26, 2024 · 2 comments
Closed

pkg: Failure on non-atoms in depends fields #10956

Julow opened this issue Sep 26, 2024 · 2 comments

Comments

@Julow
Copy link
Contributor

Julow commented Sep 26, 2024

Expected Behavior

Dune works differently than Opam for some advanced formula, is here any way to achieve this with the newest Dune ?

Actual Behavior

Odoc's opam file has dependencies like these:

depends: [
  ("ocaml" {< "4.04.1" & with-test} | "sexplib0" {with-test})
  ("ocaml" {< "4.07.0" & with-test} | "bisect_ppx" {with-test & > "2.5.0"})
]

These means that we depend on "sexplib0" {with-test}, but only if the solution also includes ocaml >= 4.04.1. Similarly for bisect_ppx.

File "odoc.opam", line 1, characters 0-0:
Error: Expected formula to be a conjunction of atoms but encountered non-atom
term 'ocaml {< "4.04.1" & with-test} | sexplib0 {with-test}'

Reproduction

Running dune pkg lock in https://github.com/ocaml/odoc shows the bug.

Specifications

  • Dune version 17071ec
@Leonidas-from-XIV
Copy link
Collaborator

Thanks for the report. We're aware of this issue in as ticket #10837 with proposed solution in #10918.

@Julow
Copy link
Contributor Author

Julow commented Sep 26, 2024

Thanks! Sorry I failed to find it.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants