Skip to content

Commit 70a3710

Browse files
authored
refactor: replace find-cache-dir by find-up (#1031)
1 parent 94ff4eb commit 70a3710

File tree

3 files changed

+16
-88
lines changed

3 files changed

+16
-88
lines changed

package.json

+1-1
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010
"node": "^18.20.0 || ^20.10.0 || >=22.0.0"
1111
},
1212
"dependencies": {
13-
"find-cache-dir": "^4.0.0"
13+
"find-up": "^5.0.0"
1414
},
1515
"peerDependencies": {
1616
"@babel/core": "^7.12.0",

src/cache.js

+14-9
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,8 @@ const path = require("path");
1212
const zlib = require("zlib");
1313
const { promisify } = require("util");
1414
const { readFile, writeFile, mkdir } = require("fs/promises");
15-
// Lazily instantiated when needed
16-
const findCacheDirP = import("find-cache-dir");
17-
15+
const { sync: findUpSync } = require("find-up");
16+
const { env } = process;
1817
const transform = require("./transform");
1918
const serialize = require("./serialize");
2019
let defaultCacheDirectory = null;
@@ -162,14 +161,20 @@ module.exports = async function (params) {
162161
if (typeof params.cacheDirectory === "string") {
163162
directory = params.cacheDirectory;
164163
} else {
165-
if (defaultCacheDirectory === null) {
166-
const { default: findCacheDir } = await findCacheDirP;
167-
defaultCacheDirectory =
168-
findCacheDir({ name: "babel-loader" }) || os.tmpdir();
169-
}
170-
164+
defaultCacheDirectory ??= findCacheDir("babel-loader");
171165
directory = defaultCacheDirectory;
172166
}
173167

174168
return await handleCache(directory, params);
175169
};
170+
171+
function findCacheDir(name) {
172+
if (env.CACHE_DIR && !["true", "false", "1", "0"].includes(env.CACHE_DIR)) {
173+
return path.join(env.CACHE_DIR, name);
174+
}
175+
const rootPkgJSONPath = path.dirname(findUpSync("package.json"));
176+
if (rootPkgJSONPath) {
177+
return path.join(rootPkgJSONPath, "node_modules", ".cache", name);
178+
}
179+
return os.tmpdir();
180+
}

yarn.lock

+1-78
Original file line numberDiff line numberDiff line change
@@ -1979,7 +1979,7 @@ __metadata:
19791979
eslint: ^9.6.0
19801980
eslint-config-prettier: ^9.1.0
19811981
eslint-plugin-prettier: ^5.1.3
1982-
find-cache-dir: ^4.0.0
1982+
find-up: ^5.0.0
19831983
globals: ^15.8.0
19841984
husky: ^8.0.3
19851985
lint-staged: ^13.2.3
@@ -2304,13 +2304,6 @@ __metadata:
23042304
languageName: node
23052305
linkType: hard
23062306

2307-
"common-path-prefix@npm:^3.0.0":
2308-
version: 3.0.0
2309-
resolution: "common-path-prefix@npm:3.0.0"
2310-
checksum: fdb3c4f54e51e70d417ccd950c07f757582de800c0678ca388aedefefc84982039f346f9fd9a1252d08d2da9e9ef4019f580a1d1d3a10da031e4bb3c924c5818
2311-
languageName: node
2312-
linkType: hard
2313-
23142307
"concat-map@npm:0.0.1":
23152308
version: 0.0.1
23162309
resolution: "concat-map@npm:0.0.1"
@@ -2724,16 +2717,6 @@ __metadata:
27242717
languageName: node
27252718
linkType: hard
27262719

2727-
"find-cache-dir@npm:^4.0.0":
2728-
version: 4.0.0
2729-
resolution: "find-cache-dir@npm:4.0.0"
2730-
dependencies:
2731-
common-path-prefix: ^3.0.0
2732-
pkg-dir: ^7.0.0
2733-
checksum: 52a456a80deeb27daa3af6e06059b63bdb9cc4af4d845fc6d6229887e505ba913cd56000349caa60bc3aa59dacdb5b4c37903d4ba34c75102d83cab330b70d2f
2734-
languageName: node
2735-
linkType: hard
2736-
27372720
"find-up@npm:^5.0.0":
27382721
version: 5.0.0
27392722
resolution: "find-up@npm:5.0.0"
@@ -2744,16 +2727,6 @@ __metadata:
27442727
languageName: node
27452728
linkType: hard
27462729

2747-
"find-up@npm:^6.3.0":
2748-
version: 6.3.0
2749-
resolution: "find-up@npm:6.3.0"
2750-
dependencies:
2751-
locate-path: ^7.1.0
2752-
path-exists: ^5.0.0
2753-
checksum: 9a21b7f9244a420e54c6df95b4f6fc3941efd3c3e5476f8274eb452f6a85706e7a6a90de71353ee4f091fcb4593271a6f92810a324ec542650398f928783c280
2754-
languageName: node
2755-
linkType: hard
2756-
27572730
"flat-cache@npm:^4.0.0":
27582731
version: 4.0.1
27592732
resolution: "flat-cache@npm:4.0.1"
@@ -3396,15 +3369,6 @@ __metadata:
33963369
languageName: node
33973370
linkType: hard
33983371

3399-
"locate-path@npm:^7.1.0":
3400-
version: 7.2.0
3401-
resolution: "locate-path@npm:7.2.0"
3402-
dependencies:
3403-
p-locate: ^6.0.0
3404-
checksum: c1b653bdf29beaecb3d307dfb7c44d98a2a98a02ebe353c9ad055d1ac45d6ed4e1142563d222df9b9efebc2bcb7d4c792b507fad9e7150a04c29530b7db570f8
3405-
languageName: node
3406-
linkType: hard
3407-
34083372
"lodash.debounce@npm:^4.0.8":
34093373
version: 4.0.8
34103374
resolution: "lodash.debounce@npm:4.0.8"
@@ -3761,15 +3725,6 @@ __metadata:
37613725
languageName: node
37623726
linkType: hard
37633727

3764-
"p-limit@npm:^4.0.0":
3765-
version: 4.0.0
3766-
resolution: "p-limit@npm:4.0.0"
3767-
dependencies:
3768-
yocto-queue: ^1.0.0
3769-
checksum: 01d9d70695187788f984226e16c903475ec6a947ee7b21948d6f597bed788e3112cc7ec2e171c1d37125057a5f45f3da21d8653e04a3a793589e12e9e80e756b
3770-
languageName: node
3771-
linkType: hard
3772-
37733728
"p-locate@npm:^5.0.0":
37743729
version: 5.0.0
37753730
resolution: "p-locate@npm:5.0.0"
@@ -3779,15 +3734,6 @@ __metadata:
37793734
languageName: node
37803735
linkType: hard
37813736

3782-
"p-locate@npm:^6.0.0":
3783-
version: 6.0.0
3784-
resolution: "p-locate@npm:6.0.0"
3785-
dependencies:
3786-
p-limit: ^4.0.0
3787-
checksum: 2bfe5234efa5e7a4e74b30a5479a193fdd9236f8f6b4d2f3f69e3d286d9a7d7ab0c118a2a50142efcf4e41625def635bd9332d6cbf9cc65d85eb0718c579ab38
3788-
languageName: node
3789-
linkType: hard
3790-
37913737
"p-map@npm:^4.0.0":
37923738
version: 4.0.0
37933739
resolution: "p-map@npm:4.0.0"
@@ -3820,13 +3766,6 @@ __metadata:
38203766
languageName: node
38213767
linkType: hard
38223768

3823-
"path-exists@npm:^5.0.0":
3824-
version: 5.0.0
3825-
resolution: "path-exists@npm:5.0.0"
3826-
checksum: 8ca842868cab09423994596eb2c5ec2a971c17d1a3cb36dbf060592c730c725cd524b9067d7d2a1e031fef9ba7bd2ac6dc5ec9fb92aa693265f7be3987045254
3827-
languageName: node
3828-
linkType: hard
3829-
38303769
"path-is-absolute@npm:^1.0.0":
38313770
version: 1.0.1
38323771
resolution: "path-is-absolute@npm:1.0.1"
@@ -3895,15 +3834,6 @@ __metadata:
38953834
languageName: node
38963835
linkType: hard
38973836

3898-
"pkg-dir@npm:^7.0.0":
3899-
version: 7.0.0
3900-
resolution: "pkg-dir@npm:7.0.0"
3901-
dependencies:
3902-
find-up: ^6.3.0
3903-
checksum: 94298b20a446bfbbd66604474de8a0cdd3b8d251225170970f15d9646f633e056c80520dd5b4c1d1050c9fed8f6a9e5054b141c93806439452efe72e57562c03
3904-
languageName: node
3905-
linkType: hard
3906-
39073837
"prelude-ls@npm:^1.2.1":
39083838
version: 1.2.1
39093839
resolution: "prelude-ls@npm:1.2.1"
@@ -4772,10 +4702,3 @@ __metadata:
47724702
checksum: f77b3d8d00310def622123df93d4ee654fc6a0096182af8bd60679ddcdfb3474c56c6c7190817c84a2785648cdee9d721c0154eb45698c62176c322fb46fc700
47734703
languageName: node
47744704
linkType: hard
4775-
4776-
"yocto-queue@npm:^1.0.0":
4777-
version: 1.1.1
4778-
resolution: "yocto-queue@npm:1.1.1"
4779-
checksum: f2e05b767ed3141e6372a80af9caa4715d60969227f38b1a4370d60bffe153c9c5b33a862905609afc9b375ec57cd40999810d20e5e10229a204e8bde7ef255c
4780-
languageName: node
4781-
linkType: hard

0 commit comments

Comments
 (0)