Skip to content

Commit 955904c

Browse files
committedJun 12, 2020
fix(@angular-devkit/build-angular): update terser-webpack-plugin to 3.0.3
Fixes security issue serialize-javascript prior to 3.1.0 allows remote attackers Closes #17912
1 parent 0083b48 commit 955904c

File tree

3 files changed

+33
-57
lines changed

3 files changed

+33
-57
lines changed
 

‎packages/angular_devkit/build_angular/package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -60,7 +60,7 @@
6060
"stylus-loader": "3.0.2",
6161
"tree-kill": "1.2.2",
6262
"terser": "4.6.10",
63-
"terser-webpack-plugin": "2.3.5",
63+
"terser-webpack-plugin": "3.0.3",
6464
"webpack": "4.42.0",
6565
"webpack-dev-middleware": "3.7.2",
6666
"webpack-dev-server": "3.11.0",

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

+3-4
Original file line numberDiff line numberDiff line change
@@ -434,14 +434,14 @@ export function getCommonConfig(wco: WebpackConfigOptions): Configuration {
434434
mangle: allowMangle && buildOptions.platform !== 'server' && !differentialLoadingMode,
435435
};
436436

437+
const globalScriptsNames = globalScriptsByBundleName.map(s => s.bundleName);
437438
extraMinimizers.push(
438439
new TerserPlugin({
439440
sourceMap: scriptsSourceMap,
440441
parallel: maxWorkers,
441442
cache: !cachingDisabled && findCachePath('terser-webpack'),
442443
extractComments: false,
443-
chunkFilter: (chunk: compilation.Chunk) =>
444-
!globalScriptsByBundleName.some(s => s.bundleName === chunk.name),
444+
exclude: globalScriptsNames,
445445
terserOptions,
446446
}),
447447
// Script bundles are fully optimized here in one step since they are never downleveled.
@@ -451,8 +451,7 @@ export function getCommonConfig(wco: WebpackConfigOptions): Configuration {
451451
parallel: maxWorkers,
452452
cache: !cachingDisabled && findCachePath('terser-webpack'),
453453
extractComments: false,
454-
chunkFilter: (chunk: compilation.Chunk) =>
455-
globalScriptsByBundleName.some(s => s.bundleName === chunk.name),
454+
include: globalScriptsNames,
456455
terserOptions: {
457456
...terserOptions,
458457
compress: allowMinify && {

‎yarn.lock

+29-52
Original file line numberDiff line numberDiff line change
@@ -2792,30 +2792,6 @@ cacache@^12.0.0, cacache@^12.0.2:
27922792
unique-filename "^1.1.1"
27932793
y18n "^4.0.0"
27942794

2795-
cacache@^13.0.1:
2796-
version "13.0.1"
2797-
resolved "https://registry.yarnpkg.com/cacache/-/cacache-13.0.1.tgz#a8000c21697089082f85287a1aec6e382024a71c"
2798-
integrity sha512-5ZvAxd05HDDU+y9BVvcqYu2LLXmPnQ0hW62h32g4xBTgL/MppR4/04NHfj/ycM2y6lmTnbw6HVi+1eN0Psba6w==
2799-
dependencies:
2800-
chownr "^1.1.2"
2801-
figgy-pudding "^3.5.1"
2802-
fs-minipass "^2.0.0"
2803-
glob "^7.1.4"
2804-
graceful-fs "^4.2.2"
2805-
infer-owner "^1.0.4"
2806-
lru-cache "^5.1.1"
2807-
minipass "^3.0.0"
2808-
minipass-collect "^1.0.2"
2809-
minipass-flush "^1.0.5"
2810-
minipass-pipeline "^1.2.2"
2811-
mkdirp "^0.5.1"
2812-
move-concurrently "^1.0.1"
2813-
p-map "^3.0.0"
2814-
promise-inflight "^1.0.1"
2815-
rimraf "^2.7.1"
2816-
ssri "^7.0.0"
2817-
unique-filename "^1.1.1"
2818-
28192795
cacache@^15.0.4:
28202796
version "15.0.4"
28212797
resolved "https://registry.yarnpkg.com/cacache/-/cacache-15.0.4.tgz#b2c23cf4ac4f5ead004fb15a0efb0a20340741f1"
@@ -4986,7 +4962,7 @@ finalhandler@1.1.2, finalhandler@~1.1.2:
49864962
statuses "~1.5.0"
49874963
unpipe "~1.0.0"
49884964

4989-
find-cache-dir@3.3.1, find-cache-dir@^3.2.0, find-cache-dir@^3.3.1:
4965+
find-cache-dir@3.3.1, find-cache-dir@^3.3.1:
49904966
version "3.3.1"
49914967
resolved "https://registry.yarnpkg.com/find-cache-dir/-/find-cache-dir-3.3.1.tgz#89b33fad4a4670daa94f855f7fbe31d6d84fe880"
49924968
integrity sha512-t2GDMt3oGC/v+BMwzmllWDuJF/xcDtE5j/fCGbqDD7OLuJkj0cfh1YSA5VKPvwMeLFLNDBkwOKZ2X85jGLVftQ==
@@ -5483,7 +5459,7 @@ got@^9.6.0:
54835459
to-readable-stream "^1.0.0"
54845460
url-parse-lax "^3.0.0"
54855461

5486-
graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0, graceful-fs@^4.2.2:
5462+
graceful-fs@^4.1.11, graceful-fs@^4.1.15, graceful-fs@^4.1.2, graceful-fs@^4.1.6, graceful-fs@^4.2.0:
54875463
version "4.2.3"
54885464
resolved "https://registry.yarnpkg.com/graceful-fs/-/graceful-fs-4.2.3.tgz#4a12ff1b60376ef09862c2093edd908328be8423"
54895465
integrity sha512-a30VEBm4PEdx1dRB7MFK7BejejvCvBronbLjht+sHuGYj8PHs7M/5Z+rt5lw551vZ7yfTCj4Vuyy3mSJytDWRQ==
@@ -6653,10 +6629,10 @@ jest-worker@25.1.0:
66536629
merge-stream "^2.0.0"
66546630
supports-color "^7.0.0"
66556631

6656-
jest-worker@^25.1.0:
6657-
version "25.2.6"
6658-
resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-25.2.6.tgz#d1292625326794ce187c38f51109faced3846c58"
6659-
integrity sha512-FJn9XDUSxcOR4cwDzRfL1z56rUofNTFs539FGASpd50RHdb6EVkhxQqktodW2mI49l+W3H+tFJDotCHUQF6dmA==
6632+
jest-worker@^26.0.0:
6633+
version "26.0.0"
6634+
resolved "https://registry.yarnpkg.com/jest-worker/-/jest-worker-26.0.0.tgz#4920c7714f0a96c6412464718d0c58a3df3fb066"
6635+
integrity sha512-pPaYa2+JnwmiZjK9x7p9BoZht+47ecFCDFA/CJxspHzeDvQcfVBLWzCiWyo+EGrSiQMWZtCFo9iSvMZnAAo8vw==
66606636
dependencies:
66616637
merge-stream "^2.0.0"
66626638
supports-color "^7.0.0"
@@ -8516,7 +8492,7 @@ p-limit@^1.1.0:
85168492
dependencies:
85178493
p-try "^1.0.0"
85188494

8519-
p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.2.2, p-limit@^2.3.0:
8495+
p-limit@^2.0.0, p-limit@^2.2.0, p-limit@^2.3.0:
85208496
version "2.3.0"
85218497
resolved "https://registry.yarnpkg.com/p-limit/-/p-limit-2.3.0.tgz#3dd33c647a214fdfffd835933eb086da0dc21db1"
85228498
integrity sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==
@@ -10300,7 +10276,7 @@ schema-utils@^2.5.0, schema-utils@^2.6.1, schema-utils@^2.6.4, schema-utils@^2.6
1030010276
ajv "^6.12.0"
1030110277
ajv-keywords "^3.4.1"
1030210278

10303-
schema-utils@^2.7.0:
10279+
schema-utils@^2.6.6, schema-utils@^2.7.0:
1030410280
version "2.7.0"
1030510281
resolved "https://registry.yarnpkg.com/schema-utils/-/schema-utils-2.7.0.tgz#17151f76d8eae67fbbf77960c33c676ad9f4efc7"
1030610282
integrity sha512-0ilKFI6QQF5nxDZLFn2dMjvc4hjg/Wkg7rHd3jK6/A4a1Hl9VFdQWvgB1UMGoU94pad1P/8N7fMcEnLnSiju8A==
@@ -10900,14 +10876,6 @@ ssri@^6.0.0, ssri@^6.0.1:
1090010876
dependencies:
1090110877
figgy-pudding "^3.5.1"
1090210878

10903-
ssri@^7.0.0:
10904-
version "7.1.0"
10905-
resolved "https://registry.yarnpkg.com/ssri/-/ssri-7.1.0.tgz#92c241bf6de82365b5c7fb4bd76e975522e1294d"
10906-
integrity sha512-77/WrDZUWocK0mvA5NTRQyveUf+wsrIc6vyrxpS8tVvYBcX215QbafrJR3KtkpskIzoFLqqNuuYQvxaMjXJ/0g==
10907-
dependencies:
10908-
figgy-pudding "^3.5.1"
10909-
minipass "^3.1.1"
10910-
1091110879
ssri@^8.0.0:
1091210880
version "8.0.0"
1091310881
resolved "https://registry.yarnpkg.com/ssri/-/ssri-8.0.0.tgz#79ca74e21f8ceaeddfcb4b90143c458b8d988808"
@@ -11314,19 +11282,19 @@ term-size@^2.1.0:
1131411282
resolved "https://registry.yarnpkg.com/term-size/-/term-size-2.2.0.tgz#1f16adedfe9bdc18800e1776821734086fcc6753"
1131511283
integrity sha512-a6sumDlzyHVJWb8+YofY4TW112G6p2FCPEAFk+59gIYHv3XHRhm9ltVQ9kli4hNWeQBwSpe8cRN25x0ROunMOw==
1131611284

11317-
terser-webpack-plugin@2.3.5:
11318-
version "2.3.5"
11319-
resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-2.3.5.tgz#5ad971acce5c517440ba873ea4f09687de2f4a81"
11320-
integrity sha512-WlWksUoq+E4+JlJ+h+U+QUzXpcsMSSNXkDy9lBVkSqDn1w23Gg29L/ary9GeJVYCGiNJJX7LnVc4bwL1N3/g1w==
11285+
terser-webpack-plugin@3.0.3:
11286+
version "3.0.3"
11287+
resolved "https://registry.yarnpkg.com/terser-webpack-plugin/-/terser-webpack-plugin-3.0.3.tgz#23bda2687b197f878a743373b9411d917adc2e45"
11288+
integrity sha512-bZFnotuIKq5Rqzrs+qIwFzGdKdffV9epG5vDSEbYzvKAhPeR5RbbrQysfPgbIIMhNAQtZD2hGwBfSKUXjXZZZw==
1132111289
dependencies:
11322-
cacache "^13.0.1"
11323-
find-cache-dir "^3.2.0"
11324-
jest-worker "^25.1.0"
11325-
p-limit "^2.2.2"
11326-
schema-utils "^2.6.4"
11327-
serialize-javascript "^2.1.2"
11290+
cacache "^15.0.4"
11291+
find-cache-dir "^3.3.1"
11292+
jest-worker "^26.0.0"
11293+
p-limit "^2.3.0"
11294+
schema-utils "^2.6.6"
11295+
serialize-javascript "^3.1.0"
1132811296
source-map "^0.6.1"
11329-
terser "^4.4.3"
11297+
terser "^4.6.13"
1133011298
webpack-sources "^1.4.3"
1133111299

1133211300
terser-webpack-plugin@^1.4.3:
@@ -11344,7 +11312,7 @@ terser-webpack-plugin@^1.4.3:
1134411312
webpack-sources "^1.4.0"
1134511313
worker-farm "^1.7.0"
1134611314

11347-
terser@4.6.10, terser@^4.1.2, terser@^4.3.8, terser@^4.4.3:
11315+
terser@4.6.10, terser@^4.1.2, terser@^4.3.8:
1134811316
version "4.6.10"
1134911317
resolved "https://registry.yarnpkg.com/terser/-/terser-4.6.10.tgz#90f5bd069ff456ddbc9503b18e52f9c493d3b7c2"
1135011318
integrity sha512-qbF/3UOo11Hggsbsqm2hPa6+L4w7bkr+09FNseEe8xrcVD3APGLFqE+Oz1ZKAxjYnFsj80rLOfgAtJ0LNJjtTA==
@@ -11353,6 +11321,15 @@ terser@4.6.10, terser@^4.1.2, terser@^4.3.8, terser@^4.4.3:
1135311321
source-map "~0.6.1"
1135411322
source-map-support "~0.5.12"
1135511323

11324+
terser@^4.6.13:
11325+
version "4.7.0"
11326+
resolved "https://registry.yarnpkg.com/terser/-/terser-4.7.0.tgz#15852cf1a08e3256a80428e865a2fa893ffba006"
11327+
integrity sha512-Lfb0RiZcjRDXCC3OSHJpEkxJ9Qeqs6mp2v4jf2MHfy8vGERmVDuvjXdd/EnP5Deme5F2yBRBymKmKHCBg2echw==
11328+
dependencies:
11329+
commander "^2.20.0"
11330+
source-map "~0.6.1"
11331+
source-map-support "~0.5.12"
11332+
1135611333
test-exclude@^5.2.2:
1135711334
version "5.2.3"
1135811335
resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0"

0 commit comments

Comments
 (0)
Please sign in to comment.