percher 0.5.3 → 0.5.4
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/bin/percher.js +30 -19
- package/dist/package.json +1 -1
- package/package.json +1 -1
package/dist/bin/percher.js
CHANGED
|
@@ -108493,7 +108493,8 @@ async function envList(ctx, input = {}) {
|
|
|
108493
108493
|
}
|
|
108494
108494
|
// ../core/dist/commands/export.js
|
|
108495
108495
|
import { randomUUID } from "node:crypto";
|
|
108496
|
-
import {
|
|
108496
|
+
import { createWriteStream } from "node:fs";
|
|
108497
|
+
import { rename, unlink } from "node:fs/promises";
|
|
108497
108498
|
import { isAbsolute, resolve as resolvePath } from "node:path";
|
|
108498
108499
|
var exportInputSchema = exports_external.object({
|
|
108499
108500
|
app: exports_external.string().optional(),
|
|
@@ -108516,35 +108517,45 @@ function resolveAppName3(ctx, provided) {
|
|
|
108516
108517
|
}
|
|
108517
108518
|
async function streamToFile(outPath, source) {
|
|
108518
108519
|
const tmpPath = `${outPath}.part-${randomUUID()}`;
|
|
108519
|
-
const
|
|
108520
|
-
let bytes = 0;
|
|
108520
|
+
const out = createWriteStream(tmpPath);
|
|
108521
108521
|
const reader = source.getReader();
|
|
108522
|
+
const closed = new Promise((resolve6) => out.once("close", () => resolve6()));
|
|
108523
|
+
let onWriteError;
|
|
108524
|
+
const writeFailed = new Promise((_, reject) => {
|
|
108525
|
+
onWriteError = reject;
|
|
108526
|
+
});
|
|
108527
|
+
out.once("error", onWriteError);
|
|
108528
|
+
writeFailed.catch(() => {});
|
|
108529
|
+
let bytes = 0;
|
|
108522
108530
|
try {
|
|
108523
|
-
|
|
108524
|
-
const { done, value } = await reader.read();
|
|
108531
|
+
for (;; ) {
|
|
108532
|
+
const { done, value } = await Promise.race([reader.read(), writeFailed]);
|
|
108525
108533
|
if (done)
|
|
108526
108534
|
break;
|
|
108527
|
-
if (value && value.
|
|
108528
|
-
|
|
108529
|
-
|
|
108535
|
+
if (value && value.byteLength > 0) {
|
|
108536
|
+
bytes += value.byteLength;
|
|
108537
|
+
if (!out.write(value)) {
|
|
108538
|
+
await Promise.race([
|
|
108539
|
+
new Promise((resolve6) => out.once("drain", resolve6)),
|
|
108540
|
+
writeFailed
|
|
108541
|
+
]);
|
|
108542
|
+
}
|
|
108530
108543
|
}
|
|
108531
108544
|
}
|
|
108532
|
-
await
|
|
108545
|
+
await new Promise((resolve6, reject) => {
|
|
108546
|
+
out.end((err) => err ? reject(err) : resolve6());
|
|
108547
|
+
});
|
|
108548
|
+
await closed;
|
|
108533
108549
|
} catch (err) {
|
|
108534
|
-
|
|
108535
|
-
|
|
108536
|
-
|
|
108537
|
-
try {
|
|
108538
|
-
await Bun.file(tmpPath).delete?.();
|
|
108539
|
-
} catch {}
|
|
108550
|
+
out.destroy();
|
|
108551
|
+
await closed;
|
|
108552
|
+
await unlink(tmpPath).catch(() => {});
|
|
108540
108553
|
throw err;
|
|
108541
108554
|
}
|
|
108542
108555
|
try {
|
|
108543
108556
|
await rename(tmpPath, outPath);
|
|
108544
108557
|
} catch (err) {
|
|
108545
|
-
|
|
108546
|
-
await Bun.file(tmpPath).delete?.();
|
|
108547
|
-
} catch {}
|
|
108558
|
+
await unlink(tmpPath).catch(() => {});
|
|
108548
108559
|
throw err;
|
|
108549
108560
|
}
|
|
108550
108561
|
return { bytes };
|
|
@@ -115975,7 +115986,7 @@ async function renderError(stderr, error48) {
|
|
|
115975
115986
|
// package.json
|
|
115976
115987
|
var package_default = {
|
|
115977
115988
|
name: "percher",
|
|
115978
|
-
version: "0.5.
|
|
115989
|
+
version: "0.5.4",
|
|
115979
115990
|
description: "CLI for the Percher hosting platform — publish apps with one command",
|
|
115980
115991
|
type: "module",
|
|
115981
115992
|
bin: {
|
package/dist/package.json
CHANGED