@chrismessina/raycast-downloader 0.2.0 → 0.2.1
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/README.md +5 -4
- package/dist/curl.d.ts +6 -7
- package/dist/curl.d.ts.map +1 -1
- package/dist/curl.js +12 -7
- package/dist/curl.js.map +1 -1
- package/dist/detach.d.ts.map +1 -1
- package/dist/detach.js +43 -44
- package/dist/detach.js.map +1 -1
- package/dist/runner.bundle.js +39 -53
- package/dist/runner.d.ts +5 -4
- package/dist/runner.d.ts.map +1 -1
- package/dist/runner.js +27 -46
- package/dist/runner.js.map +1 -1
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -90,7 +90,7 @@ try {
|
|
|
90
90
|
|
|
91
91
|
Three things worth copying exactly:
|
|
92
92
|
|
|
93
|
-
**Log the typed `code`, never the URL or the raw cause.** A signed URL is a bearer credential — it travels
|
|
93
|
+
**Log the typed `code`, never the URL or the raw cause.** A signed URL is a bearer credential — it travels only through pipes, never argv or a file, for that reason, and a log line is the easiest way to undo that. `error.code`, `error.httpStatus` and `retryable` say everything actionable without carrying the secret.
|
|
94
94
|
|
|
95
95
|
**Use `logger.debug` or `logger.log`, not `logger.error`.** This package takes no logger dependency — `@chrismessina/raycast-logger` is one you install yourself, and any logger works. If you use that one: as of v1.5.0 only `debug` and `log` are gated on the `verboseLogging` preference, while `error` and `warn` emit regardless, so an expected failure would print in every user's console. Check your own logger's gating before copying this.
|
|
96
96
|
|
|
@@ -147,7 +147,7 @@ Each of these exists because the obvious implementation is wrong in a way that o
|
|
|
147
147
|
|
|
148
148
|
**Process identity is `(pid, startTime)`, never a bare pid.** macOS `kern.maxproc` is 16000, so pids get recycled. A liveness check of `kill(pid, 0)` alone answers "does *some* process have this pid" — and cancelling on that basis can `kill(-pid)` an unrelated process group.
|
|
149
149
|
|
|
150
|
-
**Credentials never touch argv.** `ps` is world-readable
|
|
150
|
+
**Credentials never touch argv or disk.** `ps` is world-readable: a URL passed as a curl argument is visible to any process on the machine. A file is no better if the process that should delete it is killed first. So the URL and your `headers` travel only through pipes: `startDownload` hands them to the runner on its stdin, and the runner hands curl its config the same way (`curl -K -`). Signed URLs and `Authorization` headers are bearer credentials, so this is a requirement rather than a preference.
|
|
151
151
|
|
|
152
152
|
**Timeouts are throughput-based, not wall-clock.** `--max-time` counts machine sleep against the budget, so a laptop closed for ten minutes guarantees a spurious failure on a healthy transfer. `--speed-limit`/`--speed-time` measure actual throughput and are sleep-tolerant.
|
|
153
153
|
|
|
@@ -204,14 +204,15 @@ const outputPath = uniquePath(downloadsDir, filename, { reserve: true });
|
|
|
204
204
|
|
|
205
205
|
A claim whose owner is provably dead is stolen, so a runner killed mid-transfer does not wedge the filename.
|
|
206
206
|
|
|
207
|
-
**
|
|
207
|
+
**Three sidecar files may exist next to a `.part` while a download is live** — `.state`, `.claim` and `.headers`. They hold the provenance that makes a resume safe, the live-attempt claim, and curl's dump of the *response* headers (never your request headers). Before 0.2.1 a fourth, `.curlrc`, held curl's config briefly at startup. Atomic writes of `.state` and `.claim` also create short-lived `<name>.<pid>….tmp` neighbors; a filter should match the prefix, not an exact list. The runner removes them when the download finishes, best effort — a denied unlink or a killed runner can leave one behind. If you enumerate the destination directory to show the user what is in flight, filter them out, stale ones included.
|
|
208
208
|
|
|
209
209
|
**Check `partialUnsafe` before you resume.** A failed download normally leaves its `.part` file in place precisely so a retry can resume from it. `partialUnsafe: true` on the status is the exception: the runner put something in that file that does not belong to the download and could not take it back out. **The package enforces this itself** — the same fact is recorded beside the file, and a later attempt resets the partial or fails rather than resuming onto it — so the flag is there for what you show the user, not for a rule you have to implement. The flag is absent on every ordinary status — including failures whose partial is perfectly resumable — and absence means "nothing was recorded", not "verified safe": a runner older than 0.1.3 cannot set it. Do not read `bytesDownloaded: 0` as the same signal; an empty response and a failed setup report zero too.
|
|
210
210
|
|
|
211
211
|
**Not every 2xx is a file, and one 4xx is.** curl exits 0 on each of these, so the runner decides by status:
|
|
212
212
|
|
|
213
213
|
- On a fresh (not resumed) request, **202, 204, 205** carry no file, and a **206** carries only a fragment. Each fails and its body is discarded. After a clean curl exit the code is `pending` (retryable) for a 202, `integrity` for the 206, and `http_client` for the rest; a transfer that also broke mid-body reports its transport failure instead.
|
|
214
|
-
- A resumed request answered
|
|
214
|
+
- A resumed request answered **202** fails with `pending` and keeps the partial as it was before the request, so the retry resumes. A 202 says the file is not ready yet, not that the bytes on disk are wrong.
|
|
215
|
+
- A resumed request answered with any other **whole body** (a 2xx other than 202 and 206) fails as not resumable, and the partial is cleared so the retry starts over. curl keeps the old bytes in that case — exiting 0 and calling it "already downloaded" when the body is exactly the partial's length — and when `If-Range` produced the 200, those bytes are the old version of the file.
|
|
215
216
|
- A **416** to a resume whose `Content-Range: bytes */N` equals the bytes on disk means the partial is already the whole file. It then goes through the same checks as any finished transfer — a strict `expectedBytes` that disagrees still fails — before it is published. Any other 416 to a resume clears the partial.
|
|
216
217
|
|
|
217
218
|
A failed or cancelled attempt leaves a `.part` only when it holds bytes the file's own response wrote — unless removing the others was denied, in which case the status carries `partialUnsafe` (above). Its `.state` is removed with the `.part`; that removal is best effort.
|
package/dist/curl.d.ts
CHANGED
|
@@ -8,10 +8,10 @@
|
|
|
8
8
|
*
|
|
9
9
|
* Two decisions here are load-bearing, both verified empirically:
|
|
10
10
|
*
|
|
11
|
-
* 1. The URL is passed
|
|
12
|
-
* Signed URLs are bearer credentials;
|
|
13
|
-
*
|
|
14
|
-
*
|
|
11
|
+
* 1. The URL is passed as CONFIG on curl's stdin (`curl -K -`), never on the
|
|
12
|
+
* command line and never in a file. Signed URLs are bearer credentials;
|
|
13
|
+
* argv is world-readable via `ps`, and a file outlives a process killed
|
|
14
|
+
* before it can delete it.
|
|
15
15
|
* 2. Timeouts are THROUGHPUT-based (`--speed-limit`/`--speed-time`), not
|
|
16
16
|
* wall-clock (`--max-time`). `--max-time` counts machine sleep against the
|
|
17
17
|
* budget, so a laptop closed for ten minutes guarantees a spurious failure
|
|
@@ -70,10 +70,9 @@ export interface CurlConfigOptions {
|
|
|
70
70
|
ifRange?: string;
|
|
71
71
|
}
|
|
72
72
|
/**
|
|
73
|
-
* Build the
|
|
73
|
+
* Build curl's config, which the runner writes to curl's stdin (`curl -K -`).
|
|
74
74
|
*
|
|
75
|
-
* Everything sensitive lives in this
|
|
76
|
-
* delete once curl has started.
|
|
75
|
+
* Everything sensitive lives in this text, so it must never reach argv or disk.
|
|
77
76
|
*/
|
|
78
77
|
export declare function buildCurlConfig(options: CurlConfigOptions): string;
|
|
79
78
|
/**
|
package/dist/curl.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../src/curl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,aAAa,EAA0B,KAAK,UAAU,EAAsB,MAAM,UAAU,CAAC;AAetG,wBAAgB,OAAO,IAAI,OAAO,CAWjC;AAED,yFAAyF;AACzF,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kDAAkD;IAClD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED
|
|
1
|
+
{"version":3,"file":"curl.d.ts","sourceRoot":"","sources":["../src/curl.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,EAAE,aAAa,EAA0B,KAAK,UAAU,EAAsB,MAAM,UAAU,CAAC;AAetG,wBAAgB,OAAO,IAAI,OAAO,CAWjC;AAED,yFAAyF;AACzF,eAAO,MAAM,yBAAyB,OAAO,CAAC;AAC9C,eAAO,MAAM,qBAAqB,MAAM,CAAC;AAEzC,MAAM,WAAW,iBAAiB;IAChC,GAAG,EAAE,MAAM,CAAC;IACZ,4EAA4E;IAC5E,UAAU,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,kDAAkD;IAClD,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;OAGG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB;;;;;;;;OAQG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,iBAAiB,GAAG,MAAM,CA4DlE;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,mBAAmB,CAAC,OAAO,GAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAM,GAAG,IAAI,CAU9E;AAuBD,MAAM,WAAW,YAAY;IAC3B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,GAAG,IAAI,CA0BlE;AAED,wEAAwE;AACxE,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAW3E;AAED,uEAAuE;AACvE,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,GAAG,SAAS,CAQ/E;AAED,MAAM,WAAW,YAAY;IAC3B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB;AAED,oFAAoF;AACpF,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,YAAY,CAU1D;AAwBD,MAAM,WAAW,iBAAiB;IAChC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,MAAM,CAAC,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,gEAAgE;IAChE,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,yEAAyE;IACzE,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,qFAAqF;IACrF,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,iBAAiB,GAAG,aAAa,CAqE3E"}
|
package/dist/curl.js
CHANGED
|
@@ -9,10 +9,10 @@
|
|
|
9
9
|
*
|
|
10
10
|
* Two decisions here are load-bearing, both verified empirically:
|
|
11
11
|
*
|
|
12
|
-
* 1. The URL is passed
|
|
13
|
-
* Signed URLs are bearer credentials;
|
|
14
|
-
*
|
|
15
|
-
*
|
|
12
|
+
* 1. The URL is passed as CONFIG on curl's stdin (`curl -K -`), never on the
|
|
13
|
+
* command line and never in a file. Signed URLs are bearer credentials;
|
|
14
|
+
* argv is world-readable via `ps`, and a file outlives a process killed
|
|
15
|
+
* before it can delete it.
|
|
16
16
|
* 2. Timeouts are THROUGHPUT-based (`--speed-limit`/`--speed-time`), not
|
|
17
17
|
* wall-clock (`--max-time`). `--max-time` counts machine sleep against the
|
|
18
18
|
* budget, so a laptop closed for ten minutes guarantees a spurious failure
|
|
@@ -59,10 +59,9 @@ function hasCurl() {
|
|
|
59
59
|
exports.DEFAULT_SPEED_LIMIT_BYTES = 1024;
|
|
60
60
|
exports.DEFAULT_STALL_SECONDS = 120;
|
|
61
61
|
/**
|
|
62
|
-
* Build the
|
|
62
|
+
* Build curl's config, which the runner writes to curl's stdin (`curl -K -`).
|
|
63
63
|
*
|
|
64
|
-
* Everything sensitive lives in this
|
|
65
|
-
* delete once curl has started.
|
|
64
|
+
* Everything sensitive lives in this text, so it must never reach argv or disk.
|
|
66
65
|
*/
|
|
67
66
|
function buildCurlConfig(options) {
|
|
68
67
|
const { url, outputPath, headers = {}, followRedirects = true, resume = false, speedLimitBytes = exports.DEFAULT_SPEED_LIMIT_BYTES, stallSeconds = exports.DEFAULT_STALL_SECONDS, connectTimeoutSeconds = 30, limitRateBytes, maxTimeSeconds, dumpHeaderPath, ifRange, } = options;
|
|
@@ -287,6 +286,12 @@ function classifyCurlFailure(input) {
|
|
|
287
286
|
// A 2xx only reaches here when the runner refused it as not-the-file (202,
|
|
288
287
|
// 204, 205, or a 206 nobody asked for). Same reason as the 3xx branch above:
|
|
289
288
|
// curl exited 0, so EXIT_CODES has nothing to say about it.
|
|
289
|
+
// A 202 means "not ready yet" whether or not this was a resume, and whether curl
|
|
290
|
+
// exited 0 (took the body) or 33 (refused it as an answer to a range). The
|
|
291
|
+
// runner keeps a resumed partial for it, so it must not read as "cannot resume".
|
|
292
|
+
if (httpCode === 202 && (exitCode === 0 || exitCode === 33)) {
|
|
293
|
+
return new errors_1.DownloadError("pending", unusableSuccessMessage(202), { httpStatus: 202, exitCode, signal });
|
|
294
|
+
}
|
|
290
295
|
if (exitCode === 0 && httpCode !== undefined && httpCode >= 200 && httpCode < 300) {
|
|
291
296
|
if (resumed && httpCode !== 206) {
|
|
292
297
|
return new errors_1.DownloadError(EXIT_CODES[33].code, EXIT_CODES[33].message, { httpStatus: httpCode, exitCode, signal });
|
package/dist/curl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"curl.js","sourceRoot":"","sources":["../src/curl.ts"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;;;GAkBG;;;AAiBH,0BAWC;
|
|
1
|
+
{"version":3,"file":"curl.js","sourceRoot":"","sources":["../src/curl.ts"],"names":[],"mappings":"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"}
|
package/dist/detach.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detach.d.ts","sourceRoot":"","sources":["../src/detach.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;
|
|
1
|
+
{"version":3,"file":"detach.d.ts","sourceRoot":"","sources":["../src/detach.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AAgBH,OAAO,EAUL,KAAK,cAAc,EACpB,MAAM,UAAU,CAAC;AAElB,MAAM,WAAW,oBAAoB;IACnC,wEAAwE;IACxE,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,GAAG,EAAE,MAAM,CAAC;IACZ,2EAA2E;IAC3E,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,OAAO,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACjC,gEAAgE;IAChE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;;;;;;;OAWG;IACH,SAAS,CAAC,EAAE,QAAQ,GAAG,UAAU,CAAC;IAClC,2EAA2E;IAC3E,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB;;;;;OAKG;IACH,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,+EAA+E;IAC/E,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;;;;;;;;OASG;IACH,cAAc,CAAC,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,eAAe,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC;CACjF;AAED,MAAM,WAAW,cAAc;IAC7B,EAAE,EAAE,MAAM,CAAC;IACX,GAAG,EAAE,MAAM,CAAC;IACZ,UAAU,EAAE,MAAM,CAAC;CACpB;AA2DD;;;;;GAKG;AACH,wBAAgB,UAAU,IAAI,MAAM,CAWnC;AAED,+EAA+E;AAC/E,wBAAgB,iBAAiB,IAAI,MAAM,EAAE,CAE5C;AAED;;;GAGG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,CAoP1F;AAuBD,MAAM,WAAW,WAAW;IAC1B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CAChC,MAAM,EAAE;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,GAAG,CAAC,EAAE,MAAM,CAAA;CAAE,EACpC,OAAO,GAAE,WAAgB,GACxB,OAAO,CAAC,OAAO,CAAC,CA6FlB;AAoCD;;;;;;;GAOG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,cAAc,EAAE,SAAS,CAAC,EAAE,MAAM,GAAG,cAAc,CAEpF"}
|
package/dist/detach.js
CHANGED
|
@@ -33,7 +33,6 @@ const node_path_1 = require("node:path");
|
|
|
33
33
|
const curl_1 = require("./curl");
|
|
34
34
|
const errors_1 = require("./errors");
|
|
35
35
|
const partial_1 = require("./partial");
|
|
36
|
-
const paths_1 = require("./paths");
|
|
37
36
|
const status_1 = require("./status");
|
|
38
37
|
/**
|
|
39
38
|
* Every location the runner might live, cheapest first.
|
|
@@ -171,36 +170,30 @@ async function startDownload(options) {
|
|
|
171
170
|
(0, partial_1.releasePartialClaim)(partPath, claimToken);
|
|
172
171
|
throw new errors_1.DownloadError("validation", "curl is required to download files but was not found on this system.");
|
|
173
172
|
}
|
|
174
|
-
// The payload carries the URL
|
|
175
|
-
//
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
catch (error) {
|
|
199
|
-
// Nothing has been spawned, so this claim belongs to nobody.
|
|
200
|
-
(0, partial_1.releasePartialClaim)(partPath, claimToken);
|
|
201
|
-
throw error;
|
|
202
|
-
}
|
|
203
|
-
const child = (0, node_child_process_1.spawn)(process.execPath, [runner, payloadPath], {
|
|
173
|
+
// The payload carries the URL and the caller's headers, both potentially
|
|
174
|
+
// bearer credentials, so it travels through the runner's stdin: never argv,
|
|
175
|
+
// which `ps` exposes to every process on the machine, and never a file, which
|
|
176
|
+
// a runner that dies before reading it would leave behind in plain text.
|
|
177
|
+
const payload = JSON.stringify({
|
|
178
|
+
id,
|
|
179
|
+
url,
|
|
180
|
+
outputPath,
|
|
181
|
+
partPath,
|
|
182
|
+
filename,
|
|
183
|
+
statusDir,
|
|
184
|
+
headers,
|
|
185
|
+
expectedBytes,
|
|
186
|
+
resume,
|
|
187
|
+
followRedirects,
|
|
188
|
+
speedLimitBytes,
|
|
189
|
+
stallSeconds,
|
|
190
|
+
limitRateBytes,
|
|
191
|
+
sizeCheck,
|
|
192
|
+
claimToken,
|
|
193
|
+
meta,
|
|
194
|
+
notifyOnFinish,
|
|
195
|
+
});
|
|
196
|
+
const child = (0, node_child_process_1.spawn)(process.execPath, [runner], {
|
|
204
197
|
// POSIX: makes the child a process-group leader so `kill(-pid)` reaches
|
|
205
198
|
// curl too, and detaches it from the parent's session so it survives the
|
|
206
199
|
// command being unloaded.
|
|
@@ -209,9 +202,26 @@ async function startDownload(options) {
|
|
|
209
202
|
// would flash a black box at the user. `unref()` alone is what lets the
|
|
210
203
|
// child outlive the parent there, and `taskkill /T` handles the tree.
|
|
211
204
|
detached: process.platform !== "win32",
|
|
212
|
-
stdio: "ignore",
|
|
205
|
+
stdio: ["pipe", "ignore", "ignore"],
|
|
213
206
|
windowsHide: true,
|
|
214
207
|
});
|
|
208
|
+
// `end` closes the pipe, which is how the runner knows it has the whole thing.
|
|
209
|
+
// Settles once the last byte is in the kernel's pipe buffer, where it survives
|
|
210
|
+
// this command exiting. A payload bigger than that buffer is only partly there
|
|
211
|
+
// until the runner reads, so `startDownload` must not return before this: a
|
|
212
|
+
// command unloaded with the tail still in Node's memory hands the runner half
|
|
213
|
+
// a JSON document. A runner that dies first closes the pipe (EPIPE), which
|
|
214
|
+
// settles it too; that runner reports through its status, or the spawn `error`
|
|
215
|
+
// handler below does.
|
|
216
|
+
const delivered = new Promise((resolve) => {
|
|
217
|
+
if (!child.stdin)
|
|
218
|
+
return resolve();
|
|
219
|
+
child.stdin.once("finish", resolve);
|
|
220
|
+
child.stdin.once("error", () => resolve());
|
|
221
|
+
child.once("exit", () => resolve());
|
|
222
|
+
child.once("error", () => resolve());
|
|
223
|
+
});
|
|
224
|
+
child.stdin?.end(payload);
|
|
215
225
|
child.unref();
|
|
216
226
|
// One shape for both statuses this function may write: the spawn-failure
|
|
217
227
|
// below and the start-up seed further down. They differ in three fields and
|
|
@@ -260,12 +270,6 @@ async function startDownload(options) {
|
|
|
260
270
|
// may already have retried and taken a new claim, and releasing that one
|
|
261
271
|
// would hand the path to a third attempt mid-transfer.
|
|
262
272
|
(0, partial_1.releasePartialClaim)(partPath, claimToken);
|
|
263
|
-
try {
|
|
264
|
-
(0, node_fs_1.unlinkSync)(payloadPath);
|
|
265
|
-
}
|
|
266
|
-
catch {
|
|
267
|
-
// The runner never started, so nothing else will remove it.
|
|
268
|
-
}
|
|
269
273
|
const failedPid = child.pid;
|
|
270
274
|
if (failedPid === undefined)
|
|
271
275
|
return;
|
|
@@ -286,12 +290,6 @@ async function startDownload(options) {
|
|
|
286
290
|
const pid = child.pid;
|
|
287
291
|
if (pid === undefined) {
|
|
288
292
|
(0, partial_1.releasePartialClaim)(partPath, claimToken);
|
|
289
|
-
try {
|
|
290
|
-
(0, node_fs_1.unlinkSync)(payloadPath);
|
|
291
|
-
}
|
|
292
|
-
catch {
|
|
293
|
-
// Best effort.
|
|
294
|
-
}
|
|
295
293
|
throw new errors_1.DownloadError("unknown", "Could not start the download process.");
|
|
296
294
|
}
|
|
297
295
|
// Hand the claim to the process that will actually hold it. Taken under this
|
|
@@ -310,6 +308,7 @@ async function startDownload(options) {
|
|
|
310
308
|
// was told, instantly, that it had failed again. The runner writes its own
|
|
311
309
|
// pid into its first status, so requiring the pid to match is a precise test
|
|
312
310
|
// for "this attempt, not the last one".
|
|
311
|
+
await delivered;
|
|
313
312
|
const seeded = await waitForStatus(id, statusDir, 3000, pid);
|
|
314
313
|
// `spawnFailed` is checked because the seed would otherwise overwrite the
|
|
315
314
|
// terminal failure the error handler just wrote with a `starting` status that
|
package/dist/detach.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"detach.js","sourceRoot":"","sources":["../src/detach.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"detach.js","sourceRoot":"","sources":["../src/detach.ts"],"names":[],"mappings":"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"}
|
package/dist/runner.bundle.js
CHANGED
|
@@ -101,10 +101,10 @@ function classifyHttpStatus(status) {
|
|
|
101
101
|
*
|
|
102
102
|
* Two decisions here are load-bearing, both verified empirically:
|
|
103
103
|
*
|
|
104
|
-
* 1. The URL is passed
|
|
105
|
-
* Signed URLs are bearer credentials;
|
|
106
|
-
*
|
|
107
|
-
*
|
|
104
|
+
* 1. The URL is passed as CONFIG on curl's stdin (`curl -K -`), never on the
|
|
105
|
+
* command line and never in a file. Signed URLs are bearer credentials;
|
|
106
|
+
* argv is world-readable via `ps`, and a file outlives a process killed
|
|
107
|
+
* before it can delete it.
|
|
108
108
|
* 2. Timeouts are THROUGHPUT-based (`--speed-limit`/`--speed-time`), not
|
|
109
109
|
* wall-clock (`--max-time`). `--max-time` counts machine sleep against the
|
|
110
110
|
* budget, so a laptop closed for ten minutes guarantees a spurious failure
|
|
@@ -151,10 +151,9 @@ function hasCurl() {
|
|
|
151
151
|
exports.DEFAULT_SPEED_LIMIT_BYTES = 1024;
|
|
152
152
|
exports.DEFAULT_STALL_SECONDS = 120;
|
|
153
153
|
/**
|
|
154
|
-
* Build the
|
|
154
|
+
* Build curl's config, which the runner writes to curl's stdin (`curl -K -`).
|
|
155
155
|
*
|
|
156
|
-
* Everything sensitive lives in this
|
|
157
|
-
* delete once curl has started.
|
|
156
|
+
* Everything sensitive lives in this text, so it must never reach argv or disk.
|
|
158
157
|
*/
|
|
159
158
|
function buildCurlConfig(options) {
|
|
160
159
|
const { url, outputPath, headers = {}, followRedirects = true, resume = false, speedLimitBytes = exports.DEFAULT_SPEED_LIMIT_BYTES, stallSeconds = exports.DEFAULT_STALL_SECONDS, connectTimeoutSeconds = 30, limitRateBytes, maxTimeSeconds, dumpHeaderPath, ifRange, } = options;
|
|
@@ -379,6 +378,12 @@ function classifyCurlFailure(input) {
|
|
|
379
378
|
// A 2xx only reaches here when the runner refused it as not-the-file (202,
|
|
380
379
|
// 204, 205, or a 206 nobody asked for). Same reason as the 3xx branch above:
|
|
381
380
|
// curl exited 0, so EXIT_CODES has nothing to say about it.
|
|
381
|
+
// A 202 means "not ready yet" whether or not this was a resume, and whether curl
|
|
382
|
+
// exited 0 (took the body) or 33 (refused it as an answer to a range). The
|
|
383
|
+
// runner keeps a resumed partial for it, so it must not read as "cannot resume".
|
|
384
|
+
if (httpCode === 202 && (exitCode === 0 || exitCode === 33)) {
|
|
385
|
+
return new errors_1.DownloadError("pending", unusableSuccessMessage(202), { httpStatus: 202, exitCode, signal });
|
|
386
|
+
}
|
|
382
387
|
if (exitCode === 0 && httpCode !== undefined && httpCode >= 200 && httpCode < 300) {
|
|
383
388
|
if (resumed && httpCode !== 206) {
|
|
384
389
|
return new errors_1.DownloadError(EXIT_CODES[33].code, EXIT_CODES[33].message, { httpStatus: httpCode, exitCode, signal });
|
|
@@ -2248,11 +2253,12 @@ function __req__(name) {
|
|
|
2248
2253
|
* MUST NOT import `@raycast/api`: this executes outside Raycast's host, where
|
|
2249
2254
|
* that module does not resolve.
|
|
2250
2255
|
*
|
|
2251
|
-
* Invoked as: node runner.js
|
|
2256
|
+
* Invoked as: node runner.js (the payload JSON arrives on stdin)
|
|
2252
2257
|
*
|
|
2253
|
-
* The payload
|
|
2254
|
-
*
|
|
2255
|
-
*
|
|
2258
|
+
* The payload carries the download URL and the caller's headers, either of
|
|
2259
|
+
* which can be a bearer credential. argv is world-readable through `ps`, and a
|
|
2260
|
+
* file outlives a process killed before it can unlink it, so it comes through
|
|
2261
|
+
* a pipe. curl's config is handed over the same way, for the same reason.
|
|
2256
2262
|
*/
|
|
2257
2263
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
2258
2264
|
const node_child_process_1 = require("node:child_process");
|
|
@@ -2264,17 +2270,14 @@ const partial_1 = __req__("partial");
|
|
|
2264
2270
|
const status_1 = __req__("status");
|
|
2265
2271
|
const HEARTBEAT_MS = 500;
|
|
2266
2272
|
function main() {
|
|
2267
|
-
|
|
2268
|
-
|
|
2269
|
-
|
|
2270
|
-
}
|
|
2271
|
-
const payload = JSON.parse((0, node_fs_1.readFileSync)(payloadPath, "utf8"));
|
|
2272
|
-
// The payload holds the signed URL; remove it from disk before transferring.
|
|
2273
|
+
// Blocks until `startDownload` closes the pipe. Nothing to report a bad
|
|
2274
|
+
// payload to: without it there is no id, so no status file to write.
|
|
2275
|
+
let payload;
|
|
2273
2276
|
try {
|
|
2274
|
-
(0, node_fs_1.
|
|
2277
|
+
payload = JSON.parse((0, node_fs_1.readFileSync)(0, "utf8"));
|
|
2275
2278
|
}
|
|
2276
2279
|
catch {
|
|
2277
|
-
|
|
2280
|
+
process.exit(2);
|
|
2278
2281
|
}
|
|
2279
2282
|
const startedAt = Date.now();
|
|
2280
2283
|
// The OS process creation time, NOT the time JavaScript got here.
|
|
@@ -2499,9 +2502,9 @@ function main() {
|
|
|
2499
2502
|
// (exit 33) instead of splicing; `Last-Modified` is the documented fallback.
|
|
2500
2503
|
const ifRange = resume ? (partialState?.etag ?? partialState?.lastModified) : undefined;
|
|
2501
2504
|
const followRedirects = payload.followRedirects ?? true;
|
|
2502
|
-
let
|
|
2505
|
+
let config;
|
|
2503
2506
|
try {
|
|
2504
|
-
|
|
2507
|
+
config = (0, curl_1.buildCurlConfig)({
|
|
2505
2508
|
url: payload.url,
|
|
2506
2509
|
outputPath: payload.partPath,
|
|
2507
2510
|
headers: payload.headers,
|
|
@@ -2513,8 +2516,6 @@ function main() {
|
|
|
2513
2516
|
dumpHeaderPath: (0, partial_1.headerPath)(payload.partPath),
|
|
2514
2517
|
ifRange,
|
|
2515
2518
|
});
|
|
2516
|
-
configPath = `${payload.partPath}.curlrc`;
|
|
2517
|
-
(0, paths_1.writeSecretFile)(configPath, config);
|
|
2518
2519
|
}
|
|
2519
2520
|
catch (error) {
|
|
2520
2521
|
// buildCurlConfig rejects control characters in the URL or headers.
|
|
@@ -2526,30 +2527,12 @@ function main() {
|
|
|
2526
2527
|
// as THIS attempt's response is exactly the stale-validator bug one release
|
|
2527
2528
|
// over. Cleared before curl can write a new one.
|
|
2528
2529
|
discardHeaderDump(payload.partPath);
|
|
2529
|
-
|
|
2530
|
-
//
|
|
2531
|
-
|
|
2532
|
-
//
|
|
2533
|
-
|
|
2534
|
-
|
|
2535
|
-
// no longer needs the file. The timer is only a fallback for a transfer that
|
|
2536
|
-
// produces no output at all.
|
|
2537
|
-
let configRemoved = false;
|
|
2538
|
-
const removeConfig = () => {
|
|
2539
|
-
if (configRemoved)
|
|
2540
|
-
return;
|
|
2541
|
-
configRemoved = true;
|
|
2542
|
-
try {
|
|
2543
|
-
(0, node_fs_1.unlinkSync)(configPath);
|
|
2544
|
-
}
|
|
2545
|
-
catch {
|
|
2546
|
-
// Already gone.
|
|
2547
|
-
}
|
|
2548
|
-
};
|
|
2549
|
-
child.stderr?.once("data", removeConfig);
|
|
2550
|
-
child.stdout?.once("data", removeConfig);
|
|
2551
|
-
const configTimer = setTimeout(removeConfig, 2000);
|
|
2552
|
-
configTimer.unref?.();
|
|
2530
|
+
// `-K -`: the config holds the URL and headers, so it goes through curl's
|
|
2531
|
+
// stdin, never argv or a file. curl reads it to EOF before it does anything.
|
|
2532
|
+
const child = (0, node_child_process_1.spawn)("curl", ["-K", "-"], { stdio: ["pipe", "pipe", "pipe"] });
|
|
2533
|
+
// curl failing to start closes the pipe; the `error` handler below reports it.
|
|
2534
|
+
child.stdin?.on("error", () => { });
|
|
2535
|
+
child.stdin?.end(config);
|
|
2553
2536
|
persist({ state: "downloading", bytesDownloaded: existingBytes });
|
|
2554
2537
|
let stdout = "";
|
|
2555
2538
|
let stderr = "";
|
|
@@ -2603,7 +2586,6 @@ function main() {
|
|
|
2603
2586
|
heartbeat.unref?.();
|
|
2604
2587
|
const finishCancelled = () => {
|
|
2605
2588
|
clearInterval(heartbeat);
|
|
2606
|
-
removeConfig();
|
|
2607
2589
|
// Keep the .part file: cancellation should still allow a later resume — and
|
|
2608
2590
|
// record what those bytes are, which is what MAKES the later resume safe.
|
|
2609
2591
|
// Unless there are none, or they are not the file's.
|
|
@@ -2623,7 +2605,6 @@ function main() {
|
|
|
2623
2605
|
process.on("SIGINT", finishCancelled);
|
|
2624
2606
|
child.on("error", (error) => {
|
|
2625
2607
|
clearInterval(heartbeat);
|
|
2626
|
-
removeConfig();
|
|
2627
2608
|
settlePartial(undefined);
|
|
2628
2609
|
releasePath();
|
|
2629
2610
|
persist({
|
|
@@ -2635,9 +2616,6 @@ function main() {
|
|
|
2635
2616
|
});
|
|
2636
2617
|
child.on("close", (exitCode, signal) => {
|
|
2637
2618
|
clearInterval(heartbeat);
|
|
2638
|
-
// Belt and braces: the listeners above normally win, but a transfer that
|
|
2639
|
-
// produced no output at all must not leave the credential on disk.
|
|
2640
|
-
removeConfig();
|
|
2641
2619
|
const writeOut = (0, curl_1.parseWriteOut)(stdout);
|
|
2642
2620
|
const httpCode = writeOut.httpCode;
|
|
2643
2621
|
// Success is strictly 2xx. A 3xx is NEVER a downloaded file:
|
|
@@ -2691,10 +2669,18 @@ function main() {
|
|
|
2691
2669
|
// And a resumed whole-body 2xx curl did NOT refuse: it exits 0 when that
|
|
2692
2670
|
// body is exactly as long as the partial, keeping the partial — which, if
|
|
2693
2671
|
// `If-Range` is what produced the 200, is the OLD version of the file.
|
|
2672
|
+
//
|
|
2673
|
+
// A 202 is excluded: it says the file is not ready yet, which says nothing
|
|
2674
|
+
// against the bytes already on disk. `settlePartial` below rolls back any
|
|
2675
|
+
// 202 body curl appended, and the retry resumes onto the real prefix.
|
|
2694
2676
|
const rangeRefused = resume &&
|
|
2695
2677
|
httpCode !== undefined &&
|
|
2696
2678
|
(httpCode === 416 ||
|
|
2697
|
-
(httpCode >= 200 &&
|
|
2679
|
+
(httpCode >= 200 &&
|
|
2680
|
+
httpCode < 300 &&
|
|
2681
|
+
httpCode !== 202 &&
|
|
2682
|
+
httpCode !== 206 &&
|
|
2683
|
+
(exitCode === 33 || exitCode === 0)));
|
|
2698
2684
|
if (rangeRefused) {
|
|
2699
2685
|
if (!(0, partial_1.resetPartial)(payload.partPath)) {
|
|
2700
2686
|
failUnsafePartial(`The partial file for ${payload.filename} cannot be resumed and could not be cleared. Delete ${payload.partPath} and try again.`);
|
package/dist/runner.d.ts
CHANGED
|
@@ -7,11 +7,12 @@
|
|
|
7
7
|
* MUST NOT import `@raycast/api`: this executes outside Raycast's host, where
|
|
8
8
|
* that module does not resolve.
|
|
9
9
|
*
|
|
10
|
-
* Invoked as: node runner.js
|
|
10
|
+
* Invoked as: node runner.js (the payload JSON arrives on stdin)
|
|
11
11
|
*
|
|
12
|
-
* The payload
|
|
13
|
-
*
|
|
14
|
-
*
|
|
12
|
+
* The payload carries the download URL and the caller's headers, either of
|
|
13
|
+
* which can be a bearer credential. argv is world-readable through `ps`, and a
|
|
14
|
+
* file outlives a process killed before it can unlink it, so it comes through
|
|
15
|
+
* a pipe. curl's config is handed over the same way, for the same reason.
|
|
15
16
|
*/
|
|
16
17
|
export {};
|
|
17
18
|
//# sourceMappingURL=runner.d.ts.map
|
package/dist/runner.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"runner.d.ts","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;GAeG"}
|
package/dist/runner.js
CHANGED
|
@@ -8,11 +8,12 @@
|
|
|
8
8
|
* MUST NOT import `@raycast/api`: this executes outside Raycast's host, where
|
|
9
9
|
* that module does not resolve.
|
|
10
10
|
*
|
|
11
|
-
* Invoked as: node runner.js
|
|
11
|
+
* Invoked as: node runner.js (the payload JSON arrives on stdin)
|
|
12
12
|
*
|
|
13
|
-
* The payload
|
|
14
|
-
*
|
|
15
|
-
*
|
|
13
|
+
* The payload carries the download URL and the caller's headers, either of
|
|
14
|
+
* which can be a bearer credential. argv is world-readable through `ps`, and a
|
|
15
|
+
* file outlives a process killed before it can unlink it, so it comes through
|
|
16
|
+
* a pipe. curl's config is handed over the same way, for the same reason.
|
|
16
17
|
*/
|
|
17
18
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
19
|
const node_child_process_1 = require("node:child_process");
|
|
@@ -24,17 +25,14 @@ const partial_1 = require("./partial");
|
|
|
24
25
|
const status_1 = require("./status");
|
|
25
26
|
const HEARTBEAT_MS = 500;
|
|
26
27
|
function main() {
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
}
|
|
31
|
-
const payload = JSON.parse((0, node_fs_1.readFileSync)(payloadPath, "utf8"));
|
|
32
|
-
// The payload holds the signed URL; remove it from disk before transferring.
|
|
28
|
+
// Blocks until `startDownload` closes the pipe. Nothing to report a bad
|
|
29
|
+
// payload to: without it there is no id, so no status file to write.
|
|
30
|
+
let payload;
|
|
33
31
|
try {
|
|
34
|
-
(0, node_fs_1.
|
|
32
|
+
payload = JSON.parse((0, node_fs_1.readFileSync)(0, "utf8"));
|
|
35
33
|
}
|
|
36
34
|
catch {
|
|
37
|
-
|
|
35
|
+
process.exit(2);
|
|
38
36
|
}
|
|
39
37
|
const startedAt = Date.now();
|
|
40
38
|
// The OS process creation time, NOT the time JavaScript got here.
|
|
@@ -259,9 +257,9 @@ function main() {
|
|
|
259
257
|
// (exit 33) instead of splicing; `Last-Modified` is the documented fallback.
|
|
260
258
|
const ifRange = resume ? (partialState?.etag ?? partialState?.lastModified) : undefined;
|
|
261
259
|
const followRedirects = payload.followRedirects ?? true;
|
|
262
|
-
let
|
|
260
|
+
let config;
|
|
263
261
|
try {
|
|
264
|
-
|
|
262
|
+
config = (0, curl_1.buildCurlConfig)({
|
|
265
263
|
url: payload.url,
|
|
266
264
|
outputPath: payload.partPath,
|
|
267
265
|
headers: payload.headers,
|
|
@@ -273,8 +271,6 @@ function main() {
|
|
|
273
271
|
dumpHeaderPath: (0, partial_1.headerPath)(payload.partPath),
|
|
274
272
|
ifRange,
|
|
275
273
|
});
|
|
276
|
-
configPath = `${payload.partPath}.curlrc`;
|
|
277
|
-
(0, paths_1.writeSecretFile)(configPath, config);
|
|
278
274
|
}
|
|
279
275
|
catch (error) {
|
|
280
276
|
// buildCurlConfig rejects control characters in the URL or headers.
|
|
@@ -286,30 +282,12 @@ function main() {
|
|
|
286
282
|
// as THIS attempt's response is exactly the stale-validator bug one release
|
|
287
283
|
// over. Cleared before curl can write a new one.
|
|
288
284
|
discardHeaderDump(payload.partPath);
|
|
289
|
-
|
|
290
|
-
//
|
|
291
|
-
|
|
292
|
-
//
|
|
293
|
-
|
|
294
|
-
|
|
295
|
-
// no longer needs the file. The timer is only a fallback for a transfer that
|
|
296
|
-
// produces no output at all.
|
|
297
|
-
let configRemoved = false;
|
|
298
|
-
const removeConfig = () => {
|
|
299
|
-
if (configRemoved)
|
|
300
|
-
return;
|
|
301
|
-
configRemoved = true;
|
|
302
|
-
try {
|
|
303
|
-
(0, node_fs_1.unlinkSync)(configPath);
|
|
304
|
-
}
|
|
305
|
-
catch {
|
|
306
|
-
// Already gone.
|
|
307
|
-
}
|
|
308
|
-
};
|
|
309
|
-
child.stderr?.once("data", removeConfig);
|
|
310
|
-
child.stdout?.once("data", removeConfig);
|
|
311
|
-
const configTimer = setTimeout(removeConfig, 2000);
|
|
312
|
-
configTimer.unref?.();
|
|
285
|
+
// `-K -`: the config holds the URL and headers, so it goes through curl's
|
|
286
|
+
// stdin, never argv or a file. curl reads it to EOF before it does anything.
|
|
287
|
+
const child = (0, node_child_process_1.spawn)("curl", ["-K", "-"], { stdio: ["pipe", "pipe", "pipe"] });
|
|
288
|
+
// curl failing to start closes the pipe; the `error` handler below reports it.
|
|
289
|
+
child.stdin?.on("error", () => { });
|
|
290
|
+
child.stdin?.end(config);
|
|
313
291
|
persist({ state: "downloading", bytesDownloaded: existingBytes });
|
|
314
292
|
let stdout = "";
|
|
315
293
|
let stderr = "";
|
|
@@ -363,7 +341,6 @@ function main() {
|
|
|
363
341
|
heartbeat.unref?.();
|
|
364
342
|
const finishCancelled = () => {
|
|
365
343
|
clearInterval(heartbeat);
|
|
366
|
-
removeConfig();
|
|
367
344
|
// Keep the .part file: cancellation should still allow a later resume — and
|
|
368
345
|
// record what those bytes are, which is what MAKES the later resume safe.
|
|
369
346
|
// Unless there are none, or they are not the file's.
|
|
@@ -383,7 +360,6 @@ function main() {
|
|
|
383
360
|
process.on("SIGINT", finishCancelled);
|
|
384
361
|
child.on("error", (error) => {
|
|
385
362
|
clearInterval(heartbeat);
|
|
386
|
-
removeConfig();
|
|
387
363
|
settlePartial(undefined);
|
|
388
364
|
releasePath();
|
|
389
365
|
persist({
|
|
@@ -395,9 +371,6 @@ function main() {
|
|
|
395
371
|
});
|
|
396
372
|
child.on("close", (exitCode, signal) => {
|
|
397
373
|
clearInterval(heartbeat);
|
|
398
|
-
// Belt and braces: the listeners above normally win, but a transfer that
|
|
399
|
-
// produced no output at all must not leave the credential on disk.
|
|
400
|
-
removeConfig();
|
|
401
374
|
const writeOut = (0, curl_1.parseWriteOut)(stdout);
|
|
402
375
|
const httpCode = writeOut.httpCode;
|
|
403
376
|
// Success is strictly 2xx. A 3xx is NEVER a downloaded file:
|
|
@@ -451,10 +424,18 @@ function main() {
|
|
|
451
424
|
// And a resumed whole-body 2xx curl did NOT refuse: it exits 0 when that
|
|
452
425
|
// body is exactly as long as the partial, keeping the partial — which, if
|
|
453
426
|
// `If-Range` is what produced the 200, is the OLD version of the file.
|
|
427
|
+
//
|
|
428
|
+
// A 202 is excluded: it says the file is not ready yet, which says nothing
|
|
429
|
+
// against the bytes already on disk. `settlePartial` below rolls back any
|
|
430
|
+
// 202 body curl appended, and the retry resumes onto the real prefix.
|
|
454
431
|
const rangeRefused = resume &&
|
|
455
432
|
httpCode !== undefined &&
|
|
456
433
|
(httpCode === 416 ||
|
|
457
|
-
(httpCode >= 200 &&
|
|
434
|
+
(httpCode >= 200 &&
|
|
435
|
+
httpCode < 300 &&
|
|
436
|
+
httpCode !== 202 &&
|
|
437
|
+
httpCode !== 206 &&
|
|
438
|
+
(exitCode === 33 || exitCode === 0)));
|
|
458
439
|
if (rangeRefused) {
|
|
459
440
|
if (!(0, partial_1.resetPartial)(payload.partPath)) {
|
|
460
441
|
failUnsafePartial(`The partial file for ${payload.filename} cannot be resumed and could not be cleared. Delete ${payload.partPath} and try again.`);
|
package/dist/runner.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"runner.js","sourceRoot":"","sources":["../src/runner.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@chrismessina/raycast-downloader",
|
|
3
|
-
"version": "0.2.
|
|
3
|
+
"version": "0.2.1",
|
|
4
4
|
"description": "Downloads for Raycast extensions that survive the window closing: detached transfers, resumable via HTTP Range, with safe paths, progress and history",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"types": "dist/index.d.ts",
|