1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-12-27 17:49:08 -05:00
denoland-deno/runtime/ops/os
Luke Edwards 13723f267e
feat: Add Deno.exitCode API (#23609)
This commits adds the ability to set a would-be exit code 
for the Deno process without forcing an immediate exit, 
through the new `Deno.exitCode` API.

- **Implements `Deno.exitCode` getter and setter**: Adds support for
setting
and retrieving a would-be exit code via `Deno.exitCode`.
This allows for asynchronous cleanup before process termination 
without immediately exiting.
- **Ensures type safety**: The setter for `Deno.exitCode` validates that
the provided value is a number, throwing a TypeError if not, to ensure
that
only valid exit codes are set.

Closes to #23605

---------

Co-authored-by: Bartek Iwańczuk <biwanczuk@gmail.com>
2024-05-29 23:16:27 +00:00
..
mod.rs feat: Add Deno.exitCode API (#23609) 2024-05-29 23:16:27 +00:00
README.md fix(ext/node): fix os.freemem (#21347) 2023-11-30 22:06:01 +09:00
sys_info.rs fix(os): total and free memory in bytes (#22247) 2024-02-05 18:41:24 +05:30

os ops

loadavg

Target family Syscall Description
Linux sysinfo -
Windows - Returns DEFAULT_LOADAVG. There is no concept of loadavg on Windows
macOS, BSD getloadavg https://www.freebsd.org/cgi/man.cgi?query=getloadavg

os_release

Target family Syscall Description
Linux /proc/sys/kernel/osrelease -
Windows RtlGetVersion dwMajorVersion . dwMinorVersion . dwBuildNumber
macOS sysctl([CTL_KERN, KERN_OSRELEASE]) -

hostname

Target family Syscall Description
Unix gethostname(sysconf(_SC_HOST_NAME_MAX)) -
Windows GetHostNameW -

mem_info

Target family Syscall Description
Linux sysinfo and /proc/meminfo -
Windows sysinfoapi::GlobalMemoryStatusEx -
macOS
 sysctl([CTL_HW, HW_MEMSIZE]); 
sysctl([CTL_VM, VM_SWAPUSAGE]);
host_statistics64(mach_host_self(), HOST_VM_INFO64)
-