@poe-platform/safe-bash 0.1.546 → 0.1.547

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.
Files changed (33) hide show
  1. package/dist/safe-bash/chunks/{chunk-X7C3PN2T.js → chunk-4JW32W4B.js} +162 -104
  2. package/dist/safe-bash/chunks/{chunk-X7C3PN2T.js.map → chunk-4JW32W4B.js.map} +3 -3
  3. package/dist/safe-bash/commands/archive/unzip/safety.d.ts +3 -2
  4. package/dist/safe-bash/commands/archive/unzip/safety.d.ts.map +1 -1
  5. package/dist/safe-bash/commands/archive/unzip/safety.js +57 -62
  6. package/dist/safe-bash/commands/archive/unzip/safety.js.map +1 -1
  7. package/dist/safe-bash/commands/archive/unzip.d.ts.map +1 -1
  8. package/dist/safe-bash/commands/archive/unzip.js +12 -9
  9. package/dist/safe-bash/commands/archive/unzip.js.map +1 -1
  10. package/dist/safe-bash/commands/archive/zip/safety.d.ts +1 -0
  11. package/dist/safe-bash/commands/archive/zip/safety.d.ts.map +1 -1
  12. package/dist/safe-bash/commands/archive/zip/safety.js +19 -87
  13. package/dist/safe-bash/commands/archive/zip/safety.js.map +1 -1
  14. package/dist/safe-bash/commands/archive/zip.d.ts.map +1 -1
  15. package/dist/safe-bash/commands/archive/zip.js +2 -1
  16. package/dist/safe-bash/commands/archive/zip.js.map +1 -1
  17. package/dist/safe-bash/commands/csplit/command.d.ts.map +1 -1
  18. package/dist/safe-bash/commands/csplit/command.js +3 -1
  19. package/dist/safe-bash/commands/csplit/command.js.map +1 -1
  20. package/dist/safe-bash/commands/csplit/index.browser.js +1 -1
  21. package/dist/safe-bash/commands/csplit/internal.d.ts +2 -0
  22. package/dist/safe-bash/commands/csplit/internal.d.ts.map +1 -1
  23. package/dist/safe-bash/commands/csplit/internal.js +12 -0
  24. package/dist/safe-bash/commands/csplit/internal.js.map +1 -1
  25. package/dist/safe-bash/commands/csplit/io.d.ts +4 -2
  26. package/dist/safe-bash/commands/csplit/io.d.ts.map +1 -1
  27. package/dist/safe-bash/commands/csplit/io.js +98 -58
  28. package/dist/safe-bash/commands/csplit/io.js.map +1 -1
  29. package/dist/safe-bash/contracts/filesystem.d.ts +1 -1
  30. package/dist/safe-bash/contracts/filesystem.d.ts.map +1 -1
  31. package/dist/safe-bash/core.browser.js +243 -129
  32. package/dist/safe-bash/core.browser.js.map +3 -3
  33. package/package.json +2 -2
@@ -101,6 +101,7 @@ async function prepare(scope, parsed, budget) {
101
101
  const outputName = vfsPath(context.cwd, parsed.archive);
102
102
  const parentName = dirname(outputName);
103
103
  const parent = await scope.operation(() => context.fs.realpath(parentName, { signal: context.signal }));
104
+ const parentStat = await scope.operation(() => context.fs.lstat(parent, { signal: context.signal }));
104
105
  const output = `${parent === "/" ? "" : parent}/${outputName.slice(outputName.lastIndexOf("/") + 1)}`;
105
106
  checkPath(output, limits);
106
107
  const existing = await scope.stat(output);
@@ -249,7 +250,7 @@ async function prepare(scope, parsed, budget) {
249
250
  append(entry, false);
250
251
  }
251
252
  const bytes = await writeZipArchive({ entries, comment: archive.comment }, limits, context.signal);
252
- return { output, parentName, parent, existing, bytes, progress };
253
+ return { output, parentName, parent, parentStat, existing, bytes, progress };
253
254
  }
