binary-collections 2.0.10 → 2.0.12
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/.opencode/package.json +5 -0
- package/.puppeterrc.cjs +25 -0
- package/binaries/binary-executor.cjs +138 -3
- package/binaries/clean-nodemodule.cjs +138 -3
- package/binaries/clean-nodemodules.cjs +138 -3
- package/binaries/dev.cjs +138 -3
- package/binaries/empty.cjs +138 -3
- package/binaries/git-reduce-size.cjs +138 -3
- package/binaries/javakill.cjs +138 -3
- package/binaries/kill-night-crows.bat +7 -0
- package/binaries/kill-night-crows.ps1 +172 -0
- package/binaries/kill-process.cjs +138 -3
- package/binaries/nodekill.cjs +138 -3
- package/binaries/prod.cjs +138 -3
- package/binaries/py +111 -0
- package/binaries/py.cjs +178 -0
- package/binaries/py.cmd +49 -0
- package/binaries/rmfind.cjs +138 -3
- package/binaries/rmx +15 -1
- package/binaries/rmx.cjs +138 -3
- package/binaries/rmx.cmd +12 -0
- package/binaries/submodule-token.cjs +138 -3
- package/binaries/test-cjs +18 -0
- package/binaries/test-cjs.cjs +178 -0
- package/binaries/test-cjs.cmd +26 -0
- package/binaries/test-esm +16 -0
- package/binaries/test-esm.cjs +178 -0
- package/binaries/test-esm.cmd +23 -0
- package/binaries/yarn-clean +32 -0
- package/binaries/yarn-clean.cjs +178 -0
- package/binaries/yarn-clean.cmd +30 -0
- package/binaries/yarn-clean.py +166 -0
- package/binaries/yc +110 -0
- package/binaries/yc.cjs +178 -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 +284 -0
- package/lib/binary-collections/findScript.d.cts +12 -0
- package/lib/binary-collections/findScript.mjs +7 -0
- package/lib/binary-collections/listScript.cjs +266 -0
- package/lib/binary-collections/listScript.d.cts +19 -0
- package/lib/binary-collections/listScript.mjs +7 -0
- package/lib/binary-collections.cjs +342 -194
- package/lib/binary-collections.mjs +22 -268
- package/lib/changelog.cjs +61 -13
- package/lib/changelog.mjs +1 -1
- package/lib/{chunk-E6FDDAOO.mjs → chunk-2LSRSEXF.mjs} +2 -2
- package/lib/chunk-34IQDTLZ.mjs +27 -0
- package/lib/chunk-3HFFECCI.mjs +27 -0
- package/lib/{chunk-V3N3JEUF.mjs → chunk-5RTXZVCW.mjs} +60 -13
- package/lib/chunk-66KDU4TX.mjs +268 -0
- package/lib/chunk-6PU7BAHB.mjs +61 -0
- package/lib/{chunk-6HHJRKFB.mjs → chunk-BZWVHODJ.mjs} +4 -1
- package/lib/chunk-C6D2TTYU.mjs +32 -0
- package/lib/chunk-FB2WKVJD.mjs +158 -0
- package/lib/{chunk-66PAU5PS.mjs → chunk-G5UUEWUO.mjs} +9 -5
- package/lib/{chunk-HO6GHCOB.mjs → chunk-GAGABICI.mjs} +198 -63
- package/lib/chunk-H44UWUFY.mjs +105 -0
- package/lib/chunk-NCZPTKDV.mjs +79 -0
- package/lib/chunk-NGFK3EYW.mjs +28 -0
- package/lib/chunk-NVEG3LEZ.mjs +143 -0
- package/lib/chunk-OGXVGBRI.mjs +29 -0
- package/lib/chunk-OXV52GD5.mjs +62 -0
- package/lib/{chunk-PDSXF5HY.mjs → chunk-PDN26I7O.mjs} +1 -0
- package/lib/chunk-PXBMHE7O.mjs +35 -0
- package/lib/chunk-R5FJOR63.mjs +47 -0
- package/lib/chunk-SPTECFE5.mjs +180 -0
- package/lib/chunk-UXCFNAR6.mjs +55 -0
- package/lib/chunk-V2IBPCEV.mjs +39 -0
- package/lib/chunk-XPJGCDOD.mjs +14 -0
- package/lib/{chunk-AI4CVPJ7.mjs → chunk-ZDMWBSYF.mjs} +4 -4
- package/lib/chunk-ZOWVMII3.mjs +228 -0
- package/lib/clean-github-actions-caches-cli.cjs +465 -0
- package/lib/clean-github-actions-caches-cli.d.cts +1 -0
- package/lib/clean-github-actions-caches-cli.mjs +56 -0
- package/lib/clean-github-actions-caches.cjs +152 -160
- package/lib/clean-github-actions-caches.d.cts +15 -1
- package/lib/clean-github-actions-caches.mjs +4 -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/cross-env/command.mjs +9 -0
- 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 +61 -13
- package/lib/del-gradle.js +9 -8
- package/lib/del-gradle.mjs +1 -1
- package/lib/del-node-modules.cjs +143 -148
- package/lib/del-node-modules.js +210 -14
- package/lib/del-node-modules.mjs +148 -17
- package/lib/del-ps.cjs +61 -13
- package/lib/del-ps.js +9 -8
- package/lib/del-ps.mjs +1 -1
- package/lib/del-yarn-caches.cjs +61 -13
- package/lib/del-yarn-caches.js +2 -2
- package/lib/del-yarn-caches.mjs +1 -1
- package/lib/file/copy-cli.cjs +92 -0
- package/lib/file/copy-cli.d.mts +1 -0
- package/lib/file/copy-cli.mjs +55 -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 +91 -0
- package/lib/file/move-cli.d.mts +1 -0
- package/lib/file/move-cli.mjs +55 -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.js +2 -1
- package/lib/free-chatgpt.cjs +259 -47
- package/lib/free-chatgpt.js +10 -10
- package/lib/free-chatgpt.mjs +2 -2
- package/lib/git/gitattributes.cjs +1 -0
- package/lib/git/gitattributes.d.cts +7 -2
- package/lib/git/gitattributes.mjs +1 -1
- package/lib/git/line-endings.cjs +2 -1
- package/lib/git/line-endings.mjs +2 -2
- package/lib/git/undo-commit-cli.cjs +110 -0
- package/lib/git/undo-commit-cli.d.ts +1 -0
- package/lib/git/undo-commit-cli.js +4 -0
- package/lib/git/undo-commit-cli.mjs +14 -0
- package/lib/git/undo-commit.cjs +81 -0
- package/lib/git/undo-commit.d.cts +1 -0
- package/lib/git/undo-commit.mjs +7 -0
- package/lib/git/undo-staged-cli.cjs +110 -0
- package/lib/git/undo-staged-cli.d.ts +1 -0
- package/lib/git/undo-staged-cli.js +4 -0
- package/lib/git/undo-staged-cli.mjs +14 -0
- package/lib/git/undo-staged.cjs +81 -0
- package/lib/git/undo-staged.d.cts +1 -0
- package/lib/git/undo-staged.mjs +7 -0
- package/lib/git/user-config.cjs +61 -14
- package/lib/git/user-config.mjs +2 -2
- package/lib/git-diff-cli.cjs +427 -75
- package/lib/git-diff-cli.d.ts +1 -0
- package/lib/git-diff-cli.js +1 -0
- package/lib/git-diff-cli.mjs +6 -4
- package/lib/git-diff.cjs +426 -75
- package/lib/git-diff.d.ts +2 -1
- package/lib/git-diff.js +91 -34
- package/lib/git-diff.mjs +5 -4
- package/lib/git-fix.cjs +64 -16
- package/lib/git-fix.mjs +10 -10
- package/lib/git-purge.cjs +61 -13
- package/lib/git-purge.mjs +1 -1
- package/lib/index.d.ts +1 -1
- package/lib/kill-night-crows.cjs +87 -0
- package/lib/kill-night-crows.d.mts +1 -0
- package/lib/kill-night-crows.mjs +65 -0
- 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 +182 -0
- package/lib/node-cache-cleaner-cli.d.ts +2 -0
- package/lib/node-cache-cleaner-cli.js +60 -0
- package/lib/node-cache-cleaner-cli.mjs +56 -0
- package/lib/node-executor.cjs +91 -0
- package/lib/node-executor.d.cts +2 -0
- package/lib/node-executor.mjs +103 -0
- package/lib/npm-run-series.cjs +79 -39
- package/lib/npm-run-series.mjs +20 -6
- package/lib/package-resolutions-updater-cli.cjs +645 -0
- package/lib/package-resolutions-updater-cli.d.mts +1 -0
- package/lib/package-resolutions-updater-cli.mjs +102 -0
- package/lib/package-resolutions-updater.cjs +259 -133
- package/lib/package-resolutions-updater.d.mts +51 -1
- package/lib/package-resolutions-updater.mjs +18 -294
- package/lib/php-cs-fixer-staged.cjs +105 -0
- package/lib/php-cs-fixer-staged.d.cts +2 -0
- package/lib/php-cs-fixer-staged.mjs +117 -0
- package/lib/print-directory-tree.cjs +62 -14
- package/lib/print-directory-tree.mjs +2 -2
- package/lib/ps/connected-domain.d.ts +1 -1
- package/lib/ps/connected-domain.js +10 -10
- package/lib/ps/index.cjs +1 -1
- package/lib/ps/index.mjs +177 -171
- package/lib/ps/isWin.js +1 -1
- package/lib/ps/table-parser.js +6 -6
- package/lib/remove-module.cjs +61 -13
- package/lib/remove-module.mjs +1 -1
- package/lib/rm-node-module-cli.cjs +222 -0
- package/lib/rm-node-module-cli.d.cts +1 -0
- package/lib/rm-node-module-cli.mjs +89 -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.cjs +63 -15
- package/lib/rmpath.mjs +2 -2
- package/lib/submodule-install.cjs +107 -47
- package/lib/submodule-install.mjs +48 -35
- package/lib/submodule-remove-cli.cjs +6 -3
- package/lib/submodule-remove-cli.js +3 -3
- package/lib/submodule-remove-cli.mjs +2 -3
- package/lib/submodule-remove.cjs +4 -1
- package/lib/submodule-remove.mjs +1 -1
- package/lib/utils/chatgpt.cjs +198 -34
- package/lib/utils/chatgpt.js +260 -93
- package/lib/utils/chatgpt.mjs +1 -1
- package/lib/utils/findEnvFiles.cjs +89 -0
- package/lib/utils/findEnvFiles.d.cts +19 -0
- package/lib/utils/findEnvFiles.mjs +6 -0
- package/lib/utils/findWorkspaceRoot.cjs +70 -0
- package/lib/utils/findWorkspaceRoot.d.ts +9 -0
- package/lib/utils/findWorkspaceRoot.js +57 -0
- package/lib/utils/findWorkspaceRoot.mjs +40 -0
- package/lib/utils/index.cjs +60 -13
- package/lib/utils/index.mjs +1 -1
- package/lib/utils/isGithubTokenValid.cjs +64 -0
- package/lib/utils/isGithubTokenValid.d.ts +7 -0
- package/lib/utils/isGithubTokenValid.js +48 -0
- package/lib/utils/isGithubTokenValid.mjs +36 -0
- package/lib/{ps/index.d.cjs → utils/isWindows.cjs} +17 -3
- package/lib/utils/isWindows.d.ts +5 -0
- package/lib/utils/isWindows.js +10 -0
- package/lib/utils/isWindows.mjs +8 -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 +97 -0
- package/lib/yarn-per-branch-lock-installer.d.cts +2 -0
- package/lib/yarn-per-branch-lock-installer.mjs +109 -0
- package/lib/yarn-reinstall.cjs +61 -13
- package/lib/yarn-reinstall.mjs +1 -1
- package/package.json +133 -110
- package/readme.html +784 -0
- package/readme.md +116 -229
- package/releases/readme.md +1 -1
- package/requirements.txt +1 -0
- package/test/README.md +2 -2
- package/test-project/package.json +8 -2
- package/test-project/workspaces/workspace-a/package.json +135 -0
- 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/demo/package.json +25 -0
- package/test-project/workspaces/workspace-a/test/readme.md +12 -0
- package/test-project/workspaces/workspace-b/package.json +139 -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/test/sample-project/package.json +7 -0
- package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/package.json +96 -0
- package/test-project/workspaces/workspace-b/themes/hexo-theme-flowbite/readme.md +156 -0
- package/tmp/rm-node-modules-test-project/package.json +17 -0
- package/tmp/rm-node-modules-test-project/packages/workspace-a/package.json +16 -0
- package/tmp/rm-node-modules-test-project/packages/workspace-b/package.json +16 -0
- package/tmp/test-repo/README.md +2 -35
- package/tmp/test-repo/package.json +13 -3
- package/docs-src/clean-github-actions-caches.md +0 -26
- package/docs-src/free-chatgpt.md +0 -26
- package/lib/binary-collections-config.cjs +0 -15
- package/lib/chunk-4EWQC6GZ.mjs +0 -382
- package/lib/chunk-4ZI7BQKQ.mjs +0 -381
- package/lib/chunk-5J2BEPY5.mjs +0 -83
- package/lib/chunk-AGZYRDC2.mjs +0 -323
- package/lib/chunk-BDCHCWHD.mjs +0 -136
- package/lib/chunk-BEZKJ25G.mjs +0 -140
- package/lib/chunk-DI5MDPSN.mjs +0 -386
- package/lib/chunk-GJTGHXRA.mjs +0 -356
- package/lib/chunk-HMRMTYZM.mjs +0 -40
- package/lib/chunk-HN52G2YL.mjs +0 -305
- package/lib/chunk-LEM5OMRP.mjs +0 -384
- package/lib/chunk-O6SWBEOQ.mjs +0 -81
- package/lib/chunk-RCP7DHVY.mjs +0 -190
- package/lib/chunk-SBNDSKG5.mjs +0 -136
- package/lib/chunk-U6SO4QEV.mjs +0 -320
- package/lib/chunk-XD6BJK6Q.mjs +0 -351
- package/lib/chunk-YXSFGA2D.mjs +0 -383
- package/lib/git/gitattributes.d.ts +0 -33
- package/lib/git/gitattributes.js +0 -223
- package/lib/ps/index.d.ts +0 -2
- package/lib/ps/index.js +0 -253
- package/tmp/typedoc/readme.md +0 -320
- /package/lib/{binary-collections-config.d.cts → binary-collections/config.d.cts} +0 -0
|
@@ -68,31 +68,78 @@ var require_utils = __commonJS({
|
|
|
68
68
|
}
|
|
69
69
|
module2.exports.getArgs = getArgs2;
|
|
70
70
|
function del(fullPath) {
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
71
|
+
try {
|
|
72
|
+
if (!fs2.existsSync(fullPath)) return;
|
|
73
|
+
const stat = fs2.lstatSync(fullPath);
|
|
74
|
+
if (stat.isSymbolicLink()) {
|
|
75
|
+
try {
|
|
76
|
+
fs2.unlinkSync(fullPath);
|
|
77
|
+
console.log("deleted symlink", fullPath);
|
|
78
|
+
} catch (e) {
|
|
79
|
+
console.log("failed delete symlink", fullPath, e && e.message);
|
|
80
|
+
}
|
|
81
|
+
return;
|
|
82
|
+
}
|
|
83
|
+
if (stat.isDirectory()) {
|
|
84
|
+
const subdir = fs2.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
|
|
85
|
+
for (let i = 0; i < subdir.length; i++) {
|
|
86
|
+
del(subdir[i]);
|
|
87
|
+
}
|
|
88
|
+
try {
|
|
89
|
+
fs2.rmdirSync(fullPath);
|
|
90
|
+
console.log("deleted", fullPath);
|
|
91
|
+
} catch (_e) {
|
|
92
|
+
try {
|
|
93
|
+
fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
|
|
94
|
+
console.log("deleted", fullPath);
|
|
95
|
+
} catch (ee) {
|
|
96
|
+
console.log("failed delete", fullPath, ee && ee.message);
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
return;
|
|
75
100
|
}
|
|
76
|
-
} else {
|
|
77
101
|
try {
|
|
78
|
-
fs2.
|
|
102
|
+
fs2.unlinkSync(fullPath);
|
|
79
103
|
console.log("deleted", fullPath);
|
|
80
|
-
} catch (
|
|
81
|
-
|
|
104
|
+
} catch (_e) {
|
|
105
|
+
try {
|
|
106
|
+
fs2.rmSync(fullPath, { recursive: true, force: true, retryDelay: 7e3 });
|
|
107
|
+
console.log("deleted", fullPath);
|
|
108
|
+
} catch (ee) {
|
|
109
|
+
console.log("failed delete", fullPath, ee && ee.message);
|
|
110
|
+
}
|
|
82
111
|
}
|
|
112
|
+
} catch (err) {
|
|
113
|
+
console.log("failed delete", fullPath, err && err.message);
|
|
83
114
|
}
|
|
84
115
|
}
|
|
85
116
|
module2.exports.del = del;
|
|
86
117
|
function delStream(globStream) {
|
|
87
118
|
globStream.stream().on("data", (result) => {
|
|
88
119
|
const fullPath = path2.resolve(process.cwd(), result);
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
120
|
+
try {
|
|
121
|
+
if (fs2.existsSync(fullPath)) {
|
|
122
|
+
const stat = fs2.lstatSync(fullPath);
|
|
123
|
+
if (stat.isSymbolicLink()) {
|
|
124
|
+
try {
|
|
125
|
+
fs2.unlinkSync(fullPath);
|
|
126
|
+
console.log("deleted symlink", fullPath);
|
|
127
|
+
} catch (e) {
|
|
128
|
+
console.log("failed delete symlink", fullPath, e && e.message);
|
|
129
|
+
}
|
|
130
|
+
return;
|
|
131
|
+
}
|
|
132
|
+
if (stat.isDirectory()) {
|
|
133
|
+
const subdir = fs2.readdirSync(fullPath).map((dirPath) => path2.resolve(fullPath, dirPath));
|
|
134
|
+
for (let i = 0; i < subdir.length; i++) {
|
|
135
|
+
del(subdir[i]);
|
|
136
|
+
}
|
|
137
|
+
}
|
|
93
138
|
}
|
|
139
|
+
del(fullPath);
|
|
140
|
+
} catch (err) {
|
|
141
|
+
console.log("failed processing", fullPath, err && err.message);
|
|
94
142
|
}
|
|
95
|
-
del(fullPath);
|
|
96
143
|
});
|
|
97
144
|
}
|
|
98
145
|
module2.exports.delStream = delStream;
|
|
@@ -146,7 +193,7 @@ var fs = require("fs");
|
|
|
146
193
|
var path = require("path");
|
|
147
194
|
var dotenv = require("dotenv");
|
|
148
195
|
var envPath = path.resolve(process.cwd(), ".env");
|
|
149
|
-
if (fs.existsSync(envPath)) dotenv.config({ path: envPath });
|
|
196
|
+
if (fs.existsSync(envPath)) dotenv.config({ path: envPath, override: true, quiet: true });
|
|
150
197
|
var { getArgs } = require_utils();
|
|
151
198
|
var args = getArgs();
|
|
152
199
|
var positional = args._ || [];
|
|
@@ -180,15 +227,19 @@ if (VISITED_SUBMODULES.includes(CURRENT_PATH)) {
|
|
|
180
227
|
VISITED_SUBMODULES.push(CURRENT_PATH);
|
|
181
228
|
process.env.VISITED_SUBMODULES = VISITED_SUBMODULES.join(path.delimiter);
|
|
182
229
|
console.log(`Installing submodules at ${ROOT}`);
|
|
183
|
-
var
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
"^submodule\\..*\\.path$"
|
|
191
|
-
|
|
230
|
+
var ROOT_GITMODULES = path.join(REPO_PATH, ".gitmodules");
|
|
231
|
+
if (!fs.existsSync(ROOT_GITMODULES) || fs.statSync(ROOT_GITMODULES).size === 0) {
|
|
232
|
+
console.log(`No valid .gitmodules found at ${ROOT_GITMODULES}. Skipping submodule processing.`);
|
|
233
|
+
process.exit(0);
|
|
234
|
+
}
|
|
235
|
+
var submoduleList = [];
|
|
236
|
+
try {
|
|
237
|
+
const output = runGit(["-C", REPO_PATH, "config", "-f", ".gitmodules", "--get-regexp", "^submodule\\..*\\.path$"]);
|
|
238
|
+
submoduleList = output.split("\n").filter(Boolean);
|
|
239
|
+
} catch (err) {
|
|
240
|
+
console.log("No submodules found or .gitmodules invalid. Skipping.", err);
|
|
241
|
+
process.exit(0);
|
|
242
|
+
}
|
|
192
243
|
for (const line of submoduleList) {
|
|
193
244
|
const [KEY, MODULE_PATH] = line.trim().split(/\s+/);
|
|
194
245
|
const RELATIVE_MODULE_PATH = path.join(ROOT, MODULE_PATH);
|
|
@@ -197,11 +248,14 @@ for (const line of submoduleList) {
|
|
|
197
248
|
fs.rmSync(RELATIVE_MODULE_PATH, { recursive: true, force: true });
|
|
198
249
|
}
|
|
199
250
|
const NAME = KEY.match(/^submodule\.(.*)\.path$/)[1];
|
|
200
|
-
const URL2 = runGit(["config", "-f", ".gitmodules", "--get", `submodule.${NAME}.url`]).trim();
|
|
201
|
-
let BRANCH
|
|
251
|
+
const URL2 = runGit(["-C", REPO_PATH, "config", "-f", ".gitmodules", "--get", `submodule.${NAME}.url`]).trim();
|
|
252
|
+
let BRANCH;
|
|
202
253
|
try {
|
|
203
|
-
BRANCH = runGit(["config", "-f", ".gitmodules", "--get", `submodule.${NAME}.branch`]).trim();
|
|
204
|
-
|
|
254
|
+
BRANCH = runGit(["-C", REPO_PATH, "config", "-f", ".gitmodules", "--get", `submodule.${NAME}.branch`]).trim();
|
|
255
|
+
if (!BRANCH) BRANCH = "master";
|
|
256
|
+
} catch (err) {
|
|
257
|
+
console.log(`Error occurred while fetching branch for submodule ${NAME}:`, err);
|
|
258
|
+
BRANCH = "master";
|
|
205
259
|
}
|
|
206
260
|
console.log(`Submodule: ${color.cyan(NAME)}`);
|
|
207
261
|
console.log(` Location: ${color.magenta(MODULE_PATH)}`);
|
|
@@ -217,21 +271,29 @@ for (const line of submoduleList) {
|
|
|
217
271
|
continue;
|
|
218
272
|
}
|
|
219
273
|
if (!fs.existsSync(RELATIVE_MODULE_PATH)) {
|
|
220
|
-
console.warn(`Submodule directory
|
|
274
|
+
console.warn(`Submodule directory missing. Attempting manual clone...`);
|
|
221
275
|
try {
|
|
222
276
|
runGit(["clone", "--branch", BRANCH, URL2, RELATIVE_MODULE_PATH]);
|
|
223
277
|
} catch (e) {
|
|
224
|
-
console.error(`Manual clone failed
|
|
278
|
+
console.error(`Manual clone failed: ${e.message}`);
|
|
225
279
|
continue;
|
|
226
280
|
}
|
|
227
281
|
if (!fs.existsSync(RELATIVE_MODULE_PATH)) {
|
|
228
|
-
console.error(`
|
|
282
|
+
console.error(`Still missing after clone: ${RELATIVE_MODULE_PATH}`);
|
|
229
283
|
continue;
|
|
230
284
|
}
|
|
231
285
|
}
|
|
232
286
|
const GIT_MODULES = path.join(RELATIVE_MODULE_PATH, ".gitmodules");
|
|
287
|
+
if (!fs.existsSync(GIT_MODULES)) {
|
|
288
|
+
console.log(`No .gitmodules in ${RELATIVE_MODULE_PATH}. Skipping nested processing.`);
|
|
289
|
+
continue;
|
|
290
|
+
}
|
|
291
|
+
if (fs.statSync(GIT_MODULES).size === 0) {
|
|
292
|
+
console.log(`Empty .gitmodules in ${RELATIVE_MODULE_PATH}. Skipping nested processing.`);
|
|
293
|
+
continue;
|
|
294
|
+
}
|
|
233
295
|
if (ACCESS_TOKEN) {
|
|
234
|
-
let URL_WITH_TOKEN
|
|
296
|
+
let URL_WITH_TOKEN;
|
|
235
297
|
let repoInfo;
|
|
236
298
|
if (URL2.includes("github.com")) {
|
|
237
299
|
repoInfo = URL2.replace("https://github.com/", "");
|
|
@@ -244,27 +306,25 @@ for (const line of submoduleList) {
|
|
|
244
306
|
repoInfo = urlObj.pathname.substring(1);
|
|
245
307
|
URL_WITH_TOKEN = `${urlObj.protocol}//${ACCESS_TOKEN}@${urlObj.host}${urlObj.pathname}`;
|
|
246
308
|
}
|
|
247
|
-
if (URL_WITH_TOKEN
|
|
248
|
-
console.log(`Apply token for ${repoInfo} at ${MODULE_PATH}
|
|
309
|
+
if (URL_WITH_TOKEN) {
|
|
310
|
+
console.log(`Apply token for ${repoInfo} at ${MODULE_PATH}`);
|
|
249
311
|
runGit(["-C", RELATIVE_MODULE_PATH, "remote", "set-url", "origin", URL_WITH_TOKEN]);
|
|
250
312
|
}
|
|
251
313
|
}
|
|
252
314
|
runGit(["-C", RELATIVE_MODULE_PATH, "fetch", "--all"]);
|
|
253
315
|
runGit(["-C", RELATIVE_MODULE_PATH, "pull", "origin", BRANCH, "-X", "theirs"]);
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
262
|
-
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
process.exit(result.status);
|
|
267
|
-
}
|
|
316
|
+
console.log(`${MODULE_PATH} has submodules`);
|
|
317
|
+
const env = Object.assign({}, process.env, {
|
|
318
|
+
VISITED_SUBMODULES: process.env.VISITED_SUBMODULES + path.delimiter + path.resolve(RELATIVE_MODULE_PATH)
|
|
319
|
+
});
|
|
320
|
+
const result = spawnSync("node", [__filename, "-cwd", RELATIVE_MODULE_PATH], {
|
|
321
|
+
stdio: "inherit",
|
|
322
|
+
env,
|
|
323
|
+
cwd: RELATIVE_MODULE_PATH
|
|
324
|
+
});
|
|
325
|
+
if (result.status !== 0) {
|
|
326
|
+
console.error(`Recursive submodule failed for ${RELATIVE_MODULE_PATH}`);
|
|
327
|
+
process.exit(result.status);
|
|
268
328
|
}
|
|
269
329
|
}
|
|
270
330
|
runGit(["-C", REPO_PATH, "submodule", "update", "--init", "--recursive"]);
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
3
3
|
import {
|
|
4
4
|
require_utils
|
|
5
|
-
} from "./chunk-
|
|
5
|
+
} from "./chunk-5RTXZVCW.mjs";
|
|
6
6
|
import {
|
|
7
7
|
__commonJS,
|
|
8
8
|
__filename,
|
|
@@ -20,7 +20,7 @@ var require_submodule_install = __commonJS({
|
|
|
20
20
|
var path = __require("path");
|
|
21
21
|
var dotenv = __require("dotenv");
|
|
22
22
|
var envPath = path.resolve(process.cwd(), ".env");
|
|
23
|
-
if (fs.existsSync(envPath)) dotenv.config({ path: envPath });
|
|
23
|
+
if (fs.existsSync(envPath)) dotenv.config({ path: envPath, override: true, quiet: true });
|
|
24
24
|
var { getArgs } = require_utils();
|
|
25
25
|
var args = getArgs();
|
|
26
26
|
var positional = args._ || [];
|
|
@@ -54,15 +54,19 @@ var require_submodule_install = __commonJS({
|
|
|
54
54
|
VISITED_SUBMODULES.push(CURRENT_PATH);
|
|
55
55
|
process.env.VISITED_SUBMODULES = VISITED_SUBMODULES.join(path.delimiter);
|
|
56
56
|
console.log(`Installing submodules at ${ROOT}`);
|
|
57
|
-
var
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
"^submodule\\..*\\.path$"
|
|
65
|
-
|
|
57
|
+
var ROOT_GITMODULES = path.join(REPO_PATH, ".gitmodules");
|
|
58
|
+
if (!fs.existsSync(ROOT_GITMODULES) || fs.statSync(ROOT_GITMODULES).size === 0) {
|
|
59
|
+
console.log(`No valid .gitmodules found at ${ROOT_GITMODULES}. Skipping submodule processing.`);
|
|
60
|
+
process.exit(0);
|
|
61
|
+
}
|
|
62
|
+
var submoduleList = [];
|
|
63
|
+
try {
|
|
64
|
+
const output = runGit(["-C", REPO_PATH, "config", "-f", ".gitmodules", "--get-regexp", "^submodule\\..*\\.path$"]);
|
|
65
|
+
submoduleList = output.split("\n").filter(Boolean);
|
|
66
|
+
} catch (err) {
|
|
67
|
+
console.log("No submodules found or .gitmodules invalid. Skipping.", err);
|
|
68
|
+
process.exit(0);
|
|
69
|
+
}
|
|
66
70
|
for (const line of submoduleList) {
|
|
67
71
|
const [KEY, MODULE_PATH] = line.trim().split(/\s+/);
|
|
68
72
|
const RELATIVE_MODULE_PATH = path.join(ROOT, MODULE_PATH);
|
|
@@ -71,11 +75,14 @@ var require_submodule_install = __commonJS({
|
|
|
71
75
|
fs.rmSync(RELATIVE_MODULE_PATH, { recursive: true, force: true });
|
|
72
76
|
}
|
|
73
77
|
const NAME = KEY.match(/^submodule\.(.*)\.path$/)[1];
|
|
74
|
-
const URL = runGit(["config", "-f", ".gitmodules", "--get", `submodule.${NAME}.url`]).trim();
|
|
75
|
-
let BRANCH
|
|
78
|
+
const URL = runGit(["-C", REPO_PATH, "config", "-f", ".gitmodules", "--get", `submodule.${NAME}.url`]).trim();
|
|
79
|
+
let BRANCH;
|
|
76
80
|
try {
|
|
77
|
-
BRANCH = runGit(["config", "-f", ".gitmodules", "--get", `submodule.${NAME}.branch`]).trim();
|
|
78
|
-
|
|
81
|
+
BRANCH = runGit(["-C", REPO_PATH, "config", "-f", ".gitmodules", "--get", `submodule.${NAME}.branch`]).trim();
|
|
82
|
+
if (!BRANCH) BRANCH = "master";
|
|
83
|
+
} catch (err) {
|
|
84
|
+
console.log(`Error occurred while fetching branch for submodule ${NAME}:`, err);
|
|
85
|
+
BRANCH = "master";
|
|
79
86
|
}
|
|
80
87
|
console.log(`Submodule: ${color.cyan(NAME)}`);
|
|
81
88
|
console.log(` Location: ${color.magenta(MODULE_PATH)}`);
|
|
@@ -91,21 +98,29 @@ var require_submodule_install = __commonJS({
|
|
|
91
98
|
continue;
|
|
92
99
|
}
|
|
93
100
|
if (!fs.existsSync(RELATIVE_MODULE_PATH)) {
|
|
94
|
-
console.warn(`Submodule directory
|
|
101
|
+
console.warn(`Submodule directory missing. Attempting manual clone...`);
|
|
95
102
|
try {
|
|
96
103
|
runGit(["clone", "--branch", BRANCH, URL, RELATIVE_MODULE_PATH]);
|
|
97
104
|
} catch (e) {
|
|
98
|
-
console.error(`Manual clone failed
|
|
105
|
+
console.error(`Manual clone failed: ${e.message}`);
|
|
99
106
|
continue;
|
|
100
107
|
}
|
|
101
108
|
if (!fs.existsSync(RELATIVE_MODULE_PATH)) {
|
|
102
|
-
console.error(`
|
|
109
|
+
console.error(`Still missing after clone: ${RELATIVE_MODULE_PATH}`);
|
|
103
110
|
continue;
|
|
104
111
|
}
|
|
105
112
|
}
|
|
106
113
|
const GIT_MODULES = path.join(RELATIVE_MODULE_PATH, ".gitmodules");
|
|
114
|
+
if (!fs.existsSync(GIT_MODULES)) {
|
|
115
|
+
console.log(`No .gitmodules in ${RELATIVE_MODULE_PATH}. Skipping nested processing.`);
|
|
116
|
+
continue;
|
|
117
|
+
}
|
|
118
|
+
if (fs.statSync(GIT_MODULES).size === 0) {
|
|
119
|
+
console.log(`Empty .gitmodules in ${RELATIVE_MODULE_PATH}. Skipping nested processing.`);
|
|
120
|
+
continue;
|
|
121
|
+
}
|
|
107
122
|
if (ACCESS_TOKEN) {
|
|
108
|
-
let URL_WITH_TOKEN
|
|
123
|
+
let URL_WITH_TOKEN;
|
|
109
124
|
let repoInfo;
|
|
110
125
|
if (URL.includes("github.com")) {
|
|
111
126
|
repoInfo = URL.replace("https://github.com/", "");
|
|
@@ -118,27 +133,25 @@ var require_submodule_install = __commonJS({
|
|
|
118
133
|
repoInfo = urlObj.pathname.substring(1);
|
|
119
134
|
URL_WITH_TOKEN = `${urlObj.protocol}//${ACCESS_TOKEN}@${urlObj.host}${urlObj.pathname}`;
|
|
120
135
|
}
|
|
121
|
-
if (URL_WITH_TOKEN
|
|
122
|
-
console.log(`Apply token for ${repoInfo} at ${MODULE_PATH}
|
|
136
|
+
if (URL_WITH_TOKEN) {
|
|
137
|
+
console.log(`Apply token for ${repoInfo} at ${MODULE_PATH}`);
|
|
123
138
|
runGit(["-C", RELATIVE_MODULE_PATH, "remote", "set-url", "origin", URL_WITH_TOKEN]);
|
|
124
139
|
}
|
|
125
140
|
}
|
|
126
141
|
runGit(["-C", RELATIVE_MODULE_PATH, "fetch", "--all"]);
|
|
127
142
|
runGit(["-C", RELATIVE_MODULE_PATH, "pull", "origin", BRANCH, "-X", "theirs"]);
|
|
128
|
-
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
process.exit(result.status);
|
|
141
|
-
}
|
|
143
|
+
console.log(`${MODULE_PATH} has submodules`);
|
|
144
|
+
const env = Object.assign({}, process.env, {
|
|
145
|
+
VISITED_SUBMODULES: process.env.VISITED_SUBMODULES + path.delimiter + path.resolve(RELATIVE_MODULE_PATH)
|
|
146
|
+
});
|
|
147
|
+
const result = spawnSync("node", [__filename, "-cwd", RELATIVE_MODULE_PATH], {
|
|
148
|
+
stdio: "inherit",
|
|
149
|
+
env,
|
|
150
|
+
cwd: RELATIVE_MODULE_PATH
|
|
151
|
+
});
|
|
152
|
+
if (result.status !== 0) {
|
|
153
|
+
console.error(`Recursive submodule failed for ${RELATIVE_MODULE_PATH}`);
|
|
154
|
+
process.exit(result.status);
|
|
142
155
|
}
|
|
143
156
|
}
|
|
144
157
|
runGit(["-C", REPO_PATH, "submodule", "update", "--init", "--recursive"]);
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
1
2
|
var __create = Object.create;
|
|
2
3
|
var __defProp = Object.defineProperty;
|
|
3
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
@@ -41,7 +42,10 @@ var require_submodule_remove = __commonJS({
|
|
|
41
42
|
var path2 = require("upath");
|
|
42
43
|
var fs2 = require("fs-extra");
|
|
43
44
|
var dotenv = require("dotenv");
|
|
44
|
-
|
|
45
|
+
var envPath = path2.resolve(process.cwd(), ".env");
|
|
46
|
+
if (fs2.existsSync(envPath)) {
|
|
47
|
+
dotenv.config({ path: envPath, override: true, quiet: true });
|
|
48
|
+
}
|
|
45
49
|
async function removeSubmodule2(submodulePath2) {
|
|
46
50
|
try {
|
|
47
51
|
await spawnAsync("git", ["submodule", "deinit", "-f", submodulePath2], { stdio: "inherit" });
|
|
@@ -95,8 +99,7 @@ if (!submodulePath) {
|
|
|
95
99
|
process.exit(1);
|
|
96
100
|
}
|
|
97
101
|
if (!import_fs_extra.default.existsSync(import_upath.default.resolve(submodulePath))) {
|
|
98
|
-
console.
|
|
99
|
-
process.exit(1);
|
|
102
|
+
console.warn(`Error: The path "${submodulePath}" does not exist, continue deinitialization and cleanup steps.`);
|
|
100
103
|
}
|
|
101
104
|
(async () => {
|
|
102
105
|
await (0, import_submodule_remove.default)(submodulePath);
|
|
@@ -19,12 +19,12 @@ const submodule_remove_cjs_1 = __importDefault(require("./submodule-remove.cjs")
|
|
|
19
19
|
const args = (0, minimist_1.default)(process.argv.slice(2));
|
|
20
20
|
const submodulePath = args._[0];
|
|
21
21
|
if (!submodulePath) {
|
|
22
|
-
console.error(
|
|
22
|
+
console.error('Usage: node submodule-remove.cjs <submodule-path>');
|
|
23
23
|
process.exit(1);
|
|
24
24
|
}
|
|
25
25
|
if (!fs_extra_1.default.existsSync(upath_1.default.resolve(submodulePath))) {
|
|
26
|
-
console.
|
|
27
|
-
process.exit(1);
|
|
26
|
+
console.warn(`Error: The path "${submodulePath}" does not exist, continue deinitialization and cleanup steps.`);
|
|
27
|
+
// process.exit(1);
|
|
28
28
|
}
|
|
29
29
|
(() => __awaiter(void 0, void 0, void 0, function* () {
|
|
30
30
|
yield (0, submodule_remove_cjs_1.default)(submodulePath);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
require_submodule_remove
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-BZWVHODJ.mjs";
|
|
5
5
|
import {
|
|
6
6
|
__toESM,
|
|
7
7
|
init_esm_shims
|
|
@@ -20,8 +20,7 @@ if (!submodulePath) {
|
|
|
20
20
|
process.exit(1);
|
|
21
21
|
}
|
|
22
22
|
if (!fs.existsSync(path.resolve(submodulePath))) {
|
|
23
|
-
console.
|
|
24
|
-
process.exit(1);
|
|
23
|
+
console.warn(`Error: The path "${submodulePath}" does not exist, continue deinitialization and cleanup steps.`);
|
|
25
24
|
}
|
|
26
25
|
(async () => {
|
|
27
26
|
await (0, import_submodule_remove.default)(submodulePath);
|
package/lib/submodule-remove.cjs
CHANGED
|
@@ -3,7 +3,10 @@ var { spawnAsync } = require("cross-spawn");
|
|
|
3
3
|
var path = require("upath");
|
|
4
4
|
var fs = require("fs-extra");
|
|
5
5
|
var dotenv = require("dotenv");
|
|
6
|
-
|
|
6
|
+
var envPath = path.resolve(process.cwd(), ".env");
|
|
7
|
+
if (fs.existsSync(envPath)) {
|
|
8
|
+
dotenv.config({ path: envPath, override: true, quiet: true });
|
|
9
|
+
}
|
|
7
10
|
async function removeSubmodule(submodulePath) {
|
|
8
11
|
try {
|
|
9
12
|
await spawnAsync("git", ["submodule", "deinit", "-f", submodulePath], { stdio: "inherit" });
|
package/lib/submodule-remove.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { createRequire } from 'module'; const require = createRequire(import.meta.url);
|
|
2
2
|
import {
|
|
3
3
|
require_submodule_remove
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-BZWVHODJ.mjs";
|
|
5
5
|
import "./chunk-QQ4A6DLD.mjs";
|
|
6
6
|
export default require_submodule_remove();
|