Skip to content

Commit

Permalink
fix(ext/node): add process.abort() (#21742)
Browse files Browse the repository at this point in the history
  • Loading branch information
littledivy authored and bartlomieju committed Jan 4, 2024
1 parent d3ef599 commit 73b7032
Show file tree
Hide file tree
Showing 3 changed files with 13 additions and 0 deletions.
1 change: 1 addition & 0 deletions ext/node/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -282,6 +282,7 @@ deno_core::extension!(deno_node,
ops::os::op_node_os_username<P>,
ops::os::op_geteuid<P>,
ops::os::op_cpus<P>,
ops::os::op_process_abort,
op_node_build_os,
op_node_is_promise_rejected,
op_npm_process_state,
Expand Down
5 changes: 5 additions & 0 deletions ext/node/ops/os/mod.rs
Original file line number Diff line number Diff line change
Expand Up @@ -75,6 +75,11 @@ where
Ok(euid)
}

#[op2(fast)]
pub fn op_process_abort() {
std::process::abort();
}

#[op2]
#[serde]
pub fn op_cpus<P>(state: &mut OpState) -> Result<Vec<cpus::CpuInfo>, AnyError>
Expand Down
7 changes: 7 additions & 0 deletions ext/node/polyfills/process.ts
Original file line number Diff line number Diff line change
Expand Up @@ -98,6 +98,10 @@ export const exit = (code?: number | string) => {
process.reallyExit(process.exitCode || 0);
};

export const abort = () => {
ops.op_process_abort();
};

function addReadOnlyProcessAlias(
name: string,
option: string,
Expand Down Expand Up @@ -415,6 +419,9 @@ class Process extends EventEmitter {
/** https://nodejs.org/api/process.html#process_process_exit_code */
exit = exit;

/** https://nodejs.org/api/process.html#processabort */
abort = abort;

// Undocumented Node API that is used by `signal-exit` which in turn
// is used by `node-tap`. It was marked for removal a couple of years
// ago. See https://github.com/nodejs/node/blob/6a6b3c54022104cc110ab09044a2a0cecb8988e7/lib/internal/bootstrap/node.js#L172
Expand Down

0 comments on commit 73b7032

Please sign in to comment.