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

Fatal failure while invoking alias #2085

Closed
vsiles opened this issue Apr 25, 2019 · 0 comments · Fixed by ocaml/opam-repository#14078
Closed

Fatal failure while invoking alias #2085

vsiles opened this issue Apr 25, 2019 · 0 comments · Fixed by ocaml/opam-repository#14078

Comments

@vsiles
Copy link
Contributor

vsiles commented Apr 25, 2019

Version (opam show):

<><> Version-specific details <><><><><><><><><><><><><><><><><><><><><><><><><>
version 1.9.1
repository default
url.src: "https://github.com/ocaml/dune/releases/download/1.9.1/dune-1.9.1.tbz"
url.checksum: "sha256=c9a1e258a14d96fd95fb525e7659c371e8b1d253905e3d39c5b2efa280b4927c"
"sha512=842d0aa7fbe97bc5a0fde974fa9ddd95d8e2f60a7018b60779cf782282e2bc362f4ae347cd7795b857a8e05ebb9d82f1236c0e4d1e7ec10d3b210028bc2058c1"
homepage: "https://github.com/ocaml/dune"
bug-reports: "https://github.com/ocaml/dune/issues"

Problem

I have the following alias to build multiple exe at once:

$ cat dune  
  (alias
    (name exe)
    (deps
      src/hh_server.exe
      src/hh_client.exe
      src/hh_single_type_check.exe
      src/hackfmt.exe
      src/hh_parse.exe
      src/hh_single_compile.exe
      src/hh_single_parse.exe))

Works like a charm with ocaml 4.05.0 and dune 1.4.3. I'm testing an update to ocaml 4.07.1 and dune 1.9.1 (both from a fresh opam switch).

I can still invoke dune to build each exe one by one with success, but if I invoke the alias I get the following error:

$ dune build @exe
Internal error, please report upstream including the contents of _build/log.
Description:
(Option.value_exn)
Backtrace:
Raised at file "src/stdune/exn.ml", line 40, characters 5-10
Called from file "src/stdune/option.ml" (inlined), line 40, characters 12-48
Called from file "src/lib.ml", line 1168, characters 36-57
Called from file "src/lib.ml", line 625, characters 21-30
Called from file "src/lib.ml", line 1165, characters 8-515
Called from file "src/lib.ml", line 1189, characters 12-39
Called from file "src/stdune/result.ml" (inlined), line 26, characters 12-15
Called from file "src/stdune/result.ml" (inlined), line 55, characters 20-29
Called from file "src/inline_tests.ml", line 201, characters 10-112
Called from file "list.ml", line 106, characters 12-15
Called from file "src/lib_rules.ml", line 513, characters 4-152
Called from file "src/stdune/exn.ml", line 29, characters 8-11
Re-raised at file "src/stdune/exn.ml", line 31, characters 30-37
Called from file "src/gen_rules.ml", line 82, characters 10-75
Called from file "src/gen_rules.ml", line 145, characters 51-65
Called from file "list.ml", line 117, characters 24-34
Called from file "src/gen_rules.ml", line 143, characters 12-165
Called from file "src/gen_rules.ml", line 258, characters 23-53
Called from file "src/stdune/exn.ml", line 29, characters 8-11
Re-raised at file "src/stdune/exn.ml", line 31, characters 30-37
Called from file "src/memo/implicit_output.ml", line 110, characters 4-128
Called from file "src/build_system.ml", line 890, characters 4-71
Called from file "src/build_system.ml", line 1006, characters 6-102
Called from file "src/build_system.ml", line 984, characters 6-42
Re-raised at file "src/build_system.ml", line 995, characters 6-17
Called from file "src/build_system.ml" (inlined), line 954, characters 32-63
Called from file "src/build_system.ml", line 964, characters 4-24
Called from file "src/build_interpret.ml", line 49, characters 24-40
Called from file "src/build_interpret.ml", line 33, characters 31-59
Called from file "src/build_interpret.ml", line 33, characters 31-59
Called from file "src/build_system.ml", line 935, characters 6-78
Called from file "src/fiber/fiber.ml", line 176, characters 6-11
Re-raised at file "src/stdune/exn.ml" (inlined), line 65, characters 38-65
Called from file "src/stdune/exn_with_backtrace.ml", line 17, characters 2-40
Called from file "src/fiber/fiber.ml", line 82, characters 8-15

I must not segfault.  Uncertainty is the mind-killer.  Exceptions are
the little-death that brings total obliteration.  I will fully express
my cases.  Execution will pass over me and through me.  And when it
has gone past, I will unwind the stack along its path.  Where the
cases are handled there will be nothing.  Only I will remain.

As requested, the (slightly redacted) log:

$ cat _build/log
# dune build @exe
# OCAMLPARAM: unset
$ /bin/nproc > /tmp/dune71d2b3.output 2> /dev/null
$ /HOME/opam/recent_hack/bin/ocamlc.opt -config > /tmp/dunec86967.output
$ (cd src/utils/messages && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/src/utils/messages/dune.ml)
$ (cd src/utils/logging && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/src/utils/logging/dune.ml)
$ (cd src/fsnotify && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/src/fsnotify/dune.ml)
$ (cd src/utils/debug && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/src/utils/debug/dune.ml)
$ (cd test/ffp_autocomplete && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/test/ffp_autocomplete/dune.ml)
$ (cd src/ai && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/src/ai/dune.ml)
$ (cd src/utils/load_script && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/src/utils/load_script/dune.ml)
$ (cd src/utils/linting && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/src/utils/linting/dune.ml)
$ (cd test/typecheck && /HOME/opam/recent_hack/bin/ocaml -I +compiler-libs /HOME/WORK/hphp/hack/_build/.dune/default/test/typecheck/dune.ml)
rgrinberg added a commit to rgrinberg/jbuilder that referenced this issue Apr 27, 2019
Should fix ocaml#2085

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
rgrinberg added a commit to rgrinberg/jbuilder that referenced this issue Apr 27, 2019
Should fix ocaml#2085

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
rgrinberg added a commit that referenced this issue May 2, 2019
Should fix #2085

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
rgrinberg added a commit to rgrinberg/opam-repository that referenced this issue May 2, 2019
CHANGES:

- Put back library variants in development mode. We discovered a
  serious unexpected issue and we might need to adjust the design of
  this feature before we are ready to commit to a final version. Users
  will need to write `(using library_variants 0.1)` in their
  `dune-project` file if they want to use it before the design is
  finalized. (ocaml/dune#2116, @diml)

- Forbid to attach a variant to a library that implements a virtual
  library outside the current project (ocaml/dune#2104, @rgrinberg)

- Fix a bug where `dune install` would install man pages to incorrect
  paths when compared to `opam-installer`. For example dune now
  installs `(foo.1 as man1/foo.1)` correctly and previously that was
  installed to `man1/man1/foo.1`. (ocaml/dune#2105, @aalekseyev)

- Do not fail when a findlib directory doesn't exist (ocaml/dune#2101, fix ocaml/dune#2099, @diml)

- [coq] Rename `(coqlib ...)` to `(coq.theory ...)`, support for
  `coqlib` will be dropped in the 1.0 version of the Coq language
  (ocaml/dune#2055, @ejgallego)

- Fix crash when calculating library dependency closure (ocaml/dune#2090, fixes ocaml/dune#2085,
  @rgrinberg)
mlasson pushed a commit to mlasson/dune that referenced this issue Jul 19, 2019
Should fix ocaml#2085

Signed-off-by: Rudi Grinberg <rudi.grinberg@gmail.com>
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

Successfully merging a pull request may close this issue.

1 participant