diff options
-rw-r--r-- | cli/js/files.ts | 27 | ||||
-rw-r--r-- | cli/js/lib.deno.ns.d.ts | 56 | ||||
-rw-r--r-- | cli/js/read_file.ts | 8 | ||||
-rw-r--r-- | cli/js/read_link.ts | 8 | ||||
-rw-r--r-- | cli/js/stat.ts | 28 | ||||
-rw-r--r-- | cli/js/truncate.ts | 8 | ||||
-rw-r--r-- | cli/js/utime.ts | 16 | ||||
-rw-r--r-- | cli/js/write_file.ts | 16 | ||||
-rw-r--r-- | cli/ops/files.rs | 18 | ||||
-rw-r--r-- | cli/ops/fs.rs | 40 |
10 files changed, 111 insertions, 114 deletions
diff --git a/cli/js/files.ts b/cli/js/files.ts index dafdd0b32..440d77be1 100644 --- a/cli/js/files.ts +++ b/cli/js/files.ts @@ -27,7 +27,7 @@ let OP_WRITE = -1; * * Requires `allow-read` and `allow-write` permissions depending on mode. */ -export function openSync(filename: string, mode?: OpenOptions): File; +export function openSync(path: string, mode?: OpenOptions): File; /** Synchronously open a file and return an instance of the `File` object. * @@ -35,11 +35,11 @@ export function openSync(filename: string, mode?: OpenOptions): File; * * Requires `allow-read` and `allow-write` permissions depending on mode. */ -export function openSync(filename: string, mode?: OpenMode): File; +export function openSync(path: string, mode?: OpenMode): File; /**@internal*/ export function openSync( - filename: string, + path: string, modeOrOptions: OpenOptions | OpenMode = "r" ): File { let mode = null; @@ -52,7 +52,7 @@ export function openSync( options = modeOrOptions; } - const rid = sendSyncJson("op_open", { filename, options, mode }); + const rid = sendSyncJson("op_open", { path, options, mode }); return new File(rid); } @@ -62,10 +62,7 @@ export function openSync( * * Requires `allow-read` and `allow-write` permissions depending on mode. */ -export async function open( - filename: string, - options?: OpenOptions -): Promise<File>; +export async function open(path: string, options?: OpenOptions): Promise<File>; /** Open a file and resolves to an instance of `Deno.File`. * @@ -73,11 +70,11 @@ export async function open( * * Requires `allow-read` and `allow-write` permissions depending on mode. */ -export async function open(filename: string, mode?: OpenMode): Promise<File>; +export async function open(path: string, mode?: OpenMode): Promise<File>; /**@internal*/ export async function open( - filename: string, + path: string, modeOrOptions: OpenOptions | OpenMode = "r" ): Promise<File> { let mode = null; @@ -91,7 +88,7 @@ export async function open( } const rid = await sendAsyncJson("op_open", { - filename, + path, options, mode }); @@ -105,8 +102,8 @@ export async function open( * * Requires `allow-read` and `allow-write` permissions. */ -export function createSync(filename: string): File { - return openSync(filename, "w+"); +export function createSync(path: string): File { + return openSync(path, "w+"); } /** Creates a file if none exists or truncates an existing file and resolves to @@ -116,8 +113,8 @@ export function createSync(filename: string): File { * * Requires `allow-read` and `allow-write` permissions. */ -export function create(filename: string): Promise<File> { - return open(filename, "w+"); +export function create(path: string): Promise<File> { + return open(path, "w+"); } /** Synchronously read from a file ID into an array buffer. diff --git a/cli/js/lib.deno.ns.d.ts b/cli/js/lib.deno.ns.d.ts index c6318b8ab..2acf62874 100644 --- a/cli/js/lib.deno.ns.d.ts +++ b/cli/js/lib.deno.ns.d.ts @@ -435,7 +435,7 @@ declare namespace Deno { * * Requires `allow-read` and `allow-write` permissions depending on mode. */ - export function openSync(filename: string, options?: OpenOptions): File; + export function openSync(path: string, options?: OpenOptions): File; /** Synchronously open a file and return an instance of the `File` object. * @@ -443,7 +443,7 @@ declare namespace Deno { * * Requires `allow-read` and `allow-write` permissions depending on mode. */ - export function openSync(filename: string, mode?: OpenMode): File; + export function openSync(path: string, mode?: OpenMode): File; /** Open a file and resolve to an instance of the `File` object. * @@ -451,7 +451,7 @@ declare namespace Deno { * * Requires `allow-read` and `allow-write` permissions depending on mode. */ - export function open(filename: string, options?: OpenOptions): Promise<File>; + export function open(path: string, options?: OpenOptions): Promise<File>; /** Open a file and resolves to an instance of `Deno.File`. * @@ -459,7 +459,7 @@ declare namespace Deno { * * Requires `allow-read` and `allow-write` permissions depending on mode. */ - export function open(filename: string, mode?: OpenMode): Promise<File>; + export function open(path: string, mode?: OpenMode): Promise<File>; /** Creates a file if none exists or truncates an existing file and returns * an instance of `Deno.File`. @@ -468,7 +468,7 @@ declare namespace Deno { * * Requires `allow-read` and `allow-write` permissions. */ - export function createSync(filename: string): File; + export function createSync(path: string): File; /** Creates a file if none exists or truncates an existing file and resolves to * an instance of `Deno.File`. @@ -477,7 +477,7 @@ declare namespace Deno { * * Requires `allow-read` and `allow-write` permissions. */ - export function create(filename: string): Promise<File>; + export function create(path: string): Promise<File>; /** Synchronously read from a file ID into an array buffer. * @@ -893,14 +893,14 @@ declare namespace Deno { /** **UNSTABLE**: needs investigation into high precision time. * * Synchronously changes the access and modification times of a file system - * object referenced by `filename`. Given times are either in seconds (UNIX - * epoch time) or as `Date` objects. + * object referenced by `path`. Given times are either in seconds (UNIX epoch + * time) or as `Date` objects. * * Deno.utimeSync("myfile.txt", 1556495550, new Date()); * * Requires `allow-write` permission. */ export function utimeSync( - filename: string, + path: string, atime: number | Date, mtime: number | Date ): void; @@ -908,14 +908,14 @@ declare namespace Deno { /** **UNSTABLE**: needs investigation into high precision time. * * Changes the access and modification times of a file system object - * referenced by `filename`. Given times are either in seconds (UNIX epoch - * time) or as `Date` objects. + * referenced by `path`. Given times are either in seconds (UNIX epoch time) + * or as `Date` objects. * * await Deno.utime("myfile.txt", 1556495550, new Date()); * * Requires `allow-write` permission. */ export function utime( - filename: string, + path: string, atime: number | Date, mtime: number | Date ): Promise<void>; @@ -976,7 +976,7 @@ declare namespace Deno { * console.log(decoder.decode(data)); * * Requires `allow-read` permission. */ - export function readFileSync(filename: string): Uint8Array; + export function readFileSync(path: string): Uint8Array; /** Reads and resolves to the entire contents of a file. * @@ -985,7 +985,7 @@ declare namespace Deno { * console.log(decoder.decode(data)); * * Requires `allow-read` permission. */ - export function readFile(filename: string): Promise<Uint8Array>; + export function readFile(path: string): Promise<Uint8Array>; // @url js/file_info.d.ts @@ -1127,52 +1127,52 @@ declare namespace Deno { * const targetPath = Deno.readlinkSync("symlink/path"); * * Requires `allow-read` permission. */ - export function readlinkSync(name: string): string; + export function readlinkSync(path: string): string; /** Resolves to the destination of the named symbolic link. * * const targetPath = await Deno.readlink("symlink/path"); * * Requires `allow-read` permission. */ - export function readlink(name: string): Promise<string>; + export function readlink(path: string): Promise<string>; // @url js/stat.d.ts - /** Resolves to a `Deno.FileInfo` for the specified path. If path is a + /** Resolves to a `Deno.FileInfo` for the specified `path`. If `path` is a * symlink, information for the symlink will be returned. * * const fileInfo = await Deno.lstat("hello.txt"); * assert(fileInfo.isFile()); * * Requires `allow-read` permission. */ - export function lstat(filename: string): Promise<FileInfo>; + export function lstat(path: string): Promise<FileInfo>; - /** Synchronously returns a `Deno.FileInfo` for the specified path. If - * path is a symlink, information for the symlink will be returned. + /** Synchronously returns a `Deno.FileInfo` for the specified `path`. If + * `path` is a symlink, information for the symlink will be returned. * * const fileInfo = Deno.lstatSync("hello.txt"); * assert(fileInfo.isFile()); * * Requires `allow-read` permission. */ - export function lstatSync(filename: string): FileInfo; + export function lstatSync(path: string): FileInfo; - /** Resolves to a `Deno.FileInfo` for the specified path. Will always follow - * symlinks. + /** Resolves to a `Deno.FileInfo` for the specified `path`. Will always + * follow symlinks. * * const fileInfo = await Deno.stat("hello.txt"); * assert(fileInfo.isFile()); * * Requires `allow-read` permission. */ - export function stat(filename: string): Promise<FileInfo>; + export function stat(path: string): Promise<FileInfo>; - /** Synchronously returns a `Deno.FileInfo` for the specified path. Will + /** Synchronously returns a `Deno.FileInfo` for the specified `path`. Will * always follow symlinks. * * const fileInfo = Deno.statSync("hello.txt"); * assert(fileInfo.isFile()); * * Requires `allow-read` permission. */ - export function statSync(filename: string): FileInfo; + export function statSync(path: string): FileInfo; // @url js/link.d.ts @@ -1246,7 +1246,7 @@ declare namespace Deno { * Requires `allow-write` permission, and `allow-read` if create is `false`. */ export function writeFileSync( - filename: string, + path: string, data: Uint8Array, options?: WriteFileOptions ): void; @@ -1261,7 +1261,7 @@ declare namespace Deno { * Requires `allow-write` permission, and `allow-read` if create is `false`. */ export function writeFile( - filename: string, + path: string, data: Uint8Array, options?: WriteFileOptions ): Promise<void>; diff --git a/cli/js/read_file.ts b/cli/js/read_file.ts index 31b0348e6..43372ca45 100644 --- a/cli/js/read_file.ts +++ b/cli/js/read_file.ts @@ -9,8 +9,8 @@ import { readAll, readAllSync } from "./buffer.ts"; * console.log(decoder.decode(data)); * * Requires `allow-read` permission. */ -export function readFileSync(filename: string): Uint8Array { - const file = openSync(filename); +export function readFileSync(path: string): Uint8Array { + const file = openSync(path); const contents = readAllSync(file); file.close(); return contents; @@ -23,8 +23,8 @@ export function readFileSync(filename: string): Uint8Array { * console.log(decoder.decode(data)); * * Requires `allow-read` permission. */ -export async function readFile(filename: string): Promise<Uint8Array> { - const file = await open(filename); +export async function readFile(path: string): Promise<Uint8Array> { + const file = await open(path); const contents = await readAll(file); file.close(); return contents; diff --git a/cli/js/read_link.ts b/cli/js/read_link.ts index 6f43e8867..64c60eedb 100644 --- a/cli/js/read_link.ts +++ b/cli/js/read_link.ts @@ -6,8 +6,8 @@ import { sendSync, sendAsync } from "./dispatch_json.ts"; * const targetPath = Deno.readlinkSync("symlink/path"); * * Requires `allow-read` permission. */ -export function readlinkSync(name: string): string { - return sendSync("op_read_link", { name }); +export function readlinkSync(path: string): string { + return sendSync("op_read_link", { path }); } /** Resolves to the destination of the named symbolic link. @@ -15,6 +15,6 @@ export function readlinkSync(name: string): string { * const targetPath = await Deno.readlink("symlink/path"); * * Requires `allow-read` permission. */ -export async function readlink(name: string): Promise<string> { - return await sendAsync("op_read_link", { name }); +export async function readlink(path: string): Promise<string> { + return await sendAsync("op_read_link", { path }); } diff --git a/cli/js/stat.ts b/cli/js/stat.ts index ea4ab1014..fa49953fb 100644 --- a/cli/js/stat.ts +++ b/cli/js/stat.ts @@ -23,61 +23,61 @@ export interface StatResponse { blocks: number; } -/** Resolves to a `Deno.FileInfo` for the specified path. If path is a +/** Resolves to a `Deno.FileInfo` for the specified `path`. If `path` is a * symlink, information for the symlink will be returned. * * const fileInfo = await Deno.lstat("hello.txt"); * assert(fileInfo.isFile()); * * Requires `allow-read` permission. */ -export async function lstat(filename: string): Promise<FileInfo> { +export async function lstat(path: string): Promise<FileInfo> { const res = (await sendAsync("op_stat", { - filename, + path, lstat: true })) as StatResponse; return new FileInfoImpl(res); } -/** Synchronously returns a `Deno.FileInfo` for the specified path. If - * path is a symlink, information for the symlink will be returned. +/** Synchronously returns a `Deno.FileInfo` for the specified `path`. If + * `path` is a symlink, information for the symlink will be returned. * * const fileInfo = Deno.lstatSync("hello.txt"); * assert(fileInfo.isFile()); * * Requires `allow-read` permission. */ -export function lstatSync(filename: string): FileInfo { +export function lstatSync(path: string): FileInfo { const res = sendSync("op_stat", { - filename, + path, lstat: true }) as StatResponse; return new FileInfoImpl(res); } -/** Resolves to a `Deno.FileInfo` for the specified path. Will always follow - * symlinks. +/** Resolves to a `Deno.FileInfo` for the specified `path`. Will always + * follow symlinks. * * const fileInfo = await Deno.stat("hello.txt"); * assert(fileInfo.isFile()); * * Requires `allow-read` permission. */ -export async function stat(filename: string): Promise<FileInfo> { +export async function stat(path: string): Promise<FileInfo> { const res = (await sendAsync("op_stat", { - filename, + path, lstat: false })) as StatResponse; return new FileInfoImpl(res); } -/** Synchronously returns a `Deno.FileInfo` for the specified path. Will +/** Synchronously returns a `Deno.FileInfo` for the specified `path`. Will * always follow symlinks. * * const fileInfo = Deno.statSync("hello.txt"); * assert(fileInfo.isFile()); * * Requires `allow-read` permission. */ -export function statSync(filename: string): FileInfo { +export function statSync(path: string): FileInfo { const res = sendSync("op_stat", { - filename, + path, lstat: false }) as StatResponse; return new FileInfoImpl(res); diff --git a/cli/js/truncate.ts b/cli/js/truncate.ts index d784b3614..15143479f 100644 --- a/cli/js/truncate.ts +++ b/cli/js/truncate.ts @@ -19,8 +19,8 @@ function coerceLen(len?: number): number { * Deno.truncateSync("hello.txt", 10); * * Requires `allow-write` permission. */ -export function truncateSync(name: string, len?: number): void { - sendSync("op_truncate", { name, len: coerceLen(len) }); +export function truncateSync(path: string, len?: number): void { + sendSync("op_truncate", { path, len: coerceLen(len) }); } /** Truncates or extends the specified file, to reach the specified `len`. @@ -28,6 +28,6 @@ export function truncateSync(name: string, len?: number): void { * await Deno.truncate("hello.txt", 10); * * Requires `allow-write` permission. */ -export async function truncate(name: string, len?: number): Promise<void> { - await sendAsync("op_truncate", { name, len: coerceLen(len) }); +export async function truncate(path: string, len?: number): Promise<void> { + await sendAsync("op_truncate", { path, len: coerceLen(len) }); } diff --git a/cli/js/utime.ts b/cli/js/utime.ts index 102e5f359..2026e60bf 100644 --- a/cli/js/utime.ts +++ b/cli/js/utime.ts @@ -8,19 +8,19 @@ function toSecondsFromEpoch(v: number | Date): number { /** **UNSTABLE**: needs investigation into high precision time. * * Synchronously changes the access and modification times of a file system - * object referenced by `filename`. Given times are either in seconds - * (Unix epoch time) or as `Date` objects. + * object referenced by `path`. Given times are either in seconds (UNIX epoch + * time) or as `Date` objects. * * Deno.utimeSync("myfile.txt", 1556495550, new Date()); * * Requires `allow-write` permission. */ export function utimeSync( - filename: string, + path: string, atime: number | Date, mtime: number | Date ): void { sendSync("op_utime", { - filename, + path, // TODO(ry) split atime, mtime into [seconds, nanoseconds] tuple atime: toSecondsFromEpoch(atime), mtime: toSecondsFromEpoch(mtime) @@ -30,19 +30,19 @@ export function utimeSync( /** **UNSTABLE**: needs investigation into high precision time. * * Changes the access and modification times of a file system object - * referenced by `filename`. Given times are either in seconds - * (Unix epoch time) or as `Date` objects. + * referenced by `path`. Given times are either in seconds (UNIX epoch time) + * or as `Date` objects. * * await Deno.utime("myfile.txt", 1556495550, new Date()); * * Requires `allow-write` permission. */ export async function utime( - filename: string, + path: string, atime: number | Date, mtime: number | Date ): Promise<void> { await sendAsync("op_utime", { - filename, + path, // TODO(ry) split atime, mtime into [seconds, nanoseconds] tuple atime: toSecondsFromEpoch(atime), mtime: toSecondsFromEpoch(mtime) diff --git a/cli/js/write_file.ts b/cli/js/write_file.ts index 445e4550d..3986eed78 100644 --- a/cli/js/write_file.ts +++ b/cli/js/write_file.ts @@ -26,7 +26,7 @@ export interface WriteFileOptions { * Requires `allow-write` permission, and `allow-read` if create is `false`. */ export function writeFileSync( - filename: string, + path: string, data: Uint8Array, options: WriteFileOptions = {} ): void { @@ -34,15 +34,15 @@ export function writeFileSync( const create = !!options.create; if (!create) { // verify that file exists - statSync(filename); + statSync(path); } } const openMode = !!options.append ? "a" : "w"; - const file = openSync(filename, openMode); + const file = openSync(path, openMode); if (options.perm !== undefined && options.perm !== null) { - chmodSync(filename, options.perm); + chmodSync(path, options.perm); } writeAllSync(file, data); @@ -59,7 +59,7 @@ export function writeFileSync( * Requires `allow-write` permission, and `allow-read` if create is `false`. */ export async function writeFile( - filename: string, + path: string, data: Uint8Array, options: WriteFileOptions = {} ): Promise<void> { @@ -67,15 +67,15 @@ export async function writeFile( const create = !!options.create; if (!create) { // verify that file exists - await stat(filename); + await stat(path); } } const openMode = !!options.append ? "a" : "w"; - const file = await open(filename, openMode); + const file = await open(path, openMode); if (options.perm !== undefined && options.perm !== null) { - await chmod(filename, options.perm); + await chmod(path, options.perm); } await writeAll(file, data); diff --git a/cli/ops/files.rs b/cli/ops/files.rs index b8ca7a229..842ee5b39 100644 --- a/cli/ops/files.rs +++ b/cli/ops/files.rs @@ -22,7 +22,7 @@ pub fn init(i: &mut Isolate, s: &State) { #[serde(rename_all = "camelCase")] struct OpenArgs { promise_id: Option<u64>, - filename: String, + path: String, options: Option<OpenOptions>, mode: Option<String>, } @@ -45,17 +45,17 @@ fn op_open( _zero_copy: Option<ZeroCopyBuf>, ) -> Result<JsonOp, OpError> { let args: OpenArgs = serde_json::from_value(args)?; - let filename = deno_fs::resolve_from_cwd(Path::new(&args.filename))?; + let path = deno_fs::resolve_from_cwd(Path::new(&args.path))?; let state_ = state.clone(); let mut open_options = tokio::fs::OpenOptions::new(); if let Some(options) = args.options { if options.read { - state.check_read(&filename)?; + state.check_read(&path)?; } if options.write || options.append { - state.check_write(&filename)?; + state.check_write(&path)?; } open_options @@ -69,14 +69,14 @@ fn op_open( let mode = mode.as_ref(); match mode { "r" => { - state.check_read(&filename)?; + state.check_read(&path)?; } "w" | "a" | "x" => { - state.check_write(&filename)?; + state.check_write(&path)?; } &_ => { - state.check_read(&filename)?; - state.check_write(&filename)?; + state.check_read(&path)?; + state.check_write(&path)?; } }; @@ -123,7 +123,7 @@ fn op_open( let is_sync = args.promise_id.is_none(); let fut = async move { - let fs_file = open_options.open(filename).await?; + let fs_file = open_options.open(path).await?; let mut state = state_.borrow_mut(); let rid = state.resource_table.add( "fsFile", diff --git a/cli/ops/fs.rs b/cli/ops/fs.rs index adf090182..84afb1e6e 100644 --- a/cli/ops/fs.rs +++ b/cli/ops/fs.rs @@ -275,7 +275,7 @@ fn get_stat_json( #[serde(rename_all = "camelCase")] struct StatArgs { promise_id: Option<u64>, - filename: String, + path: String, lstat: bool, } @@ -285,18 +285,18 @@ fn op_stat( _zero_copy: Option<ZeroCopyBuf>, ) -> Result<JsonOp, OpError> { let args: StatArgs = serde_json::from_value(args)?; - let filename = deno_fs::resolve_from_cwd(Path::new(&args.filename))?; + let path = deno_fs::resolve_from_cwd(Path::new(&args.path))?; let lstat = args.lstat; - state.check_read(&filename)?; + state.check_read(&path)?; let is_sync = args.promise_id.is_none(); blocking_json(is_sync, move || { - debug!("op_stat {} {}", filename.display(), lstat); + debug!("op_stat {} {}", path.display(), lstat); let metadata = if lstat { - fs::symlink_metadata(&filename)? + fs::symlink_metadata(&path)? } else { - fs::metadata(&filename)? + fs::metadata(&path)? }; get_stat_json(metadata, None) }) @@ -464,7 +464,7 @@ fn op_symlink( #[serde(rename_all = "camelCase")] struct ReadLinkArgs { promise_id: Option<u64>, - name: String, + path: String, } fn op_read_link( @@ -473,14 +473,14 @@ fn op_read_link( _zero_copy: Option<ZeroCopyBuf>, ) -> Result<JsonOp, OpError> { let args: ReadLinkArgs = serde_json::from_value(args)?; - let name = deno_fs::resolve_from_cwd(Path::new(&args.name))?; + let path = deno_fs::resolve_from_cwd(Path::new(&args.path))?; - state.check_read(&name)?; + state.check_read(&path)?; let is_sync = args.promise_id.is_none(); blocking_json(is_sync, move || { - debug!("op_read_link {}", name.display()); - let path = fs::read_link(&name)?; + debug!("op_read_link {}", path.display()); + let path = fs::read_link(&path)?; let path_str = path.to_str().unwrap(); Ok(json!(path_str)) @@ -491,7 +491,7 @@ fn op_read_link( #[serde(rename_all = "camelCase")] struct TruncateArgs { promise_id: Option<u64>, - name: String, + path: String, len: u64, } @@ -501,15 +501,15 @@ fn op_truncate( _zero_copy: Option<ZeroCopyBuf>, ) -> Result<JsonOp, OpError> { let args: TruncateArgs = serde_json::from_value(args)?; - let filename = deno_fs::resolve_from_cwd(Path::new(&args.name))?; + let path = deno_fs::resolve_from_cwd(Path::new(&args.path))?; let len = args.len; - state.check_write(&filename)?; + state.check_write(&path)?; let is_sync = args.promise_id.is_none(); blocking_json(is_sync, move || { - debug!("op_truncate {} {}", filename.display(), len); - let f = fs::OpenOptions::new().write(true).open(&filename)?; + debug!("op_truncate {} {}", path.display(), len); + let f = fs::OpenOptions::new().write(true).open(&path)?; f.set_len(len)?; Ok(json!({})) }) @@ -596,7 +596,7 @@ fn op_make_temp_file( #[serde(rename_all = "camelCase")] struct UtimeArgs { promise_id: Option<u64>, - filename: String, + path: String, atime: u64, mtime: u64, } @@ -607,11 +607,11 @@ fn op_utime( _zero_copy: Option<ZeroCopyBuf>, ) -> Result<JsonOp, OpError> { let args: UtimeArgs = serde_json::from_value(args)?; - state.check_write(Path::new(&args.filename))?; + state.check_write(Path::new(&args.path))?; let is_sync = args.promise_id.is_none(); blocking_json(is_sync, move || { - debug!("op_utime {} {} {}", args.filename, args.atime, args.mtime); - utime::set_file_times(args.filename, args.atime, args.mtime)?; + debug!("op_utime {} {} {}", args.path, args.atime, args.mtime); + utime::set_file_times(args.path, args.atime, args.mtime)?; Ok(json!({})) }) } |