254
255
  export function createZipCommand(options = {}) {
255
256
  const limits = settings(options);
@@ -1 +1 @@
1
- {"version":3,"file":"zip.js","sourceRoot":"","sources":["../../../src/commands/archive/zip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"zip.js","sourceRoot":"","sources":["../../../src/commands/archive/zip.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/commands/csplit/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAoB,MAAM,gCAAgC,CAAC;AAEjF,OAAO,EAA2C,KAAK,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAMpG,YAAY,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEzE,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,GAAE,qBAA0B,GAAG,iBAAiB,CAqD/H"}
1
+ {"version":3,"file":"command.d.ts","sourceRoot":"","sources":["../../../src/commands/csplit/command.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,KAAK,iBAAiB,EAAE,MAAM,0BAA0B,CAAC;AAE3E,OAAO,EAAE,aAAa,EAAoB,MAAM,gCAAgC,CAAC;AAEjF,OAAO,EAA2C,KAAK,qBAAqB,EAAE,MAAM,eAAe,CAAC;AAMpG,YAAY,EAAE,qBAAqB,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAEzE,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,aAAa,EAAE,OAAO,GAAE,qBAA0B,GAAG,iBAAiB,CAuD/H"}
@@ -9,7 +9,9 @@ import { Matcher, preparePatterns } from "./patterns.js";
9
9
  import { Splitter } from "./split.js";
10
10
  export function createCsplitCommandWithExecutor(executor, options = {}) {
11
11
  const limits = settings(options);
12
- return { name: "csplit", description: "Split files at bounded line and BRE boundaries", async execute(context) {
12
+ return { name: "csplit", description: "Split files at bounded line and BRE boundaries",
13
+ filesystemRequirements: [{ id: "split", description: "Atomically mutate owned VFS outputs", capabilities: ["atomicFileMutation"], mutates: true }],
14
+ async execute(context) {
13
15
  return withRegexSession(context, executor, async (session) => {
14
16
  const budget = new Budget(context, limits);
15
17
  const lifecycle = new Lifecycle(budget);
@@ -1 +1 @@
1
- {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/commands/csplit/command.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"command.js","sourceRoot":"","sources":["../../../src/commands/csplit/command.ts"],"names":[],"mappings":"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"}
@@ -2,7 +2,7 @@ import {
2
2
  createCsplitCommand,
3
3
  createCsplitCommands,
4
4
  csplitCommands
5
- } from "../../chunks/chunk-X7C3PN2T.js";
5
+ } from "../../chunks/chunk-4JW32W4B.js";
6
6
  import "../../chunks/chunk-WXUZXY35.js";
7
7
  import "../../chunks/chunk-EUNOVYVT.js";
8
8
  import "../../chunks/chunk-TTTOMUAY.js";
@@ -43,11 +43,13 @@ export declare function missing(error: unknown): boolean;
43
43
  export declare class Budget {
44
44
  readonly context: CommandContext;
45
45
  readonly limits: CsplitLimits;
46
+ private readonly buffers;
46
47
  private work;
47
48
  private checkpoint;
48
49
  private diagnostics;
49
50
  private output;
50
51
  constructor(context: CommandContext, limits: CsplitLimits);
52
+ reserveBuffered(owner: object, bytes: number): void;
51
53
  quote(value: string): string;
52
54
  check(value: number, maximum: number, label: string): void;
53
55
  charge(amount?: number): void;
@@ -1 +1 @@
1
- {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../src/commands/csplit/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.d.ts","sourceRoot":"","sources":["../../../src/commands/csplit/internal.ts"],"names":[],"mappings":"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"}
@@ -63,6 +63,7 @@ export function missing(error) {
63
63
  export class Budget {
64
64
  context;
65
65
  limits;
66
+ buffers = new Map();
66
67
  work = 0;
67
68
  checkpoint = 0;
68
69
  diagnostics = 0;
@@ -71,6 +72,17 @@ export class Budget {
71
72
  this.context = context;
72
73
  this.limits = limits;
73
74
  }
75
+ reserveBuffered(owner, bytes) {
76
+ let total = bytes;
77
+ for (const [key, value] of this.buffers)
78
+ if (key !== owner)
79
+ total += value;
80
+ this.check(total, this.limits.maxBufferedBytes, "buffered bytes");
81
+ if (bytes)
82
+ this.buffers.set(owner, bytes);
83
+ else
84
+ this.buffers.delete(owner);
85
+ }
74
86
  quote(value) {
75
87
  const locale = this.context.env.LC_ALL || this.context.env.LC_CTYPE || this.context.env.LANG || "C";
76
88
  this.charge(value.length);
@@ -1 +1 @@
1
- {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/commands/csplit/internal.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"internal.js","sourceRoot":"","sources":["../../../src/commands/csplit/internal.ts"],"names":[],"mappings":"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"}
@@ -8,13 +8,14 @@ export declare class Lifecycle {
8
8
  private readonly cleanups;
9
9
  private closing;
10
10
  constructor(budget: Budget);
11
- cleanup(action: () => Promise<void>): void;
11
+ cleanup(action: () => Promise<void>): () => Promise<void>;
12
12
  assertOpen(): void;
13
13
  operation<Value>(action: () => Promise<Value>): Promise<Value>;
14
14
  close(): Promise<void>;
15
15
  }
16
16
  export declare class Lines {
17
17
  readonly lifecycle: Lifecycle;
18
+ private readonly fallbackAllocation;
18
19
  private readonly lines;
19
20
  private partial;
20
21
  private partialBytes;
@@ -25,6 +26,7 @@ export declare class Lines {
25
26
  private path;
26
27
  identity: FileStat | undefined;
27
28
  constructor(lifecycle: Lifecycle);
29
+ private reserve;
28
30
  open(name: string): Promise<void>;
29
31
  assertOutput(path: string, existing: FileStat | undefined): void;
30
32
  private source;
@@ -43,9 +45,9 @@ export declare class Outputs {
43
45
  succeeded: boolean;
44
46
  constructor(lifecycle: Lifecycle, options: Options, format: (index: number) => string, input: Lines);
45
47
  private parents;
46
- private checked;
47
48
  private checkedParents;
48
49
  open(): Promise<void>;
50
+ private flush;
49
51
  write(value: Uint8Array): Promise<void>;
50
52
  finish(): Promise<void>;
51
53
  }
@@ -1 +1 @@
1
- {"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../../../src/commands/csplit/io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzG,OAAO,EAAE,MAAM,EAA4C,MAAM,eAAe,CAAC;AACjF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAE5C,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAIvE;AAED,qBAAa,SAAS;IAIR,QAAQ,CAAC,MAAM,EAAE,MAAM;IAHnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAA+B;IACxD,OAAO,CAAC,OAAO,CAA4B;gBACtB,MAAM,EAAE,MAAM;IACnC,OAAO,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI;IAI1C,UAAU,IAAI,IAAI;IAIZ,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IAQpE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAYvB;AAED,qBAAa,KAAK;IAUJ,QAAQ,CAAC,SAAS,EAAE,SAAS;IATzC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,QAAQ,CAAwC;IACxD,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,IAAI,CAAqB;IACjC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;gBACV,SAAS,EAAE,SAAS;IAGnC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI;YAIlD,MAAM;IAUpB,OAAO,CAAC,UAAU;IAUZ,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;CA2C3D;AAeD,qBAAa,OAAO;IAMN,QAAQ,CAAC,SAAS,EAAE,SAAS;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO;IAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK;IALvI,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,OAAO,CAAqB;IACpC,QAAQ,UAAS;IACjB,SAAS,UAAS;gBACG,SAAS,EAAE,SAAS,EAAW,OAAO,EAAE,OAAO,EAAW,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,EAAW,KAAK,EAAE,KAAK;YACzH,OAAO;YAeP,OAAO;YAMP,cAAc;IAOtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAoDrB,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAWvC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAa9B"}
1
+ {"version":3,"file":"io.d.ts","sourceRoot":"","sources":["../../../src/commands/csplit/io.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkD,KAAK,QAAQ,EAAE,MAAM,0BAA0B,CAAC;AAGzG,OAAO,EAAE,MAAM,EAA4C,MAAM,eAAe,CAAC;AACjF,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAM5C,wBAAgB,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAIvE;AAED,qBAAa,SAAS;IAIR,QAAQ,CAAC,MAAM,EAAE,MAAM;IAHnC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAkC;IAC3D,OAAO,CAAC,OAAO,CAA4B;gBACtB,MAAM,EAAE,MAAM;IACnC,OAAO,CAAC,MAAM,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;IAMzD,UAAU,IAAI,IAAI;IAIZ,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IAQpE,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;CAYvB;AAED,qBAAa,KAAK;IAWJ,QAAQ,CAAC,SAAS,EAAE,SAAS;IAVzC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAAM;IACzC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAoB;IAC1C,OAAO,CAAC,OAAO,CAAoB;IACnC,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,WAAW,CAAK;IACxB,OAAO,CAAC,QAAQ,CAAwC;IACxD,OAAO,CAAC,KAAK,CAAS;IACtB,OAAO,CAAC,IAAI,CAAqB;IACjC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;gBACV,SAAS,EAAE,SAAS;IAUzC,OAAO,CAAC,OAAO;IAGT,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAQvC,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,GAAG,IAAI;YAIlD,MAAM;IAcpB,OAAO,CAAC,UAAU;IAYZ,GAAG,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,GAAG,SAAS,CAAC;CA6C3D;AAiBD,qBAAa,OAAO;IAMN,QAAQ,CAAC,SAAS,EAAE,SAAS;IAAE,QAAQ,CAAC,OAAO,EAAE,OAAO;IAAE,QAAQ,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM;IAAE,QAAQ,CAAC,KAAK,EAAE,KAAK;IALvI,OAAO,CAAC,KAAK,CAAK;IAClB,OAAO,CAAC,QAAQ,CAAK;IACrB,OAAO,CAAC,OAAO,CAAqB;IACpC,QAAQ,UAAS;IACjB,SAAS,UAAS;gBACG,SAAS,EAAE,SAAS,EAAW,OAAO,EAAE,OAAO,EAAW,MAAM,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,MAAM,EAAW,KAAK,EAAE,KAAK;YACzH,OAAO;YAeP,cAAc;IAOtB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;YA+Cb,KAAK;IAYb,KAAK,CAAC,KAAK,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC;IAoBvC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;CAe9B"}
@@ -2,6 +2,9 @@ import { FsError, dirname, resolvePath } from "../../contracts/index.js";
2
2
  import { writeFileOutput } from "../../contracts/filesystem-output.js";
3
3
  import { retainFileSystemCleanup } from "@poe-platform/safe-fs/core";
4
4
  import { Budget, CsplitError, fsDetail, missing, pathText } from "./internal.js";
5
+ const retainedLineUnits = 128;
6
+ const retainedOutputUnits = 256;
7
+ const outputBufferBytes = 65_536;
5
8
  export function sameIdentity(first, second) {
6
9
  return ((typeof first.identityScope === "object" && first.identityScope !== null) || typeof first.identityScope === "symbol")
7
10
  && first.identityScope === second.identityScope && Number.isSafeInteger(first.dev) && Number.isSafeInteger(first.ino)
@@ -10,7 +13,7 @@ export function sameIdentity(first, second) {
10
13
  export class Lifecycle {
11
14
  budget;
12
15
  pending = new Set();
13
- cleanups = [];
16
+ cleanups = new Set();
14
17
  closing;
15
18
  constructor(budget) {
16
19
  this.budget = budget;
@@ -18,7 +21,14 @@ export class Lifecycle {
18
21
  }
19
22
  cleanup(action) {
20
23
  this.assertOpen();
21
- this.cleanups.push(action);
24
+ const owned = async () => { try {
25
+ await action();
26
+ }
27
+ finally {
28
+ this.cleanups.delete(owned);
29
+ } };
30
+ this.cleanups.add(owned);
31
+ return owned;
22
32
  }
23
33
  assertOpen() {
24
34
  this.budget.context.signal.throwIfAborted();
@@ -61,6 +71,7 @@ export class Lifecycle {
61
71
  }
62
72
  export class Lines {
63
73
  lifecycle;
74
+ fallbackAllocation = {};
64
75
  lines = [];
65
76
  partial = [];
66
77
  partialBytes = 0;
@@ -72,8 +83,21 @@ export class Lines {
72
83
  identity;
73
84
  constructor(lifecycle) {
74
85
  this.lifecycle = lifecycle;
75
- lifecycle.cleanup(async () => { if (!this.ended)
76
- await this.iterator?.return?.(); });
86
+ lifecycle.cleanup(async () => {
87
+ try {
88
+ if (!this.ended)
89
+ await this.iterator?.return?.();
90
+ }
91
+ finally {
92
+ this.lines.length = 0;
93
+ this.partial = [];
94
+ lifecycle.budget.reserveBuffered(this, 0);
95
+ lifecycle.budget.reserveBuffered(this.fallbackAllocation, 0);
96
+ }
97
+ });
98
+ }
99
+ reserve(extraLines = 0, extraParts = 0) {
100
+ this.lifecycle.budget.reserveBuffered(this, this.total * 2 + (this.lines.length + extraLines + this.partial.length + extraParts) * retainedLineUnits);
77
101
  }
78
102
  async open(name) {
79
103
  if (name === "-") {
@@ -103,12 +127,17 @@ export class Lines {
103
127
  return fs.readStream(this.path, { signal, chunkSize: 65_536 });
104
128
  if (this.identity.size > Math.min(limits.maxInputBytes, limits.maxBufferedBytes / 2))
105
129
  throw new CsplitError("buffered input bytes limit exceeded");
106
- const value = await this.lifecycle.operation(() => fs.readFile(this.path, { signal, maxBytes: limits.maxInputBytes }));
130
+ const admittedBytes = this.identity.size;
131
+ this.lifecycle.budget.reserveBuffered(this.fallbackAllocation, admittedBytes);
132
+ this.lifecycle.budget.reserveBuffered(this, admittedBytes * 2);
133
+ const value = await this.lifecycle.operation(() => fs.readFile(this.path, { signal, maxBytes: admittedBytes }));
134
+ this.lifecycle.budget.check(value.length, admittedBytes, "input bytes");
107
135
  return { async *[Symbol.asyncIterator]() { yield value; } };
108
136
  }
109
137
  appendLine() {
110
138
  const { budget } = this.lifecycle;
111
139
  budget.check(this.lines.length + 1, budget.limits.maxLines, "line count");
140
+ this.reserve(1);
112
141
  const line = new Uint8Array(this.partialBytes);
113
142
  let offset = 0;
114
143
  for (const part of this.partial) {
@@ -118,6 +147,7 @@ export class Lines {
118
147
  this.lines.push(line);
119
148
  this.partial = [];
120
149
  this.partialBytes = 0;
150
+ this.reserve();
121
151
  }
122
152
  async get(number) {
123
153
  const { budget } = this.lifecycle;
@@ -139,7 +169,7 @@ export class Lines {
139
169
  throw new CsplitError("input produced a non-byte chunk");
140
170
  this.total += chunk.length;
141
171
  budget.check(this.total, budget.limits.maxInputBytes, "input bytes");
142
- budget.check(this.total * 2, budget.limits.maxBufferedBytes, "buffered bytes");
172
+ this.reserve();
143
173
  if (!chunk.length)
144
174
  budget.check(++this.emptyChunks, budget.limits.maxEmptyChunks, "empty input chunks");
145
175
  budget.charge(chunk.length);
@@ -149,6 +179,7 @@ export class Lines {
149
179
  if (owned[offset] === 10) {
150
180
  this.partialBytes += offset + 1 - start;
151
181
  budget.check(this.partialBytes, budget.limits.maxLineBytes, "line bytes");
182
+ this.reserve(0, 1);
152
183
  this.partial.push(owned.subarray(start, offset + 1));
153
184
  this.appendLine();
154
185
  start = offset + 1;
@@ -161,6 +192,7 @@ export class Lines {
161
192
  if (start < owned.length) {
162
193
  this.partialBytes += owned.length - start;
163
194
  budget.check(this.partialBytes, budget.limits.maxLineBytes, "line bytes");
195
+ this.reserve(0, 1);
164
196
  this.partial.push(owned.subarray(start));
165
197
  }
166
198
  await budget.checkpointWork();
@@ -194,20 +226,13 @@ export class Outputs {
194
226
  for (const component of ["", ...components]) {
195
227
  if (component)
196
228
  current = resolvePath(current, component);
197
- const identity = await this.lifecycle.operation(() => context.fs.lstat(current, { signal: context.signal }));
229
+ const identity = Object.freeze({ ...await this.lifecycle.operation(() => context.fs.lstat(current, { signal: context.signal })) });
198
230
  if (identity.type !== "directory" || !sameIdentity(identity, identity))
199
231
  throw new CsplitError("unsafe output directory identity");
200
232
  parents.push({ path: current, identity });
201
233
  }
202
234
  return parents;
203
235
  }
204
- async checked(output) {
205
- await this.checkedParents(output.parents);
206
- const { context } = this.lifecycle.budget;
207
- const current = await this.lifecycle.operation(() => context.fs.lstat(output.path, { signal: context.signal }));
208
- if (!output.identity || current.type !== "file" || !sameIdentity(current, output.identity))
209
- throw new CsplitError("output changed before mutation");
210
- }
211
236
  async checkedParents(parents) {
212
237
  const { context } = this.lifecycle.budget;
213
238
  for (const parent of parents) {
@@ -225,10 +250,13 @@ export class Outputs {
225
250
  budget.check(name.length, limits.maxPathBytes, "output filename bytes");
226
251
  const path = resolvePath(context.cwd, pathText(name));
227
252
  try {
253
+ const capabilities = await this.lifecycle.operation(async () => await context.fs.capabilitiesFor?.(path, { signal: context.signal, create: true }) ?? context.fs.capabilities);
254
+ if (capabilities.atomicFileMutation !== true || !context.fs.writeFileConditional || !context.fs.removeFileConditional)
255
+ throw new CsplitError("atomic output mutations are not supported");
228
256
  const parents = await this.parents(path);
229
257
  let existing;
230
258
  try {
231
- existing = await this.lifecycle.operation(() => context.fs.lstat(path, { signal: context.signal }));
259
+ existing = Object.freeze({ ...await this.lifecycle.operation(() => context.fs.lstat(path, { signal: context.signal })) });
232
260
  }
233
261
  catch (error) {
234
262
  context.signal.throwIfAborted();
@@ -238,51 +266,38 @@ export class Outputs {
238
266
  if (existing && (existing.type !== "file" || !sameIdentity(existing, existing)))
239
267
  throw new CsplitError(`unsafe output file ${budget.quote(name)}`);
240
268
  this.input.assertOutput(path, existing);
241
- const output = { path, name, parents, created: false, removed: false, elided: false, failed: false, size: 0, cleanup: async () => { } };
242
- output.cleanup = retainFileSystemCleanup(context.fs, async (view) => {
269
+ const metadataBytes = retainedOutputUnits + path.length * 2;
270
+ const output = { path, parent: parents.at(-1).identity, metadataBytes, created: false, removed: false, elided: false, failed: false, size: 0, buffered: 0, cleanup: async () => { } };
271
+ budget.reserveBuffered(output, metadataBytes);
272
+ output.cleanup = this.lifecycle.cleanup(retainFileSystemCleanup(context.fs, async (view) => {
273
+ delete output.buffer;
274
+ output.buffered = 0;
275
+ budget.reserveBuffered(output, 0);
243
276
  if (!output.created || !output.identity || !output.elided && (this.succeeded || this.options.keep || this.preserve))
244
277
  return;
245
278
  try {
246
- for (const parent of parents) {
247
- const current = await view.lstat(parent.path);
248
- if (current.type !== "directory" || !sameIdentity(current, parent.identity))
249
- return;
250
- }
251
- const current = await view.lstat(path);
252
- if (current.type === "file" && sameIdentity(current, output.identity)) {
253
- await view.rm(path);
254
- output.removed = true;
255
- }
279
+ if (!view.removeFileConditional)
280
+ throw new FsError("ENOTSUP");
281
+ await view.removeFileConditional(path, { expected: output.identity, parent: output.parent });
282
+ output.removed = true;
256
283
  }
257
284
  catch (error) {
258
- if (!missing(error))
285
+ if (!missing(error) && !(error instanceof FsError && error.code === "EAGAIN"))
259
286
  throw error;
260
287
  }
261
- }, { maxOperations: limits.maxPathDepth + 3 });
262
- this.lifecycle.cleanup(output.cleanup);
263
- await this.checkedParents(parents);
264
- let admitted;
288
+ }, { maxOperations: 1 }));
265
289
  try {
266
- admitted = await this.lifecycle.operation(() => context.fs.lstat(path, { signal: context.signal }));
290
+ await this.checkedParents(parents);
291
+ await this.lifecycle.operation(async () => {
292
+ output.identity = Object.freeze({ ...await context.fs.writeFileConditional(path, new Uint8Array(), {
293
+ signal: context.signal, expected: existing ?? null, parent: output.parent,
294
+ }) });
295
+ output.created = true;
296
+ });
267
297
  }
268
- catch (error) {
269
- context.signal.throwIfAborted();
270
- if (!missing(error))
271
- throw error;
298
+ finally {
299
+ parents.length = 0;
272
300
  }
273
- if (admitted ? !existing || admitted.type !== "file" || !sameIdentity(admitted, existing) : existing !== undefined)
274
- throw new CsplitError("output changed before creation");
275
- await this.checkedParents(parents);
276
- await this.lifecycle.operation(async () => {
277
- await context.fs.writeFile(path, new Uint8Array(), { signal: context.signal, flag: existing ? "w" : "wx" });
278
- output.created = true;
279
- if (existing)
280
- output.identity = existing;
281
- const identity = await context.fs.lstat(path, { signal: context.signal });
282
- if (identity.type !== "file" || !sameIdentity(identity, identity) || existing && !sameIdentity(existing, identity))
283
- throw new CsplitError("output creation identity unavailable");
284
- output.identity = identity;
285
- });
286
301
  this.index++;
287
302
  this.current = output;
288
303
  }
@@ -292,20 +307,43 @@ export class Outputs {
292
307
  throw error;
293
308
  }
294
309
  }
310
+ async flush(output) {
311
+ if (!output.buffered)
312
+ return;
313
+ const { context } = this.lifecycle.budget;
314
+ try {
315
+ await this.lifecycle.operation(() => writeFileOutput(context, output.buffer.subarray(0, output.buffered), async (chunk) => {
316
+ output.identity = Object.freeze({ ...await context.fs.writeFileConditional(output.path, chunk, {
317
+ signal: context.signal, expected: output.identity, parent: output.parent, append: true,
318
+ }) });
319
+ output.buffered = 0;
320
+ }));
321
+ }
322
+ catch (error) {
323
+ output.failed = true;
324
+ throw error;
325
+ }
326
+ }
295
327
  async write(value) {
296
328
  const output = this.current;
297
329
  if (!output)
298
330
  throw new CsplitError("output is not open");
299
331
  const { budget } = this.lifecycle;
300
332
  budget.fileBytes(value.length);
301
- try {
302
- await this.checked(output);
303
- await this.lifecycle.operation(() => writeFileOutput(budget.context, value, chunk => budget.context.fs.appendFile(output.path, chunk, { signal: budget.context.signal })));
304
- output.size += value.length;
333
+ if (!output.buffer) {
334
+ const capacity = Math.min(outputBufferBytes, budget.limits.maxBufferedBytes);
335
+ budget.reserveBuffered(output, output.metadataBytes + capacity);
336
+ output.buffer = new Uint8Array(capacity);
305
337
  }
306
- catch (error) {
307
- output.failed = true;
308
- throw error;
338
+ for (let offset = 0; offset < value.length;) {
339
+ this.lifecycle.assertOpen();
340
+ const count = Math.min(value.length - offset, output.buffer.length - output.buffered);
341
+ output.buffer.set(value.subarray(offset, offset + count), output.buffered);
342
+ output.buffered += count;
343
+ output.size += count;
344
+ offset += count;
345
+ if (output.buffered === output.buffer.length)
346
+ await this.flush(output);
309
347
  }
310
348
  }
311
349
  async finish() {
@@ -315,8 +353,10 @@ export class Outputs {
315
353
  this.current = undefined;
316
354
  if (output.failed)
317
355
  return;
356
+ await this.flush(output);
357
+ delete output.buffer;
358
+ this.lifecycle.budget.reserveBuffered(output, output.metadataBytes);
318
359
  if (!output.size && this.options.elide) {
319
- await this.checked(output);
320
360
  output.elided = true;
321
361
  await output.cleanup();
322
362
  if (!output.removed)