0
0
Fork 0
mirror of https://github.com/denoland/deno.git synced 2025-03-03 17:34:47 -05:00

feat: deprecate Deno.write() and Deno.writeSync() (#22064)

For removal in Deno v2.
This commit is contained in:
Asher Gomez 2024-01-25 02:36:13 +11:00 committed by GitHub
parent 50eaeabefb
commit a5a973e93c
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 31 additions and 11 deletions

View file

@ -27,7 +27,7 @@ Deno.test(
create: true, create: true,
}); });
const data = new Uint8Array(64); const data = new Uint8Array(64);
await Deno.write(file.rid, data); await file.write(data);
await Deno.fdatasync(file.rid); await Deno.fdatasync(file.rid);
assertEquals(await Deno.readFile(filename), data); assertEquals(await Deno.readFile(filename), data);
await Deno.remove(filename); await Deno.remove(filename);

View file

@ -13,7 +13,7 @@ Deno.test({
create: true, create: true,
}); });
const data = new Uint8Array(64); const data = new Uint8Array(64);
await Deno.write(file.rid, data); await file.write(data);
await new Promise<void>((resolve, reject) => { await new Promise<void>((resolve, reject) => {
fdatasync(file.rid, (err: Error | null) => { fdatasync(file.rid, (err: Error | null) => {

View file

@ -117,13 +117,13 @@ Deno.test("tls.createServer creates a TLS server", async () => {
assertEquals(text.replaceAll("\0", ""), "welcome!\n"); assertEquals(text.replaceAll("\0", ""), "welcome!\n");
buf.fill(0); buf.fill(0);
Deno.write(conn.rid, new TextEncoder().encode("hey\n")); await conn.write(new TextEncoder().encode("hey\n"));
await conn.read(buf); await conn.read(buf);
text = new TextDecoder().decode(buf); text = new TextDecoder().decode(buf);
assertEquals(text.replaceAll("\0", ""), "hey\n"); assertEquals(text.replaceAll("\0", ""), "hey\n");
buf.fill(0); buf.fill(0);
Deno.write(conn.rid, new TextEncoder().encode("goodbye\n")); await conn.write(new TextEncoder().encode("goodbye\n"));
await conn.read(buf); await conn.read(buf);
text = new TextDecoder().decode(buf); text = new TextDecoder().decode(buf);
assertEquals(text.replaceAll("\0", ""), "goodbye\n"); assertEquals(text.replaceAll("\0", ""), "goodbye\n");

View file

@ -2039,6 +2039,9 @@ declare namespace Deno {
* const bytesWritten = await Deno.write(file.rid, data); // 11 * const bytesWritten = await Deno.write(file.rid, data); // 11
* ``` * ```
* *
* @deprecated Use `writer.write()` instead. {@linkcode Deno.write} will be
* removed in Deno 2.0.
*
* @category I/O * @category I/O
*/ */
export function write(rid: number, data: Uint8Array): Promise<number>; export function write(rid: number, data: Uint8Array): Promise<number>;
@ -2061,6 +2064,9 @@ declare namespace Deno {
* const bytesWritten = Deno.writeSync(file.rid, data); // 11 * const bytesWritten = Deno.writeSync(file.rid, data); // 11
* ``` * ```
* *
* @deprecated Use `writer.writeSync()` instead. {@linkcode Deno.writeSync}
* will be removed in Deno 2.0.
*
* @category I/O * @category I/O
*/ */
export function writeSync(rid: number, data: Uint8Array): number; export function writeSync(rid: number, data: Uint8Array): number;
@ -2074,7 +2080,7 @@ declare namespace Deno {
* "hello.txt", * "hello.txt",
* { read: true, write: true, truncate: true, create: true }, * { read: true, write: true, truncate: true, create: true },
* ); * );
* await Deno.write(file.rid, new TextEncoder().encode("Hello world")); * await file.write(new TextEncoder().encode("Hello world"));
* *
* // advance cursor 6 bytes * // advance cursor 6 bytes
* const cursorPosition = await Deno.seek(file.rid, 6, Deno.SeekMode.Start); * const cursorPosition = await Deno.seek(file.rid, 6, Deno.SeekMode.Start);
@ -2092,7 +2098,7 @@ declare namespace Deno {
* "hello.txt", * "hello.txt",
* { read: true, write: true, truncate: true, create: true }, * { read: true, write: true, truncate: true, create: true },
* ); * );
* await Deno.write(file.rid, new TextEncoder().encode("Hello world")); * await file.write(new TextEncoder().encode("Hello world"));
* *
* // Seek 6 bytes from the start of the file * // Seek 6 bytes from the start of the file
* console.log(await Deno.seek(file.rid, 6, Deno.SeekMode.Start)); // "6" * console.log(await Deno.seek(file.rid, 6, Deno.SeekMode.Start)); // "6"
@ -2170,7 +2176,7 @@ declare namespace Deno {
* "my_file.txt", * "my_file.txt",
* { read: true, write: true, create: true }, * { read: true, write: true, create: true },
* ); * );
* await Deno.write(file.rid, new TextEncoder().encode("Hello World")); * await file.write(new TextEncoder().encode("Hello World"));
* await file.truncate(1); * await file.truncate(1);
* await Deno.fsync(file.rid); * await Deno.fsync(file.rid);
* console.log(await Deno.readTextFile("my_file.txt")); // H * console.log(await Deno.readTextFile("my_file.txt")); // H
@ -2212,7 +2218,7 @@ declare namespace Deno {
* "my_file.txt", * "my_file.txt",
* { read: true, write: true, create: true }, * { read: true, write: true, create: true },
* ); * );
* await Deno.write(file.rid, new TextEncoder().encode("Hello World")); * await file.write(new TextEncoder().encode("Hello World"));
* await Deno.fdatasync(file.rid); * await Deno.fdatasync(file.rid);
* console.log(await Deno.readTextFile("my_file.txt")); // Hello World * console.log(await Deno.readTextFile("my_file.txt")); // Hello World
* ``` * ```
@ -5304,7 +5310,7 @@ declare namespace Deno {
* "my_file.txt", * "my_file.txt",
* { read: true, write: true, create: true } * { read: true, write: true, create: true }
* ); * );
* await Deno.write(file.rid, new TextEncoder().encode("Hello World")); * await file.write(new TextEncoder().encode("Hello World"));
* await Deno.ftruncate(file.rid, 7); * await Deno.ftruncate(file.rid, 7);
* const data = new Uint8Array(32); * const data = new Uint8Array(32);
* await Deno.read(file.rid, data); * await Deno.read(file.rid, data);

View file

@ -140,8 +140,22 @@ const denoNs = {
); );
return io.readSync(rid, buffer); return io.readSync(rid, buffer);
}, },
write: io.write, write(rid, data) {
writeSync: io.writeSync, internals.warnOnDeprecatedApi(
"Deno.write()",
new Error().stack,
"Use `writer.write()` instead.",
);
return io.write(rid, data);
},
writeSync(rid, data) {
internals.warnOnDeprecatedApi(
"Deno.writeSync()",
new Error().stack,
"Use `writer.writeSync()` instead.",
);
return io.writeSync(rid, data);
},
File: fs.File, File: fs.File,
FsFile, FsFile,
open: fs.open, open: fs.open,