laravel-mix / laravel-mix

The power of webpack, distilled for the rest of us.
MIT License
5.27k stars 808 forks source link

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

Closed jakedowns closed 7 years ago

jakedowns commented 7 years ago

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();
jakedowns commented 7 years ago

Update

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 commented 7 years ago

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

jakedowns commented 7 years ago

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 commented 7 years ago

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 commented 7 years ago

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 commented 7 years ago

@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 commented 7 years ago

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