diff --git a/cli/tsc/dts/lib.deno.ns.d.ts b/cli/tsc/dts/lib.deno.ns.d.ts index 31634811c7..5567997624 100644 --- a/cli/tsc/dts/lib.deno.ns.d.ts +++ b/cli/tsc/dts/lib.deno.ns.d.ts @@ -4060,36 +4060,6 @@ declare namespace Deno { bytesReceived: number; } - /** - * A map of open resources that Deno is tracking. The key is the resource ID - * (_rid_) and the value is its representation. - * - * @deprecated This will be removed in Deno 2.0. - * - * @category Runtime */ - export interface ResourceMap { - [rid: number]: unknown; - } - - /** Returns a map of open resource IDs (_rid_) along with their string - * representations. This is an internal API and as such resource - * representation has `unknown` type; that means it can change any time and - * should not be depended upon. - * - * ```ts - * console.log(Deno.resources()); - * // { 0: "stdin", 1: "stdout", 2: "stderr" } - * Deno.openSync('../test.file'); - * console.log(Deno.resources()); - * // { 0: "stdin", 1: "stdout", 2: "stderr", 3: "fsFile" } - * ``` - * - * @deprecated This will be removed in Deno 2.0. - * - * @category Runtime - */ - export function resources(): ResourceMap; - /** * Additional information for FsEvent objects with the "other" kind. * diff --git a/runtime/js/99_main.js b/runtime/js/99_main.js index 20de6a0e16..36c43ff14d 100644 --- a/runtime/js/99_main.js +++ b/runtime/js/99_main.js @@ -620,10 +620,6 @@ const internalSymbol = Symbol("Deno.internal"); const finalDenoNs = { internal: internalSymbol, [internalSymbol]: internals, - resources() { - internals.warnOnDeprecatedApi("Deno.resources()", new Error().stack); - return core.resources(); - }, close(rid) { internals.warnOnDeprecatedApi( "Deno.close()", @@ -950,7 +946,6 @@ function bootstrapMainRuntime(runtimeOptions, warmup = false) { delete Deno.readAllSync; delete Deno.read; delete Deno.readSync; - delete Deno.resources; delete Deno.seek; delete Deno.seekSync; delete Deno.shutdown; @@ -1139,7 +1134,6 @@ function bootstrapWorkerRuntime( delete Deno.readAllSync; delete Deno.read; delete Deno.readSync; - delete Deno.resources; delete Deno.seek; delete Deno.seekSync; delete Deno.shutdown; diff --git a/tests/specs/future/runtime_api/main.js b/tests/specs/future/runtime_api/main.js index d0a138f2e7..85c160094f 100644 --- a/tests/specs/future/runtime_api/main.js +++ b/tests/specs/future/runtime_api/main.js @@ -21,7 +21,6 @@ console.log("Deno.readAll is", Deno.readAll); console.log("Deno.readAllSync is", Deno.readAllSync); console.log("Deno.read is", Deno.read); console.log("Deno.readSync is", Deno.readSync); -console.log("Deno.resources is", Deno.resources); console.log("Deno.seek is", Deno.seek); console.log("Deno.seekSync is", Deno.seekSync); console.log("Deno.shutdown is", Deno.shutdown); diff --git a/tests/specs/future/runtime_api/main.out b/tests/specs/future/runtime_api/main.out index 2cbda80054..18a39fc7a7 100644 --- a/tests/specs/future/runtime_api/main.out +++ b/tests/specs/future/runtime_api/main.out @@ -18,7 +18,6 @@ Deno.readAll is undefined Deno.readAllSync is undefined Deno.read is undefined Deno.readSync is undefined -Deno.resources is undefined Deno.seek is undefined Deno.seekSync is undefined Deno.shutdown is undefined diff --git a/tests/unit/resources_test.ts b/tests/unit/resources_test.ts index ec7f5bc5b2..3c692a1a44 100644 --- a/tests/unit/resources_test.ts +++ b/tests/unit/resources_test.ts @@ -2,68 +2,10 @@ // deno-lint-ignore-file no-deprecated-deno-api -import { - assert, - assertEquals, - assertThrows, - DENO_FUTURE, -} from "./test_util.ts"; - -const listenPort = 4505; +import { assertThrows } from "./test_util.ts"; Deno.test(function resourcesCloseBadArgs() { assertThrows(() => { Deno.close((null as unknown) as number); }, TypeError); }); - -Deno.test({ ignore: DENO_FUTURE }, function resourcesStdio() { - const res = Deno.resources(); - - assertEquals(res[0], "stdin"); - assertEquals(res[1], "stdout"); - assertEquals(res[2], "stderr"); -}); - -Deno.test( - { ignore: DENO_FUTURE, permissions: { net: true } }, - async function resourcesNet() { - const listener = Deno.listen({ port: listenPort }); - const dialerConn = await Deno.connect({ port: listenPort }); - const listenerConn = await listener.accept(); - - const res = Deno.resources(); - assertEquals( - Object.values(res).filter((r): boolean => r === "tcpListener").length, - 1, - ); - const tcpStreams = Object.values(res).filter( - (r): boolean => r === "tcpStream", - ); - assert(tcpStreams.length >= 2); - - listenerConn.close(); - dialerConn.close(); - listener.close(); - }, -); - -Deno.test( - { ignore: DENO_FUTURE, permissions: { read: true } }, - async function resourcesFile() { - const resourcesBefore = Deno.resources(); - const f = await Deno.open("tests/testdata/assets/hello.txt"); - const resourcesAfter = Deno.resources(); - f.close(); - - // check that exactly one new resource (file) was added - assertEquals( - Object.keys(resourcesAfter).length, - Object.keys(resourcesBefore).length + 1, - ); - const newRid = +Object.keys(resourcesAfter).find((rid): boolean => { - return !Object.prototype.hasOwnProperty.call(resourcesBefore, rid); - })!; - assertEquals(resourcesAfter[newRid], "fsFile"); - }, -);