trajectories-sh 1.24.0 → 1.25.0
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/{comments-M3EX3VOU.js → chunk-7FAZJWE4.js} +7 -7
- package/dist/{chunk-LOJZPDGI.js → chunk-MMQI3LNY.js} +18 -3
- package/dist/cli.js +666 -27
- package/dist/comments-3UOERFNJ.js +21 -0
- package/dist/contracts-preview-3DFBYKZV.js +149 -0
- package/dist/{download-BWJDAVMM.js → download-A3LEBXH5.js} +3 -1
- package/dist/{download-project-XN4OPF3M.js → download-project-66IARJWR.js} +1 -1
- package/dist/outputs-TID2NORZ.js +86 -0
- package/dist/{projects-END2CFCS.js → projects-DDPO354C.js} +1 -1
- package/dist/{push-task-JGGRVTJ3.js → push-task-FN4XODRC.js} +10 -4
- package/dist/register-A5MUHXPT.js +46 -0
- package/package.json +1 -1
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
parseJobId
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-72L6XPK6.js";
|
|
3
|
+
} from "./chunk-MMQI3LNY.js";
|
|
5
4
|
import {
|
|
6
5
|
getApiUrl,
|
|
7
6
|
getAuthHeader
|
|
@@ -159,12 +158,13 @@ function formatComment(comment) {
|
|
|
159
158
|
return `[${comment.id}] ${author} \xB7 ${scope}${when ? ` \xB7 ${when}` : ""}
|
|
160
159
|
${comment.body}`;
|
|
161
160
|
}
|
|
161
|
+
|
|
162
162
|
export {
|
|
163
|
-
addComment,
|
|
164
|
-
deleteComment,
|
|
165
|
-
formatComment,
|
|
166
|
-
listComments,
|
|
167
163
|
parseCommentTarget,
|
|
168
164
|
readCommentBody,
|
|
169
|
-
|
|
165
|
+
addComment,
|
|
166
|
+
listComments,
|
|
167
|
+
updateComment,
|
|
168
|
+
deleteComment,
|
|
169
|
+
formatComment
|
|
170
170
|
};
|
|
@@ -15,6 +15,16 @@ var UUID_RE = /[0-9a-f]{8}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{4}-[0-9a-f]{12}/i;
|
|
|
15
15
|
var BATCH_SIZE = 100;
|
|
16
16
|
var CONCURRENCY = 25;
|
|
17
17
|
var DOWNLOAD_TIMEOUT_MS = 18e4;
|
|
18
|
+
var MAX_ATTEMPTS = 7;
|
|
19
|
+
function retryDelayMs(attempt, status = 0, retryAfter = null) {
|
|
20
|
+
if (retryAfter) {
|
|
21
|
+
const secs = Number(retryAfter);
|
|
22
|
+
const ms = Number.isFinite(secs) ? secs * 1e3 : Date.parse(retryAfter) - Date.now();
|
|
23
|
+
if (Number.isFinite(ms) && ms > 0) return Math.min(ms, 3e4);
|
|
24
|
+
}
|
|
25
|
+
const base = Math.min(16e3, 500 * 2 ** attempt) * (status === 429 ? 2 : 1);
|
|
26
|
+
return Math.round(base / 2 + Math.random() * (base / 2));
|
|
27
|
+
}
|
|
18
28
|
var EXIT = {
|
|
19
29
|
OK: 0,
|
|
20
30
|
ERROR: 1,
|
|
@@ -154,10 +164,14 @@ async function downloadPlannedJob(plan, outputDir, options) {
|
|
|
154
164
|
const downloadUrl = signedUrl ?? `${apiUrl}/api/cli/download/${jobId}/file?path=${encodeURIComponent(file.path)}`;
|
|
155
165
|
const downloadHeaders = signedUrl ? {} : headers;
|
|
156
166
|
let ok = false;
|
|
157
|
-
for (let attempt = 0; attempt <
|
|
167
|
+
for (let attempt = 0; attempt < MAX_ATTEMPTS && !ok; attempt++) {
|
|
168
|
+
let wait = 0;
|
|
158
169
|
try {
|
|
159
170
|
const resp = await fetch(downloadUrl, { headers: downloadHeaders, signal: AbortSignal.timeout(DOWNLOAD_TIMEOUT_MS) });
|
|
160
|
-
if (!resp.ok)
|
|
171
|
+
if (!resp.ok) {
|
|
172
|
+
wait = retryDelayMs(attempt, resp.status, resp.headers.get("retry-after"));
|
|
173
|
+
throw new Error(`HTTP ${resp.status}`);
|
|
174
|
+
}
|
|
161
175
|
const data = Buffer.from(await resp.arrayBuffer());
|
|
162
176
|
const outPath = join(outputDir, file.path);
|
|
163
177
|
mkdirSync(dirname(outPath), { recursive: true });
|
|
@@ -167,7 +181,7 @@ async function downloadPlannedJob(plan, outputDir, options) {
|
|
|
167
181
|
bar.tick(data.length);
|
|
168
182
|
ok = true;
|
|
169
183
|
} catch {
|
|
170
|
-
if (attempt <
|
|
184
|
+
if (attempt < MAX_ATTEMPTS - 1) await new Promise((r) => setTimeout(r, wait || retryDelayMs(attempt)));
|
|
171
185
|
}
|
|
172
186
|
}
|
|
173
187
|
if (!ok) {
|
|
@@ -229,6 +243,7 @@ function dirBytes(dir) {
|
|
|
229
243
|
|
|
230
244
|
export {
|
|
231
245
|
DOWNLOAD_TIMEOUT_MS,
|
|
246
|
+
retryDelayMs,
|
|
232
247
|
EXIT,
|
|
233
248
|
CliError,
|
|
234
249
|
httpError,
|