aboutsummaryrefslogtreecommitdiff
path: root/src/js/node/child_process.js
diff options
context:
space:
mode:
authorGravatar Jarred Sumner <jarred@jarredsumner.com> 2023-07-11 19:14:34 -0700
committerGravatar GitHub <noreply@github.com> 2023-07-11 19:14:34 -0700
commitcbb88672f217a90db1aa1eb29cd92d5d9035b22b (patch)
tree43a00501f3cde495967e116f0b660777051551f8 /src/js/node/child_process.js
parent1f900cff453700b19bca2acadfe26da4468c1282 (diff)
parent34b0e7a2bbd8bf8097341cdb0075d0908283e834 (diff)
downloadbun-jarred/esm-conditions.tar.gz
bun-jarred/esm-conditions.tar.zst
bun-jarred/esm-conditions.zip
Merge branch 'main' into jarred/esm-conditionsjarred/esm-conditions
Diffstat (limited to '')
-rw-r--r--src/js/node/child_process.js37
1 files changed, 15 insertions, 22 deletions
diff --git a/src/js/node/child_process.js b/src/js/node/child_process.js
index 691c9e096..29b203219 100644
--- a/src/js/node/child_process.js
+++ b/src/js/node/child_process.js
@@ -1,15 +1,11 @@
// Hardcoded module "node:child_process"
-const EventEmitter = import.meta.require("node:events");
-const {
- Readable: { fromWeb: ReadableFromWeb },
- NativeWritable,
-} = import.meta.require("node:stream");
-const {
- constants: { signals },
-} = import.meta.require("node:os");
-const { promisify } = import.meta.require("node:util");
-
-const { ArrayBuffer, Uint8Array, String, Object, Buffer, Promise } = import.meta.primordials;
+import { EventEmitter } from "node:events";
+import * as StreamModule from "node:stream";
+import { constants } from "node:os";
+import { promisify } from "node:util";
+const signals = constants.signals;
+
+const { ArrayBuffer, Uint8Array, String, Object, Buffer, Promise } = globalThis[Symbol.for("Bun.lazy")]("primordials");
var ObjectPrototypeHasOwnProperty = Object.prototype.hasOwnProperty;
var ObjectCreate = Object.create;
@@ -21,8 +17,6 @@ var BufferIsEncoding = Buffer.isEncoding;
var kEmptyObject = ObjectCreate(null);
var ArrayPrototypePush = Array.prototype.push;
-var ArrayPrototypeReduce = Array.prototype.reduce;
-var ArrayPrototypeFilter = Array.prototype.filter;
var ArrayPrototypeJoin = Array.prototype.join;
var ArrayPrototypeMap = Array.prototype.map;
var ArrayPrototypeIncludes = Array.prototype.includes;
@@ -60,6 +54,9 @@ if (__TRACK_STDIO__) {
};
}
+var NativeWritable;
+var ReadableFromWeb;
+
// Sections:
// 1. Exported child_process functions
// 2. child_process helpers
@@ -961,6 +958,10 @@ export class ChildProcess extends EventEmitter {
debug("ChildProcess: getBunSpawnIo: this.#handle is undefined");
}
}
+
+ NativeWritable ||= StreamModule.NativeWritable;
+ ReadableFromWeb ||= StreamModule.Readable.fromWeb;
+
const io = this.#stdioOptions[i];
switch (i) {
case 0: {
@@ -979,15 +980,7 @@ export class ChildProcess extends EventEmitter {
case 1: {
switch (io) {
case "pipe":
- return ReadableFromWeb(
- this.#handle[fdToStdioName(i)],
- __TRACK_STDIO__
- ? {
- encoding,
- __id: `PARENT_${fdToStdioName(i).toUpperCase()}-${globalThis.__getId()}`,
- }
- : { encoding },
- );
+ return ReadableFromWeb(this.#handle[fdToStdioName(i)], { encoding });
case "inherit":
return process[fdToStdioName(i)] || null;
case "destroyed":