1
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2024-11-24 15:19:26 -05:00

chore(tty): soft-remove Deno.isatty() (#25410)

Towards #22079
This commit is contained in:
Asher Gomez 2024-09-04 18:12:11 +10:00 committed by GitHub
parent cb454351d4
commit ac33fc2892
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
3 changed files with 5 additions and 25 deletions

View file

@ -2875,25 +2875,6 @@ declare namespace Deno {
signal?: AbortSignal; signal?: AbortSignal;
} }
/**
* Check if a given resource id (`rid`) is a TTY (a terminal).
*
* ```ts
* // This example is system and context specific
* const nonTTYRid = Deno.openSync("my_file.txt").rid;
* const ttyRid = Deno.openSync("/dev/tty6").rid;
* console.log(Deno.isatty(nonTTYRid)); // false
* console.log(Deno.isatty(ttyRid)); // true
* ```
*
* @deprecated This will be soft-removed in Deno 2.0. See the
* {@link https://docs.deno.com/runtime/manual/advanced/migrate_deprecations | Deno 1.x to 2.x Migration Guide}
* for migration instructions.
*
* @category I/O
*/
export function isatty(rid: number): boolean;
/** /**
* A variable-sized buffer of bytes with `read()` and `write()` methods. * A variable-sized buffer of bytes with `read()` and `write()` methods.
* *

View file

@ -1,5 +1,5 @@
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license. // Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
import { core, internals, primordials } from "ext:core/mod.js"; import { core, primordials } from "ext:core/mod.js";
import { op_console_size } from "ext:core/ops"; import { op_console_size } from "ext:core/ops";
const { const {
Uint32Array, Uint32Array,
@ -15,12 +15,9 @@ function consoleSize() {
return { columns: size[0], rows: size[1] }; return { columns: size[0], rows: size[1] };
} }
// Note: This function was soft-removed in Deno 2. Its types have been removed,
// but its implementation has been kept to avoid breaking changes.
function isatty(rid) { function isatty(rid) {
internals.warnOnDeprecatedApi(
"Deno.isatty()",
new Error().stack,
"Use `Deno.stdin.isTerminal()`, `Deno.stdout.isTerminal()`, `Deno.stderr.isTerminal()` or `Deno.FsFile.isTerminal()` instead.",
);
return isTerminal(rid); return isTerminal(rid);
} }

View file

@ -20,6 +20,7 @@ Deno.test(
function isatty() { function isatty() {
// CI not under TTY, so cannot test stdin/stdout/stderr. // CI not under TTY, so cannot test stdin/stdout/stderr.
const f = Deno.openSync("tests/testdata/assets/hello.txt"); const f = Deno.openSync("tests/testdata/assets/hello.txt");
// @ts-ignore `Deno.isatty()` was soft-removed in Deno 2.
assert(!Deno.isatty(f.rid)); assert(!Deno.isatty(f.rid));
f.close(); f.close();
}, },
@ -29,6 +30,7 @@ Deno.test(function isattyError() {
let caught = false; let caught = false;
try { try {
// Absurdly large rid. // Absurdly large rid.
// @ts-ignore `Deno.isatty()` was soft-removed in Deno 2.
Deno.isatty(0x7fffffff); Deno.isatty(0x7fffffff);
} catch (e) { } catch (e) {
caught = true; caught = true;