I worked it out. I would not call it a bug, I would rather call it a very bad compiler error message.
Basically what happens is the following. You have this directory structure: /src +-- Component | +-- Ports.elm | +-- ... +-- ModuleA.elm +-- ModuleB.elm ModuleA.elm says "import Ports" ModuleB.elm says "import Component.Ports" Component/Ports.elm can declare "module Ports" or "module Component.Ports", either one is correct but the compiler will complain that the file's name and the source code does not match. A good message, in my opinion, would accept whatever is declared in P orts.elm (if it is valid), and would point to eiher ModuleA or ModuleB stating that one of them is trying to import a module which does not exist. On Friday, July 29, 2016 at 11:11:05 PM UTC+2, Duane Johnson wrote: > > Hi Gabor, did you ever get this worked out? I'm curious if it's an elm bug. > > On Fri, Jul 22, 2016 at 9:40 AM, Gábor Varga <[email protected] > <javascript:>> wrote: > >> Hello guys, >> >> I have a pretty standard elm project: all my source files are in src and >> under src there are several sub directories for each feature. >> One of those is called Login and it has a Model/Update/View.elm files in >> it as well as 2 port modules: InputPorts and OutputPorts. Now I cannot >> name those port modules in a way the compiler would not complain: >> >> $ elm-make src/main.elm --output build/elm.js --yes --warn >> The module name is messed up for .\./src\Login\OutputPorts.elm >> >> According to the file's name it should be Login.OutputPorts >> According to the source code it should be OutputPorts >> >> Which is it? >> >> *## after renaming it in the "source code" * >> $ elm-make src/main.elm --output build/elm.js --yes --warn >> The module name is messed up for .\./src/Login\OutputPorts.elm >> >> According to the file's name it should be OutputPorts >> According to the source code it should be Login.OutputPorts >> >> Which is it? >> >> >> Any ideas what I am missing? >> >> >> Thanks, >> >> Gabor >> >> -- >> You received this message because you are subscribed to the Google Groups >> "Elm Discuss" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected] <javascript:>. >> For more options, visit https://groups.google.com/d/optout. >> > > -- You received this message because you are subscribed to the Google Groups "Elm Discuss" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. For more options, visit https://groups.google.com/d/optout.
