Bumps terser from 4.3.1 to 4.8.1.
Sourced from terser's changelog.
- Security fix for RegExps that should not be evaluated (regexp DDOS)
- Support for numeric separators (
million = 1_000_000) was added.
- Assigning properties to a class is now assumed to be pure.
- Fixed bug where
yield wasn't considered a valid property key in generators.
- A bug was fixed where an arrow function would have the wrong size
arguments object is now considered safe to retrieve properties from (useful for
0) even when
pure_getters is not set.
- Fixed erroneous
const declarations without value (which is invalid) in some corner cases when using
- Fixed issue where ES5 object properties were being turned into ES6 object properties due to more lax unicode rules.
- Fixed parsing of BigInt with lowercase
e in them.
- Fixed subtree comparison code, making it see that
[1,[2, 3]] is different from
[1, 2, ]
- Printing of unicode identifiers has been improved
- Read unused classes' properties and method keys, to figure out if they use other variables.
- Prevent inlining into block scopes when there are name collisions
- Functions are no longer inlined into parameter defaults, because they live in their own special scope.
- When inlining identity functions, take into account the fact they may be used to drop
this in function calls.
- Nullish coalescing operator (
x ?? y), plus basic optimization for it.
- Template literals in binary expressions such as
+ have been further optimized
- Do not use reduce_vars when classes are present
- Check if block scopes actually exist in blocks
- Take into account "executed bits" of classes like static properties or computed keys, when checking if a class evaluation might throw or have side effects.
- Some new performance gains through a
AST_Node.size() method which measures a node's source code length without printing it to a string first.
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
@dependabot rebase will rebase this PR
@dependabot recreate will recreate this PR, overwriting any edits that have been made to it
@dependabot merge will merge this PR after your CI passes on it
@dependabot squash and merge will squash and merge this PR after your CI passes on it
@dependabot cancel merge will cancel a previously requested merge and block automerging
@dependabot reopen will reopen this PR if it is closed
@dependabot close will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
@dependabot ignore this major version will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
@dependabot ignore this minor version will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
@dependabot ignore this dependency will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
@dependabot use these labels will set the current labels as the default for future PRs for this repo and language
@dependabot use these reviewers will set the current reviewers as the default for future PRs for this repo and language
@dependabot use these assignees will set the current assignees as the default for future PRs for this repo and language
@dependabot use this milestone will set the current milestone as the default for future PRs for this repo and language
You can disable automated security fix PRs for this repo from the Security Alerts page.