@plurnk/plurnk-execs-git 0.1.6 → 0.1.8
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/dist/Git.d.ts +2 -2
- package/dist/Git.d.ts.map +1 -1
- package/dist/Git.js +18 -7
- package/dist/Git.js.map +1 -1
- package/package.json +3 -3
package/dist/Git.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { SubprocessExecutor } from "@plurnk/plurnk-execs";
|
|
2
2
|
import type { RuntimeAvailability, SpawnArgs } from "@plurnk/plurnk-execs";
|
|
3
3
|
export default class Git extends SubprocessExecutor {
|
|
4
|
-
protected spawnArgs(runtime: string, command: string): SpawnArgs;
|
|
5
|
-
probe(): Promise<RuntimeAvailability>;
|
|
4
|
+
protected spawnArgs(runtime: string, command: string, target?: string | null): SpawnArgs;
|
|
5
|
+
probe(signal?: AbortSignal): Promise<RuntimeAvailability>;
|
|
6
6
|
}
|
|
7
7
|
//# sourceMappingURL=Git.d.ts.map
|
package/dist/Git.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Git.d.ts","sourceRoot":"","sources":["../src/Git.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAc3E,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,kBAAkB;cAC5B,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,SAAS;
|
|
1
|
+
{"version":3,"file":"Git.d.ts","sourceRoot":"","sources":["../src/Git.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,KAAK,EAAE,mBAAmB,EAAE,SAAS,EAAE,MAAM,sBAAsB,CAAC;AAc3E,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,kBAAkB;cAC5B,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,MAAM,GAAE,MAAM,GAAG,IAAW,GAAG,SAAS;IAYxF,KAAK,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,mBAAmB,CAAC;CAO3E"}
|
package/dist/Git.js
CHANGED
|
@@ -13,26 +13,37 @@ import { tokenizeArgv } from "./tokenizeArgv.js";
|
|
|
13
13
|
// (plurnk-execs#5). All run/stream/abort behavior is inherited from
|
|
14
14
|
// SubprocessExecutor.
|
|
15
15
|
export default class Git extends SubprocessExecutor {
|
|
16
|
-
spawnArgs(runtime, command) {
|
|
17
|
-
// runtime is "git" or "gh" — the tag is the executable.
|
|
16
|
+
spawnArgs(runtime, command, target = null) {
|
|
17
|
+
// runtime is "git" or "gh" — the tag is the executable. With a target the
|
|
18
|
+
// target IS the invocation (tokenized argv) and the body is its stdin
|
|
19
|
+
// (plurnk-execs#15) — `EXEC[git](apply --index):<patch>`, `commit -F -`,
|
|
20
|
+
// `hash-object -w --stdin`. No target → the body is the invocation.
|
|
21
|
+
if (target !== null)
|
|
22
|
+
return { cmd: runtime, args: tokenizeArgv(target), useShell: false, stdin: command };
|
|
18
23
|
return { cmd: runtime, args: tokenizeArgv(command), useShell: false };
|
|
19
24
|
}
|
|
20
25
|
// Per-tag availability: `git` needs the binary; `gh` needs the binary AND an
|
|
21
26
|
// authenticated session. (Correct only once the consumer probes per-tag, not
|
|
22
27
|
// per-package — plurnk-service#185.)
|
|
23
|
-
async probe() {
|
|
28
|
+
async probe(signal) {
|
|
24
29
|
if (this.runtime === "gh") {
|
|
25
|
-
return runProbe("gh", ["auth", "status"], "gh authenticated", "gh present but not authenticated — run `gh auth login`", "gh not on PATH");
|
|
30
|
+
return runProbe("gh", ["auth", "status"], "gh authenticated", "gh present but not authenticated — run `gh auth login`", "gh not on PATH", signal);
|
|
26
31
|
}
|
|
27
|
-
return runProbe("git", ["--version"], undefined, "git --version failed", "git not on PATH");
|
|
32
|
+
return runProbe("git", ["--version"], undefined, "git --version failed", "git not on PATH", signal);
|
|
28
33
|
}
|
|
29
34
|
}
|
|
30
35
|
// Spawn a probe command; resolve availability from its exit. Async so the
|
|
31
36
|
// consumer's per-probe timeout can race it (a hung `gh auth status` mustn't
|
|
32
37
|
// wedge boot).
|
|
33
|
-
const runProbe = (bin, args, okDetail, nonzeroDetail, missingDetail) => new Promise((resolve) => {
|
|
38
|
+
const runProbe = (bin, args, okDetail, nonzeroDetail, missingDetail, signal) => new Promise((resolve) => {
|
|
39
|
+
if (signal?.aborted) {
|
|
40
|
+
resolve({ available: false, detail: missingDetail });
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
34
43
|
let out = "";
|
|
35
|
-
|
|
44
|
+
// Honor the consumer's per-probe signal so a resolved/timed-out probe
|
|
45
|
+
// reaps the child (plurnk-execs#16); /dev/null stdin+stderr.
|
|
46
|
+
const child = spawn(bin, args, { signal, stdio: ["ignore", "pipe", "ignore"] });
|
|
36
47
|
child.stdout?.on("data", (chunk) => { out += chunk.toString("utf8"); });
|
|
37
48
|
child.on("error", () => resolve({ available: false, detail: missingDetail }));
|
|
38
49
|
child.on("close", (code) => resolve(code === 0
|
package/dist/Git.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Git.js","sourceRoot":"","sources":["../src/Git.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAC;AAC3C,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,OAAO,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjD,4EAA4E;AAC5E,6EAA6E;AAC7E,2EAA2E;AAC3E,wDAAwD;AACxD,EAAE;AACF,gFAAgF;AAChF,+EAA+E;AAC/E,yEAAyE;AACzE,+EAA+E;AAC/E,oEAAoE;AACpE,sBAAsB;AACtB,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,kBAAkB;IAC5B,SAAS,CAAC,OAAe,EAAE,OAAe;
|
|
1
|
+
{"version":3,"file":"Git.js","sourceRoot":"","sources":["../src/Git.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@plurnk/plurnk-execs-git",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.8",
|
|
4
4
|
"description": "git + GitHub-CLI runtime executor for plurnk-service's exec scheme — shells the system git/gh binaries (no third-party lib) for EXEC[git] / EXEC[gh].",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"plurnk",
|
|
@@ -65,9 +65,9 @@
|
|
|
65
65
|
"devDependencies": {
|
|
66
66
|
"@types/node": "^26.0.0",
|
|
67
67
|
"typescript": "^6.0.3",
|
|
68
|
-
"@plurnk/plurnk-execs": "
|
|
68
|
+
"@plurnk/plurnk-execs": "0.4.28"
|
|
69
69
|
},
|
|
70
70
|
"peerDependencies": {
|
|
71
|
-
"@plurnk/plurnk-execs": "
|
|
71
|
+
"@plurnk/plurnk-execs": "0.4.28"
|
|
72
72
|
}
|
|
73
73
|
}
|