summaryrefslogtreecommitdiff
path: root/deps/npm/node_modules/infer-owner/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'deps/npm/node_modules/infer-owner/README.md')
-rw-r--r--deps/npm/node_modules/infer-owner/README.md41
1 files changed, 41 insertions, 0 deletions
diff --git a/deps/npm/node_modules/infer-owner/README.md b/deps/npm/node_modules/infer-owner/README.md
new file mode 100644
index 0000000000..146caf7b8c
--- /dev/null
+++ b/deps/npm/node_modules/infer-owner/README.md
@@ -0,0 +1,41 @@
+# infer-owner
+
+Infer the owner of a path based on the owner of its nearest existing parent
+
+## USAGE
+
+```js
+const inferOwner = require('infer-owner')
+
+inferOwner('/some/cache/folder/file').then(owner => {
+ // owner is {uid, gid} that should be attached to
+ // the /some/cache/folder/file, based on ownership
+ // of /some/cache/folder, /some/cache, /some, or /,
+ // whichever is the first to exist
+})
+
+// same, but not async
+const owner = inferOwner.sync('/some/cache/folder/file')
+
+// results are cached! to reset the cache (eg, to change
+// permissions for whatever reason), do this:
+inferOwner.clearCache()
+```
+
+This module endeavors to be as performant as possible. Parallel requests
+for ownership of the same path will only stat the directories one time.
+
+## API
+
+* `inferOwner(path) -> Promise<{ uid, gid }>`
+
+ If the path exists, return its uid and gid. If it does not, look to
+ its parent, then its grandparent, and so on.
+
+* `inferOwner(path) -> { uid, gid }`
+
+ Sync form of `inferOwner(path)`.
+
+* `inferOwner.clearCache()`
+
+ Delete all cached ownership information and in-flight tracking.