Skip to content

Commit 2ea5a35

Browse files
43081jmrstork
andauthored
fix: remove path-exists (cache-utils) (#6600)
Co-authored-by: Mateusz Bocian <[email protected]>
1 parent d9f55d3 commit 2ea5a35

File tree

8 files changed

+23
-29
lines changed

8 files changed

+23
-29
lines changed

package-lock.json

Lines changed: 0 additions & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

packages/cache-utils/package.json

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,6 @@
5656
"junk": "^4.0.0",
5757
"locate-path": "^7.0.0",
5858
"move-file": "^3.0.0",
59-
"path-exists": "^5.0.0",
6059
"readdirp": "^4.0.0"
6160
},
6261
"devDependencies": {

packages/cache-utils/src/manifest.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
import { mkdir, readFile, rm, writeFile } from 'fs/promises'
2+
import { existsSync } from 'fs'
23
import { dirname } from 'path'
34

4-
import { pathExists } from 'path-exists'
5-
65
import { getExpires, checkExpires } from './expire.js'
76
import { getHash } from './hash.js'
87

@@ -20,7 +19,7 @@ export const getManifestInfo = async function ({ cachePath, move, ttl, digests }
2019

2120
// Whether the cache manifest has changed
2221
const isIdentical = async function ({ hash, manifestPath, manifestString }) {
23-
if (hash === undefined || !(await pathExists(manifestPath))) {
22+
if (hash === undefined || !existsSync(manifestPath)) {
2423
return false
2524
}
2625

@@ -55,7 +54,7 @@ const CACHE_EXTENSION = '.netlify.cache.json'
5554
// Check whether a file/directory is expired by checking its cache manifest
5655
export const isExpired = async function (cachePath) {
5756
const manifestPath = getManifestPath(cachePath)
58-
if (!(await pathExists(manifestPath))) {
57+
if (!existsSync(manifestPath)) {
5958
return false
6059
}
6160

packages/cache-utils/src/utils/cwd.ts

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,20 +1,19 @@
11
import { normalize } from 'path'
2+
import { existsSync } from 'fs'
23
import process from 'process'
34

4-
import { pathExists } from 'path-exists'
5-
65
// Like `process.cwd()` but safer when current directory is wrong
7-
export const safeGetCwd = async function (cwdOpt?: string) {
6+
export const safeGetCwd = function (cwdOpt?: string) {
87
try {
98
const cwd = getCwdValue(cwdOpt)
109

11-
if (!(await pathExists(cwd))) {
12-
return ''
10+
if (!existsSync(cwd)) {
11+
return Promise.resolve('')
1312
}
1413

15-
return cwd
14+
return Promise.resolve(cwd)
1615
} catch {
17-
return ''
16+
return Promise.resolve('')
1817
}
1918
}
2019

packages/cache-utils/tests/dir.test.ts

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
import { promises as fs } from 'fs'
1+
import { promises as fs, existsSync } from 'fs'
22

3-
import { pathExists } from 'path-exists'
43
import { MockInstance, afterEach, beforeEach, expect, test, vi } from 'vitest'
54

65
import { restore, save } from '../src/main.js'
@@ -29,5 +28,5 @@ test('Should allow changing the cache directory', async () => {
2928
expect(cachedFiles.length).toBe(1)
3029
await removeFiles(srcFile)
3130
expect(await restore(srcFile, { cacheDir })).toBe(true)
32-
expect(await pathExists(srcFile)).toBe(true)
31+
expect(existsSync(srcFile)).toBe(true)
3332
})

packages/cache-utils/tests/move.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
import { pathExists } from 'path-exists'
1+
import { existsSync } from 'node:fs'
22
import { test, expect } from 'vitest'
33

44
import { save, restore } from '../src/main.js'
@@ -9,9 +9,9 @@ test('Should allow moving files instead of copying them', async () => {
99
const [cacheDir, [srcFile, srcDir]] = await Promise.all([createTmpDir(), createTmpFile()])
1010
try {
1111
expect(await save(srcFile, { cacheDir, move: true })).toBe(true)
12-
expect(await pathExists(srcFile)).toBe(false)
12+
expect(existsSync(srcFile)).toBe(false)
1313
expect(await restore(srcFile, { cacheDir, move: true })).toBe(true)
14-
expect(await pathExists(srcFile)).toBe(true)
14+
expect(existsSync(srcFile)).toBe(true)
1515
} finally {
1616
await removeFiles([cacheDir, srcDir])
1717
}

packages/cache-utils/tests/path.test.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import { homedir } from 'os'
22
import { platform } from 'process'
3+
import { existsSync } from 'fs'
34

4-
import { pathExists } from 'path-exists'
55
import { test, expect } from 'vitest'
66

77
import { save, restore } from '../src/main.js'
@@ -14,7 +14,7 @@ test('Should allow caching files in home directory', async () => {
1414
expect(await save(srcFile, { cacheDir })).toBe(true)
1515
await removeFiles(srcFile)
1616
expect(await restore(srcFile, { cacheDir })).toBe(true)
17-
expect(await pathExists(srcFile)).toBe(true)
17+
expect(existsSync(srcFile)).toBe(true)
1818
} finally {
1919
await removeFiles([cacheDir, srcDir])
2020
}
@@ -43,7 +43,7 @@ if (platform !== 'win32') {
4343
await save(srcFile, { cwd: tmpDir })
4444
await removeFiles(srcFile)
4545
await restore(srcFile, { cwd: tmpDir })
46-
expect(await pathExists(srcFile)).toBe(true)
46+
expect(existsSync(srcFile)).toBe(true)
4747
} finally {
4848
await removeFiles(srcDir)
4949
}

packages/cache-utils/tests/save-restore.test.ts

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,5 @@
1-
import { promises as fs } from 'fs'
1+
import { promises as fs, existsSync } from 'fs'
22

3-
import { pathExists } from 'path-exists'
43
import { expect, test } from 'vitest'
54

65
import { save, restore, bindOpts, getCacheDir } from '../src/main.js'
@@ -18,7 +17,7 @@ test('Should cache and restore one file', async () => {
1817
expect(await save(srcFile, { cacheDir })).toBe(true)
1918
await removeFiles(srcFile)
2019
expect(await restore(srcFile, { cacheDir })).toBe(true)
21-
expect(await pathExists(srcFile)).toBe(true)
20+
expect(existsSync(srcFile)).toBe(true)
2221
} finally {
2322
await removeFiles([cacheDir, srcDir])
2423
}
@@ -34,7 +33,7 @@ test('Should cache and restore several files', async () => {
3433
expect(await save([srcFile, otherSrcFile], { cacheDir })).toBe(true)
3534
await removeFiles(srcFile)
3635
expect(await restore([srcFile, otherSrcFile], { cacheDir })).toBe(true)
37-
expect(await Promise.all([pathExists(srcFile), pathExists(otherSrcFile)])).toEqual([true, true])
36+
expect([existsSync(srcFile), existsSync(otherSrcFile)]).toEqual([true, true])
3837
} finally {
3938
await removeFiles([cacheDir, srcDir, otherSrcDir])
4039
}
@@ -48,7 +47,7 @@ test('Should cache and restore one directory', async () => {
4847
expect(await save(srcDir, { cacheDir })).toBe(true)
4948
await removeFiles(srcDir)
5049
expect(await restore(srcDir, { cacheDir })).toBe(true)
51-
expect(await pathExists(srcFile)).toBe(true)
50+
expect(existsSync(srcFile)).toBe(true)
5251
} finally {
5352
await removeFiles([cacheDir, srcDir])
5453
}
@@ -61,7 +60,7 @@ test('Should keep file contents when caching files', async () => {
6160
expect(await save(srcFile, { cacheDir })).toBe(true)
6261
await removeFiles(srcFile)
6362
expect(await restore(srcFile, { cacheDir })).toBe(true)
64-
expect(await pathExists(srcFile)).toBe(true)
63+
expect(existsSync(srcFile)).toBe(true)
6564
expect(await fs.readFile(srcFile, 'utf8')).toBe('test')
6665
} finally {
6766
await removeFiles([cacheDir, srcDir])
@@ -75,7 +74,7 @@ test('Should overwrite files on restore', async () => {
7574
expect(await save(srcFile, { cacheDir })).toBe(true)
7675
await fs.writeFile(srcFile, 'newTest')
7776
expect(await restore(srcFile, { cacheDir })).toBe(true)
78-
expect(await pathExists(srcFile)).toBe(true)
77+
expect(existsSync(srcFile)).toBe(true)
7978
expect(await fs.readFile(srcFile, 'utf8')).toBe('test')
8079
} finally {
8180
await removeFiles([cacheDir, srcDir])

0 commit comments

Comments
 (0)