mirror of
https://github.com/denoland/deno.git
synced 2025-01-11 16:42:21 -05:00
feat: stabilize Deno.systemMemoryInfo() (#16445)
This commit is contained in:
parent
f946806868
commit
0500aa1f71
5 changed files with 44 additions and 49 deletions
|
@ -18,7 +18,6 @@ const UNSTABLE_DENO_PROPS: &[&str] = &[
|
|||
"CreateHttpClientOptions",
|
||||
"DatagramConn",
|
||||
"HttpClient",
|
||||
"SystemMemoryInfo",
|
||||
"UnixConnectOptions",
|
||||
"UnixListenOptions",
|
||||
"bench",
|
||||
|
@ -31,7 +30,6 @@ const UNSTABLE_DENO_PROPS: &[&str] = &[
|
|||
"ppid",
|
||||
"removeSignalListener",
|
||||
"shutdown",
|
||||
"systemMemoryInfo",
|
||||
"umask",
|
||||
"spawnChild",
|
||||
"Child",
|
||||
|
|
43
cli/dts/lib.deno.ns.d.ts
vendored
43
cli/dts/lib.deno.ns.d.ts
vendored
|
@ -369,6 +369,49 @@ declare namespace Deno {
|
|||
*/
|
||||
export function networkInterfaces(): NetworkInterfaceInfo[];
|
||||
|
||||
/**
|
||||
* Displays the total amount of free and used physical and swap memory in the
|
||||
* system, as well as the buffers and caches used by the kernel.
|
||||
*
|
||||
* This is similar to the `free` command in Linux
|
||||
*
|
||||
* ```ts
|
||||
* console.log(Deno.systemMemoryInfo());
|
||||
* ```
|
||||
*
|
||||
* Requires `allow-sys` permission.
|
||||
*
|
||||
* @tags allow-sys
|
||||
* @category Runtime Environment
|
||||
*/
|
||||
export function systemMemoryInfo(): SystemMemoryInfo;
|
||||
|
||||
/**
|
||||
* Information returned from a call to {@linkcode Deno.systemMemoryInfo}.
|
||||
*
|
||||
* @category Runtime Environment
|
||||
*/
|
||||
export interface SystemMemoryInfo {
|
||||
/** Total installed memory in bytes. */
|
||||
total: number;
|
||||
/** Unused memory in bytes. */
|
||||
free: number;
|
||||
/** Estimation of how much memory, in bytes, is available for starting new
|
||||
* applications, without swapping. Unlike the data provided by the cache or
|
||||
* free fields, this field takes into account page cache and also that not
|
||||
* all reclaimable memory will be reclaimed due to items being in use.
|
||||
*/
|
||||
available: number;
|
||||
/** Memory used by kernel buffers. */
|
||||
buffers: number;
|
||||
/** Memory used by the page cache and slabs. */
|
||||
cached: number;
|
||||
/** Total swap memory. */
|
||||
swapTotal: number;
|
||||
/** Unused swap memory. */
|
||||
swapFree: number;
|
||||
}
|
||||
|
||||
/** Reflects the `NO_COLOR` environment variable at program start.
|
||||
*
|
||||
* When the value is `true`, the Deno CLI will attempt to not send color codes
|
||||
|
|
45
cli/dts/lib.deno.unstable.d.ts
vendored
45
cli/dts/lib.deno.unstable.d.ts
vendored
|
@ -269,51 +269,6 @@ declare namespace Deno {
|
|||
*/
|
||||
export function umask(mask?: number): number;
|
||||
|
||||
/** **UNSTABLE**: New API, yet to be vetted.
|
||||
*
|
||||
* Displays the total amount of free and used physical and swap memory in the
|
||||
* system, as well as the buffers and caches used by the kernel.
|
||||
*
|
||||
* This is similar to the `free` command in Linux
|
||||
*
|
||||
* ```ts
|
||||
* console.log(Deno.systemMemoryInfo());
|
||||
* ```
|
||||
*
|
||||
* Requires `allow-sys` permission.
|
||||
*
|
||||
* @tags allow-sys
|
||||
* @category Runtime Environment
|
||||
*/
|
||||
export function systemMemoryInfo(): SystemMemoryInfo;
|
||||
|
||||
/** **UNSTABLE**: New API, yet to be vetted.
|
||||
*
|
||||
* Information returned from a call to {@linkcode Deno.systemMemoryInfo}.
|
||||
*
|
||||
* @category Runtime Environment
|
||||
*/
|
||||
export interface SystemMemoryInfo {
|
||||
/** Total installed memory in bytes. */
|
||||
total: number;
|
||||
/** Unused memory in bytes. */
|
||||
free: number;
|
||||
/** Estimation of how much memory, in bytes, is available for starting new
|
||||
* applications, without swapping. Unlike the data provided by the cache or
|
||||
* free fields, this field takes into account page cache and also that not
|
||||
* all reclaimable memory will be reclaimed due to items being in use.
|
||||
*/
|
||||
available: number;
|
||||
/** Memory used by kernel buffers. */
|
||||
buffers: number;
|
||||
/** Memory used by the page cache and slabs. */
|
||||
cached: number;
|
||||
/** Total swap memory. */
|
||||
swapTotal: number;
|
||||
/** Unused swap memory. */
|
||||
swapFree: number;
|
||||
}
|
||||
|
||||
/** **UNSTABLE**: New API, yet to be vetted.
|
||||
*
|
||||
* Returns the user id of the Deno process on POSIX platforms. Returns `null`
|
||||
|
|
|
@ -121,13 +121,13 @@
|
|||
unrefTimer: __bootstrap.timers.unrefTimer,
|
||||
osRelease: __bootstrap.os.osRelease,
|
||||
hostname: __bootstrap.os.hostname,
|
||||
systemMemoryInfo: __bootstrap.os.systemMemoryInfo,
|
||||
networkInterfaces: __bootstrap.os.networkInterfaces,
|
||||
consoleSize: __bootstrap.tty.consoleSize,
|
||||
};
|
||||
|
||||
__bootstrap.denoNsUnstable = {
|
||||
DiagnosticCategory: __bootstrap.diagnostics.DiagnosticCategory,
|
||||
systemMemoryInfo: __bootstrap.os.systemMemoryInfo,
|
||||
gid: __bootstrap.os.gid,
|
||||
uid: __bootstrap.os.uid,
|
||||
listenDatagram: __bootstrap.net.listenDatagram,
|
||||
|
|
|
@ -245,7 +245,6 @@ impl From<netif::Interface> for NetworkInterface {
|
|||
fn op_system_memory_info(
|
||||
state: &mut OpState,
|
||||
) -> Result<Option<sys_info::MemInfo>, AnyError> {
|
||||
super::check_unstable(state, "Deno.systemMemoryInfo");
|
||||
state
|
||||
.borrow_mut::<Permissions>()
|
||||
.sys
|
||||
|
|
Loading…
Reference in a new issue