This repository was archived by the owner on Apr 22, 2023. It is now read-only.
This repository was archived by the owner on Apr 22, 2023. It is now read-only.
vm: runInThisContext is missing require
#9211
Closed
Description
runInThisContext is missing require
only when running a javascript file. I think the following commands explain better what I mean:
$ cat test.js
var vm = require("vm");
console.log(vm.runInThisContext("require instanceof Function"));
$ node < test.js
true
$ node --eval "$(cat test.js)"
true
$ node test.js
/home/user/test.js:2
console.log(vm.runInThisContext("require instanceof Function"));
^
ReferenceError: require is not defined
at evalmachine.<anonymous>:1:1
at Object.<anonymous> (/home/user/test.js:2:16)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:902:3
make: *** [all] Error 8
$ node --version
v0.10.25
I see the same behaviour is also present in v0.11.15.
And I've just checked it is also present on the official docker images for v0.10 and v0.12:
$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp node:0.10 node test.js
Unable to find image 'node:0.10' locally
Pulling repository node
f60f6620117e: Download complete
511136ea3c5a: Download complete
8771fbfe935c: Download complete
0e30e84e9513: Download complete
c90a56bfe7dd: Download complete
6b030fdd4748: Download complete
787349ce806c: Download complete
70a6b638a713: Download complete
be7f2e01d4b1: Download complete
2d3fb7a55e9c: Download complete
d8b52c267f8b: Download complete
/usr/src/myapp/test.js:2
console.log(vm.runInThisContext("require instanceof Function"));
^
ReferenceError: require is not defined
at evalmachine.<anonymous>:1:1
at Object.<anonymous> (/usr/src/myapp/test.js:2:16)
at Module._compile (module.js:456:26)
at Object.Module._extensions..js (module.js:474:10)
at Module.load (module.js:356:32)
at Function.Module._load (module.js:312:12)
at Function.Module.runMain (module.js:497:10)
at startup (node.js:119:16)
at node.js:929:3
$ docker run -it --rm --name my-running-script -v "$PWD":/usr/src/myapp -w /usr/src/myapp node:0.12 node test.js
Unable to find image 'node:0.12' locally
Pulling repository node
12f018678fb1: Download complete
511136ea3c5a: Download complete
8771fbfe935c: Download complete
0e30e84e9513: Download complete
c90a56bfe7dd: Download complete
6b030fdd4748: Download complete
787349ce806c: Download complete
70a6b638a713: Download complete
380e6bb3cafc: Download complete
0b0b06183499: Download complete
3dd8081876d6: Download complete
evalmachine.<anonymous>:1
require instanceof Function
^
ReferenceError: require is not defined
at evalmachine.<anonymous>:1:1
at Object.exports.runInThisContext (vm.js:74:17)
at Object.<anonymous> (/usr/src/myapp/test.js:2:16)
at Module._compile (module.js:460:26)
at Object.Module._extensions..js (module.js:478:10)
at Module.load (module.js:355:32)
at Function.Module._load (module.js:310:12)
at Function.Module.runMain (module.js:501:10)
at startup (node.js:129:16)
at node.js:814:3