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

Windows Git Bash: mix.sass() Failed to compile: dependency not found #974

Closed
jakedowns opened this issue Jul 7, 2017 · 7 comments · May be fixed by sokis/laravel-mix#16 or sokis/laravel-mix#41
Closed

Comments

@jakedowns
Copy link

  • Laravel Mix Version: 1.1.0
  • Node Version: 8.1.1
  • NPM Version 5.1.0
  • OS: Windows 10 64-bit
  • Shell: Git Bash for Windows
  • webpack@3.1.0
  • extract-text-webpack-plugin@3.0.0-rc.1
  • sass-loader@6.0.6

Description:

I'm seeing the following error when calling mix.sass() from Git Bash Shell on Windows after upgrading from Laravel Mix 0.12.1 -> 1.1.0

Webpack CMD
node node_modules/cross-env/dist/bin/cross-env.js NODE_ENV=development webpack --config=node_modules/laravel-mix/setup/webpack.config.js --progress --hide-modules

Error Output

95% emitting ERROR  Failed to compile with 1 errors13:13:06

This dependency was not found:

* E:\Code\project\resources\assets\sass\home.scss in multi ./node_modules/laravel-mix/src/builder/mock-entry.js ./resources/assets/sass/home.scss

To install it, you can run: npm install --save E:\Code\project\resources\assets\sass\home.scss      

webpack.mix.js

mix.sass('resources/assets/sass/home.scss', 'dist/home/index.css')
    .options({ processCssUrls: false })
    .version();
  • my pwd in the shell is something more unix-like: /e/Code/project/
  • it appears Mix/Webpack is trying to require my asset via an absolute Windows-style path like: E:\Code\project\
  • tried adding a path.resolve but that didn't change the error
    • mix.sass(path.resolve('resources/assets/sass/home.scss'), 'dist/home/index.css')
  • this happens only for mix.sass calls, mix.js calls resolve fine (maybe a sass-loader issue?)
  • Error is dependency was not found or dependencies were not found depending on the number of times mix.sass() is called (included for posterity)
@jakedowns
Copy link
Author

jakedowns commented Jul 7, 2017

Update

  • looks like it's also happening on my Mac and my Vagrant (wheezy) Env

  • OS: OS X 10.12.5
  • OS: Debian 7.9 (wheezy) 2015-12-01
