Browse Source

Switched from `escodegen` to `escodegen-wallaby`

sanex3339 8 years ago
parent
commit
382598b5c5

+ 8 - 0
CHANGELOG.md

@@ -1,5 +1,13 @@
 Change Log
 ===
+v0.9.3
+---
+* Switched from `escodegen` to `escodegen-wallaby`, fixed https://github.com/javascript-obfuscator/javascript-obfuscator/pull/50
+
+v0.9.2
+---
+* fixed https://github.com/javascript-obfuscator/javascript-obfuscator/pull/42
+
 v0.9.1
 ---
 * fixed https://github.com/javascript-obfuscator/javascript-obfuscator/issues/37

File diff suppressed because it is too large
+ 95 - 12
dist/index.js


+ 2 - 2
package.json

@@ -1,6 +1,6 @@
 {
   "name": "javascript-obfuscator",
-  "version": "0.9.2",
+  "version": "0.9.3",
   "description": "JavaScript obfuscator",
   "keywords": [
     "obfuscator",
@@ -22,7 +22,7 @@
     "chance": "1.0.6",
     "class-validator": "0.6.8",
     "commander": "2.9.0",
-    "escodegen": "1.8.1",
+    "escodegen-wallaby": "1.6.11",
     "esprima": "3.1.3",
     "estraverse": "4.2.0",
     "inversify": "3.1.0",

+ 1 - 1
src/JavaScriptObfuscatorInternal.ts

@@ -2,7 +2,7 @@ import { injectable, inject } from 'inversify';
 import { ServiceIdentifiers } from './container/ServiceIdentifiers';
 
 import * as esprima from 'esprima';
-import * as escodegen from 'escodegen';
+import * as escodegen from 'escodegen-wallaby';
 import * as ESTree from 'estree';
 
 import { IGeneratorOutput } from './interfaces/IGeneratorOutput';

+ 3 - 0
src/declarations/escodegen-wallaby.d.ts

@@ -0,0 +1,3 @@
+declare module 'escodegen-wallaby' {
+    export * from 'escodegen';
+}

+ 1 - 1
src/node-transformers/obfuscating-transformers/LiteralTransformer.ts

@@ -1,7 +1,7 @@
 import { injectable, inject } from 'inversify';
 import { ServiceIdentifiers } from '../../container/ServiceIdentifiers';
 
-import * as escodegen from 'escodegen';
+import * as escodegen from 'escodegen-wallaby';
 import * as ESTree from 'estree';
 
 import { TObfuscationReplacerFactory } from '../../types/container/TObfuscationReplacerFactory';

+ 1 - 1
src/node-transformers/obfuscating-transformers/ObjectExpressionTransformer.ts

@@ -1,7 +1,7 @@
 import { injectable, inject } from 'inversify';
 import { ServiceIdentifiers } from '../../container/ServiceIdentifiers';
 
-import * as escodegen from 'escodegen';
+import * as escodegen from 'escodegen-wallaby';
 import * as ESTree from 'estree';
 
 import { IOptions } from '../../interfaces/options/IOptions';

+ 1 - 1
src/node/NodeUtils.ts

@@ -1,4 +1,4 @@
-import * as escodegen from 'escodegen';
+import * as escodegen from 'escodegen-wallaby';
 import * as esprima from 'esprima';
 import * as estraverse from 'estraverse';
 import * as ESTree from 'estree';

+ 1 - 1
src/node/Nodes.ts

@@ -1,4 +1,4 @@
-import * as escodegen from 'escodegen';
+import * as escodegen from 'escodegen-wallaby';
 import * as ESTree from 'estree';
 
 import { TStatement } from '../types/node/TStatement';

+ 12 - 0
test/functional-tests/javascript-obfuscator/JavaScriptObfuscator.spec.ts

@@ -194,6 +194,18 @@ describe('JavaScriptObfuscator', () => {
             assert.notEqual(obfuscationResult3.getObfuscatedCode(), obfuscationResult4.getObfuscatedCode());
         });
 
+        it('should keep new.target MetaProperty', () => {
+            assert.match(
+                JavaScriptObfuscator.obfuscate(
+                    readFileAsString(__dirname + '/fixtures/new-target.js'),
+                    {
+                        ...NO_CUSTOM_NODES_PRESET
+                    }
+                ).getObfuscatedCode(),
+                /new\.target *=== *Foo/
+            );
+        });
+
         afterEach(() => {
             RandomGeneratorUtils.initializeRandomGenerator(0);
         });

+ 5 - 0
test/functional-tests/javascript-obfuscator/fixtures/new-target.js

@@ -0,0 +1,5 @@
+class Foo {
+    constructor() {
+        if (new.target === Foo) {}
+    }
+}

+ 3 - 3
yarn.lock

@@ -1200,9 +1200,9 @@ [email protected], escape-string-regexp@^1.0.2:
   version "1.0.5"
   resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
 
-escodegen@1.8.1:
-  version "1.8.1"
-  resolved "https://registry.yarnpkg.com/escodegen/-/escodegen-1.8.1.tgz#5a5b53af4693110bebb0867aa3430dd3b70a1018"
+escodegen[email protected]1:
+  version "1.6.11"
+  resolved "https://registry.yarnpkg.com/escodegen-wallaby/-/escodegen-wallaby-1.6.11.tgz#39100cde743f9acdd24bd868db5a12fbacde6ed1"
   dependencies:
     esprima "^2.7.1"
     estraverse "^1.9.1"

Some files were not shown because too many files changed in this diff