Releases: javascript-obfuscator/javascript-obfuscator
Releases · javascript-obfuscator/javascript-obfuscator
Release list
5.6.0 version
5.5.1 version
- Fixed leading whitespace of the source code being stripped without being reflected in the source map, shifting all
sourcesContentand original position mappings. Fixes #1437
5.5.0 version
- Pro API: reworked large file uploads — fixed
413 Content Too Largefor ~4.4–4.6MB request bodies, and Blob uploads now send the raw source (blobFormat: 'raw') instead of the JSON request body, so uploads always fit the plan's file size cap
5.4.7 version
- Fixed directory obfuscation with a set
sourceMapFileNamemaking all files share and overwrite one.map. Fixes #817 - Fixed CLI
--configfailures hiding the real cause behind a genericCannot open config filemessage. Fixes #1101 - Fixed
sourceMapFileNameending in.js.map(e.g.foo.min.js.map) being mangled in the emitted//# sourceMappingURL=comment. Fixes #1312 - Fixed
URIError: URI malformedcrash whenstringArraywithbase64/rc4encoding processed a string literal containing lone surrogate code units (e.g."[^\uD800-\uDFFF]"). Fixes #1431 - Bumped the production
brace-expansiontransitive dependency to a patched version, resolvingCVE-2026-25547. Fixes #1405
5.4.6 version
- Fixed unicode (
\uXXXX,\u{XXXX}) and hex (\xXX) escape sequences of string literals being un-escaped into their literal characters during obfuscation. Fixes #345
5.4.5 version
- Fixed
controlFlowFlatteningintermittently dropping arguments of a spread call (e.g.foo(...args)) when it reused a control flow wrapper of a same-arity plain call. Fixes #1423 - Fixed
selfDefendingmaking obfuscated code run several times slower on Bun/JavaScriptCore. Fixes #1421 - Fixed dropped parentheses around an
inoperator inside an arrow body in afor-init, producing unparsable output. Fixes #1419
5.4.4 version
- Optimized scope identifiers transformer performance
- Optimized identifier renaming performance by reusing scope analysis between transformers
- Fixed
Invalid regular expressionerror when obfuscating code that uses ES2025 RegExp pattern modifiers (e.g./(?i:abc)/). Fixes #1410 - Fixed
SyntaxErrorwhen obfuscating a class that extends a boolean literal (e.g.class C extends true {}). Fixes #1131
5.4.3 version
- Fixed
controlFlowFlatteningoccasionally dropping the?.short-circuit onfoo?.(arg)calls, causingTypeError: <X> is not a function. Fixes #1408
5.4.2 version
- Fixed obfuscated code hanging in Bun when
selfDefendingis enabled. Fixes #1404
5.4.1 version
- Fixed
Utils.nodeRequirecausingReferenceError: require is not definedin browser build by making it lazy-evaluated - Fixed missing space between keywords (
return,throw,typeof) and Unicode surrogate pair identifiers in compact mode. Fixes #1112 - Fixed
domainLockbeing case-sensitive — domain values are now normalized to lowercase. Fixes #1182 - Removed
source-map-supportruntime dependency. Usenode --enable-source-mapsinstead. Fixes #1149