@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
@@ -16,13 +16,14 @@ export declare class Extraction {
16
16
  input(path: string): ByteSource;
17
17
  stat(path: string): Promise<FileStat | undefined>;
18
18
  directory(raw: string, create: boolean): Promise<string>;
19
+ createDirectory(path: string, parent: FileStat): Promise<FileStat>;
19
20
  parents(root: string, path: string, create: boolean): Promise<void>;
20
21
  member(root: string, name: string): string;
21
22
  target(root: string, path: string, target: string): Promise<void>;
22
23
  destination(path: string, archivePath: string, archiveStat: FileStat): Promise<FileStat | undefined>;
23
24
  checked(root: string, path: string, expected: FileStat): Promise<void>;
24
- metadata(root: string, path: string, identity: FileStat, mode: number, modified: Date): Promise<void>;
25
- publish(root: string, path: string, chunks: readonly Uint8Array[], expected: FileStat | undefined, mode: number, modified: Date, target?: string): Promise<void>;
25
+ metadata(root: string, path: string, identity: FileStat, parent: FileStat, mode: number, modified: Date): Promise<void>;
26
+ publish(root: string, path: string, chunks: readonly Uint8Array[], expected: FileStat | undefined, parent: FileStat, mode: number, modified: Date, target?: string): Promise<void>;
26
27
  private stage;
27
28
  }
28
29
  //# sourceMappingURL=safety.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../../../src/commands/archive/unzip/safety.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAEjJ,OAAO,EAAuD,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEzG,qBAAa,UAAU;IAOT,QAAQ,CAAC,OAAO,EAAE,cAAc;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa;IAN5E,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4B;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,MAAM,CAAK;gBACE,OAAO,EAAE,cAAc,EAAW,MAAM,EAAE,aAAa;IACtE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IAS9D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU;IAqB/B,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU;IAchC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAQjD,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAaxD,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAQpC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCjE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAOpG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAW3G,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAKlJ,KAAK;CA4DpB"}
1
+ {"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../../../src/commands/archive/unzip/safety.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiD,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAoB,MAAM,6BAA6B,CAAC;AAEnK,OAAO,EAAuD,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEzG,qBAAa,UAAU;IAOT,QAAQ,CAAC,OAAO,EAAE,cAAc;IAAE,QAAQ,CAAC,MAAM,EAAE,aAAa;IAN5E,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA4B;IACzD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,IAAI,CAAK;IACjB,OAAO,CAAC,MAAM,CAAK;gBACE,OAAO,EAAE,cAAc,EAAW,MAAM,EAAE,aAAa;IACtE,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IAS9D,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAM5B,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,UAAU;IAqB/B,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU;IAchC,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAQjD,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;IAcxD,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;IASlE,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzE,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM;IAQpC,MAAM,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAsCjE,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,WAAW,EAAE,QAAQ,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAOpG,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,GAAG,OAAO,CAAC,IAAI,CAAC;IAKtE,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC;IAY7H,OAAO,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,UAAU,EAAE,EAAE,QAAQ,EAAE,QAAQ,GAAG,SAAS,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,IAAI,EAAE,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;YAKpK,KAAK;CA6CpB"}
@@ -100,15 +100,26 @@ export class Extraction {
100
100
  for (const component of raw.split("/")) {
101
101
  if (!component || component === ".")
102
102
  continue;
103
+ const parent = await this.operation(() => fs.lstat(current, { signal }));
103
104
  current = resolvePath(current, component);
104
105
  const stat = await this.stat(current);
105
106
  if (!stat && create)
106
- await this.operation(() => fs.mkdir(current, { signal, mode: 0o755 }));
107
+ await this.createDirectory(current, parent);
107
108
  else if (!stat || stat.type !== "directory")
108
109
  fail(`unsafe non-directory or symlink ancestor: ${display(current)}`);
109
110
  }
110
111
  return current;
111
112
  }
