Skip to content

Commit

Permalink
doc: document fs.realpath.native()
Browse files Browse the repository at this point in the history
Mea culpa, somehow I managed to drop the documentation commit while
merging the pull request.  This should have been included in commit
74023c0 ("fs: expose realpath(3) bindings") from this month.

PR-URL: #17059
Refs: #15776
Reviewed-By: Anna Henningsen <anna@addaleax.net>
Reviewed-By: Colin Ihrig <cjihrig@gmail.com>
Reviewed-By: Evan Lucas <evanlucas@me.com>
Reviewed-By: Luigi Pinca <luigipinca@gmail.com>
Reviewed-By: Refael Ackermann <refack@gmail.com>
  • Loading branch information
bnoordhuis authored and MylesBorins committed Dec 11, 2017
1 parent cf7e15c commit 7329537
Showing 1 changed file with 75 additions and 4 deletions.
79 changes: 75 additions & 4 deletions doc/api/fs.md
Original file line number Diff line number Diff line change
Expand Up @@ -2028,8 +2028,21 @@ changes:
* `err` {Error}
* `resolvedPath` {string|Buffer}

Asynchronous realpath(3). The `callback` gets two arguments `(err,
resolvedPath)`. May use `process.cwd` to resolve relative paths.
Asynchronously computes the canonical pathname by resolving `.`, `..` and
symbolic links.

Note that "canonical" does not mean "unique": hard links and bind mounts can
expose a file system entity through many pathnames.

This function behaves like realpath(3), with some exceptions:

1. No case conversion is performed on case-insensitive file systems.

2. The maximum number of symbolic links is platform-independent and generally
(much) higher than what the native realpath(3) implementation supports.

The `callback` gets two arguments `(err, resolvedPath)`. May use `process.cwd`
to resolve relative paths.

Only paths that can be converted to UTF8 strings are supported.

Expand All @@ -2041,6 +2054,33 @@ the path returned will be passed as a `Buffer` object.
*Note*: If `path` resolves to a socket or a pipe, the function will return a
system dependent name for that object.

## fs.realpath.native(path[, options], callback)
<!-- YAML
added: v9.2.0
-->

* `path` {string|Buffer|URL}
* `options` {string|Object}
* `encoding` {string} **Default:** `'utf8'`
* `callback` {Function}
* `err` {Error}
* `resolvedPath` {string|Buffer}

Asynchronous realpath(3).

The `callback` gets two arguments `(err, resolvedPath)`.

Only paths that can be converted to UTF8 strings are supported.

The optional `options` argument can be a string specifying an encoding, or an
object with an `encoding` property specifying the character encoding to use for
the path passed to the callback. If the `encoding` is set to `'buffer'`,
the path returned will be passed as a `Buffer` object.

*Note*: On Linux, when Node.js is linked against musl libc, the procfs file
system must be mounted on `/proc` in order for this function to work. Glibc
does not have this restriction.

## fs.realpathSync(path[, options])
<!-- YAML
added: v0.1.31
Expand All @@ -2065,9 +2105,18 @@ changes:
* `options` {string|Object}
* `encoding` {string} **Default:** `'utf8'`

Synchronous realpath(3). Returns the resolved path.
Synchronously computes the canonical pathname by resolving `.`, `..` and
symbolic links.

Only paths that can be converted to UTF8 strings are supported.
Note that "canonical" does not mean "unique": hard links and bind mounts can
expose a file system entity through many pathnames.

This function behaves like realpath(3), with some exceptions:

1. No case conversion is performed on case-insensitive file systems.

2. The maximum number of symbolic links is platform-independent and generally
(much) higher than what the native realpath(3) implementation supports.

The optional `options` argument can be a string specifying an encoding, or an
object with an `encoding` property specifying the character encoding to use for
Expand All @@ -2077,6 +2126,28 @@ will be passed as a `Buffer` object.
*Note*: If `path` resolves to a socket or a pipe, the function will return a
system dependent name for that object.

## fs.realpathSync.native(path[, options])
<!-- YAML
added: v9.2.0
-->

* `path` {string|Buffer|URL}
* `options` {string|Object}
* `encoding` {string} **Default:** `'utf8'`

Synchronous realpath(3).

Only paths that can be converted to UTF8 strings are supported.

The optional `options` argument can be a string specifying an encoding, or an
object with an `encoding` property specifying the character encoding to use for
the path passed to the callback. If the `encoding` is set to `'buffer'`,
the path returned will be passed as a `Buffer` object.

*Note*: On Linux, when Node.js is linked against musl libc, the procfs file
system must be mounted on `/proc` in order for this function to work. Glibc
does not have this restriction.

## fs.rename(oldPath, newPath, callback)
<!-- YAML
added: v0.0.2
Expand Down

0 comments on commit 7329537

Please sign in to comment.