This change should reduce the amount of problems on npm installs.
It makes the `node-sass` dependency optional, and so install will not fail when it cannot be installed.
For projects that do not use sass, there is no side-effect of an failed node-sass install.
For projects that do use node-sass and the install failed, they should see the following self-explanatory error message:
```
ERROR in ./src/app/app.component.scss
Module build failed: Error: Missing binding D:\sandbox\master-project\node_modules\node-sass\vendor\win32-x64-51\binding.node
Node Sass could not find a binding for your current environment: Windows 64-bit with Node.js 7.x
Found bindings for the following environments:
This usually happens because your environment has changed since running `npm install`.
Run `npm rebuild node-sass` to build the binding for your current environment.
at module.exports (D:\sandbox\master-project\node_modules\node-sass\lib\binding.js:15:13)
at Object.<anonymous> (D:\sandbox\master-project\node_modules\node-sass\lib\index.js:14:35)
```
Fix#4429
For travis runs on branches, local master never exists there's no branch
tracking origin/master.
This causes `git fetch origin master` to fetch into `FETCH_HEAD` instead
of master.
This PR will explicitely fetch origin master into local master, and use
that for the log comparison.
Fixing component css in #4667 uncovered errors in CSS url processing.
This PR correctly composes absolute urls when using `--base-href` and/or `--deploy-url`.
It also fixes asset output on `--aot` mode.
Fix#4778Fix#4782Fix#4806
* test: add license test
* only check prod dependencies
* remove findup dep
* also check dev deps
* add map-stream to ignore list
* remove license-checker
* add comment
* use logger
* fix lint errors
Adds the flag 'serviceWorker' to angular-cli.json that enables support for @angular/service-worker.
When this flag is true, production builds will be set up with a service worker. A ngsw-manifest.json file
will be generated (or augmented) in the dist/ root, and the service worker script will be copied there.
A short script will be added to index.html to register the service worker.
@angular/service-worker is a dependency of @angular/cli, but not of generated projects. It is desirable
for users to be able to update the version of @angular/service-worker used in their apps independently
of the CLI version. Thus, the CLI will error if serviceWorker=true but @angular/service-worker is not
installed in the application's node_modules, as it pulls all the service worker scripts from there.
If the flag is false the effect on the CLI is minimal - the webpack plugins associated with the SW are
not even require()'d.
Closes#4544