@ngtools/webpack 1.10.0-beta.3 → 1.10.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ngtools/webpack",
3
- "version": "1.10.0-beta.3",
3
+ "version": "1.10.2",
4
4
  "description": "Webpack plugin that AoT compiles your Angular components and modules.",
5
5
  "main": "./src/index.js",
6
6
  "typings": "src/index.d.ts",
@@ -53,6 +53,7 @@ export declare class AngularCompilerPlugin implements Tapable {
53
53
  private _errors;
54
54
  private _forkTypeChecker;
55
55
  private _typeCheckerProcess;
56
+ private _forkedTypeCheckerInitialized;
56
57
  private readonly _ngCompilerSupportsNewApi;
57
58
  constructor(options: AngularCompilerPluginOptions);
58
59
  readonly options: AngularCompilerPluginOptions;
@@ -73,6 +74,7 @@ export declare class AngularCompilerPlugin implements Tapable {
73
74
  private _listLazyRoutesFromProgram();
74
75
  private _processLazyRoutes(discoveredLazyRoutes);
75
76
  private _createForkedTypeChecker();
77
+ private _killForkedTypeChecker();
76
78
  private _updateForkedTypeChecker(rootNames, changedCompilationFiles);
77
79
  apply(compiler: any): void;
78
80
  private _make(compilation, cb);
@@ -39,6 +39,7 @@ class AngularCompilerPlugin {
39
39
  this._errors = [];
40
40
  // TypeChecker process.
41
41
  this._forkTypeChecker = true;
42
+ this._forkedTypeCheckerInitialized = false;
42
43
  ngtools_api_1.CompilerCliIsSupported();
43
44
  this._options = Object.assign({}, options);
44
45
  this._setupOptions(this._options);
@@ -95,6 +96,7 @@ class AngularCompilerPlugin {
95
96
  this._basePath = config.options.basePath;
96
97
  // Overwrite outDir so we can find generated files next to their .ts origin in compilerHost.
97
98
  this._compilerOptions.outDir = '';
99
+ this._compilerOptions.suppressOutputPathCheck = true;
98
100
  // Default plugin sourceMap to compiler options setting.
99
101
  if (!options.hasOwnProperty('sourceMap')) {
100
102
  options.sourceMap = this._compilerOptions.sourceMap || false;
@@ -217,7 +219,7 @@ class AngularCompilerPlugin {
217
219
  this._rootNames = config.rootNames.concat(...this._singleFileIncludes);
218
220
  // Update the forked type checker with all changed compilation files.
219
221
  // This includes templates, that also need to be reloaded on the type checker.
220
- if (this._forkTypeChecker && !this._firstRun) {
222
+ if (this._forkTypeChecker && this._typeCheckerProcess && !this._firstRun) {
221
223
  this._updateForkedTypeChecker(this._rootNames, this._getChangedCompilationFiles());
222
224
  }
223
225
  // Use an identity function as all our paths are absolute already.
@@ -320,18 +322,19 @@ class AngularCompilerPlugin {
320
322
  Object.keys(discoveredLazyRoutes)
321
323
  .forEach(lazyRouteKey => {
322
324
  const [lazyRouteModule, moduleName] = lazyRouteKey.split('#');
323
- if (!lazyRouteModule || !moduleName) {
325
+ if (!lazyRouteModule) {
324
326
  return;
325
327
  }
326
- const lazyRouteTSFile = discoveredLazyRoutes[lazyRouteKey];
328
+ const lazyRouteTSFile = discoveredLazyRoutes[lazyRouteKey].replace(/\\/g, '/');
327
329
  let modulePath, moduleKey;
328
330
  if (this._JitMode) {
329
331
  modulePath = lazyRouteTSFile;
330
- moduleKey = lazyRouteKey;
332
+ moduleKey = `${lazyRouteModule}${moduleName ? '#' + moduleName : ''}`;
331
333
  }
332
334
  else {
333
335
  modulePath = lazyRouteTSFile.replace(/(\.d)?\.ts$/, `.ngfactory.js`);
334
- moduleKey = `${lazyRouteModule}.ngfactory#${moduleName}NgFactory`;
336
+ const factoryModuleName = moduleName ? `#${moduleName}NgFactory` : '';
337
+ moduleKey = `${lazyRouteModule}.ngfactory${factoryModuleName}`;
335
338
  }
336
339
  if (moduleKey in this._lazyRoutes) {
337
340
  if (this._lazyRoutes[moduleKey] !== modulePath) {
@@ -364,35 +367,30 @@ class AngularCompilerPlugin {
364
367
  const forkArgs = [type_checker_1.AUTO_START_ARG];
365
368
  const forkOptions = { execArgv };
366
369
  this._typeCheckerProcess = child_process_1.fork(path.resolve(__dirname, typeCheckerFile), forkArgs, forkOptions);
367
- this._typeCheckerProcess.send(new type_checker_1.InitMessage(this._compilerOptions, this._basePath, this._JitMode, this._rootNames));
368
- // Cleanup.
369
- const killTypeCheckerProcess = () => {
370
- if (this._typeCheckerProcess && this._typeCheckerProcess.pid) {
371
- treeKill(this._typeCheckerProcess.pid, 'SIGTERM');
372
- this._typeCheckerProcess = undefined;
370
+ // Handle child process exit.
371
+ this._typeCheckerProcess.once('exit', (_, signal) => {
372
+ this._typeCheckerProcess = undefined;
373
+ // If process exited not because of SIGTERM (see _killForkedTypeChecker), than something
374
+ // went wrong and it should fallback to type checking on the main thread.
375
+ if (signal !== 'SIGTERM') {
373
376
  this._forkTypeChecker = false;
377
+ const msg = 'AngularCompilerPlugin: Forked Type Checker exited unexpectedly. ' +
378
+ 'Falling back to type checking on main thread.';
379
+ this._warnings.push(msg);
374
380
  }
375
- };
376
- // Handle child process exit.
377
- const handleChildProcessExit = () => {
378
- killTypeCheckerProcess();
379
- const msg = 'AngularCompilerPlugin: Forked Type Checker exited unexpectedly. ' +
380
- 'Falling back to typechecking on main thread.';
381
- this._warnings.push(msg);
382
- };
383
- this._typeCheckerProcess.once('exit', handleChildProcessExit);
384
- this._typeCheckerProcess.once('SIGINT', handleChildProcessExit);
385
- this._typeCheckerProcess.once('uncaughtException', handleChildProcessExit);
386
- // Handle parent process exit.
387
- const handleParentProcessExit = () => {
388
- killTypeCheckerProcess();
389
- process.exit();
390
- };
391
- process.once('exit', handleParentProcessExit);
392
- process.once('SIGINT', handleParentProcessExit);
393
- process.once('uncaughtException', handleParentProcessExit);
381
+ });
382
+ }
383
+ _killForkedTypeChecker() {
384
+ if (this._typeCheckerProcess && this._typeCheckerProcess.pid) {
385
+ treeKill(this._typeCheckerProcess.pid, 'SIGTERM');
386
+ this._typeCheckerProcess = undefined;
387
+ }
394
388
  }
395
389
  _updateForkedTypeChecker(rootNames, changedCompilationFiles) {
390
+ if (!this._forkedTypeCheckerInitialized) {
391
+ this._typeCheckerProcess.send(new type_checker_1.InitMessage(this._compilerOptions, this._basePath, this._JitMode, this._rootNames));
392
+ this._forkedTypeCheckerInitialized = true;
393
+ }
396
394
  this._typeCheckerProcess.send(new type_checker_1.UpdateMessage(rootNames, changedCompilationFiles));
397
395
  }
398
396
  // Registration hook for webpack plugin.
@@ -456,6 +454,14 @@ class AngularCompilerPlugin {
456
454
  .catch(err => callback(err));
457
455
  });
458
456
  });
457
+ // Create and destroy forked type checker on watch mode.
458
+ compiler.plugin('watch-run', (_compiler, callback) => {
459
+ if (this._forkTypeChecker && !this._typeCheckerProcess) {
460
+ this._createForkedTypeChecker();
461
+ }
462
+ callback();
463
+ });
464
+ compiler.plugin('watch-close', () => this._killForkedTypeChecker());
459
465
  // Remake the plugin on each compilation.
460
466
  compiler.plugin('make', (compilation, cb) => this._make(compilation, cb));
461
467
  compiler.plugin('invalid', () => this._firstRun = false);
@@ -500,10 +506,6 @@ class AngularCompilerPlugin {
500
506
  compilation._ngToolsWebpackPluginInstance = this;
501
507
  // Update the resource loader with the new webpack compilation.
502
508
  this._resourceLoader.update(compilation);
503
- // Create a new process for the type checker on the second build if there isn't one yet.
504
- if (this._forkTypeChecker && !this._firstRun && !this._typeCheckerProcess) {
505
- this._createForkedTypeChecker();
506
- }
507
509
  this._donePromise = Promise.resolve()
508
510
  .then(() => this._update())
509
511
  .then(() => {
@@ -511,7 +513,7 @@ class AngularCompilerPlugin {
511
513
  benchmark_1.timeEnd('AngularCompilerPlugin._make');
512
514
  cb();
513
515
  }, (err) => {
514
- compilation.errors.push(err.stack);
516
+ compilation.errors.push(err);
515
517
  this.pushCompilationErrors(compilation);
516
518
  benchmark_1.timeEnd('AngularCompilerPlugin._make');
517
519
  cb();
@@ -603,7 +605,7 @@ class AngularCompilerPlugin {
603
605
  .filter((diag) => diag.category === ts.DiagnosticCategory.Warning);
604
606
  if (errors.length > 0) {
605
607
  const message = ngtools_api_1.formatDiagnostics(errors);
606
- this._errors.push(message);
608
+ this._errors.push(new Error(message));
607
609
  }
608
610
  if (warnings.length > 0) {
609
611
  const message = ngtools_api_1.formatDiagnostics(warnings);
@@ -1 +1 @@
1
- {"version":3,"file":"angular_compiler_plugin.js","sourceRoot":"/users/hansl/sources/hansl/angular-cli/","sources":["src/angular_compiler_plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"angular_compiler_plugin.js","sourceRoot":"/users/hansl/sources/hansl/angular-cli/","sources":["src/angular_compiler_plugin.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ const path = require("path");
5
5
  const ts = require("typescript");
6
6
  const ModulesInRootPlugin = require('enhanced-resolve/lib/ModulesInRootPlugin');
7
7
  function resolveWithPaths(request, callback, compilerOptions, host, cache) {
8
- if (!request) {
8
+ if (!request || !request.request || !compilerOptions.paths) {
9
9
  callback(null, request);
10
10
  return;
11
11
  }
@@ -14,17 +14,94 @@ function resolveWithPaths(request, callback, compilerOptions, host, cache) {
14
14
  callback(null, request);
15
15
  return;
16
16
  }
17
- const moduleResolver = ts.resolveModuleName(request.request, request.contextInfo.issuer, compilerOptions, host, cache);
18
- let moduleFilePath = moduleResolver.resolvedModule
17
+ const originalRequest = request.request.trim();
18
+ // Relative requests are not mapped
19
+ if (originalRequest.startsWith('.') || originalRequest.startsWith('/')) {
20
+ callback(null, request);
21
+ return;
22
+ }
23
+ // check if any path mapping rules are relevant
24
+ const pathMapOptions = [];
25
+ for (const pattern in compilerOptions.paths) {
26
+ // can only contain zero or one
27
+ const starIndex = pattern.indexOf('*');
28
+ if (starIndex === -1) {
29
+ if (pattern === originalRequest) {
30
+ pathMapOptions.push({
31
+ partial: '',
32
+ potentials: compilerOptions.paths[pattern]
33
+ });
34
+ }
35
+ }
36
+ else if (starIndex === 0 && pattern.length === 1) {
37
+ pathMapOptions.push({
38
+ partial: originalRequest,
39
+ potentials: compilerOptions.paths[pattern],
40
+ });
41
+ }
42
+ else if (starIndex === pattern.length - 1) {
43
+ if (originalRequest.startsWith(pattern.slice(0, -1))) {
44
+ pathMapOptions.push({
45
+ partial: originalRequest.slice(pattern.length - 1),
46
+ potentials: compilerOptions.paths[pattern]
47
+ });
48
+ }
49
+ }
50
+ else {
51
+ const [prefix, suffix] = pattern.split('*');
52
+ if (originalRequest.startsWith(prefix) && originalRequest.endsWith(suffix)) {
53
+ pathMapOptions.push({
54
+ partial: originalRequest.slice(prefix.length).slice(0, -suffix.length),
55
+ potentials: compilerOptions.paths[pattern]
56
+ });
57
+ }
58
+ }
59
+ }
60
+ if (pathMapOptions.length === 0) {
61
+ callback(null, request);
62
+ return;
63
+ }
64
+ if (pathMapOptions.length === 1 && pathMapOptions[0].potentials.length === 1) {
65
+ const onlyPotential = pathMapOptions[0].potentials[0];
66
+ let replacement;
67
+ const starIndex = onlyPotential.indexOf('*');
68
+ if (starIndex === -1) {
69
+ replacement = onlyPotential;
70
+ }
71
+ else if (starIndex === onlyPotential.length - 1) {
72
+ replacement = onlyPotential.slice(0, -1) + pathMapOptions[0].partial;
73
+ }
74
+ else {
75
+ const [prefix, suffix] = onlyPotential.split('*');
76
+ replacement = prefix + pathMapOptions[0].partial + suffix;
77
+ }
78
+ request.request = path.resolve(compilerOptions.baseUrl, replacement);
79
+ callback(null, request);
80
+ return;
81
+ }
82
+ const moduleResolver = ts.resolveModuleName(originalRequest, request.contextInfo.issuer, compilerOptions, host, cache);
83
+ const moduleFilePath = moduleResolver.resolvedModule
19
84
  && moduleResolver.resolvedModule.resolvedFileName;
20
- // If TypeScript gives us a .d.ts it's probably a node module and we need to let webpack
21
- // do the resolution.
22
- if (moduleFilePath) {
23
- moduleFilePath = moduleFilePath.replace(/\.d\.ts$/, '.js');
24
- if (host.fileExists(moduleFilePath)) {
25
- request.request = moduleFilePath;
85
+ // If there is no result, let webpack try to resolve
86
+ if (!moduleFilePath) {
87
+ callback(null, request);
88
+ return;
89
+ }
90
+ // If TypeScript gives us a `.d.ts`, it is probably a node module
91
+ if (moduleFilePath.endsWith('.d.ts')) {
92
+ // If in a package, let webpack resolve the package
93
+ const packageRootPath = path.join(path.dirname(moduleFilePath), 'package.json');
94
+ if (!host.fileExists(packageRootPath)) {
95
+ // Otherwise, if there is a file with a .js extension use that
96
+ const jsFilePath = moduleFilePath.slice(0, -5) + '.js';
97
+ if (host.fileExists(jsFilePath)) {
98
+ request.request = jsFilePath;
99
+ }
26
100
  }
101
+ callback(null, request);
102
+ return;
27
103
  }
104
+ request.request = moduleFilePath;
28
105
  callback(null, request);
29
106
  }
30
107
  exports.resolveWithPaths = resolveWithPaths;
@@ -1 +1 @@
1
- {"version":3,"file":"paths-plugin.js","sourceRoot":"/users/hansl/sources/hansl/angular-cli/","sources":["src/paths-plugin.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"paths-plugin.js","sourceRoot":"/users/hansl/sources/hansl/angular-cli/","sources":["src/paths-plugin.ts"],"names":[],"mappings":"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"}
@@ -15,7 +15,7 @@ function elideImports(sourceFile, removedNodes, getTypeChecker) {
15
15
  }
16
16
  const typeChecker = getTypeChecker();
17
17
  // Collect all imports and used identifiers
18
- const exportSpecifiers = new Set();
18
+ const specialCaseNames = new Set();
19
19
  const usedSymbols = new Set();
20
20
  const imports = new Array();
21
21
  ts.forEachChild(sourceFile, function visit(node) {
@@ -34,16 +34,20 @@ function elideImports(sourceFile, removedNodes, getTypeChecker) {
34
34
  else if (ts.isExportSpecifier(node)) {
35
35
  // Export specifiers return the non-local symbol from the above
36
36
  // so check the name string instead
37
- exportSpecifiers.add((node.propertyName || node.name).text);
37
+ specialCaseNames.add((node.propertyName || node.name).text);
38
38
  return;
39
39
  }
40
+ else if (ts.isShorthandPropertyAssignment(node)) {
41
+ // Shorthand property assignments return the object property's symbol not the import's
42
+ specialCaseNames.add(node.name.text);
43
+ }
40
44
  ts.forEachChild(node, visit);
41
45
  });
42
46
  if (imports.length === 0) {
43
47
  return [];
44
48
  }
45
49
  const isUnused = (node) => {
46
- if (exportSpecifiers.has(node.text)) {
50
+ if (specialCaseNames.has(node.text)) {
47
51
  return false;
48
52
  }
49
53
  const symbol = typeChecker.getSymbolAtLocation(node);
@@ -1 +1 @@
1
- {"version":3,"file":"elide_imports.js","sourceRoot":"/users/hansl/sources/hansl/angular-cli/","sources":["src/transformers/elide_imports.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"elide_imports.js","sourceRoot":"/users/hansl/sources/hansl/angular-cli/","sources":["src/transformers/elide_imports.ts"],"names":[],"mappings":"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"}
@@ -78,9 +78,10 @@ exports.makeTransform = makeTransform;
78
78
  * This is a version of `ts.visitEachChild` that works that calls our version
79
79
  * of `updateSourceFileNode`, so that typescript doesn't lose type information
80
80
  * for property decorators.
81
- * See https://github.com/Microsoft/TypeScript/issues/17384 and
82
- * https://github.com/Microsoft/TypeScript/issues/17551, fixed by
83
- * https://github.com/Microsoft/TypeScript/pull/18051 and released on TS 2.5.0.
81
+ * See https://github.com/Microsoft/TypeScript/issues/17384 (fixed by
82
+ * https://github.com/Microsoft/TypeScript/pull/20314 and released in TS 2.7.0) and
83
+ * https://github.com/Microsoft/TypeScript/issues/17551 (fixed by
84
+ * https://github.com/Microsoft/TypeScript/pull/18051 and released on TS 2.5.0).
84
85
  *
85
86
  * @param sf
86
87
  * @param statements
@@ -1 +1 @@
1
- {"version":3,"file":"make_transform.js","sourceRoot":"/users/hansl/sources/hansl/angular-cli/","sources":["src/transformers/make_transform.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"make_transform.js","sourceRoot":"/users/hansl/sources/hansl/angular-cli/","sources":["src/transformers/make_transform.ts"],"names":[],"mappings":"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"}