From 9d631626d2537abb94ec31e20c39a242daa5030e Mon Sep 17 00:00:00 2001 From: Douglas Duteil Date: Sat, 27 May 2017 19:03:26 +0200 Subject: [PATCH] fix(@angular/cli): resolve in all available node_modules When @angular/cli dependencies (like @ngtool/webpack for example) are installed in its node_modules (as node_modules/@angular/cli/node_modules for example) webpack isn't seeing them. --- .../@angular/cli/models/webpack-configs/common.ts | 4 ++-- tests/e2e/tests/misc/loaders-resolution.ts | 12 ++++++++++++ 2 files changed, 14 insertions(+), 2 deletions(-) create mode 100644 tests/e2e/tests/misc/loaders-resolution.ts diff --git a/packages/@angular/cli/models/webpack-configs/common.ts b/packages/@angular/cli/models/webpack-configs/common.ts index 1b1d7c0d881d..7983a8dd4fef 100644 --- a/packages/@angular/cli/models/webpack-configs/common.ts +++ b/packages/@angular/cli/models/webpack-configs/common.ts @@ -70,9 +70,9 @@ export function getCommonConfig(wco: WebpackConfigOptions) { modules: ['node_modules', nodeModules], }, resolveLoader: { - modules: [nodeModules] + modules: [nodeModules, 'node_modules'] }, - context: projectRoot, + context: __dirname, entry: entryPoints, output: { path: path.resolve(projectRoot, buildOptions.outputPath), diff --git a/tests/e2e/tests/misc/loaders-resolution.ts b/tests/e2e/tests/misc/loaders-resolution.ts new file mode 100644 index 000000000000..25137f637d1a --- /dev/null +++ b/tests/e2e/tests/misc/loaders-resolution.ts @@ -0,0 +1,12 @@ +import { createDir, moveFile } from '../../utils/fs'; +import { ng } from '../../utils/process'; + +export default async function () { + await createDir('node_modules/@angular/cli/node_modules'); + await moveFile( + 'node_modules/@ngtools', + 'node_modules/@angular/cli/node_modules/@ngtools' + ); + + await ng('build'); +}