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.
Files changed (330) hide show
  1. package/binaries/binary-executor.cjs +89 -13
  2. package/binaries/clean-nodemodule.cjs +89 -13
  3. package/binaries/clean-nodemodules.cjs +89 -13
  4. package/binaries/dev.cjs +89 -13
  5. package/binaries/empty.cjs +89 -13
  6. package/binaries/git-reduce-size.cjs +89 -13
  7. package/binaries/javakill.cjs +89 -13
  8. package/binaries/kill-process.cjs +89 -13
  9. package/binaries/nodekill.cjs +89 -13
  10. package/binaries/prod.cjs +89 -13
  11. package/binaries/py.cjs +89 -13
  12. package/binaries/rmfind.cjs +89 -13
  13. package/binaries/rmx +15 -1
  14. package/binaries/rmx.cjs +89 -13
  15. package/binaries/rmx.cmd +12 -0
  16. package/binaries/submodule-token.cjs +89 -13
  17. package/binaries/test-cjs +9 -1
  18. package/binaries/test-cjs.cjs +89 -13
  19. package/binaries/test-cjs.cmd +16 -1
  20. package/binaries/test-esm +16 -0
  21. package/binaries/test-esm.cjs +254 -0
  22. package/binaries/test-esm.cmd +23 -0
  23. package/binaries/yarn-clean +1 -1
  24. package/binaries/yarn-clean.cjs +89 -13
  25. package/binaries/yarn-clean.cmd +1 -1
  26. package/binaries/yarn-clean.py +33 -15
  27. package/binaries/yc +131 -0
  28. package/binaries/yc.cjs +254 -0
  29. package/binaries/ycw +256 -0
  30. package/binaries/ycw.cjs +254 -0
  31. package/docs-src/binary-collections.md +34 -0
  32. package/docs-src/changelog.md +26 -0
  33. package/docs-src/clean-github-actions-caches.md +91 -2
  34. package/docs-src/copy-move-file.md +59 -0
  35. package/docs-src/del-gradle.md +17 -0
  36. package/docs-src/del-ps.md +28 -0
  37. package/docs-src/downloader.md +62 -0
  38. package/docs-src/env-helpers.md +29 -0
  39. package/docs-src/find-node-modules.md +17 -0
  40. package/docs-src/git-diff.md +33 -0
  41. package/docs-src/git-fix.md +34 -0
  42. package/docs-src/git-purge.md +17 -0
  43. package/docs-src/git-reduce-size.md +17 -0
  44. package/docs-src/git-undo.md +21 -0
  45. package/docs-src/kill-night-crows.md +26 -0
  46. package/docs-src/node-cache-cleaner.md +182 -0
  47. package/docs-src/node-executor.md +50 -0
  48. package/docs-src/node-package-packer.md +48 -0
  49. package/docs-src/npm-run-series.md +43 -0
  50. package/docs-src/package-resolutions-updater.md +22 -0
  51. package/docs-src/php-cs-fixer-staged.md +19 -0
  52. package/docs-src/print-directory-tree.md +35 -0
  53. package/docs-src/print-tarball-tree.md +55 -0
  54. package/docs-src/py.md +19 -0
  55. package/docs-src/remove-module.md +32 -0
  56. package/docs-src/rmfind-rmx.md +21 -0
  57. package/docs-src/rmpath.md +38 -0
  58. package/docs-src/run-by-checksum.md +87 -0
  59. package/docs-src/submodule-install.md +31 -0
  60. package/docs-src/submodule-remove.md +22 -0
  61. package/docs-src/submodule-token.md +17 -0
  62. package/docs-src/test-runners.md +21 -0
  63. package/docs-src/yarn-install.md +31 -0
  64. package/docs-src/yarn-reinstall.md +27 -0
  65. package/lib/binary-collections/config.cjs +126 -0
  66. package/lib/binary-collections/config.mjs +7 -0
  67. package/lib/binary-collections/executeScript.cjs +19 -0
  68. package/lib/binary-collections/executeScript.d.cts +12 -0
  69. package/lib/binary-collections/executeScript.mjs +6 -0
  70. package/lib/binary-collections/findScript.cjs +309 -0
  71. package/lib/binary-collections/findScript.d.cts +12 -0
  72. package/lib/binary-collections/findScript.mjs +7 -0
  73. package/lib/binary-collections/listScript.cjs +291 -0
  74. package/lib/binary-collections/listScript.d.cts +19 -0
  75. package/lib/binary-collections/listScript.mjs +7 -0
  76. package/lib/binary-collections.cjs +264 -157
  77. package/lib/binary-collections.mjs +26 -286
  78. package/lib/changelog.cjs +9 -14
  79. package/lib/changelog.mjs +2 -2
  80. package/lib/chunk-2MN4VPV2.mjs +246 -0
  81. package/lib/chunk-6C7KTYGZ.mjs +41 -0
  82. package/lib/{chunk-Z6JLYU2J.mjs → chunk-6RK5UCTP.mjs} +7 -12
  83. package/lib/chunk-CD3HF3LK.mjs +190 -0
  84. package/lib/chunk-FLYSZFLW.mjs +61 -0
  85. package/lib/{chunk-N436BNBK.mjs → chunk-GAGABICI.mjs} +19 -13
  86. package/lib/chunk-H44UWUFY.mjs +105 -0
  87. package/lib/chunk-KLKAIFKI.mjs +40 -0
  88. package/lib/chunk-LVSPEFU2.mjs +86 -0
  89. package/lib/{chunk-RWLXRTYP.mjs → chunk-MGPYPKIE.mjs} +2 -2
  90. package/lib/chunk-NGFK3EYW.mjs +28 -0
  91. package/lib/chunk-NQXUYO67.mjs +253 -0
  92. package/lib/chunk-NVEG3LEZ.mjs +143 -0
  93. package/lib/chunk-OBXLTXFJ.mjs +34 -0
  94. package/lib/chunk-OGXVGBRI.mjs +29 -0
  95. package/lib/chunk-OXV52GD5.mjs +62 -0
  96. package/lib/chunk-PXBMHE7O.mjs +35 -0
  97. package/lib/chunk-QD4T255Z.mjs +40 -0
  98. package/lib/chunk-QII2EKCS.mjs +26 -0
  99. package/lib/chunk-R5FJOR63.mjs +47 -0
  100. package/lib/chunk-RDGDLSPD.mjs +76 -0
  101. package/lib/chunk-RDN6HF5Z.mjs +79 -0
  102. package/lib/chunk-RJKTSUAX.mjs +123 -0
  103. package/lib/{chunk-XA3SNBPA.mjs → chunk-TBWXE7ST.mjs} +97 -38
  104. package/lib/chunk-UXCFNAR6.mjs +55 -0
  105. package/lib/{chunk-M3YIYRHT.mjs → chunk-UY5VUEA3.mjs} +1 -1
  106. package/lib/chunk-WSHVPGNM.mjs +44 -0
  107. package/lib/{chunk-66PAU5PS.mjs → chunk-X2B3X7D4.mjs} +10 -6
  108. package/lib/clean-github-actions-caches-cli.cjs +507 -0
  109. package/lib/clean-github-actions-caches-cli.mjs +74 -0
  110. package/lib/clean-github-actions-caches.cjs +246 -106
  111. package/lib/clean-github-actions-caches.d.cts +53 -1
  112. package/lib/clean-github-actions-caches.mjs +5 -130
  113. package/lib/cross-env/command.cjs +63 -0
  114. package/lib/cross-env/command.d.ts +8 -0
  115. package/lib/cross-env/command.js +45 -0
  116. package/lib/{ps/isWin.mjs → cross-env/command.mjs} +4 -5
  117. package/lib/cross-env/index.cjs +178 -0
  118. package/lib/cross-env/index.d.ts +8 -0
  119. package/lib/cross-env/index.js +102 -0
  120. package/lib/cross-env/index.mjs +101 -0
  121. package/lib/cross-env/variable.cjs +60 -0
  122. package/lib/cross-env/variable.d.ts +7 -0
  123. package/lib/cross-env/variable.js +59 -0
  124. package/lib/cross-env/variable.mjs +9 -0
  125. package/lib/del-gradle.cjs +8 -13
  126. package/lib/del-gradle.js +8 -8
  127. package/lib/del-gradle.mjs +1 -1
  128. package/lib/del-node-modules.cjs +185 -3
  129. package/lib/del-node-modules.js +25 -25
  130. package/lib/del-node-modules.mjs +6 -3
  131. package/lib/{del-ps.cjs → del-ps-cli.cjs} +38 -43
  132. package/lib/del-ps-cli.d.mts +1 -0
  133. package/lib/del-ps-cli.mjs +44 -0
  134. package/lib/del-yarn-caches.cjs +8 -13
  135. package/lib/del-yarn-caches.js +2 -2
  136. package/lib/del-yarn-caches.mjs +1 -1
  137. package/lib/downloader-cli.cjs +256 -0
  138. package/lib/downloader-cli.d.cts +2 -0
  139. package/lib/downloader-cli.mjs +90 -0
  140. package/lib/file/copy-cli.cjs +273 -0
  141. package/lib/file/copy-cli.d.mts +1 -0
  142. package/lib/file/copy-cli.mjs +59 -0
  143. package/lib/file/copy.cjs +56 -0
  144. package/lib/file/copy.d.mts +1 -0
  145. package/lib/file/copy.mjs +8 -0
  146. package/lib/file/move-cli.cjs +272 -0
  147. package/lib/file/move-cli.d.mts +1 -0
  148. package/lib/file/move-cli.mjs +59 -0
  149. package/lib/file/move.cjs +55 -0
  150. package/lib/file/move.d.mts +1 -0
  151. package/lib/file/move.mjs +8 -0
  152. package/lib/find-node-modules-cli.cjs +1 -1
  153. package/lib/find-node-modules-cli.js +1 -1
  154. package/lib/find-node-modules-cli.mjs +1 -1
  155. package/lib/find-node-modules.cjs +1 -1
  156. package/lib/find-node-modules.mjs +1 -1
  157. package/lib/free-chatgpt.cjs +27 -26
  158. package/lib/free-chatgpt.js +10 -10
  159. package/lib/free-chatgpt.mjs +2 -2
  160. package/lib/git/user-config.cjs +9 -14
  161. package/lib/git/user-config.mjs +2 -2
  162. package/lib/git-diff-cli.cjs +273 -66
  163. package/lib/git-diff-cli.mjs +5 -4
  164. package/lib/git-diff.cjs +273 -66
  165. package/lib/git-diff.d.ts +2 -1
  166. package/lib/git-diff.js +153 -39
  167. package/lib/git-diff.mjs +5 -4
  168. package/lib/git-fix.cjs +9 -14
  169. package/lib/git-fix.mjs +2 -2
  170. package/lib/git-purge.cjs +9 -14
  171. package/lib/git-purge.mjs +2 -2
  172. package/lib/index.cjs +1 -1
  173. package/lib/index.d.ts +1 -1
  174. package/lib/index.mjs +1 -1
  175. package/lib/kill-night-crows.cjs +7 -7
  176. package/lib/kill-night-crows.mjs +7 -7
  177. package/lib/node-cache-cleaner/npm.cjs +65 -0
  178. package/lib/node-cache-cleaner/npm.d.ts +2 -0
  179. package/lib/node-cache-cleaner/npm.js +41 -0
  180. package/lib/node-cache-cleaner/npm.mjs +10 -0
  181. package/lib/node-cache-cleaner/npx.cjs +89 -0
  182. package/lib/node-cache-cleaner/npx.d.ts +4 -0
  183. package/lib/node-cache-cleaner/npx.js +82 -0
  184. package/lib/{ps/index.d.mjs → node-cache-cleaner/npx.mjs} +6 -5
  185. package/lib/node-cache-cleaner/yarn.cjs +73 -0
  186. package/lib/node-cache-cleaner/yarn.d.ts +2 -0
  187. package/lib/node-cache-cleaner/yarn.js +62 -0
  188. package/lib/node-cache-cleaner/yarn.mjs +10 -0
  189. package/lib/node-cache-cleaner-cli.cjs +365 -0
  190. package/lib/node-cache-cleaner-cli.d.ts +2 -0
  191. package/lib/node-cache-cleaner-cli.js +57 -0
  192. package/lib/node-cache-cleaner-cli.mjs +60 -0
  193. package/lib/node-executor.cjs +272 -0
  194. package/lib/node-executor.d.cts +2 -0
  195. package/lib/node-executor.mjs +106 -0
  196. package/lib/node-package-packer/build-readme.cjs +150 -0
  197. package/lib/node-package-packer/build-readme.d.mts +10 -0
  198. package/lib/node-package-packer/build-readme.mjs +10 -0
  199. package/lib/node-package-packer/build-tarball.cjs +495 -0
  200. package/lib/node-package-packer/build-tarball.d.mts +33 -0
  201. package/lib/node-package-packer/build-tarball.mjs +175 -0
  202. package/lib/node-package-packer-cli.cjs +525 -0
  203. package/lib/node-package-packer-cli.d.mts +1 -0
  204. package/lib/node-package-packer-cli.mjs +34 -0
  205. package/lib/npm-run-series.cjs +28 -40
  206. package/lib/npm-run-series.mjs +21 -7
  207. package/lib/package-resolutions-updater-cli.cjs +255 -173
  208. package/lib/package-resolutions-updater-cli.mjs +19 -40
  209. package/lib/package-resolutions-updater.cjs +244 -141
  210. package/lib/package-resolutions-updater.d.mts +54 -1
  211. package/lib/package-resolutions-updater.mjs +8 -5
  212. package/lib/php-cs-fixer-staged.cjs +1 -1
  213. package/lib/php-cs-fixer-staged.mjs +1 -1
  214. package/lib/print-directory-tree.cjs +18 -20
  215. package/lib/print-directory-tree.mjs +11 -8
  216. package/lib/print-tarball-tree.cjs +262 -0
  217. package/lib/print-tarball-tree.d.mts +1 -0
  218. package/lib/print-tarball-tree.mjs +68 -0
  219. package/lib/ps/connected-domain.js +10 -10
  220. package/lib/ps/index.cjs +11 -11
  221. package/lib/ps/index.mjs +180 -174
  222. package/lib/ps/table-parser.d.ts +3 -4
  223. package/lib/ps/table-parser.js +15 -22
  224. package/lib/remove-module.cjs +19 -24
  225. package/lib/remove-module.mjs +2 -2
  226. package/lib/rm-node-module-cli.cjs +389 -0
  227. package/lib/rm-node-module-cli.d.cts +1 -0
  228. package/lib/rm-node-module-cli.mjs +92 -0
  229. package/lib/rm-node-modules.cjs +127 -0
  230. package/lib/rm-node-modules.d.cts +35 -0
  231. package/lib/{binary-collections-config.mjs → rm-node-modules.mjs} +3 -3
  232. package/lib/rmpath-cli.cjs +285 -0
  233. package/lib/rmpath-cli.d.mts +1 -0
  234. package/lib/rmpath-cli.mjs +23 -0
  235. package/lib/rmpath.cjs +6 -217
  236. package/lib/rmpath.mjs +5 -101
  237. package/lib/run-by-checksum/cache.cjs +69 -0
  238. package/lib/run-by-checksum/cache.d.ts +19 -0
  239. package/lib/run-by-checksum/cache.js +50 -0
  240. package/lib/run-by-checksum/cache.mjs +12 -0
  241. package/lib/run-by-checksum/hash.cjs +72 -0
  242. package/lib/run-by-checksum/hash.d.ts +14 -0
  243. package/lib/run-by-checksum/hash.js +85 -0
  244. package/lib/run-by-checksum/hash.mjs +10 -0
  245. package/lib/run-by-checksum/run.cjs +169 -0
  246. package/lib/run-by-checksum/run.d.ts +22 -0
  247. package/lib/run-by-checksum/run.js +93 -0
  248. package/lib/run-by-checksum/run.mjs +10 -0
  249. package/lib/run-by-checksum-cli.cjs +382 -0
  250. package/lib/run-by-checksum-cli.d.ts +2 -0
  251. package/lib/run-by-checksum-cli.js +43 -0
  252. package/lib/run-by-checksum-cli.mjs +56 -0
  253. package/lib/submodule-install.cjs +55 -47
  254. package/lib/submodule-install.mjs +48 -35
  255. package/lib/submodule-remove-cli.cjs +170 -4
  256. package/lib/submodule-remove-cli.js +5 -5
  257. package/lib/submodule-remove-cli.mjs +6 -4
  258. package/lib/utils/chatgpt.cjs +19 -13
  259. package/lib/utils/chatgpt.js +94 -94
  260. package/lib/utils/chatgpt.mjs +1 -1
  261. package/lib/utils/fetchResponse.cjs +24 -0
  262. package/lib/utils/fetchResponse.d.cts +25 -0
  263. package/lib/utils/fetchResponse.mjs +6 -0
  264. package/lib/utils/findEnvFiles.cjs +28 -46
  265. package/lib/utils/findEnvFiles.d.cts +19 -0
  266. package/lib/utils/findEnvFiles.mjs +3 -5
  267. package/lib/utils/findWorkspaceRoot.js +4 -4
  268. package/lib/utils/index.cjs +7 -12
  269. package/lib/utils/index.d.cts +2 -9
  270. package/lib/utils/index.mjs +1 -1
  271. package/lib/utils/isGithubTokenValid.js +7 -7
  272. package/lib/{ps/isWin.cjs → utils/isWindows.cjs} +12 -7
  273. package/lib/utils/isWindows.d.ts +5 -0
  274. package/lib/utils/isWindows.js +10 -0
  275. package/lib/utils/isWindows.mjs +10 -0
  276. package/lib/utils/runBash.cjs +53 -0
  277. package/lib/utils/runBash.d.cts +12 -0
  278. package/lib/utils/runBash.mjs +66 -0
  279. package/lib/yarn-per-branch-lock-installer.cjs +288 -0
  280. package/lib/yarn-per-branch-lock-installer.d.cts +2 -0
  281. package/lib/yarn-per-branch-lock-installer.mjs +122 -0
  282. package/lib/yarn-reinstall.cjs +8 -13
  283. package/lib/yarn-reinstall.mjs +1 -1
  284. package/package.json +91 -57
  285. package/readme.html +784 -0
  286. package/readme.md +107 -219
  287. package/releases/readme.md +6 -3
  288. package/test/README.md +2 -2
  289. package/test-project/workspaces/workspace-a/readme.md +20 -0
  290. package/test-project/workspaces/workspace-a/release/readme.md +42 -0
  291. package/test-project/workspaces/workspace-a/test/readme.md +12 -0
  292. package/test-project/workspaces/workspace-b/readme.md +94 -0
  293. package/test-project/workspaces/workspace-b/requirements.txt +1 -0
  294. package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/readme.md +156 -0
  295. package/tmp/test-repo/README.md +2 -35
  296. package/tmp/test-repo-runChecksum/test-complex-glob/README.md +1 -0
  297. package/tmp/test-repo-runChecksum/test-mixed-args/README.md +1 -0
  298. package/lib/binary-collections-config.cjs +0 -15
  299. package/lib/chunk-2CBJCW7E.mjs +0 -81
  300. package/lib/chunk-4UHL4WVN.mjs +0 -136
  301. package/lib/chunk-6HHJRKFB.mjs +0 -59
  302. package/lib/chunk-6S4NXESK.mjs +0 -26
  303. package/lib/chunk-7XTEJHOE.mjs +0 -193
  304. package/lib/chunk-AJDD5DZM.mjs +0 -109
  305. package/lib/chunk-FCDQGYBF.mjs +0 -136
  306. package/lib/chunk-GEYA2USY.mjs +0 -207
  307. package/lib/chunk-GJTGHXRA.mjs +0 -356
  308. package/lib/chunk-ID2WBTE2.mjs +0 -80
  309. package/lib/chunk-JXFOHKDM.mjs +0 -239
  310. package/lib/chunk-NCXAP7AA.mjs +0 -31
  311. package/lib/chunk-PDSXF5HY.mjs +0 -187
  312. package/lib/chunk-TOIVAQF7.mjs +0 -136
  313. package/lib/chunk-V5SKYJUB.mjs +0 -136
  314. package/lib/chunk-WSRETQCA.mjs +0 -59
  315. package/lib/chunk-YYLIQQKF.mjs +0 -31
  316. package/lib/del-ps.js +0 -32
  317. package/lib/del-ps.mjs +0 -43
  318. package/lib/ps/index.d.cjs +0 -17
  319. package/lib/ps/index.d.ts +0 -2
  320. package/lib/ps/index.js +0 -254
  321. package/lib/ps/isWin.d.ts +0 -2
  322. package/lib/ps/isWin.js +0 -4
  323. package/lib/utils/findEnvFiles.d.ts +0 -8
  324. package/lib/utils/findEnvFiles.js +0 -121
  325. package/test/package.json +0 -20
  326. package/test-project/package.json +0 -16
  327. package/tmp/test-repo/package.json +0 -7
  328. package/tmp/typedoc/readme.md +0 -320
  329. /package/lib/{binary-collections-config.d.cts → binary-collections/config.d.cts} +0 -0
  330. /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,10 @@
1
+ import { createRequire } from 'module'; const require = createRequire(import.meta.url);
2
+ import {
3
+ buildChecksum,
4
+ getAllFiles
5
+ } from "../chunk-WSHVPGNM.mjs";
6
+ import "../chunk-QQ4A6DLD.mjs";
7
+ export {
8
+ buildChecksum,
9
+ getAllFiles
10
+ };
@@ -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
+ };