Skip to content

Commit c935211

Browse files
alan-agius4vikerman
authored andcommitted
fix(@angular-devkit/build-angular): several issues with optimization and bundleDependencies in universal
Fixes #15498
1 parent 8527206 commit c935211

File tree

2 files changed

+17
-5
lines changed
  • packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs
  • tests/legacy-cli/e2e/tests/build

2 files changed

+17
-5
lines changed

packages/angular_devkit/build_angular/src/angular-cli-files/models/webpack-configs/common.ts

+1
Original file line numberDiff line numberDiff line change
@@ -352,6 +352,7 @@ export function getCommonConfig(wco: WebpackConfigOptions): Configuration {
352352
buildOptions.platform == 'server'
353353
? {
354354
global_defs: angularGlobalDefinitions,
355+
keep_fnames: true,
355356
}
356357
: {
357358
pure_getters: buildOptions.buildOptimizer,

tests/legacy-cli/e2e/tests/build/platform-server.ts

+16-5
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
import { normalize } from 'path';
22
import { getGlobalVariable } from '../../utils/env';
3-
import { expectFileToMatch, writeFile } from '../../utils/fs';
3+
import { expectFileToMatch, writeFile, appendToFile } from '../../utils/fs';
44
import { exec, ng, silentNpm } from '../../utils/process';
55
import { updateJsonFile } from '../../utils/project';
66
import { readNgVersion } from '../../utils/version';
@@ -21,15 +21,16 @@ export default async function () {
2121
});
2222

2323
await silentNpm('install');
24-
await ng('run', 'test-project:server:production');
25-
await expectFileToMatch('dist/server/main.js', /exports.*AppServerModuleNgFactory/);
24+
await appendToFile(
25+
'src/main.server.ts',
26+
`export { renderModuleFactory } from '@angular/platform-server';`,
27+
);
2628

2729
await writeFile(
2830
'./index.js',
2931
` require('zone.js/dist/zone-node');
3032
const fs = require('fs');
31-
const { AppServerModuleNgFactory } = require('./dist/server/main');
32-
const { renderModuleFactory } = require('@angular/platform-server');
33+
const { AppServerModuleNgFactory, renderModuleFactory } = require('./dist/server/main');
3334
3435
renderModuleFactory(AppServerModuleNgFactory, {
3536
url: '/',
@@ -40,6 +41,16 @@ export default async function () {
4041
`,
4142
);
4243

44+
await ng('run', 'test-project:server:production');
45+
await expectFileToMatch('dist/server/main.js', /exports.*AppServerModuleNgFactory/);
46+
await exec(normalize('node'), 'index.js');
47+
await expectFileToMatch(
48+
'dist/server/index.html',
49+
/<p.*>Here are some links to help you get started:<\/p>/,
50+
);
51+
52+
// works with optimization and bundleDependencies enabled
53+
await ng('run', 'test-project:server:production', '--optimization', '--bundleDependencies', 'all');
4354
await exec(normalize('node'), 'index.js');
4455
await expectFileToMatch(
4556
'dist/server/index.html',

0 commit comments

Comments
 (0)