Full npm ls --depth=0 Click to Expand
├── autoprefixer@6.7.7
├── babel@6.23.0
├── babel-core@6.24.1
├── babel-loader@7.1.1
├── babel-plugin-external-helpers@6.22.0
├── babel-plugin-syntax-async-functions@6.13.0
├── babel-plugin-syntax-decorators@6.13.0
├── babel-plugin-syntax-object-rest-spread@6.13.0
├── babel-plugin-transform-async-generator-functions@6.24.1
├── babel-plugin-transform-async-to-generator@6.24.1
├── babel-plugin-transform-class-properties@6.24.1
├── babel-plugin-transform-decorators-legacy@1.3.4
├── babel-plugin-transform-es2015-classes@6.24.1
├── babel-plugin-transform-es2015-shorthand-properties@6.24.1
├── babel-plugin-transform-es2015-template-literals@6.22.0
├── babel-plugin-transform-object-rest-spread@6.23.0
├── babel-plugin-transform-react-jsx@6.24.1
├── babel-plugin-transform-regenerator@6.24.1
├── babel-plugin-transform-runtime@6.23.0
├── babel-polyfill@6.23.0
├── babel-preset-es2015@6.24.1
├── babel-preset-react@6.24.1
├── babel-preset-stage-0@6.24.1
├── babel-preset-stage-2@6.24.1
├── babel-runtime@5.8.38
├── babelify@7.3.0
├── bootstrap-sass@3.3.7
├── bowser@1.7.0
├── browserify@13.3.0
├── buble@0.15.2
├── buble-loader@0.4.1
├── classnames@2.2.5
├── clean-css@4.1.3
├── cross-env@5.0.1
├── css-loader@0.28.4
├── del@2.2.2
├── each@0.6.1 extraneous
├── ellipsizer@1.0.1
├── exports-loader@0.6.4
├── extract-text-webpack-plugin@3.0.0-rc.1 invalid (git://github.com/webpack-contrib/extract-text-webpack-plugin.git#29e1b4cae66b3b618713db726e3d94b25f260a56)
├── file-loader@0.11.2
├── flexibility@2.0.1
├── fs@0.0.1-security
├── fs-extra@3.0.1
├── google-closure-compiler@20170218.0.0
├── google-closure-compiler-js@20170218.0.0
├── gsap@1.19.1
├── handlebars@4.0.10
├── html-entities@1.2.1
├── i@0.3.5
├── imagesloaded@4.1.2
├── imports-loader@0.7.1
├── json-loader@0.5.4
├── laravel-mix@1.1.0
├── lazysizes@4.0.0-rc3
├── lodash@4.17.4
├── minimatch@3.0.4
├── object-fit-images@2.5.9
├── postcss-flexibility@1.1.1
├── promise@7.1.1
├── raf@3.3.2
├── raw-loader@0.5.1
├── react@0.14.9
├── react-dom@0.14.9
├── reactify@1.1.1
├── resolve-url-loader@2.0.2
├── sass-loader@6.0.6
├── script-loader@0.7.0
├── selectn@1.1.2
├── shell@0.3.2
├── shim-loader@0.1.0
├── style-loader@0.16.1
├── underscore@1.8.3
├── uuid@3.0.1
├── vinyl-source-stream@1.1.0
├── vue@2.3.3
├── vue-builder@1.7.2
├── vue-hot-reload-api@1.3.3
├── vue-loader@10.3.0
├── vue-server-renderer@2.3.4
├── vueify@8.7.0
├── vueify-insert-css@1.0.0
├── webpack@3.1.0
├── webpack-bundle-analyzer@2.8.2
├── webpack-dev-server@2.5.1
├── webpack-stream@3.2.0 invalid (github:jeroennoten/webpack-stream#d78a3568e259f9cdbc64c60290639af6ef6d3baf)
└── yargs@6.6.0

@JeffreyWay
Copy link
Collaborator

Can you break this down to a small reproducible setup that I can try out?

@jakedowns
Copy link
Author

Welp, issue cleared up while hunting down conflicting package / trying to create a reproducible setup.

I think it may have been related to an old, unused postcss-flexibility dep?
not exactly sure, because re-installing that doesn't break anything...

Anyway, I deleted that and a few other unused packages, then nuked node_modules and reinstalled.
Here's the diff in case anyone stumbles into this in the future: https://cl.ly/1B2m1V1J120N

Sorry to bother you-- thanks for the continued great tools & quick support as always. you're the best!

@mediabeastnz
Copy link

mediabeastnz commented Jul 12, 2017

I'm still seeing this.

Laravel Mix Version: 1.2.0
Node Version: 8.1.3
NPM Version 5.120
OS: macOS 10.12.5

This dependency was not found:

* /Users/mediabeastnz/Sites/site.com/resources/assets/sass/app.scss in multi ./node_modules/laravel-mix/src/builder/mock-entry.js ./resources/assets/sass/app.scss

To install it, you can run: npm install --save /Users/mediabeastnz/Sites/site.com/resources/assets/sass/app.scss
 Asset       Size  Chunks             Chunk Names
mix.js  626 bytes       0  [emitted]  mix
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR! @ production: `cross-env NODE_ENV=production node_modules/webpack/bin/webpack.js --progress --hide-modules --config=node_modules/laravel-mix/setup/webpack.config.js`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the @ production script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

npm ERR! A complete log of this run can be found in:
npm ERR!     /Users/mediabeastnz/.npm/_logs/2017-07-12T09_56_11_861Z-debug.log
npm ERR! code ELIFECYCLE
npm ERR! errno 2
npm ERR! @ prod: `npm run production`
npm ERR! Exit status 2
npm ERR!
npm ERR! Failed at the @ prod script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

@sethcarlton
Copy link

I am seeing the same issue. Tried the usual wipe of node_modules and a fresh npm install (as well as several other things) but I can't figure it out. From what I can tell so far, mix.copy() and mix.scripts() are working but mix.sass() and mix.js() are throwing the same error as @mediabeastnz

Node Version: 6.11.0
NPM Version: 5.2.0

@sethcarlton
Copy link

@mediabeastnz if you are still experiencing issues I finally got this to work. It seems like the package-lock.json file was giving me issues:

The steps I took to finally fix it were:
rm -r node_modules/
rm package-lock.json
npm cache clean -f
npm install

@jakedowns
Copy link
Author

^ Ah yes, rm'ing package-lock and forcing npm cache clean is something I had to do as well.

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