binary-collections 2.0.12 → 2.0.14
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 +307 -162
- package/binaries/clean-nodemodule.cjs +307 -162
- package/binaries/clean-nodemodules.cjs +307 -162
- package/binaries/composer.cjs +323 -0
- package/binaries/composer.cmd +2 -0
- package/binaries/composer.phar +0 -0
- package/binaries/dev.cjs +307 -162
- package/binaries/empty.cjs +307 -162
- package/binaries/git-reduce-size.cjs +307 -162
- package/binaries/javakill.cjs +307 -162
- package/binaries/kill-process.cjs +307 -162
- package/binaries/nodekill.cjs +307 -162
- package/binaries/prod.cjs +307 -162
- package/binaries/py.cjs +307 -162
- package/binaries/rmfind.cjs +307 -162
- package/binaries/rmx.cjs +307 -162
- package/binaries/submodule-token.cjs +307 -162
- package/binaries/test-cjs.cjs +307 -162
- package/binaries/test-esm.cjs +307 -162
- package/binaries/yarn-clean.cjs +307 -162
- package/binaries/yc +22 -1
- package/binaries/yc.cjs +307 -162
- package/binaries/ycw +256 -0
- package/binaries/ycw.cjs +323 -0
- package/docs-src/binary-collections.md +34 -0
- package/docs-src/changelog.md +26 -0
- package/docs-src/clean-github-actions-caches.md +115 -0
- package/docs-src/copy-move-file.md +56 -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/free-chatgpt.md +26 -0
- package/docs-src/generate-test-ci.md +56 -0
- package/docs-src/get-latest-workflow-status.md +100 -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/opencode-cli.md +127 -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/upload-backend.md +29 -0
- package/docs-src/vscode-cli.md +84 -0
- package/docs-src/workflow-badge.md +120 -0
- package/docs-src/yarn-install.md +31 -0
- package/docs-src/yarn-reinstall.md +27 -0
- package/lib/binary-collections/config.cjs +15 -3
- package/lib/binary-collections/config.d.cts +10 -0
- package/lib/binary-collections/config.mjs +2 -2
- package/lib/binary-collections/findScript.cjs +75 -28
- package/lib/binary-collections/findScript.mjs +2 -2
- package/lib/binary-collections/listScript.cjs +75 -28
- package/lib/binary-collections/listScript.mjs +2 -2
- package/lib/binary-collections.cjs +85 -43
- package/lib/binary-collections.mjs +8 -8
- package/lib/changelog.cjs +7 -12
- package/lib/changelog.mjs +2 -2
- package/lib/chunk-2SJKVOTN.mjs +146 -0
- package/lib/{chunk-SPTECFE5.mjs → chunk-3F6EIHYG.mjs} +87 -21
- package/lib/chunk-546KAIYT.mjs +113 -0
- package/lib/chunk-56BVU63B.mjs +86 -0
- package/lib/chunk-5WAOOOGZ.mjs +77 -0
- package/lib/{chunk-V2IBPCEV.mjs → chunk-6C7KTYGZ.mjs} +3 -1
- package/lib/{chunk-5RTXZVCW.mjs → chunk-6RK5UCTP.mjs} +5 -10
- package/lib/chunk-72XTQ3CK.mjs +45 -0
- package/lib/chunk-7N52Z4IJ.mjs +39 -0
- package/lib/chunk-7Q6YEUQF.mjs +246 -0
- package/lib/{chunk-ZOWVMII3.mjs → chunk-AJ3OIYYP.mjs} +75 -28
- package/lib/chunk-AQZ7LMFS.mjs +100 -0
- package/lib/chunk-BDCMTOZI.mjs +246 -0
- package/lib/chunk-BEUM4LH4.mjs +184 -0
- package/lib/{chunk-66KDU4TX.mjs → chunk-BO4TZS4Q.mjs} +39 -61
- package/lib/chunk-CM3IC5YC.mjs +226 -0
- package/lib/{chunk-6PU7BAHB.mjs → chunk-D42YBRZW.mjs} +1 -1
- package/lib/chunk-FR3DMHJC.mjs +146 -0
- package/lib/chunk-I3O5ZRYU.mjs +77 -0
- package/lib/chunk-J4M5EL5P.mjs +108 -0
- package/lib/chunk-JK3MG2KF.mjs +236 -0
- package/lib/chunk-JMUFQSPE.mjs +184 -0
- package/lib/chunk-JVMLKHD2.mjs +62 -0
- package/lib/chunk-KAT2JNLZ.mjs +146 -0
- package/lib/chunk-KLKAIFKI.mjs +40 -0
- package/lib/{chunk-FB2WKVJD.mjs → chunk-KRCPFWIF.mjs} +72 -37
- package/lib/chunk-LACQTD5V.mjs +225 -0
- package/lib/chunk-LVSPEFU2.mjs +86 -0
- package/lib/chunk-MCCMMZSM.mjs +60 -0
- package/lib/{chunk-2LSRSEXF.mjs → chunk-MGPYPKIE.mjs} +2 -2
- package/lib/chunk-OA2RKEY3.mjs +162 -0
- package/lib/{chunk-C6D2TTYU.mjs → chunk-OBXLTXFJ.mjs} +4 -2
- package/lib/{chunk-G5UUEWUO.mjs → chunk-PAZH45HS.mjs} +8 -2
- package/lib/chunk-QD4T255Z.mjs +40 -0
- package/lib/{chunk-XPJGCDOD.mjs → chunk-QII2EKCS.mjs} +14 -2
- package/lib/chunk-QZMGBDSA.mjs +32 -0
- package/lib/chunk-RDGDLSPD.mjs +76 -0
- package/lib/chunk-RJKTSUAX.mjs +123 -0
- package/lib/chunk-RKPIBGKE.mjs +61 -0
- package/lib/chunk-SARIXFHP.mjs +44 -0
- package/lib/chunk-SJYP66BO.mjs +62 -0
- package/lib/chunk-SWUAEY4H.mjs +44 -0
- package/lib/chunk-TP3O2JGW.mjs +88 -0
- package/lib/chunk-UAIF5VIA.mjs +89 -0
- package/lib/chunk-UDZBVKXH.mjs +94 -0
- package/lib/chunk-UEOWRYAN.mjs +32 -0
- package/lib/chunk-UHPFLJXH.mjs +227 -0
- package/lib/{chunk-M3YIYRHT.mjs → chunk-UY5VUEA3.mjs} +1 -1
- package/lib/chunk-UYNBNLV5.mjs +113 -0
- package/lib/chunk-WOC4FZ6F.mjs +164 -0
- package/lib/chunk-WSHVPGNM.mjs +44 -0
- package/lib/chunk-X7UVQ6ZC.mjs +183 -0
- package/lib/{chunk-NCZPTKDV.mjs → chunk-XI67TI46.mjs} +1 -1
- package/lib/chunk-XW5NZAKI.mjs +82 -0
- package/lib/chunk-YLV4QATP.mjs +86 -0
- package/lib/chunk-YWSLMAQ7.mjs +65 -0
- package/lib/chunk-ZB4IQ6VJ.mjs +46 -0
- package/lib/cross-env/command.cjs +2 -2
- package/lib/cross-env/command.js +2 -2
- package/lib/cross-env/command.mjs +2 -2
- package/lib/cross-env/index.cjs +2 -2
- package/lib/cross-env/index.mjs +5 -5
- package/lib/cross-env/variable.mjs +2 -2
- package/lib/del-gradle.cjs +7 -12
- package/lib/del-gradle.mjs +23 -17
- package/lib/del-node-modules.cjs +186 -4
- package/lib/del-node-modules.mjs +151 -142
- package/lib/{del-ps.cjs → del-ps-cli.cjs} +36 -41
- package/lib/del-ps-cli.mjs +44 -0
- package/lib/del-yarn-caches.cjs +6 -11
- package/lib/del-yarn-caches.mjs +1 -1
- package/lib/downloader-cli.cjs +256 -0
- package/lib/downloader-cli.mjs +90 -0
- package/lib/file/copy-cli.cjs +183 -2
- package/lib/file/copy-cli.mjs +6 -2
- package/lib/file/move-cli.cjs +183 -2
- package/lib/file/move-cli.mjs +6 -2
- package/lib/find-node-modules-cli.cjs +2 -2
- package/lib/find-node-modules-cli.mjs +11 -5
- package/lib/find-node-modules.cjs +1 -1
- package/lib/find-node-modules.mjs +1 -1
- package/lib/free-chatgpt.cjs +6 -11
- package/lib/free-chatgpt.mjs +1 -1
- package/lib/{git-diff-cli.cjs → git/git-diff-cli.cjs} +109 -36
- package/lib/{git-diff-cli.mjs → git/git-diff-cli.mjs} +7 -7
- package/lib/{git-diff.cjs → git/git-diff.cjs} +107 -34
- package/lib/{git-diff.js → git/git-diff.js} +88 -31
- package/lib/{git-diff.mjs → git/git-diff.mjs} +6 -6
- package/lib/{git-fix.cjs → git/git-fix.cjs} +140 -14
- package/lib/git/git-fix.d.cts +2 -0
- package/lib/{git-fix.mjs → git/git-fix.mjs} +19 -14
- package/lib/{git-purge.cjs → git/git-purge.cjs} +8 -13
- package/lib/{git-purge.mjs → git/git-purge.mjs} +5 -5
- package/lib/git/user-config.cjs +137 -12
- package/lib/git/user-config.mjs +4 -2
- package/lib/{clean-github-actions-caches-cli.cjs → github-workflows/clean-github-actions-caches-cli.cjs} +292 -222
- package/lib/{clean-github-actions-caches-cli.mjs → github-workflows/clean-github-actions-caches-cli.mjs} +30 -11
- package/lib/github-workflows/clean-github-actions-caches.cjs +473 -0
- package/lib/github-workflows/clean-github-actions-caches.d.cts +53 -0
- package/lib/{clean-github-actions-caches.mjs → github-workflows/clean-github-actions-caches.mjs} +5 -3
- package/lib/github-workflows/generate-test-ci-step-cli.cjs +240 -0
- package/lib/github-workflows/generate-test-ci-step-cli.d.mts +2 -0
- package/lib/github-workflows/generate-test-ci-step-cli.mjs +132 -0
- package/lib/github-workflows/get-latest-workflow-status-cli.cjs +541 -0
- package/lib/github-workflows/get-latest-workflow-status-cli.d.mts +2 -0
- package/lib/github-workflows/get-latest-workflow-status-cli.mjs +61 -0
- package/lib/github-workflows/get-latest-workflow-status.cjs +56 -0
- package/lib/github-workflows/get-latest-workflow-status.d.mts +1 -0
- package/lib/{ps/isWin.mjs → github-workflows/get-latest-workflow-status.mjs} +3 -5
- package/lib/github-workflows/utils.cjs +271 -0
- package/lib/github-workflows/utils.d.cts +76 -0
- package/lib/github-workflows/utils.mjs +8 -0
- package/lib/github-workflows/workflow-badge-cli.cjs +722 -0
- package/lib/github-workflows/workflow-badge-cli.d.mts +2 -0
- package/lib/github-workflows/workflow-badge-cli.mjs +98 -0
- package/lib/github-workflows/workflow-badge-generator.cjs +200 -0
- package/lib/github-workflows/workflow-badge-generator.d.mts +14 -0
- package/lib/github-workflows/workflow-badge-generator.mjs +8 -0
- package/lib/github-workflows/workflow-test-data.cjs +73 -0
- package/lib/github-workflows/workflow-test-data.d.cts +63 -0
- package/lib/github-workflows/workflow-test-data.mjs +6 -0
- package/lib/index.cjs +1 -1
- package/lib/index.mjs +1 -1
- package/lib/node-cache-cleaner-cli.cjs +185 -2
- package/lib/node-cache-cleaner-cli.js +2 -5
- package/lib/node-cache-cleaner-cli.mjs +8 -4
- package/lib/node-executor.cjs +183 -2
- package/lib/node-executor.mjs +5 -2
- 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 +7 -12
- package/lib/npm-run-series.mjs +2 -2
- package/lib/opencode/cli/auth-rotate.cjs +143 -0
- package/lib/opencode/cli/auth-rotate.d.ts +1 -0
- package/lib/opencode/cli/auth-rotate.js +70 -0
- package/lib/opencode/cli/auth-rotate.mjs +10 -0
- package/lib/opencode/cli/list-projects.cjs +184 -0
- package/lib/opencode/cli/list-projects.d.ts +1 -0
- package/lib/opencode/cli/list-projects.js +32 -0
- package/lib/opencode/cli/list-projects.mjs +11 -0
- package/lib/opencode/cli/list-sessions.cjs +215 -0
- package/lib/opencode/cli/list-sessions.d.ts +1 -0
- package/lib/opencode/cli/list-sessions.js +45 -0
- package/lib/opencode/cli/list-sessions.mjs +11 -0
- package/lib/opencode/database.cjs +349 -0
- package/lib/opencode/database.d.ts +91 -0
- package/lib/opencode/database.js +252 -0
- package/lib/opencode/database.mjs +28 -0
- package/lib/opencode/database.runner.cjs +145 -0
- package/lib/opencode/database.runner.d.ts +1 -0
- package/lib/opencode/database.runner.js +56 -0
- package/lib/opencode/database.runner.mjs +37 -0
- package/lib/opencode/opencode-zen.runner.cjs +48 -0
- package/lib/opencode/opencode-zen.runner.d.mts +1 -0
- package/lib/opencode/opencode-zen.runner.mjs +31 -0
- package/lib/opencode/sqlite.cjs +114 -0
- package/lib/opencode/sqlite.d.ts +18 -0
- package/lib/opencode/sqlite.js +82 -0
- package/lib/opencode/sqlite.mjs +10 -0
- package/lib/opencode/storage.cjs +124 -0
- package/lib/opencode/storage.d.ts +27 -0
- package/lib/opencode/storage.js +101 -0
- package/lib/opencode/storage.mjs +38 -0
- package/lib/opencode/storage.runner.cjs +50 -0
- package/lib/opencode/storage.runner.d.ts +1 -0
- package/lib/opencode/storage.runner.js +13 -0
- package/lib/opencode/storage.runner.mjs +29 -0
- package/lib/{ps/isWin.cjs → opencode/types.cjs} +3 -12
- package/lib/opencode/types.d.ts +31 -0
- package/lib/{ps/isWin.js → opencode/types.js} +0 -2
- package/lib/opencode/types.mjs +7 -0
- package/lib/opencode/utils/check-api.cjs +59 -0
- package/lib/opencode/utils/check-api.d.ts +12 -0
- package/lib/opencode/utils/check-api.js +46 -0
- package/lib/opencode/utils/check-api.mjs +8 -0
- package/lib/opencode-cli.cjs +473 -0
- package/lib/opencode-cli.d.ts +2 -0
- package/lib/opencode-cli.js +115 -0
- package/lib/opencode-cli.mjs +111 -0
- package/lib/package-resolutions-updater-cli.cjs +218 -194
- package/lib/package-resolutions-updater-cli.mjs +6 -4
- package/lib/package-resolutions-updater.cjs +216 -192
- package/lib/package-resolutions-updater.d.mts +44 -1
- package/lib/package-resolutions-updater.mjs +5 -3
- package/lib/php-cs-fixer-staged.cjs +1 -1
- package/lib/php-cs-fixer-staged.mjs +1 -1
- package/lib/print-directory-tree.cjs +147 -21
- package/lib/print-directory-tree.mjs +17 -11
- 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/index.cjs +10 -10
- package/lib/ps/index.mjs +4 -4
- package/lib/ps/table-parser.d.ts +3 -4
- package/lib/ps/table-parser.js +9 -16
- package/lib/remove-module.cjs +17 -22
- package/lib/remove-module.mjs +2 -2
- package/lib/rm-node-module-cli.cjs +171 -4
- package/lib/rm-node-module-cli.mjs +7 -4
- package/lib/rmpath-cli.cjs +411 -0
- package/lib/rmpath-cli.d.mts +1 -0
- package/lib/rmpath-cli.mjs +25 -0
- package/lib/rmpath.cjs +113 -188
- package/lib/rmpath.mjs +7 -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 +88 -0
- package/lib/run-by-checksum/hash.d.ts +17 -0
- package/lib/run-by-checksum/hash.js +119 -0
- package/lib/run-by-checksum/hash.mjs +10 -0
- package/lib/run-by-checksum/run.cjs +185 -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 +398 -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 +137 -16
- package/lib/submodule-install.mjs +7 -6
- package/lib/submodule-remove-cli.cjs +300 -7
- package/lib/submodule-remove-cli.js +2 -2
- package/lib/submodule-remove-cli.mjs +8 -3
- package/lib/submodule-remove.cjs +146 -5
- package/lib/submodule-remove.mjs +3 -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 +3 -0
- package/lib/utils/findEnvFiles.d.cts +2 -2
- package/lib/utils/findEnvFiles.mjs +1 -1
- package/lib/utils/index.cjs +5 -10
- package/lib/utils/index.d.cts +2 -9
- package/lib/utils/index.mjs +1 -1
- package/lib/utils/isWindows.mjs +3 -1
- package/lib/utils/runBash.cjs +1 -1
- package/lib/utils/runBash.mjs +1 -1
- package/lib/vscode/project.cjs +0 -0
- package/lib/vscode/project.d.ts +0 -0
- package/lib/vscode/project.js +1 -0
- package/lib/vscode/project.mjs +7 -0
- package/lib/vscode/storage.cjs +138 -0
- package/lib/vscode/storage.d.ts +51 -0
- package/lib/vscode/storage.js +169 -0
- package/lib/vscode/storage.mjs +42 -0
- package/lib/vscode/storage.runner.cjs +125 -0
- package/lib/vscode/storage.runner.d.ts +1 -0
- package/lib/vscode/storage.runner.js +47 -0
- package/lib/vscode/storage.runner.mjs +60 -0
- package/lib/vscode-cli.cjs +155 -0
- package/lib/vscode-cli.d.ts +2 -0
- package/lib/vscode-cli.js +80 -0
- package/lib/vscode-cli.mjs +71 -0
- package/lib/yarn-per-branch-lock-installer.cjs +202 -11
- package/lib/yarn-per-branch-lock-installer.mjs +24 -11
- package/lib/yarn-reinstall.cjs +6 -11
- package/lib/yarn-reinstall.mjs +1 -1
- package/package.json +75 -28
- package/readme.html +2 -2
- package/readme.md +44 -11
- package/releases/readme.md +6 -3
- package/src/github-workflows/generate-test-ci-step-cli.mjs +126 -0
- 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/vendor/clue/ndjson-react/README.md +365 -0
- package/vendor/composer/pcre/README.md +189 -0
- package/vendor/composer/semver/README.md +99 -0
- package/vendor/composer/xdebug-handler/README.md +305 -0
- package/vendor/ergebnis/agent-detector/README.md +107 -0
- package/vendor/evenement/evenement/README.md +64 -0
- package/vendor/fidry/cpu-core-counter/README.md +138 -0
- package/vendor/friendsofphp/php-cs-fixer/README.md +97 -0
- package/vendor/psr/container/README.md +13 -0
- package/vendor/psr/event-dispatcher/README.md +6 -0
- package/vendor/psr/log/README.md +58 -0
- package/vendor/react/cache/README.md +367 -0
- package/vendor/react/child-process/README.md +619 -0
- package/vendor/react/dns/README.md +453 -0
- package/vendor/react/event-loop/README.md +930 -0
- package/vendor/react/promise/README.md +722 -0
- package/vendor/react/socket/README.md +1564 -0
- package/vendor/react/stream/README.md +1249 -0
- package/vendor/sebastian/diff/README.md +151 -0
- package/vendor/symfony/console/README.md +30 -0
- package/vendor/symfony/deprecation-contracts/README.md +26 -0
- package/vendor/symfony/event-dispatcher/README.md +25 -0
- package/vendor/symfony/event-dispatcher-contracts/README.md +9 -0
- package/vendor/symfony/filesystem/README.md +23 -0
- package/vendor/symfony/finder/README.md +24 -0
- package/vendor/symfony/options-resolver/README.md +25 -0
- package/vendor/symfony/polyfill-ctype/README.md +12 -0
- package/vendor/symfony/polyfill-intl-grapheme/README.md +32 -0
- package/vendor/symfony/polyfill-intl-normalizer/README.md +14 -0
- package/vendor/symfony/polyfill-mbstring/README.md +13 -0
- package/vendor/symfony/polyfill-php80/README.md +25 -0
- package/vendor/symfony/polyfill-php81/README.md +18 -0
- package/vendor/symfony/polyfill-php84/README.md +23 -0
- package/vendor/symfony/polyfill-php85/README.md +20 -0
- package/vendor/symfony/process/README.md +23 -0
- package/vendor/symfony/service-contracts/README.md +9 -0
- package/vendor/symfony/stopwatch/README.md +52 -0
- package/vendor/symfony/string/README.md +24 -0
- package/.opencode/package.json +0 -5
- package/lib/chunk-6S4NXESK.mjs +0 -26
- package/lib/clean-github-actions-caches.cjs +0 -249
- package/lib/clean-github-actions-caches.d.cts +0 -15
- package/lib/del-gradle.js +0 -16
- package/lib/del-node-modules.js +0 -211
- package/lib/del-ps.js +0 -32
- package/lib/del-ps.mjs +0 -43
- package/lib/find-node-modules-cli.js +0 -4
- package/lib/ps/isWin.d.ts +0 -2
- package/test/package.json +0 -20
- package/test-project/package.json +0 -22
- package/test-project/workspaces/workspace-a/package.json +0 -135
- package/test-project/workspaces/workspace-a/test/demo/package.json +0 -25
- package/test-project/workspaces/workspace-b/package.json +0 -139
- package/test-project/workspaces/workspace-b/test/sample-project/package.json +0 -7
- package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/package.json +0 -96
- package/tmp/rm-node-modules-test-project/package.json +0 -17
- package/tmp/rm-node-modules-test-project/packages/workspace-a/package.json +0 -16
- package/tmp/rm-node-modules-test-project/packages/workspace-b/package.json +0 -16
- package/tmp/test-repo/package.json +0 -17
- /package/lib/{clean-github-actions-caches-cli.d.cts → del-gradle.d.cts} +0 -0
- /package/lib/{del-gradle.d.ts → del-node-modules.d.cts} +0 -0
- /package/lib/{del-node-modules.d.ts → del-ps-cli.d.mts} +0 -0
- /package/lib/{find-node-modules-cli.d.ts → downloader-cli.d.cts} +0 -0
- /package/lib/{git-diff-cli.d.ts → find-node-modules-cli.d.cts} +0 -0
- /package/lib/{git-fix.d.cts → git/git-diff-cli.d.ts} +0 -0
- /package/lib/{git-diff-cli.js → git/git-diff-cli.js} +0 -0
- /package/lib/{git-diff.d.ts → git/git-diff.d.ts} +0 -0
- /package/lib/{git-purge.d.cts → git/git-purge.d.cts} +0 -0
- /package/lib/{del-ps.d.ts → github-workflows/clean-github-actions-caches-cli.d.cts} +0 -0
|
@@ -0,0 +1,88 @@
|
|
|
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 isBinaryFile(filePath, bytesToCheck = 8e3) {
|
|
57
|
+
const buffer = import_fs_extra.default.readFileSync(filePath, { length: bytesToCheck });
|
|
58
|
+
for (let i = 0; i < buffer.length; i++) {
|
|
59
|
+
if (buffer[i] === 0) {
|
|
60
|
+
return true;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return false;
|
|
64
|
+
}
|
|
65
|
+
function hashFile(file) {
|
|
66
|
+
const isBin = isBinaryFile(file);
|
|
67
|
+
if (!isBin) {
|
|
68
|
+
const content = import_fs_extra.default.readFileSync(file, { encoding: "utf-8" });
|
|
69
|
+
const normalized = content.toString().replace(/\s+/g, " ").trim();
|
|
70
|
+
return import_crypto.default.createHash("sha256").update(normalized).digest("hex");
|
|
71
|
+
} else {
|
|
72
|
+
const stats = import_fs_extra.default.statSync(file);
|
|
73
|
+
return import_crypto.default.createHash("sha256").update(file).update(String(stats.size)).digest("hex");
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
function buildChecksum(files) {
|
|
77
|
+
const hash = import_crypto.default.createHash("sha256");
|
|
78
|
+
for (const file of files) {
|
|
79
|
+
hash.update(file);
|
|
80
|
+
hash.update(hashFile(file));
|
|
81
|
+
}
|
|
82
|
+
return hash.digest("hex");
|
|
83
|
+
}
|
|
84
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
85
|
+
0 && (module.exports = {
|
|
86
|
+
buildChecksum,
|
|
87
|
+
getAllFiles
|
|
88
|
+
});
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Get all files matching the given glob patterns, ignoring specified paths.
|
|
3
|
+
* @param {{ patterns: string[], ignore: string[], cwd?: string }} options
|
|
4
|
+
* @returns {string[]}
|
|
5
|
+
*/
|
|
6
|
+
export function getAllFiles({ patterns, ignore, cwd }: {
|
|
7
|
+
patterns: string[];
|
|
8
|
+
ignore: string[];
|
|
9
|
+
cwd?: string;
|
|
10
|
+
}): string[];
|
|
11
|
+
/**
|
|
12
|
+
* Build a combined SHA-256 checksum from an ordered list of files.
|
|
13
|
+
* For each file, both its path and content hash are fed into the digest.
|
|
14
|
+
* @param {string[]} files - Ordered list of absolute file paths
|
|
15
|
+
* @returns {string}
|
|
16
|
+
*/
|
|
17
|
+
export function buildChecksum(files: string[]): string;
|
|
@@ -0,0 +1,119 @@
|
|
|
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
|
+
* Get all files matching the given glob patterns, ignoring specified paths.
|
|
48
|
+
* @param {{ patterns: string[], ignore: string[], cwd?: string }} options
|
|
49
|
+
* @returns {string[]}
|
|
50
|
+
*/
|
|
51
|
+
function getAllFiles({ patterns, ignore, cwd }) {
|
|
52
|
+
const files = new Set();
|
|
53
|
+
const root = cwd || process.cwd();
|
|
54
|
+
for (const pattern of patterns) {
|
|
55
|
+
const matched = glob.sync(pattern, {
|
|
56
|
+
cwd: root,
|
|
57
|
+
nodir: true,
|
|
58
|
+
ignore
|
|
59
|
+
});
|
|
60
|
+
for (const f of matched) {
|
|
61
|
+
// Resolve to absolute path for consistent hashing
|
|
62
|
+
files.add(upath_1.default.normalize(upath_2.default.resolve(root, f)));
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
return [...files].sort();
|
|
66
|
+
}
|
|
67
|
+
/**
|
|
68
|
+
* Check if a file is binary by scanning for null bytes in the first N bytes.
|
|
69
|
+
* @param {string} filePath - Absolute path to the file
|
|
70
|
+
* @param {number} [bytesToCheck=8000] - Number of bytes to scan from the start
|
|
71
|
+
* @returns {boolean}
|
|
72
|
+
*/
|
|
73
|
+
function isBinaryFile(filePath, bytesToCheck = 8000) {
|
|
74
|
+
const buffer = fs_extra_1.default.readFileSync(filePath, { length: bytesToCheck });
|
|
75
|
+
for (let i = 0; i < buffer.length; i++) {
|
|
76
|
+
if (buffer[i] === 0) {
|
|
77
|
+
// Null byte is a strong indicator of binary
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
// Optionally, check if it decodes as UTF-8
|
|
82
|
+
return false;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Compute a SHA-256 hex digest for a file. For text files, the content is
|
|
86
|
+
* normalized (whitespace collapsed) before hashing. For binary files, the path
|
|
87
|
+
* and size are hashed instead of content.
|
|
88
|
+
* @private
|
|
89
|
+
* @param {string} file - Absolute path to the file
|
|
90
|
+
* @returns {string}
|
|
91
|
+
*/
|
|
92
|
+
function hashFile(file) {
|
|
93
|
+
const isBin = isBinaryFile(file);
|
|
94
|
+
if (!isBin) {
|
|
95
|
+
const content = fs_extra_1.default.readFileSync(file, { encoding: 'utf-8' });
|
|
96
|
+
// remove whitespaces and newlines for text files to avoid irrelevant changes affecting the checksum
|
|
97
|
+
const normalized = content.toString().replace(/\s+/g, ' ').trim();
|
|
98
|
+
return crypto_1.default.createHash('sha256').update(normalized).digest('hex');
|
|
99
|
+
}
|
|
100
|
+
else {
|
|
101
|
+
// For binary files, hash the file path and size instead of content
|
|
102
|
+
const stats = fs_extra_1.default.statSync(file);
|
|
103
|
+
return crypto_1.default.createHash('sha256').update(file).update(String(stats.size)).digest('hex');
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Build a combined SHA-256 checksum from an ordered list of files.
|
|
108
|
+
* For each file, both its path and content hash are fed into the digest.
|
|
109
|
+
* @param {string[]} files - Ordered list of absolute file paths
|
|
110
|
+
* @returns {string}
|
|
111
|
+
*/
|
|
112
|
+
function buildChecksum(files) {
|
|
113
|
+
const hash = crypto_1.default.createHash('sha256');
|
|
114
|
+
for (const file of files) {
|
|
115
|
+
hash.update(file);
|
|
116
|
+
hash.update(hashFile(file));
|
|
117
|
+
}
|
|
118
|
+
return hash.digest('hex');
|
|
119
|
+
}
|
|
@@ -0,0 +1,185 @@
|
|
|
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 isBinaryFile(filePath, bytesToCheck = 8e3) {
|
|
58
|
+
const buffer = import_fs_extra.default.readFileSync(filePath, { length: bytesToCheck });
|
|
59
|
+
for (let i = 0; i < buffer.length; i++) {
|
|
60
|
+
if (buffer[i] === 0) {
|
|
61
|
+
return true;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
return false;
|
|
65
|
+
}
|
|
66
|
+
function hashFile(file) {
|
|
67
|
+
const isBin = isBinaryFile(file);
|
|
68
|
+
if (!isBin) {
|
|
69
|
+
const content = import_fs_extra.default.readFileSync(file, { encoding: "utf-8" });
|
|
70
|
+
const normalized = content.toString().replace(/\s+/g, " ").trim();
|
|
71
|
+
return import_crypto.default.createHash("sha256").update(normalized).digest("hex");
|
|
72
|
+
} else {
|
|
73
|
+
const stats = import_fs_extra.default.statSync(file);
|
|
74
|
+
return import_crypto.default.createHash("sha256").update(file).update(String(stats.size)).digest("hex");
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
function buildChecksum(files) {
|
|
78
|
+
const hash = import_crypto.default.createHash("sha256");
|
|
79
|
+
for (const file of files) {
|
|
80
|
+
hash.update(file);
|
|
81
|
+
hash.update(hashFile(file));
|
|
82
|
+
}
|
|
83
|
+
return hash.digest("hex");
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
// src/run-by-checksum/cache.js
|
|
87
|
+
var import_fs_extra2 = __toESM(require("fs-extra"), 1);
|
|
88
|
+
var import_upath3 = __toESM(require("upath"), 1);
|
|
89
|
+
var import_crypto2 = __toESM(require("crypto"), 1);
|
|
90
|
+
function md5(str) {
|
|
91
|
+
return import_crypto2.default.createHash("md5").update(str).digest("hex");
|
|
92
|
+
}
|
|
93
|
+
function getCacheFile({ patterns, ignore, cwd }) {
|
|
94
|
+
const root = cwd || process.env.INIT_CWD || process.cwd();
|
|
95
|
+
const key = md5(
|
|
96
|
+
JSON.stringify({
|
|
97
|
+
patterns: [...patterns].sort(),
|
|
98
|
+
ignore: [...ignore].sort()
|
|
99
|
+
})
|
|
100
|
+
);
|
|
101
|
+
return import_upath3.default.join(root, "tmp", ".checksum", `${key}.json`);
|
|
102
|
+
}
|
|
103
|
+
function loadCache(file) {
|
|
104
|
+
try {
|
|
105
|
+
return import_fs_extra2.default.readJsonSync(file);
|
|
106
|
+
} catch {
|
|
107
|
+
return null;
|
|
108
|
+
}
|
|
109
|
+
}
|
|
110
|
+
function saveCache(file, data) {
|
|
111
|
+
import_fs_extra2.default.ensureDirSync(import_upath3.default.dirname(file));
|
|
112
|
+
import_fs_extra2.default.writeJsonSync(file, data, { spaces: 2 });
|
|
113
|
+
}
|
|
114
|
+
|
|
115
|
+
// src/run-by-checksum/run.js
|
|
116
|
+
var import_child_process = require("child_process");
|
|
117
|
+
async function runChecksum({
|
|
118
|
+
patterns = [],
|
|
119
|
+
ignore = [],
|
|
120
|
+
exec,
|
|
121
|
+
cwd = process.env.INIT_CWD || process.cwd(),
|
|
122
|
+
dryRun = false
|
|
123
|
+
}) {
|
|
124
|
+
if (!patterns.length && !exec) {
|
|
125
|
+
console.log("No patterns or command provided, skipping checksum runner.");
|
|
126
|
+
process.exit(1);
|
|
127
|
+
}
|
|
128
|
+
if (!exec) {
|
|
129
|
+
console.log("No command provided, skipping checksum runner.");
|
|
130
|
+
process.exit(1);
|
|
131
|
+
}
|
|
132
|
+
if (!patterns.length) {
|
|
133
|
+
console.log("No patterns provided, skipping checksum runner.");
|
|
134
|
+
process.exit(1);
|
|
135
|
+
}
|
|
136
|
+
const files = getAllFiles({ patterns, ignore, cwd });
|
|
137
|
+
const checksum = buildChecksum(files);
|
|
138
|
+
const cacheFile = getCacheFile({ patterns, ignore, cwd });
|
|
139
|
+
const cache = loadCache(cacheFile);
|
|
140
|
+
if ((cache == null ? void 0 : cache.checksum) === checksum) {
|
|
141
|
+
return {
|
|
142
|
+
changed: false,
|
|
143
|
+
cacheFile,
|
|
144
|
+
files
|
|
145
|
+
};
|
|
146
|
+
}
|
|
147
|
+
if (dryRun) {
|
|
148
|
+
return {
|
|
149
|
+
changed: true,
|
|
150
|
+
cacheFile,
|
|
151
|
+
files,
|
|
152
|
+
skipped: true
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
await runCommand(exec, cwd);
|
|
156
|
+
saveCache(cacheFile, {
|
|
157
|
+
checksum,
|
|
158
|
+
files,
|
|
159
|
+
patterns,
|
|
160
|
+
ignore,
|
|
161
|
+
updatedAt: (/* @__PURE__ */ new Date()).toISOString()
|
|
162
|
+
});
|
|
163
|
+
return {
|
|
164
|
+
changed: true,
|
|
165
|
+
cacheFile,
|
|
166
|
+
files
|
|
167
|
+
};
|
|
168
|
+
}
|
|
169
|
+
function runCommand(command, cwd) {
|
|
170
|
+
return new Promise((resolve, reject) => {
|
|
171
|
+
const child = (0, import_child_process.spawn)(command, {
|
|
172
|
+
shell: true,
|
|
173
|
+
stdio: "inherit",
|
|
174
|
+
cwd
|
|
175
|
+
});
|
|
176
|
+
child.on("exit", (code) => {
|
|
177
|
+
if (code === 0 || code === null) resolve();
|
|
178
|
+
else reject(new Error(`Command failed: ${code}`));
|
|
179
|
+
});
|
|
180
|
+
});
|
|
181
|
+
}
|
|
182
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
183
|
+
0 && (module.exports = {
|
|
184
|
+
runChecksum
|
|
185
|
+
});
|
|
@@ -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-YLV4QATP.mjs";
|
|
5
|
+
import "../chunk-QD4T255Z.mjs";
|
|
6
|
+
import "../chunk-MCCMMZSM.mjs";
|
|
7
|
+
import "../chunk-QQ4A6DLD.mjs";
|
|
8
|
+
export {
|
|
9
|
+
runChecksum
|
|
10
|
+
};
|