deps: update to cjs-module-lexer@0.5.2

PR-URL: https://github.com/nodejs/node/pull/35901
Reviewed-By: Antoine du Hamel <duhamelantoine1995@gmail.com>
Reviewed-By: Rich Trott <rtrott@gmail.com>
This commit is contained in:
Guy Bedford committed 2020-10-31 18:42:47 -07:00
1 parent 7ebae13e13
commit 5735525404
8 files changed
+214 -69

No files matched your search

+6
View File
@@ -1,3 +1,9 @@
0.5.2
- Support named getter functions (https://github.com/guybedford/cjs-module-lexer/pull/26)
0.5.1:
- Feature: Implement specific reexport getter forms (https://github.com/guybedford/cjs-module-lexer/pull/25)
0.5.0
- Breaking Change: No longer emit Object.defineProperty exports (https://github.com/guybedford/cjs-module-lexer/pull/24)
- Doc: Update link to WASI SDK (https://github.com/guybedford/cjs-module-lexer/pull/19)
+94 -42
View File
@@ -70,31 +70,35 @@ STRING_LITERAL: A `"` or `'` bounded ECMA-262 string literal.
IDENTIFIER_STRING: ( `"` IDENTIFIER `"` | `'` IDENTIFIER `'` )
COMMENT_SPACE: Any ECMA-262 whitespace, ECMA-262 block comment or ECMA-262 line comment
MODULE_EXPORTS: `module` COMMENT_SPACE `.` COMMENT_SPACE `exports`
MODULE_EXPORTS: `module` `.` `exports`
EXPORTS_IDENTIFIER: MODULE_EXPORTS_IDENTIFIER | `exports`
EXPORTS_DOT_ASSIGN: EXPORTS_IDENTIFIER COMMENT_SPACE `.` COMMENT_SPACE IDENTIFIER COMMENT_SPACE `=`
EXPORTS_DOT_ASSIGN: EXPORTS_IDENTIFIER `.` IDENTIFIER `=`
EXPORTS_LITERAL_COMPUTED_ASSIGN: EXPORTS_IDENTIFIER COMMENT_SPACE `[` COMMENT_SPACE IDENTIFIER_STRING COMMENT_SPACE `]` COMMENT_SPACE `=`
EXPORTS_LITERAL_COMPUTED_ASSIGN: EXPORTS_IDENTIFIER `[` IDENTIFIER_STRING `]` `=`
EXPORTS_LITERAL_PROP: (IDENTIFIER (COMMENT_SPACE `:` COMMENT_SPACE IDENTIFIER)?) | (IDENTIFIER_STRING COMMENT_SPACE `:` COMMENT_SPACE IDENTIFIER)
EXPORTS_LITERAL_PROP: (IDENTIFIER `:` IDENTIFIER)?) | (IDENTIFIER_STRING `:` IDENTIFIER)
EXPORTS_SPREAD: `...` COMMENT_SPACE (IDENTIFIER | REQUIRE)
EXPORTS_SPREAD: `...` (IDENTIFIER | REQUIRE)
EXPORTS_MEMBER: EXPORTS_DOT_ASSIGN | EXPORTS_LITERAL_COMPUTED_ASSIGN
ES_MODULE_DEFINE: `Object` COMMENT_SPACE `.` COMMENT_SPACE `defineProperty COMMENT_SPACE `(` COMMENT_SPACE `__esModule` COMMENT_SPACE `,` COMMENT_SPACE IDENTIFIER_STRING
EXPORTS_DEFINE: `Object` `.` `defineProperty `(` IDENTIFIER_STRING `, {`
(`enumerable: true,`)?
(
`value:` |
`get` (`: function` IDENTIFIER? )? `()` {` return IDENTIFIER (`.` IDENTIFIER | `[` IDENTIFIER_STRING `]`)? `;`? `}`
)
`})`
EXPORTS_LITERAL: MODULE_EXPORTS COMMENT_SPACE `=` COMMENT_SPACE `{` COMMENT_SPACE (EXPORTS_LITERAL_PROP | EXPORTS_SPREAD) COMMENT_SPACE `,` COMMENT_SPACE)+ `}`
EXPORTS_LITERAL: MODULE_EXPORTS `=` `{` (EXPORTS_LITERAL_PROP | EXPORTS_SPREAD) `,`)+ `}`
REQUIRE: `require` COMMENT_SPACE `(` COMMENT_SPACE STRING_LITERAL COMMENT_SPACE `)`
REQUIRE: `require` `(` STRING_LITERAL `)`
EXPORTS_ASSIGN: (`var` | `const` | `let`) IDENTIFIER `=` REQUIRE
MODULE_EXPORTS_ASSIGN: MODULE_EXPORTS COMMENT_SPACE `=` COMMENT_SPACE REQUIRE
MODULE_EXPORTS_ASSIGN: MODULE_EXPORTS `=` REQUIRE
EXPORT_STAR: (`__export` | `__exportStar`) `(` REQUIRE
@@ -113,9 +117,9 @@ EXPORT_STAR_LIB: `Object.keys(` IDENTIFIER$1 `).forEach(function (` IDENTIFIER$2
`})`
```
* The returned export names are taken to be the combination of:
1. `IDENTIFIER` and `IDENTIFIER_STRING` slots for all `EXPORTS_MEMBER` and `EXPORTS_LITERAL` matches.
2. `__esModule` if there is an `ES_MODULE_DEFINE` match.
Spacing between tokens is taken to be any ECMA-262 whitespace, ECMA-262 block comment or ECMA-262 line comment.
* The returned export names are taken to be the combination of the `IDENTIFIER` and `IDENTIFIER_STRING` slots for all `EXPORTS_MEMBER`, `EXPORTS_LITERAL` and `EXPORTS_DEFINE` matches.
* The reexport specifiers are taken to be the the combination of:
1. The `REQUIRE` matches of the last matched of either `MODULE_EXPORTS_ASSIGN` or `EXPORTS_LITERAL`.
2. All _top-level_ `EXPORT_STAR` `REQUIRE` matches and `EXPORTS_ASSIGN` matches whose `IDENTIFIER` also matches the first `IDENTIFIER` in `EXPORT_STAR_LIB`.
@@ -156,17 +160,66 @@ It will in turn underclassify in cases where the identifiers are renamed:
})(exports);
```
#### __esModule Detection
In addition, `__esModule` is detected as an export when set by `Object.defineProperty`:
`Object.defineProperty` is detected for specifically value and getter forms returning an identifier or member expression:
```js
// DETECTS: __esModule
Object.defineProperty(exports, 'a', { value: 'a' });
// DETECTS: a, b, c, d, __esModule
Object.defineProperty(exports, 'a', {
enumerable: true,
get: function () {
return q.p;
}
});
Object.defineProperty(exports, 'b', {
enumerable: true,
get: function () {
return q['p'];
}
});
Object.defineProperty(exports, 'c', {
enumerable: true,
get () {
return b;
}
});
Object.defineProperty(exports, 'd', { value: 'd' });
Object.defineProperty(exports, '__esModule', { value: true });
```
No other named exports are detected for `defineProperty` calls in order not to trigger getters or non-enumerable properties unnecessarily.
Alternative object definition structures or getter function bodies are not detected:
```js
// DETECTS: NO EXPORTS
Object.defineProperty(exports, 'a', {
enumerable: false,
get () {
return p;
}
});
Object.defineProperty(exports, 'b', {
configurable: true,
get () {
return p;
}
});
Object.defineProperty(exports, 'c', {
get: () => p
});
Object.defineProperty(exports, 'd', {
enumerable: true,
get: function () {
return dynamic();
}
});
Object.defineProperty(exports, 'e', {
enumerable: true,
get () {
return 'str';
}
});
```
`Object.defineProperties` is also not supported.
#### Exports Object Assignment
@@ -281,65 +334,64 @@ Current results:
JS Build:
```
--- JS Build ---
Module load time
> 2ms
> 5ms
Cold Run, All Samples
test/samples/*.js (3635 KiB)
> 311ms
> 323ms
Warm Runs (average of 25 runs)
test/samples/angular.js (1410 KiB)
> 14.76ms
> 14.84ms
test/samples/angular.min.js (303 KiB)
> 5.04ms
> 4.8ms
test/samples/d3.js (553 KiB)
> 7.12ms
> 7.84ms
test/samples/d3.min.js (250 KiB)
> 4ms
test/samples/magic-string.js (34 KiB)
> 0.84ms
> 0.72ms
test/samples/magic-string.min.js (20 KiB)
> 0.08ms
> 0.4ms
test/samples/rollup.js (698 KiB)
> 9.08ms
> 9.32ms
test/samples/rollup.min.js (367 KiB)
> 6ms
> 6.52ms
Warm Runs, All Samples (average of 25 runs)
test/samples/*.js (3635 KiB)
> 41.32ms
> 44ms
```
Wasm Build:
```
Module load time
> 10ms
> 11ms
Cold Run, All Samples
test/samples/*.js (3635 KiB)
> 47ms
> 42ms
Warm Runs (average of 25 runs)
test/samples/angular.js (1410 KiB)
> 12.96ms
> 9.92ms
test/samples/angular.min.js (303 KiB)
> 4ms
> 3.2ms
test/samples/d3.js (553 KiB)
> 6.12ms
> 5.2ms
test/samples/d3.min.js (250 KiB)
> 3.08ms
> 2.52ms
test/samples/magic-string.js (34 KiB)
> 0.32ms
> 0.16ms
test/samples/magic-string.min.js (20 KiB)
> 0ms
> 0.04ms
test/samples/rollup.js (698 KiB)
> 7.8ms
> 6.44ms
test/samples/rollup.min.js (367 KiB)
> 4.64ms
> 3.96ms
Warm Runs, All Samples (average of 25 runs)
test/samples/*.js (3635 KiB)
> 35.64ms
> 30.48ms
```
### Wasm Build Steps
+1 -1
View File
@@ -1 +1 @@
"use strict";exports.parse=parse;exports.init=init;const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let Q;const B=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse(g,I="@"){if(!Q)throw new Error("Not initialized");const D=g.length+1,k=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;k>0&&Q.memory.grow(Math.ceil(k/65536));const N=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,N,D)),!Q.parseCJS(N,g.length,0,0))throw Object.assign(new Error(`Parse error ${I}${Q.e()}:${g.slice(0,Q.e()).split("\n").length}:${Q.e()-g.lastIndexOf("\n",Q.e()-1)}`),{idx:Q.e()});let w=new Set,H=new Set;for(;Q.rre();)H.add(g.slice(Q.res(),Q.ree()));for(;Q.re();){let B=g.slice(Q.es(),Q.ee());A.has(B)||w.add(B)}return{exports:[...w],reexports:[...H]}}function E(A,Q){const B=A.length;let E=0;for(;E<B;){const B=A.charCodeAt(E);Q[E++]=(255&B)<<8|B>>>8}}function C(A,Q){const B=A.length;let E=0;for(;E<B;)Q[E]=A.charCodeAt(E++)}let g;function init(){return g||(g=(async()=>{const A=await WebAssembly.compile((B="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 Line truncated
"use strict";exports.parse=parse;exports.init=init;const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let Q;const B=1===new Uint8Array(new Uint16Array([1]).buffer)[0];function parse(g,I="@"){if(!Q)throw new Error("Not initialized");const D=g.length+1,N=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;N>0&&Q.memory.grow(Math.ceil(N/65536));const k=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,k,D)),!Q.parseCJS(k,g.length,0,0))throw Object.assign(new Error(`Parse error ${I}${Q.e()}:${g.slice(0,Q.e()).split("\n").length}:${Q.e()-g.lastIndexOf("\n",Q.e()-1)}`),{idx:Q.e()});let w=new Set,o=new Set;for(;Q.rre();)o.add(g.slice(Q.res(),Q.ree()));for(;Q.re();){let B=g.slice(Q.es(),Q.ee());A.has(B)||w.add(B)}return{exports:[...w],reexports:[...o]}}function E(A,Q){const B=A.length;let E=0;for(;E<B;){const B=A.charCodeAt(E);Q[E++]=(255&B)<<8|B>>>8}}function C(A,Q){const B=A.length;let E=0;for(;E<B;)Q[E]=A.charCodeAt(E++)}let g;function init(){return g||(g=(async()=>{const A=await WebAssembly.compile((B="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 Line truncated
+2 -2
View File
@@ -1,2 +1,2 @@
/* cjs-module-lexer 0.5.0 */
const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let Q;const B=1===new Uint8Array(new Uint16Array([1]).buffer)[0];export function parse(g,I="@"){if(!Q)throw new Error("Not initialized");const D=g.length+1,k=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;k>0&&Q.memory.grow(Math.ceil(k/65536));const N=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,N,D)),!Q.parseCJS(N,g.length,0,0))throw Object.assign(new Error(`Parse error ${I}${Q.e()}:${g.slice(0,Q.e()).split("\n").length}:${Q.e()-g.lastIndexOf("\n",Q.e()-1)}`),{idx:Q.e()});let w=new Set,H=new Set;for(;Q.rre();)H.add(g.slice(Q.res(),Q.ree()));for(;Q.re();){let B=g.slice(Q.es(),Q.ee());A.has(B)||w.add(B)}return{exports:[...w],reexports:[...H]}}function E(A,Q){const B=A.length;let E=0;for(;E<B;){const B=A.charCodeAt(E);Q[E++]=(255&B)<<8|B>>>8}}function C(A,Q){const B=A.length;let E=0;for(;E<B;)Q[E]=A.charCodeAt(E++)}let g;export function init(){return g||(g=(async()=>{const A=await WebAssembly.compile((B="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 Line truncated
/* cjs-module-lexer 0.5.2 */
const A=new Set(["implements","interface","let","package","private","protected","public","static","yield","enum"]);let Q;const B=1===new Uint8Array(new Uint16Array([1]).buffer)[0];export function parse(g,I="@"){if(!Q)throw new Error("Not initialized");const D=g.length+1,N=(Q.__heap_base.value||Q.__heap_base)+4*D-Q.memory.buffer.byteLength;N>0&&Q.memory.grow(Math.ceil(N/65536));const k=Q.sa(D);if((B?C:E)(g,new Uint16Array(Q.memory.buffer,k,D)),!Q.parseCJS(k,g.length,0,0))throw Object.assign(new Error(`Parse error ${I}${Q.e()}:${g.slice(0,Q.e()).split("\n").length}:${Q.e()-g.lastIndexOf("\n",Q.e()-1)}`),{idx:Q.e()});let w=new Set,o=new Set;for(;Q.rre();)o.add(g.slice(Q.res(),Q.ree()));for(;Q.re();){let B=g.slice(Q.es(),Q.ee());A.has(B)||w.add(B)}return{exports:[...w],reexports:[...o]}}function E(A,Q){const B=A.length;let E=0;for(;E<B;){const B=A.charCodeAt(E);Q[E++]=(255&B)<<8|B>>>8}}function C(A,Q){const B=A.length;let E=0;for(;E<B;)Q[E]=A.charCodeAt(E++)}let g;export function init(){return g||(g=(async()=>{const A=await WebAssembly.compile((B="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 Line truncated
+107 -20
View File
@@ -260,30 +260,117 @@ function tryParseObjectDefineOrKeys (keys) {
pos++;
ch = commentWhitespace();
if (ch === 100/*d*/ && source.startsWith('efineProperty', pos + 1)) {
pos += 14;
revertPos = pos - 1;
ch = commentWhitespace();
if (ch !== 40/*(*/) {
pos = revertPos;
return;
}
pos++;
ch = commentWhitespace();
if (readExportsOrModuleDotExports(ch)) {
while (true) {
pos += 14;
revertPos = pos - 1;
ch = commentWhitespace();
if (ch === 44/*,*/) {
if (ch !== 40/*(*/) break;
pos++;
ch = commentWhitespace();
if (!readExportsOrModuleDotExports(ch)) break;
ch = commentWhitespace();
if (ch !== 44/*,*/) break;
pos++;
ch = commentWhitespace();
if (ch !== 39/*'*/ && ch !== 34/*"*/) break;
let quot = ch;
const exportPos = ++pos;
if (!identifier() || source.charCodeAt(pos) !== quot) break;
const expt = source.slice(exportPos, pos);
pos++;
ch = commentWhitespace();
if (ch !== 44/*,*/) break;
pos++;
ch = commentWhitespace();
if (ch !== 123/*{*/) break;
pos++;
ch = commentWhitespace();
if (ch === 101/*e*/) {
if (!source.startsWith('numerable', pos + 1)) break;
pos += 10;
ch = commentWhitespace();
if (ch !== 58/*:*/) break;
pos++;
ch = commentWhitespace();
if (ch !== 116/*t*/ || !source.startsWith('rue', pos + 1)) break;
pos += 4;
ch = commentWhitespace();
if (ch !== 44) break;
pos++;
ch = commentWhitespace();
if (ch === 39/*'*/ || ch === 34/*"*/) {
const exportPos = ++pos;
if (identifier() && source.charCodeAt(pos) === ch) {
// revert for "("
const expt = source.slice(exportPos, pos);
if (expt === '__esModule')
addExport(expt);
}
}
}
if (ch === 118/*v*/) {
if (!source.startsWith('alue', pos + 1)) break;
pos += 5;
ch = commentWhitespace();
if (ch !== 58/*:*/) break;
pos++;
addExport(expt);
break;
}
else if (ch === 103/*g*/) {
if (!source.startsWith('et', pos + 1)) break;
pos += 3;
ch = commentWhitespace();
if (ch === 58/*:*/) {
pos++;
ch = commentWhitespace();
if (ch !== 102/*f*/) break;
if (!source.startsWith('unction', pos + 1)) break;
pos += 8;
let lastPos = pos;
ch = commentWhitespace();
if (ch !== 40 && (lastPos === pos || !identifier())) break;
ch = commentWhitespace();
}
if (ch !== 40/*(*/) break;
pos++;
ch = commentWhitespace();
if (ch !== 41/*)*/) break;
pos++;
ch = commentWhitespace();
if (ch !== 123/*{*/) break;
pos++;
ch = commentWhitespace();
if (ch !== 114/*r*/) break;
if (!source.startsWith('eturn', pos + 1)) break;
pos += 6;
ch = commentWhitespace();
if (!identifier()) break;
ch = commentWhitespace();
if (ch === 46/*.*/) {
pos++;
commentWhitespace();
if (!identifier()) break;
ch = commentWhitespace();
}
else if (ch === 91/*[*/) {
pos++;
ch = commentWhitespace();
if (ch === 39/*'*/) singleQuoteString();
else if (ch === 34/*"*/) doubleQuoteString();
else break;
pos++;
ch = commentWhitespace();
if (ch !== 93/*]*/) break;
pos++;
ch = commentWhitespace();
}
if (ch === 59/*;*/) {
pos++;
ch = commentWhitespace();
}
if (ch !== 125/*}*/) break;
pos++;
ch = commentWhitespace();
if (ch !== 125/*}*/) break;
pos++;
ch = commentWhitespace();
if (ch !== 41/*)*/) break;
addExport(expt);
return;
}
break;
}
}
else if (keys && ch === 107/*k*/ && source.startsWith('eys', pos + 1)) {
+1 -1
View File
@@ -1,6 +1,6 @@
{
"name": "cjs-module-lexer",
"version": "0.5.0",
"version": "0.5.2",
"description": "Lexes CommonJS modules, returning their named exports metadata",
"main": "lexer.js",
"exports": {
+1 -1
View File
@@ -1287,7 +1287,7 @@ success!
[`transformSource` hook]: #esm_transformsource_source_context_defaulttransformsource
[`string`]: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/String
[`util.TextDecoder`]: util.md#util_class_util_textdecoder
[cjs-module-lexer]: https://github.com/guybedford/cjs-module-lexer/tree/0.5.0
[cjs-module-lexer]: https://github.com/guybedford/cjs-module-lexer/tree/0.5.2
[special scheme]: https://url.spec.whatwg.org/#special-scheme
[the official standard format]: https://tc39.github.io/ecma262/#sec-modules
[transpiler loader example]: #esm_transpiler_loader
+2 -2
View File
@@ -3,7 +3,7 @@ import { strictEqual, deepEqual } from 'assert';
import m, { π } from './exports-cases.js';
import * as ns from './exports-cases.js';
deepEqual(Object.keys(ns), ['default', 'isObject', 'π']);
deepEqual(Object.keys(ns), ['default', 'isObject', 'z', 'π']);
strictEqual(π, 'yes');
strictEqual(typeof m.isObject, 'undefined');
strictEqual(m.π, 'yes');
@@ -18,7 +18,7 @@ strictEqual(typeof m2, 'object');
strictEqual(m2.default, 'the default');
strictEqual(ns2.__esModule, true);
strictEqual(ns2.name, 'name');
deepEqual(Object.keys(ns2), ['__esModule', 'case2', 'default', 'name']);
deepEqual(Object.keys(ns2), ['__esModule', 'case2', 'default', 'name', 'pi']);
import m3, { __esModule as __esModule3, name as name3 } from './exports-cases3.js';
import * as ns3 from './exports-cases3.js';