build: update to terser 4.4.0 (#33835)
Now that terser_minified supports args as of nodejs rules 0.40.0, ng_rollup_bundle can updated to the pass —comments /a^/ to args can turn off all comments and maintain the current ng_rollup_bundle behavior with the latest version fo terser. //packages/core/test/bundling/todo:bundle.min.js size test passes with this fix. Tho not strictly necessary to update terser, this will be a rough edge when someone does try it as it is not obvious why the //packages/core/test/bundling/todo:bundle.min.js size test fails. Updating now should save time in the future by not hitting this issue.\ This change also affect ng_package output as the default comments that are preserved by terser are now Comments with @preserve, @license, @cc_on as well as comments starting with /*! and /**! are now preserved by default.. (https://github.com/terser/terser/blob/master/CHANGELOG.md). Example ng_package golden file also updated as there are not some /*! comments preserved that were in older versions of terser. PR Close #33835
This commit is contained in:
parent
695bb6ca87
commit
7bf3e70553
|
@ -113,7 +113,7 @@
|
||||||
"source-map": "^0.6.1",
|
"source-map": "^0.6.1",
|
||||||
"source-map-support": "0.5.9",
|
"source-map-support": "0.5.9",
|
||||||
"systemjs": "0.18.10",
|
"systemjs": "0.18.10",
|
||||||
"terser": "4.3.3",
|
"terser": "^4.4.0",
|
||||||
"tsickle": "0.37.0",
|
"tsickle": "0.37.0",
|
||||||
"tslib": "^1.10.0",
|
"tslib": "^1.10.0",
|
||||||
"tslint": "5.7.0",
|
"tslint": "5.7.0",
|
||||||
|
|
|
@ -341,6 +341,20 @@ Hello
|
||||||
* License: MIT
|
* License: MIT
|
||||||
*/
|
*/
|
||||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core")):"function"==typeof define&&define.amd?define("example/secondary",["exports","@angular/core"],t):t(((e=e||self).example=e.example||{},e.example.secondary={}),e.ng.core)}(this,(function(e,t){"use strict";
|
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core")):"function"==typeof define&&define.amd?define("example/secondary",["exports","@angular/core"],t):t(((e=e||self).example=e.example||{},e.example.secondary={}),e.ng.core)}(this,(function(e,t){"use strict";
|
||||||
|
/*! *****************************************************************************
|
||||||
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
||||||
|
this file except in compliance with the License. You may obtain a copy of the
|
||||||
|
License at http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
||||||
|
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
||||||
|
MERCHANTABLITY OR NON-INFRINGEMENT.
|
||||||
|
|
||||||
|
See the Apache Version 2.0 License for specific language governing permissions
|
||||||
|
and limitations under the License.
|
||||||
|
***************************************************************************** */
|
||||||
/**
|
/**
|
||||||
* @license
|
* @license
|
||||||
* Copyright Google Inc. All Rights Reserved.
|
* Copyright Google Inc. All Rights Reserved.
|
||||||
|
@ -613,6 +627,20 @@ e.SecondaryModule=o,e.a=1,Object.defineProperty(e,"__esModule",{value:!0})}));
|
||||||
* License: MIT
|
* License: MIT
|
||||||
*/
|
*/
|
||||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core")):"function"==typeof define&&define.amd?define("example",["exports","@angular/core"],t):t((e=e||self).example={},e.ng.core)}(this,(function(e,t){"use strict";
|
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core")):"function"==typeof define&&define.amd?define("example",["exports","@angular/core"],t):t((e=e||self).example={},e.ng.core)}(this,(function(e,t){"use strict";
|
||||||
|
/*! *****************************************************************************
|
||||||
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
||||||
|
this file except in compliance with the License. You may obtain a copy of the
|
||||||
|
License at http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
||||||
|
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
||||||
|
MERCHANTABLITY OR NON-INFRINGEMENT.
|
||||||
|
|
||||||
|
See the Apache Version 2.0 License for specific language governing permissions
|
||||||
|
and limitations under the License.
|
||||||
|
***************************************************************************** */
|
||||||
/**
|
/**
|
||||||
* @license
|
* @license
|
||||||
* Copyright Google Inc. All Rights Reserved.
|
* Copyright Google Inc. All Rights Reserved.
|
||||||
|
|
|
@ -329,6 +329,20 @@ License: MIT
|
||||||
* License: MIT
|
* License: MIT
|
||||||
*/
|
*/
|
||||||
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core")):"function"==typeof define&&define.amd?define("example/portal",["exports","@angular/core"],t):t(((e=e||self).example=e.example||{},e.example.portal={}),e.ng.core)}(this,(function(e,t){"use strict";
|
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports,require("@angular/core")):"function"==typeof define&&define.amd?define("example/portal",["exports","@angular/core"],t):t(((e=e||self).example=e.example||{},e.example.portal={}),e.ng.core)}(this,(function(e,t){"use strict";
|
||||||
|
/*! *****************************************************************************
|
||||||
|
Copyright (c) Microsoft Corporation. All rights reserved.
|
||||||
|
Licensed under the Apache License, Version 2.0 (the "License"); you may not use
|
||||||
|
this file except in compliance with the License. You may obtain a copy of the
|
||||||
|
License at http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
|
||||||
|
THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
||||||
|
KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED
|
||||||
|
WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE,
|
||||||
|
MERCHANTABLITY OR NON-INFRINGEMENT.
|
||||||
|
|
||||||
|
See the Apache Version 2.0 License for specific language governing permissions
|
||||||
|
and limitations under the License.
|
||||||
|
***************************************************************************** */
|
||||||
/**
|
/**
|
||||||
* @license
|
* @license
|
||||||
* Copyright Google Inc. All Rights Reserved.
|
* Copyright Google Inc. All Rights Reserved.
|
||||||
|
|
|
@ -384,6 +384,16 @@ def ng_rollup_bundle(name, **kwargs):
|
||||||
build_optimizer = kwargs.pop("build_optimizer", True)
|
build_optimizer = kwargs.pop("build_optimizer", True)
|
||||||
visibility = kwargs.pop("visibility", None)
|
visibility = kwargs.pop("visibility", None)
|
||||||
|
|
||||||
|
# Common arguments for all terser_minified targets
|
||||||
|
common_terser_args = {
|
||||||
|
# As of terser 4.3.4 license comments are preserved by default. See
|
||||||
|
# https://github.com/terser/terser/blob/master/CHANGELOG.md. We want to
|
||||||
|
# maintain the comments off behavior. We pass the --comments flag with
|
||||||
|
# a regex that always evaluates to false to do this.
|
||||||
|
"args": ["--comments", "/bogus_string_to_suppress_all_comments^/"],
|
||||||
|
"sourcemap": False,
|
||||||
|
}
|
||||||
|
|
||||||
# TODO(gregmagolan): reduce this macro to just use the new @bazel/rollup rollup_bundle
|
# TODO(gregmagolan): reduce this macro to just use the new @bazel/rollup rollup_bundle
|
||||||
# once esm5 inputs are no longer needed. _ng_rollup_bundle is just here for esm5 support
|
# once esm5 inputs are no longer needed. _ng_rollup_bundle is just here for esm5 support
|
||||||
# and once that requirement is removed for Angular 10 then there is nothing that rule is doing
|
# and once that requirement is removed for Angular 10 then there is nothing that rule is doing
|
||||||
|
@ -395,9 +405,9 @@ def ng_rollup_bundle(name, **kwargs):
|
||||||
visibility = visibility,
|
visibility = visibility,
|
||||||
**kwargs
|
**kwargs
|
||||||
)
|
)
|
||||||
terser_minified(name = name + ".min", src = name + "", sourcemap = False, visibility = visibility)
|
terser_minified(name = name + ".min", src = name + "", visibility = visibility, **common_terser_args)
|
||||||
native.filegroup(name = name + ".min.js", srcs = [name + ".min"], visibility = visibility)
|
native.filegroup(name = name + ".min.js", srcs = [name + ".min"], visibility = visibility)
|
||||||
terser_minified(name = name + ".min_debug", src = name + "", sourcemap = False, debug = True, visibility = visibility)
|
terser_minified(name = name + ".min_debug", src = name + "", debug = True, visibility = visibility, **common_terser_args)
|
||||||
native.filegroup(name = name + ".min_debug.js", srcs = [name + ".min_debug"], visibility = visibility)
|
native.filegroup(name = name + ".min_debug.js", srcs = [name + ".min_debug"], visibility = visibility)
|
||||||
npm_package_bin(
|
npm_package_bin(
|
||||||
name = "_%s_brotli" % name,
|
name = "_%s_brotli" % name,
|
||||||
|
@ -418,9 +428,9 @@ def ng_rollup_bundle(name, **kwargs):
|
||||||
visibility = visibility,
|
visibility = visibility,
|
||||||
**kwargs
|
**kwargs
|
||||||
)
|
)
|
||||||
terser_minified(name = name + ".min.es2015", src = name + "", sourcemap = False, visibility = visibility)
|
terser_minified(name = name + ".min.es2015", src = name + "", visibility = visibility, **common_terser_args)
|
||||||
native.filegroup(name = name + ".min.es2015.js", srcs = [name + ".min.es2015"], visibility = visibility)
|
native.filegroup(name = name + ".min.es2015.js", srcs = [name + ".min.es2015"], visibility = visibility)
|
||||||
terser_minified(name = name + ".min_debug.es2015", src = name + "", sourcemap = False, debug = True, visibility = visibility)
|
terser_minified(name = name + ".min_debug.es2015", src = name + "", debug = True, visibility = visibility, **common_terser_args)
|
||||||
native.filegroup(name = name + ".min_debug.es2015.js", srcs = [name + ".min_debug.es2015"], visibility = visibility)
|
native.filegroup(name = name + ".min_debug.es2015.js", srcs = [name + ".min_debug.es2015"], visibility = visibility)
|
||||||
npm_package_bin(
|
npm_package_bin(
|
||||||
name = "_%s_es2015_brotli" % name,
|
name = "_%s_es2015_brotli" % name,
|
||||||
|
|
18
yarn.lock
18
yarn.lock
|
@ -11149,15 +11149,6 @@ term-size@^1.2.0:
|
||||||
dependencies:
|
dependencies:
|
||||||
execa "^0.7.0"
|
execa "^0.7.0"
|
||||||
|
|
||||||
terser@4.3.3:
|
|
||||||
version "4.3.3"
|
|
||||||
resolved "https://registry.yarnpkg.com/terser/-/terser-4.3.3.tgz#f626c6779cadd60a3018e072fedeceabe4769db1"
|
|
||||||
integrity sha512-Nzr7dpRjSzMEUS+z2UYQBtzE0LDm5k0Yy8RgLRPy85QUo1TjU5lIOBwzS5/FVAMaVyHZ3WTTU2BuQcMn8KXnNQ==
|
|
||||||
dependencies:
|
|
||||||
commander "^2.20.0"
|
|
||||||
source-map "~0.6.1"
|
|
||||||
source-map-support "~0.5.12"
|
|
||||||
|
|
||||||
terser@^3.14.1:
|
terser@^3.14.1:
|
||||||
version "3.17.0"
|
version "3.17.0"
|
||||||
resolved "https://registry.yarnpkg.com/terser/-/terser-3.17.0.tgz#f88ffbeda0deb5637f9d24b0da66f4e15ab10cb2"
|
resolved "https://registry.yarnpkg.com/terser/-/terser-3.17.0.tgz#f88ffbeda0deb5637f9d24b0da66f4e15ab10cb2"
|
||||||
|
@ -11167,6 +11158,15 @@ terser@^3.14.1:
|
||||||
source-map "~0.6.1"
|
source-map "~0.6.1"
|
||||||
source-map-support "~0.5.10"
|
source-map-support "~0.5.10"
|
||||||
|
|
||||||
|
terser@^4.4.0:
|
||||||
|
version "4.4.0"
|
||||||
|
resolved "https://registry.yarnpkg.com/terser/-/terser-4.4.0.tgz#22c46b4817cf4c9565434bfe6ad47336af259ac3"
|
||||||
|
integrity sha512-oDG16n2WKm27JO8h4y/w3iqBGAOSCtq7k8dRmrn4Wf9NouL0b2WpMHGChFGZq4nFAQy1FsNJrVQHfurXOSTmOA==
|
||||||
|
dependencies:
|
||||||
|
commander "^2.20.0"
|
||||||
|
source-map "~0.6.1"
|
||||||
|
source-map-support "~0.5.12"
|
||||||
|
|
||||||
test-exclude@^5.2.2:
|
test-exclude@^5.2.2:
|
||||||
version "5.2.3"
|
version "5.2.3"
|
||||||
resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0"
|
resolved "https://registry.yarnpkg.com/test-exclude/-/test-exclude-5.2.3.tgz#c3d3e1e311eb7ee405e092dac10aefd09091eac0"
|
||||||
|
|
Loading…
Reference in New Issue