summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--cli/tools/test/fmt.rs2
-rw-r--r--cli/tsc/dts/lib.deno.ns.d.ts39
-rw-r--r--ext/fs/30_fs.js18
-rw-r--r--runtime/js/90_deno_ns.js16
-rw-r--r--runtime/js/99_main.js4
-rw-r--r--tests/specs/future/runtime_api/main.js2
-rw-r--r--tests/specs/future/runtime_api/main.out2
-rw-r--r--tests/unit/stat_test.ts35
8 files changed, 5 insertions, 113 deletions
diff --git a/cli/tools/test/fmt.rs b/cli/tools/test/fmt.rs
index 0cdb3f05a..bfaac0616 100644
--- a/cli/tools/test/fmt.rs
+++ b/cli/tools/test/fmt.rs
@@ -319,7 +319,7 @@ pub const OP_DETAILS: phf::Map<&'static str, [&'static str; 2]> = phf_map! {
"op_fs_copy_file_async" => ["copy a file", "awaiting the result of a `Deno.copyFile` call"],
"op_fs_events_poll" => ["get the next file system event", "breaking out of a for await loop looping over `Deno.FsEvents`"],
"op_fs_fdatasync_async" => ["flush pending data operations for a file to disk", "awaiting the result of a `Deno.fdatasync` or `Deno.FsFile.syncData` call"],
- "op_fs_file_stat_async" => ["get file metadata", "awaiting the result of a `Deno.fstat` or `Deno.FsFile.stat` call"],
+ "op_fs_file_stat_async" => ["get file metadata", "awaiting the result of a `Deno.FsFile.prototype.stat` call"],
"op_fs_flock_async" => ["lock a file", "awaiting the result of a `Deno.FsFile.lock` call"],
"op_fs_fsync_async" => ["flush pending data operations for a file to disk", "awaiting the result of a `Deno.fsync` or `Deno.FsFile.sync` call"],
"op_fs_ftruncate_async" => ["truncate a file", "awaiting the result of a `Deno.ftruncate` or `Deno.FsFile.truncate` call"],
diff --git a/cli/tsc/dts/lib.deno.ns.d.ts b/cli/tsc/dts/lib.deno.ns.d.ts
index 8489a8de8..0b7ac7cc9 100644
--- a/cli/tsc/dts/lib.deno.ns.d.ts
+++ b/cli/tsc/dts/lib.deno.ns.d.ts
@@ -5327,45 +5327,6 @@ declare namespace Deno {
export function ftruncateSync(rid: number, len?: number): void;
/**
- * Returns a `Deno.FileInfo` for the given file stream.
- *
- * ```ts
- * import { assert } from "jsr:@std/assert";
- *
- * const file = await Deno.open("file.txt", { read: true });
- * const fileInfo = await Deno.fstat(file.rid);
- * assert(fileInfo.isFile);
- * ```
- *
- * @deprecated This will be 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 File System
- */
- export function fstat(rid: number): Promise<FileInfo>;
-
- /**
- * Synchronously returns a {@linkcode Deno.FileInfo} for the given file
- * stream.
- *
- * ```ts
- * import { assert } from "jsr:@std/assert";
- *
- * const file = Deno.openSync("file.txt", { read: true });
- * const fileInfo = Deno.fstatSync(file.rid);
- * assert(fileInfo.isFile);
- * ```
- *
- * @deprecated This will be 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 File System
- */
- export function fstatSync(rid: number): FileInfo;
-
- /**
* Synchronously changes the access (`atime`) and modification (`mtime`) times
* of a file system object referenced by `path`. Given times are either in
* seconds (UNIX epoch time) or as `Date` objects.
diff --git a/ext/fs/30_fs.js b/ext/fs/30_fs.js
index b95fe623a..87607ca28 100644
--- a/ext/fs/30_fs.js
+++ b/ext/fs/30_fs.js
@@ -395,15 +395,6 @@ function parseFileInfo(response) {
};
}
-function fstatSync(rid) {
- op_fs_file_stat_sync(rid, statBuf);
- return statStruct(statBuf);
-}
-
-async function fstat(rid) {
- return parseFileInfo(await op_fs_file_stat_async(rid));
-}
-
async function lstat(path) {
const res = await op_fs_lstat_async(pathFromURL(path));
return parseFileInfo(res);
@@ -687,12 +678,13 @@ class FsFile {
return seekSync(this.#rid, offset, whence);
}
- stat() {
- return fstat(this.#rid);
+ async stat() {
+ return parseFileInfo(await op_fs_file_stat_async(this.#rid));
}
statSync() {
- return fstatSync(this.#rid);
+ op_fs_file_stat_sync(this.#rid, statBuf);
+ return statStruct(statBuf);
}
async syncData() {
@@ -968,8 +960,6 @@ export {
fdatasyncSync,
File,
FsFile,
- fstat,
- fstatSync,
fsync,
fsyncSync,
ftruncate,
diff --git a/runtime/js/90_deno_ns.js b/runtime/js/90_deno_ns.js
index 7c805e647..3fdab7800 100644
--- a/runtime/js/90_deno_ns.js
+++ b/runtime/js/90_deno_ns.js
@@ -168,22 +168,6 @@ const denoNs = {
connectTls: tls.connectTls,
listenTls: tls.listenTls,
startTls: tls.startTls,
- fstatSync(rid) {
- internals.warnOnDeprecatedApi(
- "Deno.fstatSync()",
- new Error().stack,
- "Use `Deno.FsFile.statSync()` instead.",
- );
- return fs.fstatSync(rid);
- },
- fstat(rid) {
- internals.warnOnDeprecatedApi(
- "Deno.fstat()",
- new Error().stack,
- "Use `Deno.FsFile.stat()` instead.",
- );
- return fs.fstat(rid);
- },
fsyncSync: fs.fsyncSync,
fsync: fs.fsync,
fdatasyncSync: fs.fdatasyncSync,
diff --git a/runtime/js/99_main.js b/runtime/js/99_main.js
index 174612851..a30561433 100644
--- a/runtime/js/99_main.js
+++ b/runtime/js/99_main.js
@@ -802,8 +802,6 @@ function bootstrapMainRuntime(runtimeOptions, warmup = false) {
delete globalThis.window;
delete Deno.Buffer;
delete Deno.File;
- delete Deno.fstat;
- delete Deno.fstatSync;
delete Deno.ftruncate;
delete Deno.ftruncateSync;
delete Deno.FsFile.prototype.rid;
@@ -979,8 +977,6 @@ function bootstrapWorkerRuntime(
if (future) {
delete Deno.Buffer;
delete Deno.File;
- delete Deno.fstat;
- delete Deno.fstatSync;
delete Deno.ftruncate;
delete Deno.ftruncateSync;
delete Deno.FsFile.prototype.rid;
diff --git a/tests/specs/future/runtime_api/main.js b/tests/specs/future/runtime_api/main.js
index ab53a809b..4e22716f0 100644
--- a/tests/specs/future/runtime_api/main.js
+++ b/tests/specs/future/runtime_api/main.js
@@ -1,8 +1,6 @@
console.log("window is", globalThis.window);
console.log("Deno.Buffer is", Deno.Buffer);
console.log("Deno.File is", Deno.File);
-console.log("Deno.fstat is", Deno.fstat);
-console.log("Deno.fstatSync is", Deno.fstatSync);
console.log("Deno.ftruncate is", Deno.ftruncate);
console.log("Deno.ftruncateSync is", Deno.ftruncateSync);
console.log(
diff --git a/tests/specs/future/runtime_api/main.out b/tests/specs/future/runtime_api/main.out
index 08b62ea3a..922f4afad 100644
--- a/tests/specs/future/runtime_api/main.out
+++ b/tests/specs/future/runtime_api/main.out
@@ -1,8 +1,6 @@
window is undefined
Deno.Buffer is undefined
Deno.File is undefined
-Deno.fstat is undefined
-Deno.fstatSync is undefined
Deno.ftruncate is undefined
Deno.ftruncateSync is undefined
Deno.FsFile.prototype.rid is undefined
diff --git a/tests/unit/stat_test.ts b/tests/unit/stat_test.ts
index f9d780031..950ffa81b 100644
--- a/tests/unit/stat_test.ts
+++ b/tests/unit/stat_test.ts
@@ -1,49 +1,14 @@
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
-// deno-lint-ignore-file no-deprecated-deno-api
-
import {
assert,
assertEquals,
assertRejects,
assertThrows,
- DENO_FUTURE,
pathToAbsoluteFileUrl,
} from "./test_util.ts";
Deno.test(
- { ignore: DENO_FUTURE, permissions: { read: true } },
- function fstatSyncSuccess() {
- using file = Deno.openSync("README.md");
- const fileInfo = Deno.fstatSync(file.rid);
- assert(fileInfo.isFile);
- assert(!fileInfo.isSymlink);
- assert(!fileInfo.isDirectory);
- assert(fileInfo.size);
- assert(fileInfo.atime);
- assert(fileInfo.mtime);
- // The `birthtime` field is not available on Linux before kernel version 4.11.
- assert(fileInfo.birthtime || Deno.build.os === "linux");
- },
-);
-
-Deno.test(
- { ignore: DENO_FUTURE, permissions: { read: true } },
- async function fstatSuccess() {
- using file = await Deno.open("README.md");
- const fileInfo = await Deno.fstat(file.rid);
- assert(fileInfo.isFile);
- assert(!fileInfo.isSymlink);
- assert(!fileInfo.isDirectory);
- assert(fileInfo.size);
- assert(fileInfo.atime);
- assert(fileInfo.mtime);
- // The `birthtime` field is not available on Linux before kernel version 4.11.
- assert(fileInfo.birthtime || Deno.build.os === "linux");
- },
-);
-
-Deno.test(
{ permissions: { read: true, write: true } },
function statSyncSuccess() {
const readmeInfo = Deno.statSync("README.md");