madsflensted / elm-brunch

Brunch plugin to compile Elm code
MIT License
74 stars 31 forks source link

[TypeError: Cannot read property 'split' of undefined] #15

Closed puruzio closed 8 years ago

puruzio commented 8 years ago

My ELM code (https://github.com/puruzio/seat_saver) works fine in Elm Reactor, and compiles well with elm-make, but when I compile it through elm-brunch, I get the following error. This doesn't give me much clue as to where to fix the error.

My-MacBook-Pro:seat_saver_old puruzio$ brunch build Elm compile: Main.elm, in web/elm, to ../static/vendor/main.js [BABEL] Note: The code generator has deoptimised the styling of "web/elm/app.js" as it exceeds the max of "100KB". [BABEL] Note: The code generator has deoptimised the styling of "web/elm/elm.js" as it exceeds the max of "100KB". 05 Mar 16:16:51 - info: compiling 05 Mar 16:16:54 - error: [TypeError: Cannot read property 'split' of undefined]

My project is based on the example found here http://www.cultivatehq.com/posts/phoenix-elm-10/ to which I am attempting to add multiple modules in separate files.

madsflensted commented 8 years ago

Hi,

it would be helpfull if you can provide:

puruzio commented 8 years ago

Thanks.

Let me know if I can provide anything else. Thanks.

madsflensted commented 8 years ago

Thanks Can you also provide version of node.js and version of elm-brunch? On Mar 6, 2016 23:47, "Jason O." notifications@github.com wrote:

Thanks.

  • OS: Mac OS X El Capitan Ver 10.11.3

    Brunch-config.js `exports.config = { // See http://brunch.io/#documentation for docs. files: { javascripts: { joinTo: "js/app.js" // joinTo: { // "js/app.js": /(web\/static\/js)/, // "js/vendor.js": /(web\/static\/vendor)|(deps)/ // } // To use a separate vendor.js bundle, specify two files path // https://github.com/brunch/brunch/blob/stable/docs/config.md#files // joinTo: { // "js/app.js": /^(web\/static\/js)/, // "js/vendor.js": /^(web\/static\/vendor)|(deps)/ // } // // To change the order of concatenation of files, explicitly mention here // https://github.com/brunch/brunch/tree/master/docs#concatenation // order: { // before: [ // "web/static/vendor/js/jquery-2.1.1.js", // "web/static/vendor/js/bootstrap.min.js" // ] // } }, stylesheets: { joinTo: "css/app.css" }, templates: { joinTo: "js/app.js" } },

    conventions: { // This option sets where we should place non-css and non-js assets in. // By default, we set this to "/web/static/assets". Files in this directory // will be copied to paths.public, which is "priv/static" by default. assets: /^(web\/static\/assets)/ },

    // Phoenix paths configuration paths: { // Dependencies and current project directories to watch watched: [ "deps/phoenix/web/static", "deps/phoenix_html/web/static", "web/static", "test/static", "web/elm" ],

    // Where to compile files to public: "priv/static" },

    // Configure your plugins plugins: { babel: { // Do not use ES6 compiler in vendor code ignore: [/web\/static\/vendor/] }, elmBrunch: { elmFolder: 'web/elm', mainModules: ['Main.elm'], outputFolder: '../static/vendor' } },

    modules: { autoRequire: { "js/app.js": ["web/static/js/app"] } },

    npm: { enabled: true } };

    `

    elm-package.json { "version": "1.0.0", "summary": "helpful summary of your project, less than 80 characters", "repository": "https://github.com/user/project.git", "license": "BSD3", "source-directories": [ "." ], "exposed-modules": [], "dependencies": { "elm-lang/core": "3.0.0 <= v < 4.0.0", "evancz/elm-effects": "2.0.1 <= v < 3.0.0", "evancz/elm-html": "4.0.2 <= v < 5.0.0", "evancz/elm-http": "3.0.0 <= v < 4.0.0", "evancz/start-app": "2.0.2 <= v < 3.0.0" }, "elm-version": "0.16.0 <= v < 0.17.0"

    }

    file structure seat_saver (project name) +--- web +-- elm +--- elm-stuff +elm-package.json +Main.elm +SeatSaver_Pair.elm +TodoModule.elm

Let me know if I can provide anything else. Thanks.

— Reply to this email directly or view it on GitHub https://github.com/madsflensted/elm-brunch/issues/15#issuecomment-193010365 .

puruzio commented 8 years ago

node v5.3.0 elm-brunch: 0.4.4

madsflensted commented 8 years ago

Could you also provide brunch version?

I don't have an idea of the problem right now. You could try to run brunch with debug, brunch --debug and see if that gives you any clues.

You might also try downgrading your brunch version to 2.1.3, as there has been some significant changes in later versions, and elm-brunch has not caught up to all of them.

puruzio commented 8 years ago

Thanks. Just tried brunch version 2.1.3, but having the same issue. Debug message (excerpt below) doesn't give any additional detail on the error. Since this issue isn't elm-brunch specific, I'm closing the issue. Thanks for looking into this.

brunch:file Generated source map for 'web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/src/wrapper.js' +0ms brunch:list Compiled web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/src/wrapper.js +11ms brunch:modules Wrapping web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/src/Native/VirtualDom @ commonjs +16ms brunch:file Generated source map for 'web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/src/Native/VirtualDom.js' +0ms brunch:list Compiled web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/src/Native/VirtualDom.js +23ms brunch:write Writing 2/2 files +82ms brunch:generate Concatenating [node_modules/browser-resolve/empty.js, node_modules/dom-walk/index.js, node_modules/global/document.js, node_modules/is-object/index.js, node_modules/min-document/document.js, node_modules/min-document/dom-comment.js, node_modules/min-document/dom-element.js, node_modules/min-document/dom-fragment.js, node_modules/min-document/dom-text.js, node_modules/min-document/event.js, node_modules/min-document/event/add-event-listener.js, node_modules/min-document/event/dispatch-event.js, node_modules/min-document/event/remove-event-listener.js, node_modules/min-document/index.js, node_modules/min-document/serialize.js, node_modules/phoenix_html/priv/static/phoenix_html.js, node_modules/process/browser.js, node_modules/virtual-dom/vdom/apply-properties.js, node_modules/virtual-dom/vdom/create-element.js, node_modules/virtual-dom/vdom/dom-index.js, node_modules/virtual-dom/vdom/patch-op.js, node_modules/virtual-dom/vdom/patch.js, node_modules/virtual-dom/vdom/update-widget.js, node_modules/virtual-dom/vnode/handle-thunk.js, node_modules/virtual-dom/vnode/is-thunk.js, node_modules/virtual-dom/vnode/is-vhook.js, node_modules/virtual-dom/vnode/is-vnode.js, node_modules/virtual-dom/vnode/is-vtext.js, node_modules/virtual-dom/vnode/is-widget.js, node_modules/virtual-dom/vnode/version.js, node_modules/virtual-dom/vnode/vnode.js, node_modules/virtual-dom/vnode/vpatch.js, node_modules/virtual-dom/vnode/vtext.js, node_modules/virtual-dom/vtree/diff-props.js, node_modules/virtual-dom/vtree/diff.js, node_modules/x-is-array/index.js, web/static/vendor/main.js, deps/phoenix/web/static/js/phoenix.js, deps/phoenix_html/web/static/js/phoenix_html.js, web/elm/Main.elm, web/elm/SeatSaver2.elm, web/elm/SeatSaver_Pair.elm, web/elm/TodoModule.elm, web/elm/app.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Array.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Basics.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Bitwise.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Char.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Color.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Date.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Debug.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Dict.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Graphics/Collage.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Graphics/Element.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Graphics/Input.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Graphics/Input/Field.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Json/Decode.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Json/Encode.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Keyboard.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/List.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Maybe.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Mouse.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Array.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Basics.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Bitwise.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Char.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Color.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Date.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Debug.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Graphics/Collage.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Graphics/Element.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Graphics/Input.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Json.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Keyboard.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/List.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Mouse.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Port.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Regex.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Runtime.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Signal.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/String.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Task.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Text.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Time.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Touch.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Transform2D.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Utils.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Native/Window.js, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Random.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Regex.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Result.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Set.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Signal.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/String.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Task.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Text.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Time.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Touch.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Trampoline.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Transform2D.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/src/Window.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Array.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Basics.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Bitwise.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Char.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/CodeGen.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Dict.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Equality.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Json.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/List.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Regex.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Result.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Set.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/String.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/Test/Trampoline.elm, web/elm/elm-stuff/packages/elm-lang/core/3.0.0/tests/elm-io-ports.js, web/elm/elm-stuff/packages/evancz/elm-effects/2.0.1/src/Effects.elm, web/elm/elm-stuff/packages/evancz/elm-effects/2.0.1/src/Native/Effects.js, web/elm/elm-stuff/packages/evancz/elm-html/4.0.2/examples/TextReverser.elm, web/elm/elm-stuff/packages/evancz/elm-html/4.0.2/examples/Yogi.elm, web/elm/elm-stuff/packages/evancz/elm-html/4.0.2/src/Html.elm, web/elm/elm-stuff/packages/evancz/elm-html/4.0.2/src/Html/Attributes.elm, web/elm/elm-stuff/packages/evancz/elm-html/4.0.2/src/Html/Events.elm, web/elm/elm-stuff/packages/evancz/elm-html/4.0.2/src/Html/Lazy.elm, web/elm/elm-stuff/packages/evancz/elm-http/3.0.0/src/Blob.elm, web/elm/elm-stuff/packages/evancz/elm-http/3.0.0/src/Http.elm, web/elm/elm-stuff/packages/evancz/elm-http/3.0.0/src/Native/Http.js, web/elm/elm-stuff/packages/evancz/start-app/2.0.2/src/StartApp.elm, web/elm/elm-stuff/packages/evancz/start-app/2.0.2/src/StartApp/Simple.elm, web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/src/Native/VirtualDom.js, web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/src/VirtualDom.elm, web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/src/wrapper.js, web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/tests/Native/TestHelpers.js, web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/tests/TestCases/Lazy.elm, web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/tests/TestHelpers.elm, web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/tests/TestMain.elm, web/elm/elm-stuff/packages/evancz/virtual-dom/2.1.0/tests/elm-io-ports.js, web/elm/elm.js, web/static/js/app.js, web/static/js/socket.js] => priv/static/js/app.js +73ms 07 Mar 16:27:14 - error: [TypeError: Cannot read property 'split' of undefined]