113
+ async createDirectory(path, parent) {
114
+ const { fs, signal } = this.context;
115
+ const capabilities = await this.operation(async () => await fs.capabilitiesFor?.(path, { signal, create: true }) ?? fs.capabilities);
116
+ if (capabilities.atomicDirectoryMetadata !== true || !fs.prepareDirectory)
117
+ fail("extraction requires atomic directory creation");
118
+ return this.operation(() => fs.prepareDirectory(path, {
119
+ signal, parent, expected: null,
120
+ ...(capabilities.permissions === false ? {} : { mode: 0o755 }),
121
+ }));
122
+ }
112
123
  async parents(root, path, create) {
113
124
  if (!isPathWithin(root, path))
114
125
  fail("extraction path escapes root");
@@ -191,84 +202,68 @@ export class Extraction {
191
202
  if (!current || current.type !== expected.type || !sameIdentity(current, expected))
192
203
  fail("extraction entry changed before mutation");
193
204
  }
194
- async metadata(root, path, identity, mode, modified) {
205
+ async metadata(root, path, identity, parent, mode, modified) {
195
206
  const { fs, signal } = this.context;
196
- if (fs.chmod && fs.capabilities.permissions !== false) {
197
- await this.checked(root, path, identity);
198
- await this.operation(() => fs.chmod(path, mode & 0o777, { signal }));
199
- }
200
- if (fs.utimes && fs.capabilities.timestamps !== false) {
201
- await this.checked(root, path, identity);
202
- await this.operation(() => fs.utimes(path, modified.getTime(), modified.getTime(), { signal }));
203
- }
207
+ await this.parents(root, path, false);
208
+ const capabilities = await this.operation(async () => await fs.capabilitiesFor?.(path, { signal }) ?? fs.capabilities);
209
+ if (capabilities.permissions === false && capabilities.timestamps === false)
210
+ return;
211
+ if (capabilities.atomicDirectoryMetadata !== true || !fs.prepareDirectory)
212
+ fail("extraction metadata requires atomic entry conditions");
213
+ await this.operation(() => fs.prepareDirectory(path, {
214
+ signal, expected: identity, parent,
215
+ ...(capabilities.permissions === false ? {} : { mode: mode & 0o777 }),
216
+ ...(capabilities.timestamps === false ? {} : { atimeMs: modified.getTime(), mtimeMs: modified.getTime() }),
217
+ }));
204
218
  }
205
- publish(root, path, chunks, expected, mode, modified, target) {
206
- const publication = this.stage(root, path, chunks, expected, mode, modified, target);
219
+ publish(root, path, chunks, expected, parent, mode, modified, target) {
220
+ const publication = this.stage(root, path, chunks, expected, parent, mode, modified, target);
207
221
  this.publications.add(publication);
208
222
  return publication.finally(() => { this.publications.delete(publication); });
209
223
  }
210
- async stage(root, path, chunks, expected, mode, modified, target) {
224
+ async stage(root, path, chunks, expected, parent, mode, modified, target) {
211
225
  const { fs, signal } = this.context;
212
- let temporary = "";
213
- let identity;
214
- let created = false;
226
+ const capabilities = await this.operation(async () => await fs.capabilitiesFor?.(path, { signal, create: true }) ?? fs.capabilities);
227
+ if (capabilities.atomicFileStaging !== true || !fs.createStagedFile || !fs.publishStagedFile || !fs.removeStagedFile)
228
+ fail("extraction requires atomic owned file staging");
229
+ let staging;
215
230
  let failure;
216
231
  const cleanup = retainFileSystemCleanup(fs, async (view) => {
217
- if (!created || !identity)
218
- return;
219
- try {
220
- let parent = "/";
221
- for (const component of dirname(temporary).split("/").filter(Boolean)) {
222
- parent = resolvePath(parent, component);
223
- if ((await view.lstat(parent)).type !== "directory")
224
- return;
225
- }
226
- const current = await view.lstat(temporary);
227
- if (current.type === identity.type && sameIdentity(current, identity))
228
- await view.rm(temporary);
229
- }
230
- catch (error) {
231
- if (typeof error !== "object" || error === null || !("code" in error) || error.code !== "ENOENT")
232
- throw error;
232
+ if (staging) {
233
+ if (!view.removeStagedFile)
234
+ fail("extraction atomic cleanup unavailable");
235
+ await view.removeStagedFile(staging);
233
236
  }
234
237
  }, { maxOperations: Math.min(4096, this.limits.maxDepth + 3) });
235
238
  try {
236
- await this.parents(root, path, true);
239
+ await this.parents(root, path, false);
240
+ const content = target === undefined ? { type: "file", data: Buffer.concat(chunks) } : { type: "symlink", target };
237
241
  for (let attempt = 0; attempt < this.limits.maxMembers; attempt++) {
238
- temporary = resolvePath(dirname(path), `.unzip-${++this.serial}`);
242
+ const temporary = resolvePath(dirname(path), `.unzip-${++this.serial}`);
239
243
  checkPath(temporary, this.limits);
240
- if (temporary === path || await this.stat(temporary))
244
+ checkPath(`${temporary}/entry`, this.limits);
245
+ if (temporary === path)
241
246
  continue;
242
- await this.operation(async () => {
243
- if (target === undefined)
244
- await fs.writeFile(temporary, new Uint8Array(), { signal, flag: "wx", mode: 0o600 });
245
- else
246
- await fs.symlink(target, temporary, { signal });
247
- created = true;
248
- identity = await fs.lstat(temporary);
249
- });
250
- if (!identity || !hasIdentity(identity))
251
- fail("temporary file backing identity unavailable");
252
- break;
253
- }
254
- if (!created)
255
- fail("temporary file attempt limit exceeded");
256
- if (target === undefined) {
257
- for (const chunk of chunks) {
258
- await this.checked(root, temporary, identity);
259
- await this.operation(() => fs.appendFile(temporary, chunk, { signal }));
247
+ try {
248
+ await this.operation(async () => {
249
+ staging = await fs.createStagedFile(temporary, "entry", content, {
250
+ signal, parent,
251
+ ...(target !== undefined || capabilities.permissions === false ? {} : { mode: mode & 0o777 }),
252
+ ...(target !== undefined || capabilities.timestamps === false ? {} : { atimeMs: modified.getTime(), mtimeMs: modified.getTime() }),
253
+ });
254
+ });
255
+ break;
256
+ }
257
+ catch (error) {
258
+ signal.throwIfAborted();
259
+ if (typeof error !== "object" || error === null || !("code" in error) || error.code !== "EEXIST")
260
+ throw error;
260
261
  }
261
- await this.metadata(root, temporary, identity, mode, modified);
262
262
  }
263
+ if (!staging)
264
+ fail("temporary file attempt limit exceeded");
263
265
  await this.parents(root, path, false);
264
- const current = await this.stat(path);
265
- if (current ? !expected || !sameIdentity(current, expected) || current.type !== "file" : expected !== undefined)
266
- fail("destination changed before publication");
267
- const staging = await this.stat(temporary);
268
- if (!staging || !identity || !sameIdentity(staging, identity) || staging.type !== (target === undefined ? "file" : "symlink"))
269
- fail("temporary file changed before publication");
270
- await this.operation(() => fs.rename(temporary, path, { signal }));
271
- created = false;
266
+ await this.operation(() => fs.publishStagedFile(staging, path, { signal, parent, destination: expected ?? null }));
272
267
  }
273
268
  catch (error) {
274
269
  failure = { reason: error };
@@ -1 +1 @@
1
- {"version":3,"file":"safety.js","sourceRoot":"","sources":["../../../../src/commands/archive/unzip/safety.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"safety.js","sourceRoot":"","sources":["../../../../src/commands/archive/unzip/safety.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"unzip.d.ts","sourceRoot":"","sources":["../../../src/commands/archive/unzip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAyE,KAAK,iBAAiB,EAAiB,MAAM,0BAA0B,CAAC;AAGxJ,OAAO,EAAsE,KAAK,sBAAsB,EAAE,MAAM,eAAe,CAAC;AA8ChI,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,sBAA2B,GAAG,iBAAiB,CAmK1F"}
1
+ {"version":3,"file":"unzip.d.ts","sourceRoot":"","sources":["../../../src/commands/archive/unzip.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkF,KAAK,iBAAiB,EAAiB,MAAM,0BAA0B,CAAC;AAGjK,OAAO,EAAsE,KAAK,sBAAsB,EAAE,MAAM,eAAe,CAAC;AA8ChI,wBAAgB,kBAAkB,CAAC,OAAO,GAAE,sBAA2B,GAAG,iBAAiB,CAsK1F"}
@@ -1,4 +1,4 @@
1
- import { collectBytes, readBytes, resolvePath, writeBytes } from "../../contracts/index.js";
1
+ import { dirname, collectBytes, readBytes, resolvePath, writeBytes } from "../../contracts/index.js";
2
2
  import { writeFileOutput } from "../../contracts/filesystem-output.js";
3
3
  import { publicDiagnosticMessage } from "../../diagnostics.js";
4
4
  import { Budget, bounded, checkPath, display, fail, settings, text, vfsPath } from "./internal.js";
@@ -138,19 +138,21 @@ export function createUnzipCommand(options = {}) {
138
138
  await writeFileOutput(context, chunk, async () => { if (chunk.length)
139
139
  fail("directory has nonempty payload"); });
140
140
  }
141
+ const parent = await extraction.operation(() => context.fs.lstat(dirname(path), { signal: context.signal }));
141
142
  const existing = await extraction.stat(path);
143
+ let identity = existing;
142
144
  if (existing && existing.type !== "directory")
143
145
  fail("directory destination is not a directory");
144
146
  if (!existing) {
145
- await extraction.operation(() => context.fs.mkdir(path, { signal: context.signal, mode: 0o755 }));
147
+ identity = await extraction.createDirectory(path, parent);
146
148
  await budget.output(` creating: ${filtered(shown)}\n`);
147
149
  }
148
- const identity = await extraction.stat(path);
149
150
  if (!identity || identity.type !== "directory")
150
151
  fail("directory changed during creation");
151
- directories.push({ path, entry, identity });
152
+ directories.push({ path, entry, identity, parent });
152
153
  continue;
153
154
  }
155
+ let parent = await extraction.operation(() => context.fs.lstat(dirname(path), { signal: context.signal }));
154
156
  let existing = await extraction.destination(path, archivePath, archiveStat);
155
157
  let skip = false;
156
158
  let prompting = 0;
@@ -195,6 +197,7 @@ export function createUnzipCommand(options = {}) {
195
197
  path = extraction.member(root, renamed);
196
198
  shown = parsed.destination === undefined ? renamed : `${parsed.destination.endsWith("/") ? parsed.destination : `${parsed.destination}/`}${renamed}`;
197
199
  await extraction.parents(root, path, true);
200
+ parent = await extraction.operation(() => context.fs.lstat(dirname(path), { signal: context.signal }));
198
201
  existing = await extraction.destination(path, archivePath, archiveStat);
199
202
  continue;
200
203
  }
@@ -219,11 +222,11 @@ export function createUnzipCommand(options = {}) {
219
222
  await extraction.target(root, path, target);
220
223
  if (!context.fs.symlink || context.fs.capabilities.symlinks === false)
221
224
  fail("filesystem does not support symlinks");
222
- links.push({ path, shown, target, existing, entry });
225
+ links.push({ path, shown, target, existing, parent, entry });
223
226
  await budget.output(` linking: ${padded(filtered(shown))} -> ${filtered(target)} \n`);
224
227
  }
225
228
  else {
226
- await extraction.publish(root, path, chunks, existing, entry.mode, entry.modified);
229
+ await extraction.publish(root, path, chunks, existing, parent, entry.mode, entry.modified);
227
230
  await budget.output(`${entry.method === 0 ? " extracting" : " inflating"}: ${padded(filtered(shown))} \n`);
228
231
  }
229
232
  }
@@ -236,11 +239,11 @@ export function createUnzipCommand(options = {}) {
236
239
  await extraction.parents(root, link.path, false);
237
240
  await extraction.target(root, link.path, link.target);
238
241
  await extraction.destination(link.path, archivePath, archiveStat);
239
- await extraction.publish(root, link.path, [], link.existing, link.entry.mode, link.entry.modified, link.target);
242
+ await extraction.publish(root, link.path, [], link.existing, link.parent, link.entry.mode, link.entry.modified, link.target);
240
243
  await budget.output(` ${padded(filtered(link.shown))} -> ${filtered(link.target)}\n`);
241
244
  }
242
- for (const { path, entry, identity } of directories.reverse()) {
243
- await extraction.metadata(root, path, identity, entry.mode, entry.modified);
245
+ for (const { path, entry, identity, parent } of directories.reverse()) {
246
+ await extraction.metadata(root, path, identity, parent, entry.mode, entry.modified);
244
247
  }
245
248
  for (let index = 0; index < parsed.patterns.length; index++)
246
249
  if (!selection.matched.has(index)) {
@@ -1 +1 @@
1
- {"version":3,"file":"unzip.js","sourceRoot":"","sources":["../../../src/commands/archive/unzip.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"unzip.js","sourceRoot":"","sources":["../../../src/commands/archive/unzip.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,7 @@ export interface ZipPublication {
22
22
  readonly parent: string;
23
23
  readonly parentName: string;
24
24
  readonly existing: FileStat | undefined;
25
+ readonly parentStat: FileStat;
25
26
  readonly bytes: Uint8Array;
26
27
  }
27
28
  export declare function publishZip(scope: ZipScope, prepared: ZipPublication): Promise<void>;
@@ -1 +1 @@
1
- {"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../../../src/commands/archive/zip/safety.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,MAAM,6BAA6B,CAAC;AAE7G,OAAO,EAA8C,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAEhG,qBAAa,QAAQ;IAQP,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAAkB,QAAQ,CAAC,MAAM,EAAE,aAAa;IAPrF,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsC;IACnE,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,IAAI,CAAK;gBACY,QAAQ,EAAE,cAAc,EAAW,MAAM,EAAE,aAAa;IAIrF,QAAQ,CAAC,KAAK,QAAO,OAAO,CAAC,IAAI,CAAC,CAYhC;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IAW1E,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAQvD,OAAO,CAAC,MAAM;IAiBP,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU;CAcvC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA4FzF"}
1
+ {"version":3,"file":"safety.d.ts","sourceRoot":"","sources":["../../../../src/commands/archive/zip/safety.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,UAAU,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAoB,MAAM,6BAA6B,CAAC;AAE/H,OAAO,EAAmB,KAAK,aAAa,EAAE,MAAM,gBAAgB,CAAC;AAErE,qBAAa,QAAQ;IAQP,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAAkB,QAAQ,CAAC,MAAM,EAAE,aAAa;IAPrF,QAAQ,CAAC,OAAO,EAAE,cAAc,CAAC;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAyB;IACpD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAkC;IAC1D,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAsC;IACnE,OAAO,CAAC,KAAK,CAA4B;IACzC,OAAO,CAAC,IAAI,CAAK;gBACY,QAAQ,EAAE,cAAc,EAAW,MAAM,EAAE,aAAa;IAIrF,QAAQ,CAAC,KAAK,QAAO,OAAO,CAAC,IAAI,CAAC,CAYhC;IACI,SAAS,CAAC,KAAK,EAAE,MAAM,EAAE,MAAM,KAAK,GAAG,WAAW,CAAC,KAAK,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC;IAW1E,IAAI,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,SAAS,CAAC;IAQvD,OAAO,CAAC,MAAM;IAiBP,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,UAAU;CAcvC;AAED,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,QAAQ,GAAG,SAAS,CAAC;IACxC,QAAQ,CAAC,UAAU,EAAE,QAAQ,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,UAAU,CAAC;CAC5B;AAED,wBAAsB,UAAU,CAAC,KAAK,EAAE,QAAQ,EAAE,QAAQ,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CA2CzF"}
@@ -1,6 +1,6 @@
1
1
  import { readBytes } from "../../../contracts/index.js";
2
2
  import { retainFileSystemCleanup } from "@poe-platform/safe-fs/core";
3
- import { checkPath, fail, hasIdentity, sameIdentity } from "../internal.js";
3
+ import { checkPath, fail } from "../internal.js";
4
4
  export class ZipScope {
5
5
  original;
6
6
  limits;
@@ -101,56 +101,30 @@ export class ZipScope {
101
101
  }
102
102
  export async function publishZip(scope, prepared) {
103
103
  const { fs, signal } = scope.context;
104
- const capabilities = await scope.operation(() => fs.capabilitiesFor?.(prepared.output, { signal }) ?? fs.capabilities);
105
- if (capabilities.atomicRename !== true || capabilities.exclusiveCreate !== true || capabilities.explicitDirectories !== true
106
- || capabilities.permissions !== true || !fs.rmdir || (prepared.existing ? !fs.chmod : capabilities.atomicRenameNoReplace !== true))
107
- fail("ZIP publication requires atomic rename, exclusive creation, private directories and mode preservation");
108
- let directory;
109
- let temporary = "";
110
- let identity;
111
- let published = false;
112
- let collision = false;
104
+ const capabilities = await scope.operation(() => fs.capabilitiesFor?.(prepared.output, { signal, create: true }) ?? fs.capabilities);
105
+ if (capabilities.atomicFileStaging !== true || !fs.createStagedFile || !fs.publishStagedFile || !fs.removeStagedFile)
106
+ fail("ZIP publication requires atomic owned file staging");
107
+ let staging;
113
108
  let failure;
114
- const checkOwner = async () => {
115
- const parent = await scope.operation(() => fs.realpath(prepared.parentName, { signal }));
116
- const owner = directory && await scope.stat(directory.path);
117
- if (parent !== prepared.parent || !owner || owner.type !== "directory" || !sameIdentity(owner, directory.stat))
118
- fail("ZIP temporary ownership changed before mutation");
119
- };
120
109
  const close = retainFileSystemCleanup(fs, async (cleanup) => {
121
- if (!directory || !hasIdentity(directory.stat))
122
- return;
123
- const parent = await cleanup.realpath(prepared.parentName);
124
- const owner = await cleanup.lstat(directory.path);
125
- if (parent !== prepared.parent || owner.type !== "directory" || !sameIdentity(owner, directory.stat))
126
- fail("ZIP temporary ownership changed before cleanup");
127
- if (temporary && !published && !collision) {
128
- let current;
129
- try {
130
- current = await cleanup.lstat(temporary);
131
- }
132
- catch (error) {
133
- if (typeof error !== "object" || error === null || !("code" in error) || error.code !== "ENOENT")
134
- throw error;
135
- }
136
- if (current) {
137
- if (!identity || !sameIdentity(current, identity) || current.type !== "file" || current.nlink !== 1)
138
- fail("ZIP temporary file changed before cleanup");
139
- await cleanup.rm(temporary);
140
- }
110
+ if (staging) {
111
+ if (!cleanup.removeStagedFile)
112
+ fail("ZIP atomic cleanup unavailable");
113
+ await cleanup.removeStagedFile(staging);
141
114
  }
142
- await cleanup.rmdir(directory.path);
143
115
  }, { maxOperations: 16 });
144
116
  try {
145
117
  for (let attempt = 0; attempt < Math.min(64, scope.limits.maxMembers); attempt++) {
146
118
  const path = `${prepared.parent === "/" ? "" : prepared.parent}/.zip-${attempt + 1}`;
147
119
  checkPath(path, scope.limits);
120
+ checkPath(`${path}/archive.zip`, scope.limits);
148
121
  if (path === prepared.output)
149
122
  continue;
150
123
  try {
151
124
  await scope.operation(async () => {
152
- await fs.mkdir(path, { signal, mode: 0o700 });
153
- directory = { path, stat: await fs.lstat(path) };
125
+ staging = await fs.createStagedFile(path, "archive.zip", { type: "file", data: prepared.bytes }, {
126
+ signal, parent: prepared.parentStat, ...(prepared.existing ? { mode: prepared.existing.mode & 0o7777 } : {}),
127
+ });
154
128
  });
155
129
  break;
156
130
  }
@@ -160,56 +134,14 @@ export async function publishZip(scope, prepared) {
160
134
  throw error;
161
135
  }
162
136
  }
163
- if (!directory)
137
+ if (!staging)
164
138
  fail("ZIP temporary directory attempt limit exceeded");
165
- if (directory.stat.type !== "directory" || !hasIdentity(directory.stat) || (directory.stat.mode & 0o777) !== 0o700)
166
- fail("ZIP temporary directory ownership unavailable");
167
- temporary = `${directory.path}/archive.zip`;
168
- checkPath(temporary, scope.limits);
169
- await checkOwner();
170
- await scope.operation(async () => {
171
- let writeFailure;
172
- try {
173
- await fs.writeFile(temporary, prepared.bytes, { signal, flag: "wx", ...(prepared.existing ? { mode: prepared.existing.mode & 0o7777 } : {}) });
174
- }
175
- catch (error) {
176
- collision = typeof error === "object" && error !== null && "code" in error && error.code === "EEXIST";
177
- writeFailure = { reason: error };
178
- }
179
- if (!collision) {
180
- await checkOwner();
181
- try {
182
- identity = await fs.lstat(temporary);
183
- }
184
- catch (error) {
185
- if (typeof error !== "object" || error === null || !("code" in error) || error.code !== "ENOENT")
186
- throw error;
187
- }
188
- }
189
- if (writeFailure)
190
- throw writeFailure.reason;
191
- });
192
- if (!identity || !hasIdentity(identity) || identity.type !== "file" || identity.nlink !== 1 || identity.size !== prepared.bytes.length)
193
- fail("ZIP staged archive identity or size changed");
194
- if (prepared.existing) {
195
- await checkOwner();
196
- await scope.operation(() => fs.chmod(temporary, prepared.existing.mode & 0o7777, { signal }));
197
- }
198
139
  const parent = await scope.operation(() => fs.realpath(prepared.parentName, { signal }));
199
- const current = await scope.stat(prepared.output);
200
- if (parent !== prepared.parent || (prepared.existing ? !current || !sameIdentity(prepared.existing, current)
201
- || current.type !== "file" || current.nlink !== 1 || current.size !== prepared.existing.size
202
- || current.mode !== prepared.existing.mode || current.mtimeMs !== prepared.existing.mtimeMs || current.ctimeMs !== prepared.existing.ctimeMs : current !== undefined))
203
- fail("archive backing entry changed before publication");
204
- const staging = await scope.stat(temporary);
205
- const owner = await scope.stat(directory.path);
206
- if (!staging || !sameIdentity(staging, identity) || staging.type !== "file" || staging.nlink !== 1 || staging.size !== prepared.bytes.length
207
- || !owner || !sameIdentity(owner, directory.stat) || owner.type !== "directory")
208
- fail("ZIP temporary ownership changed before publication");
209
- await scope.operation(async () => {
210
- await fs.rename(temporary, prepared.output, { signal, ...(!prepared.existing ? { noReplace: true } : {}) });
211
- published = true;
212
- });
140
+ if (parent !== prepared.parent)
141
+ fail("archive parent changed before publication");
142
+ await scope.operation(() => fs.publishStagedFile(staging, prepared.output, {
143
+ signal, parent: prepared.parentStat, destination: prepared.existing ?? null,
144
+ }));
213
145
  }
214
146
  catch (error) {
215
147
  failure = { reason: error };
@@ -1 +1 @@
1
- {"version":3,"file":"safety.js","sourceRoot":"","sources":["../../../../src/commands/archive/zip/safety.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"safety.js","sourceRoot":"","sources":["../../../../src/commands/archive/zip/safety.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../../src/commands/archive/zip.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+E,KAAK,iBAAiB,EAAiB,MAAM,0BAA0B,CAAC;AAM9J,OAAO,EAAwF,KAAK,sBAAsB,EAAsB,MAAM,eAAe,CAAC;AAoMtK,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,sBAA2B,GAAG,iBAAiB,CA4BxF"}
1
+ {"version":3,"file":"zip.d.ts","sourceRoot":"","sources":["../../../src/commands/archive/zip.ts"],"names":[],"mappings":"AAAA,OAAO,EAA+E,KAAK,iBAAiB,EAAiB,MAAM,0BAA0B,CAAC;AAM9J,OAAO,EAAwF,KAAK,sBAAsB,EAAsB,MAAM,eAAe,CAAC;AAqMtK,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,sBAA2B,GAAG,iBAAiB,CA4BxF"}