binary-collections 2.0.11 → 2.0.13
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/binaries/binary-executor.cjs +89 -13
- package/binaries/clean-nodemodule.cjs +89 -13
- package/binaries/clean-nodemodules.cjs +89 -13
- package/binaries/dev.cjs +89 -13
- package/binaries/empty.cjs +89 -13
- package/binaries/git-reduce-size.cjs +89 -13
- package/binaries/javakill.cjs +89 -13
- package/binaries/kill-process.cjs +89 -13
- package/binaries/nodekill.cjs +89 -13
- package/binaries/prod.cjs +89 -13
- package/binaries/py.cjs +89 -13
- package/binaries/rmfind.cjs +89 -13
- package/binaries/rmx +15 -1
- package/binaries/rmx.cjs +89 -13
- package/binaries/rmx.cmd +12 -0
- package/binaries/submodule-token.cjs +89 -13
- package/binaries/test-cjs +9 -1
- package/binaries/test-cjs.cjs +89 -13
- package/binaries/test-cjs.cmd +16 -1
- package/binaries/test-esm +16 -0
- package/binaries/test-esm.cjs +254 -0
- package/binaries/test-esm.cmd +23 -0
- package/binaries/yarn-clean +1 -1
- package/binaries/yarn-clean.cjs +89 -13
- package/binaries/yarn-clean.cmd +1 -1
- package/binaries/yarn-clean.py +33 -15
- package/binaries/yc +131 -0
- package/binaries/yc.cjs +254 -0
- package/binaries/ycw +256 -0
- package/binaries/ycw.cjs +254 -0
- package/docs-src/binary-collections.md +34 -0
- package/docs-src/changelog.md +26 -0
- package/docs-src/clean-github-actions-caches.md +91 -2
- package/docs-src/copy-move-file.md +59 -0
- package/docs-src/del-gradle.md +17 -0
- package/docs-src/del-ps.md +28 -0
- package/docs-src/downloader.md +62 -0
- package/docs-src/env-helpers.md +29 -0
- package/docs-src/find-node-modules.md +17 -0
- package/docs-src/git-diff.md +33 -0
- package/docs-src/git-fix.md +34 -0
- package/docs-src/git-purge.md +17 -0
- package/docs-src/git-reduce-size.md +17 -0
- package/docs-src/git-undo.md +21 -0
- package/docs-src/kill-night-crows.md +26 -0
- package/docs-src/node-cache-cleaner.md +182 -0
- package/docs-src/node-executor.md +50 -0
- package/docs-src/node-package-packer.md +48 -0
- package/docs-src/npm-run-series.md +43 -0
- package/docs-src/package-resolutions-updater.md +22 -0
- package/docs-src/php-cs-fixer-staged.md +19 -0
- package/docs-src/print-directory-tree.md +35 -0
- package/docs-src/print-tarball-tree.md +55 -0
- package/docs-src/py.md +19 -0
- package/docs-src/remove-module.md +32 -0
- package/docs-src/rmfind-rmx.md +21 -0
- package/docs-src/rmpath.md +38 -0
- package/docs-src/run-by-checksum.md +87 -0
- package/docs-src/submodule-install.md +31 -0
- package/docs-src/submodule-remove.md +22 -0
- package/docs-src/submodule-token.md +17 -0
- package/docs-src/test-runners.md +21 -0
- package/docs-src/yarn-install.md +31 -0
- package/docs-src/yarn-reinstall.md +27 -0
- package/lib/binary-collections/config.cjs +126 -0
- package/lib/binary-collections/config.mjs +7 -0
- package/lib/binary-collections/executeScript.cjs +19 -0
- package/lib/binary-collections/executeScript.d.cts +12 -0
- package/lib/binary-collections/executeScript.mjs +6 -0
- package/lib/binary-collections/findScript.cjs +309 -0
- package/lib/binary-collections/findScript.d.cts +12 -0
- package/lib/binary-collections/findScript.mjs +7 -0
- package/lib/binary-collections/listScript.cjs +291 -0
- package/lib/binary-collections/listScript.d.cts +19 -0
- package/lib/binary-collections/listScript.mjs +7 -0
- package/lib/binary-collections.cjs +264 -157
- package/lib/binary-collections.mjs +26 -286
- package/lib/changelog.cjs +9 -14
- package/lib/changelog.mjs +2 -2
- package/lib/chunk-2MN4VPV2.mjs +246 -0
- package/lib/chunk-6C7KTYGZ.mjs +41 -0
- package/lib/{chunk-Z6JLYU2J.mjs → chunk-6RK5UCTP.mjs} +7 -12
- package/lib/chunk-CD3HF3LK.mjs +190 -0
- package/lib/chunk-FLYSZFLW.mjs +61 -0
- package/lib/{chunk-N436BNBK.mjs → chunk-GAGABICI.mjs} +19 -13
- package/lib/chunk-H44UWUFY.mjs +105 -0
- package/lib/chunk-KLKAIFKI.mjs +40 -0
- package/lib/chunk-LVSPEFU2.mjs +86 -0
- package/lib/{chunk-RWLXRTYP.mjs → chunk-MGPYPKIE.mjs} +2 -2
- package/lib/chunk-NGFK3EYW.mjs +28 -0
- package/lib/chunk-NQXUYO67.mjs +253 -0
- package/lib/chunk-NVEG3LEZ.mjs +143 -0
- package/lib/chunk-OBXLTXFJ.mjs +34 -0
- package/lib/chunk-OGXVGBRI.mjs +29 -0
- package/lib/chunk-OXV52GD5.mjs +62 -0
- package/lib/chunk-PXBMHE7O.mjs +35 -0
- package/lib/chunk-QD4T255Z.mjs +40 -0
- package/lib/chunk-QII2EKCS.mjs +26 -0
- package/lib/chunk-R5FJOR63.mjs +47 -0
- package/lib/chunk-RDGDLSPD.mjs +76 -0
- package/lib/chunk-RDN6HF5Z.mjs +79 -0
- package/lib/chunk-RJKTSUAX.mjs +123 -0
- package/lib/{chunk-XA3SNBPA.mjs → chunk-TBWXE7ST.mjs} +97 -38
- package/lib/chunk-UXCFNAR6.mjs +55 -0
- package/lib/{chunk-M3YIYRHT.mjs → chunk-UY5VUEA3.mjs} +1 -1
- package/lib/chunk-WSHVPGNM.mjs +44 -0
- package/lib/{chunk-66PAU5PS.mjs → chunk-X2B3X7D4.mjs} +10 -6
- package/lib/clean-github-actions-caches-cli.cjs +507 -0
- package/lib/clean-github-actions-caches-cli.mjs +74 -0
- package/lib/clean-github-actions-caches.cjs +246 -106
- package/lib/clean-github-actions-caches.d.cts +53 -1
- package/lib/clean-github-actions-caches.mjs +5 -130
- package/lib/cross-env/command.cjs +63 -0
- package/lib/cross-env/command.d.ts +8 -0
- package/lib/cross-env/command.js +45 -0
- package/lib/{ps/isWin.mjs → cross-env/command.mjs} +4 -5
- package/lib/cross-env/index.cjs +178 -0
- package/lib/cross-env/index.d.ts +8 -0
- package/lib/cross-env/index.js +102 -0
- package/lib/cross-env/index.mjs +101 -0
- package/lib/cross-env/variable.cjs +60 -0
- package/lib/cross-env/variable.d.ts +7 -0
- package/lib/cross-env/variable.js +59 -0
- package/lib/cross-env/variable.mjs +9 -0
- package/lib/del-gradle.cjs +8 -13
- package/lib/del-gradle.js +8 -8
- package/lib/del-gradle.mjs +1 -1
- package/lib/del-node-modules.cjs +185 -3
- package/lib/del-node-modules.js +25 -25
- package/lib/del-node-modules.mjs +6 -3
- package/lib/{del-ps.cjs → del-ps-cli.cjs} +38 -43
- package/lib/del-ps-cli.d.mts +1 -0
- package/lib/del-ps-cli.mjs +44 -0
- package/lib/del-yarn-caches.cjs +8 -13
- package/lib/del-yarn-caches.js +2 -2
- package/lib/del-yarn-caches.mjs +1 -1
- package/lib/downloader-cli.cjs +256 -0
- package/lib/downloader-cli.d.cts +2 -0
- package/lib/downloader-cli.mjs +90 -0
- package/lib/file/copy-cli.cjs +273 -0
- package/lib/file/copy-cli.d.mts +1 -0
- package/lib/file/copy-cli.mjs +59 -0
- package/lib/file/copy.cjs +56 -0
- package/lib/file/copy.d.mts +1 -0
- package/lib/file/copy.mjs +8 -0
- package/lib/file/move-cli.cjs +272 -0
- package/lib/file/move-cli.d.mts +1 -0
- package/lib/file/move-cli.mjs +59 -0
- package/lib/file/move.cjs +55 -0
- package/lib/file/move.d.mts +1 -0
- package/lib/file/move.mjs +8 -0
- package/lib/find-node-modules-cli.cjs +1 -1
- package/lib/find-node-modules-cli.js +1 -1
- package/lib/find-node-modules-cli.mjs +1 -1
- package/lib/find-node-modules.cjs +1 -1
- package/lib/find-node-modules.mjs +1 -1
- package/lib/free-chatgpt.cjs +27 -26
- package/lib/free-chatgpt.js +10 -10
- package/lib/free-chatgpt.mjs +2 -2
- package/lib/git/user-config.cjs +9 -14
- package/lib/git/user-config.mjs +2 -2
- package/lib/git-diff-cli.cjs +273 -66
- package/lib/git-diff-cli.mjs +5 -4
- package/lib/git-diff.cjs +273 -66
- package/lib/git-diff.d.ts +2 -1
- package/lib/git-diff.js +153 -39
- package/lib/git-diff.mjs +5 -4
- package/lib/git-fix.cjs +9 -14
- package/lib/git-fix.mjs +2 -2
- package/lib/git-purge.cjs +9 -14
- package/lib/git-purge.mjs +2 -2
- package/lib/index.cjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/index.mjs +1 -1
- package/lib/kill-night-crows.cjs +7 -7
- package/lib/kill-night-crows.mjs +7 -7
- package/lib/node-cache-cleaner/npm.cjs +65 -0
- package/lib/node-cache-cleaner/npm.d.ts +2 -0
- package/lib/node-cache-cleaner/npm.js +41 -0
- package/lib/node-cache-cleaner/npm.mjs +10 -0
- package/lib/node-cache-cleaner/npx.cjs +89 -0
- package/lib/node-cache-cleaner/npx.d.ts +4 -0
- package/lib/node-cache-cleaner/npx.js +82 -0
- package/lib/{ps/index.d.mjs → node-cache-cleaner/npx.mjs} +6 -5
- package/lib/node-cache-cleaner/yarn.cjs +73 -0
- package/lib/node-cache-cleaner/yarn.d.ts +2 -0
- package/lib/node-cache-cleaner/yarn.js +62 -0
- package/lib/node-cache-cleaner/yarn.mjs +10 -0
- package/lib/node-cache-cleaner-cli.cjs +365 -0
- package/lib/node-cache-cleaner-cli.d.ts +2 -0
- package/lib/node-cache-cleaner-cli.js +57 -0
- package/lib/node-cache-cleaner-cli.mjs +60 -0
- package/lib/node-executor.cjs +272 -0
- package/lib/node-executor.d.cts +2 -0
- package/lib/node-executor.mjs +106 -0
- package/lib/node-package-packer/build-readme.cjs +150 -0
- package/lib/node-package-packer/build-readme.d.mts +10 -0
- package/lib/node-package-packer/build-readme.mjs +10 -0
- package/lib/node-package-packer/build-tarball.cjs +495 -0
- package/lib/node-package-packer/build-tarball.d.mts +33 -0
- package/lib/node-package-packer/build-tarball.mjs +175 -0
- package/lib/node-package-packer-cli.cjs +525 -0
- package/lib/node-package-packer-cli.d.mts +1 -0
- package/lib/node-package-packer-cli.mjs +34 -0
- package/lib/npm-run-series.cjs +28 -40
- package/lib/npm-run-series.mjs +21 -7
- package/lib/package-resolutions-updater-cli.cjs +255 -173
- package/lib/package-resolutions-updater-cli.mjs +19 -40
- package/lib/package-resolutions-updater.cjs +244 -141
- package/lib/package-resolutions-updater.d.mts +54 -1
- package/lib/package-resolutions-updater.mjs +8 -5
- package/lib/php-cs-fixer-staged.cjs +1 -1
- package/lib/php-cs-fixer-staged.mjs +1 -1
- package/lib/print-directory-tree.cjs +18 -20
- package/lib/print-directory-tree.mjs +11 -8
- package/lib/print-tarball-tree.cjs +262 -0
- package/lib/print-tarball-tree.d.mts +1 -0
- package/lib/print-tarball-tree.mjs +68 -0
- package/lib/ps/connected-domain.js +10 -10
- package/lib/ps/index.cjs +11 -11
- package/lib/ps/index.mjs +180 -174
- package/lib/ps/table-parser.d.ts +3 -4
- package/lib/ps/table-parser.js +15 -22
- package/lib/remove-module.cjs +19 -24
- package/lib/remove-module.mjs +2 -2
- package/lib/rm-node-module-cli.cjs +389 -0
- package/lib/rm-node-module-cli.d.cts +1 -0
- package/lib/rm-node-module-cli.mjs +92 -0
- package/lib/rm-node-modules.cjs +127 -0
- package/lib/rm-node-modules.d.cts +35 -0
- package/lib/{binary-collections-config.mjs → rm-node-modules.mjs} +3 -3
- package/lib/rmpath-cli.cjs +285 -0
- package/lib/rmpath-cli.d.mts +1 -0
- package/lib/rmpath-cli.mjs +23 -0
- package/lib/rmpath.cjs +6 -217
- package/lib/rmpath.mjs +5 -101
- package/lib/run-by-checksum/cache.cjs +69 -0
- package/lib/run-by-checksum/cache.d.ts +19 -0
- package/lib/run-by-checksum/cache.js +50 -0
- package/lib/run-by-checksum/cache.mjs +12 -0
- package/lib/run-by-checksum/hash.cjs +72 -0
- package/lib/run-by-checksum/hash.d.ts +14 -0
- package/lib/run-by-checksum/hash.js +85 -0
- package/lib/run-by-checksum/hash.mjs +10 -0
- package/lib/run-by-checksum/run.cjs +169 -0
- package/lib/run-by-checksum/run.d.ts +22 -0
- package/lib/run-by-checksum/run.js +93 -0
- package/lib/run-by-checksum/run.mjs +10 -0
- package/lib/run-by-checksum-cli.cjs +382 -0
- package/lib/run-by-checksum-cli.d.ts +2 -0
- package/lib/run-by-checksum-cli.js +43 -0
- package/lib/run-by-checksum-cli.mjs +56 -0
- package/lib/submodule-install.cjs +55 -47
- package/lib/submodule-install.mjs +48 -35
- package/lib/submodule-remove-cli.cjs +170 -4
- package/lib/submodule-remove-cli.js +5 -5
- package/lib/submodule-remove-cli.mjs +6 -4
- package/lib/utils/chatgpt.cjs +19 -13
- package/lib/utils/chatgpt.js +94 -94
- package/lib/utils/chatgpt.mjs +1 -1
- package/lib/utils/fetchResponse.cjs +24 -0
- package/lib/utils/fetchResponse.d.cts +25 -0
- package/lib/utils/fetchResponse.mjs +6 -0
- package/lib/utils/findEnvFiles.cjs +28 -46
- package/lib/utils/findEnvFiles.d.cts +19 -0
- package/lib/utils/findEnvFiles.mjs +3 -5
- package/lib/utils/findWorkspaceRoot.js +4 -4
- package/lib/utils/index.cjs +7 -12
- package/lib/utils/index.d.cts +2 -9
- package/lib/utils/index.mjs +1 -1
- package/lib/utils/isGithubTokenValid.js +7 -7
- package/lib/{ps/isWin.cjs → utils/isWindows.cjs} +12 -7
- package/lib/utils/isWindows.d.ts +5 -0
- package/lib/utils/isWindows.js +10 -0
- package/lib/utils/isWindows.mjs +10 -0
- package/lib/utils/runBash.cjs +53 -0
- package/lib/utils/runBash.d.cts +12 -0
- package/lib/utils/runBash.mjs +66 -0
- package/lib/yarn-per-branch-lock-installer.cjs +288 -0
- package/lib/yarn-per-branch-lock-installer.d.cts +2 -0
- package/lib/yarn-per-branch-lock-installer.mjs +122 -0
- package/lib/yarn-reinstall.cjs +8 -13
- package/lib/yarn-reinstall.mjs +1 -1
- package/package.json +91 -57
- package/readme.html +784 -0
- package/readme.md +107 -219
- package/releases/readme.md +6 -3
- package/test/README.md +2 -2
- package/test-project/workspaces/workspace-a/readme.md +20 -0
- package/test-project/workspaces/workspace-a/release/readme.md +42 -0
- package/test-project/workspaces/workspace-a/test/readme.md +12 -0
- package/test-project/workspaces/workspace-b/readme.md +94 -0
- package/test-project/workspaces/workspace-b/requirements.txt +1 -0
- package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/readme.md +156 -0
- package/tmp/test-repo/README.md +2 -35
- package/tmp/test-repo-runChecksum/test-complex-glob/README.md +1 -0
- package/tmp/test-repo-runChecksum/test-mixed-args/README.md +1 -0
- package/lib/binary-collections-config.cjs +0 -15
- package/lib/chunk-2CBJCW7E.mjs +0 -81
- package/lib/chunk-4UHL4WVN.mjs +0 -136
- package/lib/chunk-6HHJRKFB.mjs +0 -59
- package/lib/chunk-6S4NXESK.mjs +0 -26
- package/lib/chunk-7XTEJHOE.mjs +0 -193
- package/lib/chunk-AJDD5DZM.mjs +0 -109
- package/lib/chunk-FCDQGYBF.mjs +0 -136
- package/lib/chunk-GEYA2USY.mjs +0 -207
- package/lib/chunk-GJTGHXRA.mjs +0 -356
- package/lib/chunk-ID2WBTE2.mjs +0 -80
- package/lib/chunk-JXFOHKDM.mjs +0 -239
- package/lib/chunk-NCXAP7AA.mjs +0 -31
- package/lib/chunk-PDSXF5HY.mjs +0 -187
- package/lib/chunk-TOIVAQF7.mjs +0 -136
- package/lib/chunk-V5SKYJUB.mjs +0 -136
- package/lib/chunk-WSRETQCA.mjs +0 -59
- package/lib/chunk-YYLIQQKF.mjs +0 -31
- package/lib/del-ps.js +0 -32
- package/lib/del-ps.mjs +0 -43
- package/lib/ps/index.d.cjs +0 -17
- package/lib/ps/index.d.ts +0 -2
- package/lib/ps/index.js +0 -254
- package/lib/ps/isWin.d.ts +0 -2
- package/lib/ps/isWin.js +0 -4
- package/lib/utils/findEnvFiles.d.ts +0 -8
- package/lib/utils/findEnvFiles.js +0 -121
- package/test/package.json +0 -20
- package/test-project/package.json +0 -16
- package/tmp/test-repo/package.json +0 -7
- package/tmp/typedoc/readme.md +0 -320
- /package/lib/{binary-collections-config.d.cts → binary-collections/config.d.cts} +0 -0
- /package/lib/{del-ps.d.ts → clean-github-actions-caches-cli.d.cts} +0 -0
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/run-by-checksum/cache.js
|
|
30
|
+
var cache_exports = {};
|
|
31
|
+
__export(cache_exports, {
|
|
32
|
+
getCacheFile: () => getCacheFile,
|
|
33
|
+
loadCache: () => loadCache,
|
|
34
|
+
saveCache: () => saveCache
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(cache_exports);
|
|
37
|
+
var import_fs_extra = __toESM(require("fs-extra"), 1);
|
|
38
|
+
var import_upath = __toESM(require("upath"), 1);
|
|
39
|
+
var import_crypto = __toESM(require("crypto"), 1);
|
|
40
|
+
function md5(str) {
|
|
41
|
+
return import_crypto.default.createHash("md5").update(str).digest("hex");
|
|
42
|
+
}
|
|
43
|
+
function getCacheFile({ patterns, ignore, cwd }) {
|
|
44
|
+
const root = cwd || process.env.INIT_CWD || process.cwd();
|
|
45
|
+
const key = md5(
|
|
46
|
+
JSON.stringify({
|
|
47
|
+
patterns: [...patterns].sort(),
|
|
48
|
+
ignore: [...ignore].sort()
|
|
49
|
+
})
|
|
50
|
+
);
|
|
51
|
+
return import_upath.default.join(root, "tmp", ".checksum", `${key}.json`);
|
|
52
|
+
}
|
|
53
|
+
function loadCache(file) {
|
|
54
|
+
try {
|
|
55
|
+
return import_fs_extra.default.readJsonSync(file);
|
|
56
|
+
} catch {
|
|
57
|
+
return null;
|
|
58
|
+
}
|
|
59
|
+
}
|
|
60
|
+
function saveCache(file, data) {
|
|
61
|
+
import_fs_extra.default.ensureDirSync(import_upath.default.dirname(file));
|
|
62
|
+
import_fs_extra.default.writeJsonSync(file, data, { spaces: 2 });
|
|
63
|
+
}
|
|
64
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
65
|
+
0 && (module.exports = {
|
|
66
|
+
getCacheFile,
|
|
67
|
+
loadCache,
|
|
68
|
+
saveCache
|
|
69
|
+
});
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{ patterns: string[], ignore: string[], cwd?: string }} options
|
|
3
|
+
* @returns {string}
|
|
4
|
+
*/
|
|
5
|
+
export function getCacheFile({ patterns, ignore, cwd }: {
|
|
6
|
+
patterns: string[];
|
|
7
|
+
ignore: string[];
|
|
8
|
+
cwd?: string;
|
|
9
|
+
}): string;
|
|
10
|
+
/**
|
|
11
|
+
* @param {string} file
|
|
12
|
+
* @returns {object|null}
|
|
13
|
+
*/
|
|
14
|
+
export function loadCache(file: string): object | null;
|
|
15
|
+
/**
|
|
16
|
+
* @param {string} file
|
|
17
|
+
* @param {object} data
|
|
18
|
+
*/
|
|
19
|
+
export function saveCache(file: string, data: object): void;
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.getCacheFile = getCacheFile;
|
|
7
|
+
exports.loadCache = loadCache;
|
|
8
|
+
exports.saveCache = saveCache;
|
|
9
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
10
|
+
const upath_1 = __importDefault(require("upath"));
|
|
11
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
12
|
+
/**
|
|
13
|
+
* @param {string} str
|
|
14
|
+
* @returns {string}
|
|
15
|
+
*/
|
|
16
|
+
function md5(str) {
|
|
17
|
+
return crypto_1.default.createHash('md5').update(str).digest('hex');
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* @param {{ patterns: string[], ignore: string[], cwd?: string }} options
|
|
21
|
+
* @returns {string}
|
|
22
|
+
*/
|
|
23
|
+
function getCacheFile({ patterns, ignore, cwd }) {
|
|
24
|
+
const root = cwd || process.env.INIT_CWD || process.cwd();
|
|
25
|
+
const key = md5(JSON.stringify({
|
|
26
|
+
patterns: [...patterns].sort(),
|
|
27
|
+
ignore: [...ignore].sort()
|
|
28
|
+
}));
|
|
29
|
+
return upath_1.default.join(root, 'tmp', '.checksum', `${key}.json`);
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* @param {string} file
|
|
33
|
+
* @returns {object|null}
|
|
34
|
+
*/
|
|
35
|
+
function loadCache(file) {
|
|
36
|
+
try {
|
|
37
|
+
return fs_extra_1.default.readJsonSync(file);
|
|
38
|
+
}
|
|
39
|
+
catch (_a) {
|
|
40
|
+
return null;
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* @param {string} file
|
|
45
|
+
* @param {object} data
|
|
46
|
+
*/
|
|
47
|
+
function saveCache(file, data) {
|
|
48
|
+
fs_extra_1.default.ensureDirSync(upath_1.default.dirname(file));
|
|
49
|
+
fs_extra_1.default.writeJsonSync(file, data, { spaces: 2 });
|
|
50
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
getCacheFile,
|
|
4
|
+
loadCache,
|
|
5
|
+
saveCache
|
|
6
|
+
} from "../chunk-QD4T255Z.mjs";
|
|
7
|
+
import "../chunk-QQ4A6DLD.mjs";
|
|
8
|
+
export {
|
|
9
|
+
getCacheFile,
|
|
10
|
+
loadCache,
|
|
11
|
+
saveCache
|
|
12
|
+
};
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/run-by-checksum/hash.js
|
|
30
|
+
var hash_exports = {};
|
|
31
|
+
__export(hash_exports, {
|
|
32
|
+
buildChecksum: () => buildChecksum,
|
|
33
|
+
getAllFiles: () => getAllFiles
|
|
34
|
+
});
|
|
35
|
+
module.exports = __toCommonJS(hash_exports);
|
|
36
|
+
var import_fs_extra = __toESM(require("fs-extra"), 1);
|
|
37
|
+
var glob = __toESM(require("glob"), 1);
|
|
38
|
+
var import_upath = __toESM(require("upath"), 1);
|
|
39
|
+
var import_upath2 = __toESM(require("upath"), 1);
|
|
40
|
+
var import_crypto = __toESM(require("crypto"), 1);
|
|
41
|
+
function getAllFiles({ patterns, ignore, cwd }) {
|
|
42
|
+
const files = /* @__PURE__ */ new Set();
|
|
43
|
+
const root = cwd || process.cwd();
|
|
44
|
+
for (const pattern of patterns) {
|
|
45
|
+
const matched = glob.sync(pattern, {
|
|
46
|
+
cwd: root,
|
|
47
|
+
nodir: true,
|
|
48
|
+
ignore
|
|
49
|
+
});
|
|
50
|
+
for (const f of matched) {
|
|
51
|
+
files.add(import_upath.default.normalize(import_upath2.default.resolve(root, f)));
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
return [...files].sort();
|
|
55
|
+
}
|
|
56
|
+
function hashFile(file) {
|
|
57
|
+
const content = import_fs_extra.default.readFileSync(file);
|
|
58
|
+
return import_crypto.default.createHash("sha256").update(content).digest("hex");
|
|
59
|
+
}
|
|
60
|
+
function buildChecksum(files) {
|
|
61
|
+
const hash = import_crypto.default.createHash("sha256");
|
|
62
|
+
for (const file of files) {
|
|
63
|
+
hash.update(file);
|
|
64
|
+
hash.update(hashFile(file));
|
|
65
|
+
}
|
|
66
|
+
return hash.digest("hex");
|
|
67
|
+
}
|
|
68
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
69
|
+
0 && (module.exports = {
|
|
70
|
+
buildChecksum,
|
|
71
|
+
getAllFiles
|
|
72
|
+
});
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{ patterns: string[], ignore: string[], cwd?: string }} options
|
|
3
|
+
* @returns {string[]}
|
|
4
|
+
*/
|
|
5
|
+
export function getAllFiles({ patterns, ignore, cwd }: {
|
|
6
|
+
patterns: string[];
|
|
7
|
+
ignore: string[];
|
|
8
|
+
cwd?: string;
|
|
9
|
+
}): string[];
|
|
10
|
+
/**
|
|
11
|
+
* @param {string[]} files
|
|
12
|
+
* @returns {string}
|
|
13
|
+
*/
|
|
14
|
+
export function buildChecksum(files: string[]): string;
|
|
@@ -0,0 +1,85 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.getAllFiles = getAllFiles;
|
|
40
|
+
exports.buildChecksum = buildChecksum;
|
|
41
|
+
const fs_extra_1 = __importDefault(require("fs-extra"));
|
|
42
|
+
const glob = __importStar(require("glob"));
|
|
43
|
+
const upath_1 = __importDefault(require("upath"));
|
|
44
|
+
const upath_2 = __importDefault(require("upath"));
|
|
45
|
+
const crypto_1 = __importDefault(require("crypto"));
|
|
46
|
+
/**
|
|
47
|
+
* @param {{ patterns: string[], ignore: string[], cwd?: string }} options
|
|
48
|
+
* @returns {string[]}
|
|
49
|
+
*/
|
|
50
|
+
function getAllFiles({ patterns, ignore, cwd }) {
|
|
51
|
+
const files = new Set();
|
|
52
|
+
const root = cwd || process.cwd();
|
|
53
|
+
for (const pattern of patterns) {
|
|
54
|
+
const matched = glob.sync(pattern, {
|
|
55
|
+
cwd: root,
|
|
56
|
+
nodir: true,
|
|
57
|
+
ignore
|
|
58
|
+
});
|
|
59
|
+
for (const f of matched) {
|
|
60
|
+
// Resolve to absolute path for consistent hashing
|
|
61
|
+
files.add(upath_1.default.normalize(upath_2.default.resolve(root, f)));
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return [...files].sort();
|
|
65
|
+
}
|
|
66
|
+
/**
|
|
67
|
+
* @param {string} file
|
|
68
|
+
* @returns {string}
|
|
69
|
+
*/
|
|
70
|
+
function hashFile(file) {
|
|
71
|
+
const content = fs_extra_1.default.readFileSync(file);
|
|
72
|
+
return crypto_1.default.createHash('sha256').update(content).digest('hex');
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* @param {string[]} files
|
|
76
|
+
* @returns {string}
|
|
77
|
+
*/
|
|
78
|
+
function buildChecksum(files) {
|
|
79
|
+
const hash = crypto_1.default.createHash('sha256');
|
|
80
|
+
for (const file of files) {
|
|
81
|
+
hash.update(file);
|
|
82
|
+
hash.update(hashFile(file));
|
|
83
|
+
}
|
|
84
|
+
return hash.digest('hex');
|
|
85
|
+
}
|
|
@@ -0,0 +1,169 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/run-by-checksum/run.js
|
|
30
|
+
var run_exports = {};
|
|
31
|
+
__export(run_exports, {
|
|
32
|
+
runChecksum: () => runChecksum
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(run_exports);
|
|
35
|
+
|
|
36
|
+
// src/run-by-checksum/hash.js
|
|
37
|
+
var import_fs_extra = __toESM(require("fs-extra"), 1);
|
|
38
|
+
var glob = __toESM(require("glob"), 1);
|
|
39
|
+
var import_upath = __toESM(require("upath"), 1);
|
|
40
|
+
var import_upath2 = __toESM(require("upath"), 1);
|
|
41
|
+
var import_crypto = __toESM(require("crypto"), 1);
|
|
42
|
+
function getAllFiles({ patterns, ignore, cwd }) {
|
|
43
|
+
const files = /* @__PURE__ */ new Set();
|
|
44
|
+
const root = cwd || process.cwd();
|
|
45
|
+
for (const pattern of patterns) {
|
|
46
|
+
const matched = glob.sync(pattern, {
|
|
47
|
+
cwd: root,
|
|
48
|
+
nodir: true,
|
|
49
|
+
ignore
|
|
50
|
+
});
|
|
51
|
+
for (const f of matched) {
|
|
52
|
+
files.add(import_upath.default.normalize(import_upath2.default.resolve(root, f)));
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
return [...files].sort();
|
|
56
|
+
}
|
|
57
|
+
function hashFile(file) {
|
|
58
|
+
const content = import_fs_extra.default.readFileSync(file);
|
|
59
|
+
return import_crypto.default.createHash("sha256").update(content).digest("hex");
|
|
60
|
+
}
|
|
61
|
+
function buildChecksum(files) {
|
|
62
|
+
const hash = import_crypto.default.createHash("sha256");
|
|
63
|
+
for (const file of files) {
|
|
64
|
+
hash.update(file);
|
|
65
|
+
hash.update(hashFile(file));
|
|
66
|
+
}
|
|
67
|
+
return hash.digest("hex");
|
|
68
|
+
}
|
|
69
|
+
|
|
70
|
+
// src/run-by-checksum/cache.js
|
|
71
|
+
var import_fs_extra2 = __toESM(require("fs-extra"), 1);
|
|
72
|
+
var import_upath3 = __toESM(require("upath"), 1);
|
|
73
|
+
var import_crypto2 = __toESM(require("crypto"), 1);
|
|
74
|
+
function md5(str) {
|
|
75
|
+
return import_crypto2.default.createHash("md5").update(str).digest("hex");
|
|
76
|
+
}
|
|
77
|
+
function getCacheFile({ patterns, ignore, cwd }) {
|
|
78
|
+
const root = cwd || process.env.INIT_CWD || process.cwd();
|
|
79
|
+
const key = md5(
|
|
80
|
+
JSON.stringify({
|
|
81
|
+
patterns: [...patterns].sort(),
|
|
82
|
+
ignore: [...ignore].sort()
|
|
83
|
+
})
|
|
84
|
+
);
|
|
85
|
+
return import_upath3.default.join(root, "tmp", ".checksum", `${key}.json`);
|
|
86
|
+
}
|
|
87
|
+
function loadCache(file) {
|
|
88
|
+
try {
|
|
89
|
+
return import_fs_extra2.default.readJsonSync(file);
|
|
90
|
+
} catch {
|
|
91
|
+
return null;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
function saveCache(file, data) {
|
|
95
|
+
import_fs_extra2.default.ensureDirSync(import_upath3.default.dirname(file));
|
|
96
|
+
import_fs_extra2.default.writeJsonSync(file, data, { spaces: 2 });
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
// src/run-by-checksum/run.js
|
|
100
|
+
var import_child_process = require("child_process");
|
|
101
|
+
async function runChecksum({
|
|
102
|
+
patterns = [],
|
|
103
|
+
ignore = [],
|
|
104
|
+
exec,
|
|
105
|
+
cwd = process.env.INIT_CWD || process.cwd(),
|
|
106
|
+
dryRun = false
|
|
107
|
+
}) {
|
|
108
|
+
if (!patterns.length && !exec) {
|
|
109
|
+
console.log("No patterns or command provided, skipping checksum runner.");
|
|
110
|
+
process.exit(1);
|
|
111
|
+
}
|
|
112
|
+
if (!exec) {
|
|
113
|
+
console.log("No command provided, skipping checksum runner.");
|
|
114
|
+
process.exit(1);
|
|
115
|
+
}
|
|
116
|
+
if (!patterns.length) {
|
|
117
|
+
console.log("No patterns provided, skipping checksum runner.");
|
|
118
|
+
process.exit(1);
|
|
119
|
+
}
|
|
120
|
+
const files = getAllFiles({ patterns, ignore, cwd });
|
|
121
|
+
const checksum = buildChecksum(files);
|
|
122
|
+
const cacheFile = getCacheFile({ patterns, ignore, cwd });
|
|
123
|
+
const cache = loadCache(cacheFile);
|
|
124
|
+
if ((cache == null ? void 0 : cache.checksum) === checksum) {
|
|
125
|
+
return {
|
|
126
|
+
changed: false,
|
|
127
|
+
cacheFile,
|
|
128
|
+
files
|
|
129
|
+
};
|
|
130
|
+
}
|
|
131
|
+
if (dryRun) {
|
|
132
|
+
return {
|
|
133
|
+
changed: true,
|
|
134
|
+
cacheFile,
|
|
135
|
+
files,
|
|
136
|
+
skipped: true
|
|
137
|
+
};
|
|
138
|
+
}
|
|
139
|
+
await runCommand(exec, cwd);
|
|
140
|
+
saveCache(cacheFile, {
|
|
141
|
+
checksum,
|
|
142
|
+
files,
|
|
143
|
+
patterns,
|
|
144
|
+
ignore,
|
|
145
|
+
updatedAt: (/* @__PURE__ */ new Date()).toISOString()
|
|
146
|
+
});
|
|
147
|
+
return {
|
|
148
|
+
changed: true,
|
|
149
|
+
cacheFile,
|
|
150
|
+
files
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
function runCommand(command, cwd) {
|
|
154
|
+
return new Promise((resolve, reject) => {
|
|
155
|
+
const child = (0, import_child_process.spawn)(command, {
|
|
156
|
+
shell: true,
|
|
157
|
+
stdio: "inherit",
|
|
158
|
+
cwd
|
|
159
|
+
});
|
|
160
|
+
child.on("exit", (code) => {
|
|
161
|
+
if (code === 0 || code === null) resolve();
|
|
162
|
+
else reject(new Error(`Command failed: ${code}`));
|
|
163
|
+
});
|
|
164
|
+
});
|
|
165
|
+
}
|
|
166
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
167
|
+
0 && (module.exports = {
|
|
168
|
+
runChecksum
|
|
169
|
+
});
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @param {{
|
|
3
|
+
* patterns: string[],
|
|
4
|
+
* ignore?: string[],
|
|
5
|
+
* exec: string,
|
|
6
|
+
* cwd?: string,
|
|
7
|
+
* dryRun?: boolean
|
|
8
|
+
* }} options
|
|
9
|
+
* @returns {Promise<{ changed: boolean, cacheFile: string, files: string[], skipped?: boolean }>}
|
|
10
|
+
*/
|
|
11
|
+
export function runChecksum({ patterns, ignore, exec, cwd, dryRun }: {
|
|
12
|
+
patterns: string[];
|
|
13
|
+
ignore?: string[];
|
|
14
|
+
exec: string;
|
|
15
|
+
cwd?: string;
|
|
16
|
+
dryRun?: boolean;
|
|
17
|
+
}): Promise<{
|
|
18
|
+
changed: boolean;
|
|
19
|
+
cacheFile: string;
|
|
20
|
+
files: string[];
|
|
21
|
+
skipped?: boolean;
|
|
22
|
+
}>;
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
+
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
+
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
+
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
+
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
+
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
+
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
+
});
|
|
10
|
+
};
|
|
11
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
|
+
exports.runChecksum = runChecksum;
|
|
13
|
+
const hash_js_1 = require("./hash.js");
|
|
14
|
+
const cache_js_1 = require("./cache.js");
|
|
15
|
+
const child_process_1 = require("child_process");
|
|
16
|
+
/**
|
|
17
|
+
* @param {{
|
|
18
|
+
* patterns: string[],
|
|
19
|
+
* ignore?: string[],
|
|
20
|
+
* exec: string,
|
|
21
|
+
* cwd?: string,
|
|
22
|
+
* dryRun?: boolean
|
|
23
|
+
* }} options
|
|
24
|
+
* @returns {Promise<{ changed: boolean, cacheFile: string, files: string[], skipped?: boolean }>}
|
|
25
|
+
*/
|
|
26
|
+
function runChecksum(_a) {
|
|
27
|
+
return __awaiter(this, arguments, void 0, function* ({ patterns = [], ignore = [], exec, cwd = process.env.INIT_CWD || process.cwd(), dryRun = false }) {
|
|
28
|
+
if (!patterns.length && !exec) {
|
|
29
|
+
console.log('No patterns or command provided, skipping checksum runner.');
|
|
30
|
+
process.exit(1);
|
|
31
|
+
}
|
|
32
|
+
if (!exec) {
|
|
33
|
+
console.log('No command provided, skipping checksum runner.');
|
|
34
|
+
process.exit(1);
|
|
35
|
+
}
|
|
36
|
+
if (!patterns.length) {
|
|
37
|
+
console.log('No patterns provided, skipping checksum runner.');
|
|
38
|
+
process.exit(1);
|
|
39
|
+
}
|
|
40
|
+
const files = (0, hash_js_1.getAllFiles)({ patterns, ignore, cwd });
|
|
41
|
+
const checksum = (0, hash_js_1.buildChecksum)(files);
|
|
42
|
+
const cacheFile = (0, cache_js_1.getCacheFile)({ patterns, ignore, cwd });
|
|
43
|
+
const cache = (0, cache_js_1.loadCache)(cacheFile);
|
|
44
|
+
if ((cache === null || cache === void 0 ? void 0 : cache.checksum) === checksum) {
|
|
45
|
+
return {
|
|
46
|
+
changed: false,
|
|
47
|
+
cacheFile,
|
|
48
|
+
files
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
if (dryRun) {
|
|
52
|
+
return {
|
|
53
|
+
changed: true,
|
|
54
|
+
cacheFile,
|
|
55
|
+
files,
|
|
56
|
+
skipped: true
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
yield runCommand(exec, cwd);
|
|
60
|
+
(0, cache_js_1.saveCache)(cacheFile, {
|
|
61
|
+
checksum,
|
|
62
|
+
files,
|
|
63
|
+
patterns,
|
|
64
|
+
ignore,
|
|
65
|
+
updatedAt: new Date().toISOString()
|
|
66
|
+
});
|
|
67
|
+
return {
|
|
68
|
+
changed: true,
|
|
69
|
+
cacheFile,
|
|
70
|
+
files
|
|
71
|
+
};
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* @param {string} command
|
|
76
|
+
* @param {string} [cwd]
|
|
77
|
+
* @returns {Promise<void>}
|
|
78
|
+
*/
|
|
79
|
+
function runCommand(command, cwd) {
|
|
80
|
+
return new Promise((resolve, reject) => {
|
|
81
|
+
const child = (0, child_process_1.spawn)(command, {
|
|
82
|
+
shell: true,
|
|
83
|
+
stdio: 'inherit',
|
|
84
|
+
cwd
|
|
85
|
+
});
|
|
86
|
+
child.on('exit', (code) => {
|
|
87
|
+
if (code === 0 || code === null)
|
|
88
|
+
resolve();
|
|
89
|
+
else
|
|
90
|
+
reject(new Error(`Command failed: ${code}`));
|
|
91
|
+
});
|
|
92
|
+
});
|
|
93
|
+
}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
2
|
+
import {
|
|
3
|
+
runChecksum
|
|
4
|
+
} from "../chunk-LVSPEFU2.mjs";
|
|
5
|
+
import "../chunk-QD4T255Z.mjs";
|
|
6
|
+
import "../chunk-WSHVPGNM.mjs";
|
|
7
|
+
import "../chunk-QQ4A6DLD.mjs";
|
|
8
|
+
export {
|
|
9
|
+
runChecksum
|
|
10
|
+
};
|