Launch Week Day 5: Introducing Reachability for PHP.Learn More
Socket
Book a DemoSign in
Socket

@file-services/cached

Package Overview
Dependencies
Maintainers
4
Versions
53
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@file-services/cached - npm Package Compare versions

Comparing version
5.4.0
to
5.7.0
+1
-1
dist/cached-fs.d.ts.map

@@ -1,1 +0,1 @@

{"version":3,"file":"cached-fs.d.ts","sourceRoot":"","sources":["../src/cached-fs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAoC,MAAM,sBAAsB,CAAC;AAM1F,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C;;OAEG;IACH,aAAa,IAAI,IAAI,CAAC;CACvB;AAYD,wBAAgB,cAAc,CAAC,EAAE,EAAE,WAAW,GAAG,iBAAiB,CA2PjE"}
{"version":3,"file":"cached-fs.d.ts","sourceRoot":"","sources":["../src/cached-fs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAoC,MAAM,sBAAsB,CAAC;AAM1F,MAAM,WAAW,iBAAkB,SAAQ,WAAW;IACpD;;;OAGG;IACH,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/C;;OAEG;IACH,aAAa,IAAI,IAAI,CAAC;CACvB;AAYD,wBAAgB,cAAc,CAAC,EAAE,EAAE,WAAW,GAAG,iBAAiB,CAmQjE"}

@@ -11,7 +11,10 @@ "use strict";

const realpathCache = new Map();
const { promises } = fs;
const { promises, delimiter } = fs;
const suffixTrue = delimiter + 'true';
const suffixFalse = delimiter + 'false';
const invalidateAbsolute = (absolutePath) => {
const cachePath = getCanonicalPath(absolutePath);
realpathCache.delete(cachePath);
statsCache.delete(cachePath);
statsCache.delete(cachePath + suffixTrue);
statsCache.delete(cachePath + suffixFalse);
};

@@ -107,5 +110,7 @@ const invalidateAbsoluteByPrefix = (absolutePath) => {

},
statSync(path) {
statSync(path, options) {
var _a;
path = fs.resolve(path);
const cacheKey = getCanonicalPath(path);
const throwIfNoEntry = (_a = options === null || options === void 0 ? void 0 : options.throwIfNoEntry) !== null && _a !== void 0 ? _a : true;
const cacheKey = getCanonicalPath(path) + (throwIfNoEntry ? suffixTrue : suffixFalse);
const cachedStats = statsCache.get(cacheKey);

@@ -119,3 +124,3 @@ if (cachedStats) {

try {
const stats = fs.statSync(path);
const stats = fs.statSync(path, options);
statsCache.set(cacheKey, { kind: 'success', value: stats });

@@ -131,3 +136,4 @@ return stats;

path = fs.resolve(path);
const cacheKey = getCanonicalPath(path);
// force throwIfNoEntry, as callback version doesn't support it
const cacheKey = getCanonicalPath(path) + suffixTrue;
const cachedStats = statsCache.get(cacheKey);

@@ -241,3 +247,4 @@ if (cachedStats) {

path = fs.resolve(path);
const cacheKey = getCanonicalPath(path);
// force throwIfNoEntry, as this function doesn't support it
const cacheKey = getCanonicalPath(path) + suffixTrue;
const cachedStats = statsCache.get(cacheKey);

@@ -244,0 +251,0 @@ if (cachedStats) {

@@ -1,1 +0,1 @@

{"version":3,"file":"cached-fs.js","sourceRoot":"","sources":["../src/cached-fs.ts"],"names":[],"mappings":"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"}
{"version":3,"file":"cached-fs.js","sourceRoot":"","sources":["../src/cached-fs.ts"],"names":[],"mappings":"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"}
{
"name": "@file-services/cached",
"description": "A file system wrapper that adds cache to any `IFileSystem` implementation.",
"version": "5.4.0",
"version": "5.7.0",
"main": "dist/index.js",
"scripts": {
"test": "yarn test:node && yarn test:browser",
"test": "npm run test:node && npm run test:browser",
"test:node": "mocha \"./dist/test/*.{spec,nodespec}.js\"",

@@ -12,4 +12,4 @@ "test:browser": "mocha-play \"./dist/test/**/*.spec.js\""

"dependencies": {
"@file-services/types": "^5.4.0",
"@file-services/utils": "^5.4.0"
"@file-services/types": "^5.7.0",
"@file-services/utils": "^5.7.0"
},

@@ -16,0 +16,0 @@ "files": [

@@ -13,3 +13,3 @@ # @file-services/cached

```sh
yarn add @file-services/cached
npm i @file-services/cached
```

@@ -16,0 +16,0 @@

@@ -31,9 +31,14 @@ import type { IFileSystem, IFileSystemStats, CallbackFnVoid } from '@file-services/types';

const getCanonicalPath = fs.caseSensitive ? identity : toLowerCase;
const statsCache = new Map<string, ISuccessCacheResult<IFileSystemStats> | IFailureCacheResult>();
const statsCache = new Map<string, ISuccessCacheResult<IFileSystemStats | undefined> | IFailureCacheResult>();
const realpathCache = new Map<string, string>();
const { promises } = fs;
const { promises, delimiter } = fs;
const suffixTrue = delimiter + 'true';
const suffixFalse = delimiter + 'false';
const invalidateAbsolute = (absolutePath: string) => {
const cachePath = getCanonicalPath(absolutePath);
realpathCache.delete(cachePath);
statsCache.delete(cachePath);
statsCache.delete(cachePath + suffixTrue);
statsCache.delete(cachePath + suffixFalse);
};

@@ -130,5 +135,6 @@ const invalidateAbsoluteByPrefix = (absolutePath: string) => {

},
statSync(path) {
statSync(path, options) {
path = fs.resolve(path);
const cacheKey = getCanonicalPath(path);
const throwIfNoEntry = options?.throwIfNoEntry ?? true;
const cacheKey = getCanonicalPath(path) + (throwIfNoEntry ? suffixTrue : suffixFalse);
const cachedStats = statsCache.get(cacheKey);

@@ -139,8 +145,8 @@ if (cachedStats) {

}
return cachedStats.value;
return cachedStats.value as IFileSystemStats;
}
try {
const stats = fs.statSync(path);
const stats = fs.statSync(path, options);
statsCache.set(cacheKey, { kind: 'success', value: stats });
return stats;
return stats as IFileSystemStats;
} catch (e) {

@@ -153,3 +159,4 @@ statsCache.set(cacheKey, { kind: 'failure', error: e as Error });

path = fs.resolve(path);
const cacheKey = getCanonicalPath(path);
// force throwIfNoEntry, as callback version doesn't support it
const cacheKey = getCanonicalPath(path) + suffixTrue;
const cachedStats = statsCache.get(cacheKey);

@@ -160,3 +167,3 @@ if (cachedStats) {

} else if (cachedStats.kind === 'success') {
callback(null, cachedStats.value);
callback(null, cachedStats.value as IFileSystemStats);
}

@@ -259,5 +266,6 @@ } else {

},
async stat(path: string) {
async stat(path) {
path = fs.resolve(path);
const cacheKey = getCanonicalPath(path);
// force throwIfNoEntry, as this function doesn't support it
const cacheKey = getCanonicalPath(path) + suffixTrue;
const cachedStats = statsCache.get(cacheKey);

@@ -268,3 +276,3 @@ if (cachedStats) {

}
return cachedStats.value;
return cachedStats.value as IFileSystemStats;
}

@@ -271,0 +279,0 @@ try {