You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
CommonJS model: minified __esModule marker (!0) and read-only called functions #34
Found in the PR #29 round-14 review. Two smaller gaps in PR #29's handling:
F21 __esModule marker only recognises literal true. Minified output (Terser, UglifyJS, minified Babel) writes Object.defineProperty(exports,"__esModule",{value:!0}) or exports.__esModule=!0. With exports.default = load, the file stays modelled, and import load from './m' loses the pre-PR edge to m.js:load. Treat any truthy literal (!0, 1, a non-empty string) as the marker.
A called function declaration that only reads module/exports blocks every member.function isMain(){ return require.main === module } isMain(); or function peek(){ return exports.a } peek(); sets capturesExports, which invalidates the exports with 'indirect eval effects' (a blocking reason), so every member answers no-edge. The arrow and callback forms keep their edges. Only writes, or eval reachability, should set it.
Activity