fix: Add missing Node.js natives to task runners (no-changelog) (#11362)

This commit is contained in:
Val
2024-10-23 10:41:10 +01:00
committed by GitHub
parent 0708b3a1f8
commit 5b98f8711f
2 changed files with 38 additions and 14 deletions

View File

@@ -153,6 +153,25 @@ export class JsTaskRunner extends TaskRunner {
};
}
private getNativeVariables() {
return {
// Exposed Node.js globals in vm2
Buffer,
Function,
eval,
setTimeout,
setInterval,
setImmediate,
clearTimeout,
clearInterval,
clearImmediate,
// Missing JS natives
btoa,
atob,
};
}
/**
* Executes the requested code for all items in a single run
*/
@@ -170,19 +189,9 @@ export class JsTaskRunner extends TaskRunner {
require: this.requireResolver,
module: {},
console: customConsole,
// Exposed Node.js globals in vm2
Buffer,
Function,
eval,
setTimeout,
setInterval,
setImmediate,
clearTimeout,
clearInterval,
clearImmediate,
items: inputItems,
...this.getNativeVariables(),
...dataProxy,
...this.buildRpcCallObject(taskId),
};
@@ -232,6 +241,7 @@ export class JsTaskRunner extends TaskRunner {
console: customConsole,
item,
...this.getNativeVariables(),
...dataProxy,
...this.buildRpcCallObject(taskId),
};