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

Internal error #5545

Closed
Swrup opened this issue Apr 5, 2022 · 2 comments
Closed

Internal error #5545

Swrup opened this issue Apr 5, 2022 · 2 comments

Comments

@Swrup
Copy link

Swrup commented Apr 5, 2022

Expected Behavior

show me an error, do not crash

Actual Behavior

dune build @all crash

Reproduction

here is the repository that make it crash:
https://git.zapashcanon.fr/swrup/leaflet-dune-bug

Specifications

  • Version of dune 3.0.3
  • Version of ocaml 4.13.1
@zapashcanon
Copy link
Contributor

zapashcanon commented Apr 5, 2022

It's the same for me (I asked @Swrup to open the issue). Here's the full error message :

$ dune build @all
Internal error, please report upstream including the contents of _build/log.
Description:
  ("[gen_rules] did not specify rules for the context",
  { context_or_install = "vendor" })
Raised at Stdune__code_error.raise in file "otherlibs/stdune/code_error.ml",
  line 11, characters 30-62
Called from Fiber.Scheduler.exec in file "src/fiber/fiber.ml", line 854,
  characters 10-13
-> required by ("gen-rules", "vendor/Leaflet.contextmenu")
-> required by ("load-dir", In_build_dir "vendor/Leaflet.contextmenu")
-> required by
   ("build-file",
   In_build_dir "vendor/Leaflet.contextmenu/leaflet.contextmenu.js")
-> required by ("Rule.make", ())
-> required by
   ("execute-rule",
   { id = 22
   ; info =
       From_dune_file
         { pos_fname = "src/contextmenu/dune"
         ; start = { pos_lnum = 1; pos_bol = 0; pos_cnum = 0 }
         ; stop = { pos_lnum = 7; pos_bol = 143; pos_cnum = 208 }
         }
   })
-> required by ("<unnamed>", ())
-> required by
   ("build-file",
   In_build_dir
     "install/default/lib/leaflet/contextmenu/leaflet.contextmenu.js")
-> required by ("Rule.make", ())
-> required by ("execute-rule", { id = 48; info = Internal })
-> required by ("<unnamed>", ())
-> required by ("build-file", In_build_dir "default/leaflet.install")
-> required by
   ("build-pred",
   { dir = In_build_dir "default"
   ; predicate = { id = exclude }
   ; only_generated_files = true
   })
-> required by ("<unnamed>", ())
-> required by ("build-alias", { dir = "default"; name = "all" })
-> required by ("toplevel", ())

I must not crash.  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.

It seems related to #5212 (same error) and thus #4034 but IIUC it's not exactly the same as here, the dependency is not outside of the workspace but inside it.

@zapashcanon
Copy link
Contributor

OK actually I got confused, I looked at src/dune instead of src/contextmenu/dune which clearly points out of the workspace. This is thus a duplicate and can be closed @Swrup. Sorry for the noise...

@Swrup Swrup closed this as completed Apr 5, 2022
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