diff --git a/package.json b/package.json index ca4f36bba85f..26c4121da504 100644 --- a/package.json +++ b/package.json @@ -77,7 +77,6 @@ "magic-string": "^0.19.0", "minimatch": "^3.0.3", "node-modules-path": "^1.0.0", - "node-sass": "^4.3.0", "nopt": "^4.0.1", "opn": "4.0.2", "portfinder": "~1.0.12", @@ -151,5 +150,8 @@ "tree-kill": "^1.0.0", "ts-node": "^2.0.0", "tslint": "^4.0.2" + }, + "optionalDependencies": { + "node-sass": "^4.3.0" } } diff --git a/packages/@angular/cli/package.json b/packages/@angular/cli/package.json index 5be43c2c98fa..3697ed2901b4 100644 --- a/packages/@angular/cli/package.json +++ b/packages/@angular/cli/package.json @@ -61,7 +61,6 @@ "lodash": "^4.11.1", "minimatch": "^3.0.3", "node-modules-path": "^1.0.0", - "node-sass": "^4.3.0", "nopt": "^4.0.1", "opn": "4.0.2", "portfinder": "~1.0.12", @@ -90,6 +89,9 @@ "webpack-merge": "^2.4.0", "zone.js": "^0.7.2" }, + "optionalDependencies": { + "node-sass": "^4.3.0" + }, "ember-addon": { "paths": [ "./" diff --git a/scripts/publish/validate_dependencies.js b/scripts/publish/validate_dependencies.js index a8c1aa25cf44..ae69faca139b 100644 --- a/scripts/publish/validate_dependencies.js +++ b/scripts/publish/validate_dependencies.js @@ -121,6 +121,7 @@ for (const packageName of Object.keys(packages)) { const packageJson = JSON.parse(fs.readFileSync(packages[packageName].packageJson, 'utf8')); const allDeps = [] .concat(Object.keys(packageJson['dependencies'] || {})) + .concat(Object.keys(packageJson['optionalDependencies'] || {})) .concat(Object.keys(packageJson['devDependencies'] || {})) .concat(Object.keys(packageJson['peerDependencies'] || {})); @@ -142,6 +143,7 @@ const rootPackageJson = JSON.parse(fs.readFileSync(rootPackagePath, 'utf8')); // devDependencies are ignored const allRootDeps = [] .concat(Object.keys(rootPackageJson['dependencies'] || {})) + .concat(Object.keys(rootPackageJson['optionalDependencies'] || {})) .concat(Object.keys(rootPackageJson['peerDependencies'] || {})); const internalPackages = Object.keys(packages);