mirror of
https://github.com/denoland/deno.git
synced 2025-10-03 07:34:36 +00:00
BREAKING(fs): remove Deno.fsync[Sync]()
(#25448)
Towards #22079 --------- Signed-off-by: Asher Gomez <ashersaupingomez@gmail.com>
This commit is contained in:
parent
064a73f7a0
commit
a445ebd74f
8 changed files with 9 additions and 96 deletions
|
@ -321,7 +321,7 @@ pub const OP_DETAILS: phf::Map<&'static str, [&'static str; 2]> = phf_map! {
|
||||||
"op_fs_file_sync_data_async" => ["flush pending data operations for a file to disk", "awaiting the result of a `Deno.FsFile.prototype.syncData` call"],
|
"op_fs_file_sync_data_async" => ["flush pending data operations for a file to disk", "awaiting the result of a `Deno.FsFile.prototype.syncData` call"],
|
||||||
"op_fs_file_stat_async" => ["get file metadata", "awaiting the result of a `Deno.FsFile.prototype.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_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_file_sync_async" => ["flush pending data operations for a file to disk", "awaiting the result of a `Deno.FsFile.sync` call"],
|
||||||
"op_fs_file_truncate_async" => ["truncate a file", "awaiting the result of a `Deno.FsFile.prototype.truncate` call"],
|
"op_fs_file_truncate_async" => ["truncate a file", "awaiting the result of a `Deno.FsFile.prototype.truncate` call"],
|
||||||
"op_fs_funlock_async" => ["unlock a file", "awaiting the result of a `Deno.FsFile.unlock` call"],
|
"op_fs_funlock_async" => ["unlock a file", "awaiting the result of a `Deno.FsFile.unlock` call"],
|
||||||
"op_fs_link_async" => ["create a hard link", "awaiting the result of a `Deno.link` call"],
|
"op_fs_link_async" => ["create a hard link", "awaiting the result of a `Deno.link` call"],
|
||||||
|
|
38
cli/tsc/dts/lib.deno.ns.d.ts
vendored
38
cli/tsc/dts/lib.deno.ns.d.ts
vendored
|
@ -1785,44 +1785,6 @@ declare namespace Deno {
|
||||||
*/
|
*/
|
||||||
export function createSync(path: string | URL): FsFile;
|
export function createSync(path: string | URL): FsFile;
|
||||||
|
|
||||||
/**
|
|
||||||
* Flushes any pending data and metadata operations of the given file stream
|
|
||||||
* to disk.
|
|
||||||
*
|
|
||||||
* ```ts
|
|
||||||
* const file = await Deno.open(
|
|
||||||
* "my_file.txt",
|
|
||||||
* { read: true, write: true, create: true },
|
|
||||||
* );
|
|
||||||
* await file.write(new TextEncoder().encode("Hello World"));
|
|
||||||
* await file.truncate(1);
|
|
||||||
* await Deno.fsync(file.rid);
|
|
||||||
* console.log(await Deno.readTextFile("my_file.txt")); // H
|
|
||||||
* ```
|
|
||||||
*
|
|
||||||
* @category File System
|
|
||||||
*/
|
|
||||||
export function fsync(rid: number): Promise<void>;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* Synchronously flushes any pending data and metadata operations of the given
|
|
||||||
* file stream to disk.
|
|
||||||
*
|
|
||||||
* ```ts
|
|
||||||
* const file = Deno.openSync(
|
|
||||||
* "my_file.txt",
|
|
||||||
* { read: true, write: true, create: true },
|
|
||||||
* );
|
|
||||||
* file.writeSync(new TextEncoder().encode("Hello World"));
|
|
||||||
* file.truncateSync(1);
|
|
||||||
* Deno.fsyncSync(file.rid);
|
|
||||||
* console.log(Deno.readTextFileSync("my_file.txt")); // H
|
|
||||||
* ```
|
|
||||||
*
|
|
||||||
* @category File System
|
|
||||||
*/
|
|
||||||
export function fsyncSync(rid: number): void;
|
|
||||||
|
|
||||||
/** The Deno abstraction for reading and writing files.
|
/** The Deno abstraction for reading and writing files.
|
||||||
*
|
*
|
||||||
* This is the most straight forward way of handling files within Deno and is
|
* This is the most straight forward way of handling files within Deno and is
|
||||||
|
|
|
@ -17,13 +17,13 @@ import {
|
||||||
op_fs_cwd,
|
op_fs_cwd,
|
||||||
op_fs_file_stat_async,
|
op_fs_file_stat_async,
|
||||||
op_fs_file_stat_sync,
|
op_fs_file_stat_sync,
|
||||||
|
op_fs_file_sync_async,
|
||||||
op_fs_file_sync_data_async,
|
op_fs_file_sync_data_async,
|
||||||
op_fs_file_sync_data_sync,
|
op_fs_file_sync_data_sync,
|
||||||
|
op_fs_file_sync_sync,
|
||||||
op_fs_file_truncate_async,
|
op_fs_file_truncate_async,
|
||||||
op_fs_flock_async,
|
op_fs_flock_async,
|
||||||
op_fs_flock_sync,
|
op_fs_flock_sync,
|
||||||
op_fs_fsync_async,
|
|
||||||
op_fs_fsync_sync,
|
|
||||||
op_fs_ftruncate_sync,
|
op_fs_ftruncate_sync,
|
||||||
op_fs_funlock_async,
|
op_fs_funlock_async,
|
||||||
op_fs_funlock_sync,
|
op_fs_funlock_sync,
|
||||||
|
@ -517,14 +517,6 @@ async function symlink(
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
function fsyncSync(rid) {
|
|
||||||
op_fs_fsync_sync(rid);
|
|
||||||
}
|
|
||||||
|
|
||||||
async function fsync(rid) {
|
|
||||||
await op_fs_fsync_async(rid);
|
|
||||||
}
|
|
||||||
|
|
||||||
function openSync(
|
function openSync(
|
||||||
path,
|
path,
|
||||||
options,
|
options,
|
||||||
|
@ -666,11 +658,11 @@ class FsFile {
|
||||||
}
|
}
|
||||||
|
|
||||||
async sync() {
|
async sync() {
|
||||||
await op_fs_fsync_async(this.#rid);
|
await op_fs_file_sync_async(this.#rid);
|
||||||
}
|
}
|
||||||
|
|
||||||
syncSync() {
|
syncSync() {
|
||||||
op_fs_fsync_sync(this.#rid);
|
op_fs_file_sync_sync(this.#rid);
|
||||||
}
|
}
|
||||||
|
|
||||||
async utime(atime, mtime) {
|
async utime(atime, mtime) {
|
||||||
|
@ -907,8 +899,6 @@ export {
|
||||||
createSync,
|
createSync,
|
||||||
cwd,
|
cwd,
|
||||||
FsFile,
|
FsFile,
|
||||||
fsync,
|
|
||||||
fsyncSync,
|
|
||||||
link,
|
link,
|
||||||
linkSync,
|
linkSync,
|
||||||
lstat,
|
lstat,
|
||||||
|
|
|
@ -231,8 +231,8 @@ deno_core::extension!(deno_fs,
|
||||||
op_fs_seek_async,
|
op_fs_seek_async,
|
||||||
op_fs_file_sync_data_sync,
|
op_fs_file_sync_data_sync,
|
||||||
op_fs_file_sync_data_async,
|
op_fs_file_sync_data_async,
|
||||||
op_fs_fsync_sync,
|
op_fs_file_sync_sync,
|
||||||
op_fs_fsync_async,
|
op_fs_file_sync_async,
|
||||||
op_fs_file_stat_sync,
|
op_fs_file_stat_sync,
|
||||||
op_fs_file_stat_async,
|
op_fs_file_stat_async,
|
||||||
op_fs_flock_async,
|
op_fs_flock_async,
|
||||||
|
|
|
@ -1450,7 +1450,7 @@ pub async fn op_fs_file_sync_data_async(
|
||||||
}
|
}
|
||||||
|
|
||||||
#[op2(fast)]
|
#[op2(fast)]
|
||||||
pub fn op_fs_fsync_sync(
|
pub fn op_fs_file_sync_sync(
|
||||||
state: &mut OpState,
|
state: &mut OpState,
|
||||||
#[smi] rid: ResourceId,
|
#[smi] rid: ResourceId,
|
||||||
) -> Result<(), AnyError> {
|
) -> Result<(), AnyError> {
|
||||||
|
@ -1460,7 +1460,7 @@ pub fn op_fs_fsync_sync(
|
||||||
}
|
}
|
||||||
|
|
||||||
#[op2(async)]
|
#[op2(async)]
|
||||||
pub async fn op_fs_fsync_async(
|
pub async fn op_fs_file_sync_async(
|
||||||
state: Rc<RefCell<OpState>>,
|
state: Rc<RefCell<OpState>>,
|
||||||
#[smi] rid: ResourceId,
|
#[smi] rid: ResourceId,
|
||||||
) -> Result<(), AnyError> {
|
) -> Result<(), AnyError> {
|
||||||
|
|
|
@ -98,8 +98,6 @@ const denoNs = {
|
||||||
connectTls: tls.connectTls,
|
connectTls: tls.connectTls,
|
||||||
listenTls: tls.listenTls,
|
listenTls: tls.listenTls,
|
||||||
startTls: tls.startTls,
|
startTls: tls.startTls,
|
||||||
fsyncSync: fs.fsyncSync,
|
|
||||||
fsync: fs.fsync,
|
|
||||||
symlink: fs.symlink,
|
symlink: fs.symlink,
|
||||||
symlinkSync: fs.symlinkSync,
|
symlinkSync: fs.symlinkSync,
|
||||||
link: fs.link,
|
link: fs.link,
|
||||||
|
|
|
@ -84,7 +84,6 @@ util::unit_test_factory!(
|
||||||
structured_clone_test,
|
structured_clone_test,
|
||||||
symbol_test,
|
symbol_test,
|
||||||
symlink_test,
|
symlink_test,
|
||||||
sync_test,
|
|
||||||
test_util,
|
test_util,
|
||||||
testing_test,
|
testing_test,
|
||||||
text_encoding_test,
|
text_encoding_test,
|
||||||
|
|
|
@ -1,36 +0,0 @@
|
||||||
// Copyright 2018-2024 the Deno authors. All rights reserved. MIT license.
|
|
||||||
import { assertEquals, DENO_FUTURE } from "./test_util.ts";
|
|
||||||
|
|
||||||
Deno.test(
|
|
||||||
{ ignore: DENO_FUTURE, permissions: { read: true, write: true } },
|
|
||||||
function fsyncSyncSuccess() {
|
|
||||||
const filename = Deno.makeTempDirSync() + "/test_fsyncSync.txt";
|
|
||||||
using file = Deno.openSync(filename, {
|
|
||||||
read: true,
|
|
||||||
write: true,
|
|
||||||
create: true,
|
|
||||||
});
|
|
||||||
const size = 64;
|
|
||||||
file.truncateSync(size);
|
|
||||||
Deno.fsyncSync(file.rid);
|
|
||||||
assertEquals(Deno.statSync(filename).size, size);
|
|
||||||
Deno.removeSync(filename);
|
|
||||||
},
|
|
||||||
);
|
|
||||||
|
|
||||||
Deno.test(
|
|
||||||
{ ignore: DENO_FUTURE, permissions: { read: true, write: true } },
|
|
||||||
async function fsyncSuccess() {
|
|
||||||
const filename = (await Deno.makeTempDir()) + "/test_fsync.txt";
|
|
||||||
using file = await Deno.open(filename, {
|
|
||||||
read: true,
|
|
||||||
write: true,
|
|
||||||
create: true,
|
|
||||||
});
|
|
||||||
const size = 64;
|
|
||||||
await file.truncate(size);
|
|
||||||
await Deno.fsync(file.rid);
|
|
||||||
assertEquals((await Deno.stat(filename)).size, size);
|
|
||||||
await Deno.remove(filename);
|
|
||||||
},
|
|
||||||
);
|
|
Loading…
Add table
Add a link
Reference in a new issue