poe-code 14.0.94 → 14.0.96

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 (145) hide show
  1. package/dist/metafile.json +1 -1
  2. package/package.json +1 -1
  3. package/packages/safe-bash/dist/commands/apply-patch/apply.d.ts.map +1 -1
  4. package/packages/safe-bash/dist/commands/apply-patch/apply.js +5 -2
  5. package/packages/safe-bash/dist/commands/apply-patch/apply.js.map +1 -1
  6. package/packages/safe-bash/dist/commands/archive/extract.d.ts.map +1 -1
  7. package/packages/safe-bash/dist/commands/archive/extract.js +5 -2
  8. package/packages/safe-bash/dist/commands/archive/extract.js.map +1 -1
  9. package/packages/safe-bash/dist/commands/archive/internal.d.ts.map +1 -1
  10. package/packages/safe-bash/dist/commands/archive/internal.js +6 -2
  11. package/packages/safe-bash/dist/commands/archive/internal.js.map +1 -1
  12. package/packages/safe-bash/dist/commands/bytes/compression/files.d.ts.map +1 -1
  13. package/packages/safe-bash/dist/commands/bytes/compression/files.js +10 -6
  14. package/packages/safe-bash/dist/commands/bytes/compression/files.js.map +1 -1
  15. package/packages/safe-bash/dist/commands/diff-patch/diff.d.ts.map +1 -1
  16. package/packages/safe-bash/dist/commands/diff-patch/diff.js +4 -3
  17. package/packages/safe-bash/dist/commands/diff-patch/diff.js.map +1 -1
  18. package/packages/safe-bash/dist/commands/diff-patch/shared.d.ts.map +1 -1
  19. package/packages/safe-bash/dist/commands/diff-patch/shared.js +5 -3
  20. package/packages/safe-bash/dist/commands/diff-patch/shared.js.map +1 -1
  21. package/packages/safe-bash/dist/commands/du/du.d.ts.map +1 -1
  22. package/packages/safe-bash/dist/commands/du/du.js +6 -6
  23. package/packages/safe-bash/dist/commands/du/du.js.map +1 -1
  24. package/packages/safe-bash/dist/commands/file/index.d.ts.map +1 -1
  25. package/packages/safe-bash/dist/commands/file/index.js +9 -3
  26. package/packages/safe-bash/dist/commands/file/index.js.map +1 -1
  27. package/packages/safe-bash/dist/commands/filesystem-requirements.d.ts.map +1 -1
  28. package/packages/safe-bash/dist/commands/filesystem-requirements.js +1 -0
  29. package/packages/safe-bash/dist/commands/filesystem-requirements.js.map +1 -1
  30. package/packages/safe-bash/dist/commands/filesystem.d.ts.map +1 -1
  31. package/packages/safe-bash/dist/commands/filesystem.js +54 -10
  32. package/packages/safe-bash/dist/commands/filesystem.js.map +1 -1
  33. package/packages/safe-bash/dist/commands/find.js +1 -1
  34. package/packages/safe-bash/dist/commands/find.js.map +1 -1
  35. package/packages/safe-bash/dist/commands/html-to-markdown/input.d.ts.map +1 -1
  36. package/packages/safe-bash/dist/commands/html-to-markdown/input.js +12 -18
  37. package/packages/safe-bash/dist/commands/html-to-markdown/input.js.map +1 -1
  38. package/packages/safe-bash/dist/commands/internal.d.ts +1 -1
  39. package/packages/safe-bash/dist/commands/internal.d.ts.map +1 -1
  40. package/packages/safe-bash/dist/commands/internal.js +3 -2
  41. package/packages/safe-bash/dist/commands/internal.js.map +1 -1
  42. package/packages/safe-bash/dist/commands/metadata/internal.d.ts +2 -2
  43. package/packages/safe-bash/dist/commands/metadata/internal.d.ts.map +1 -1
  44. package/packages/safe-bash/dist/commands/metadata/internal.js +1 -1
  45. package/packages/safe-bash/dist/commands/metadata/internal.js.map +1 -1
  46. package/packages/safe-bash/dist/commands/metadata/mktemp.d.ts.map +1 -1
  47. package/packages/safe-bash/dist/commands/metadata/mktemp.js +5 -2
  48. package/packages/safe-bash/dist/commands/metadata/mktemp.js.map +1 -1
  49. package/packages/safe-bash/dist/commands/metadata/stat.js +1 -1
  50. package/packages/safe-bash/dist/commands/metadata/stat.js.map +1 -1
  51. package/packages/safe-bash/dist/commands/move.d.ts.map +1 -1
  52. package/packages/safe-bash/dist/commands/move.js +3 -2
  53. package/packages/safe-bash/dist/commands/move.js.map +1 -1
  54. package/packages/safe-bash/dist/commands/network/body.d.ts.map +1 -1
  55. package/packages/safe-bash/dist/commands/network/body.js +3 -1
  56. package/packages/safe-bash/dist/commands/network/body.js.map +1 -1
  57. package/packages/safe-bash/dist/commands/predicates.d.ts.map +1 -1
  58. package/packages/safe-bash/dist/commands/predicates.js +8 -2
  59. package/packages/safe-bash/dist/commands/predicates.js.map +1 -1
  60. package/packages/safe-bash/dist/commands/safejs/index.d.ts.map +1 -1
  61. package/packages/safe-bash/dist/commands/safejs/index.js +2 -1
  62. package/packages/safe-bash/dist/commands/safejs/index.js.map +1 -1
  63. package/packages/safe-bash/dist/commands/split/io.d.ts.map +1 -1
  64. package/packages/safe-bash/dist/commands/split/io.js +2 -1
  65. package/packages/safe-bash/dist/commands/split/io.js.map +1 -1
  66. package/packages/safe-bash/dist/commands/split/split.d.ts.map +1 -1
  67. package/packages/safe-bash/dist/commands/split/split.js +2 -1
  68. package/packages/safe-bash/dist/commands/split/split.js.map +1 -1
  69. package/packages/safe-bash/dist/commands/stream-format/shared.d.ts.map +1 -1
  70. package/packages/safe-bash/dist/commands/stream-format/shared.js +7 -4
  71. package/packages/safe-bash/dist/commands/stream-format/shared.js.map +1 -1
  72. package/packages/safe-bash/dist/commands/stream-inspection/shared.d.ts.map +1 -1
  73. package/packages/safe-bash/dist/commands/stream-inspection/shared.js +7 -4
  74. package/packages/safe-bash/dist/commands/stream-inspection/shared.js.map +1 -1
  75. package/packages/safe-bash/dist/commands/streams.d.ts.map +1 -1
  76. package/packages/safe-bash/dist/commands/streams.js +4 -2
  77. package/packages/safe-bash/dist/commands/streams.js.map +1 -1
  78. package/packages/safe-bash/dist/commands/structured/jq.d.ts.map +1 -1
  79. package/packages/safe-bash/dist/commands/structured/jq.js +15 -5
  80. package/packages/safe-bash/dist/commands/structured/jq.js.map +1 -1
  81. package/packages/safe-bash/dist/commands/table-text/internal.d.ts.map +1 -1
  82. package/packages/safe-bash/dist/commands/table-text/internal.js +5 -4
  83. package/packages/safe-bash/dist/commands/table-text/internal.js.map +1 -1
  84. package/packages/safe-bash/dist/commands/text-programs/awk-runtime.d.ts.map +1 -1
  85. package/packages/safe-bash/dist/commands/text-programs/awk-runtime.js +10 -4
  86. package/packages/safe-bash/dist/commands/text-programs/awk-runtime.js.map +1 -1
  87. package/packages/safe-bash/dist/commands/text.d.ts.map +1 -1
  88. package/packages/safe-bash/dist/commands/text.js +3 -2
  89. package/packages/safe-bash/dist/commands/text.js.map +1 -1
  90. package/packages/safe-bash/dist/commands/time-env/date.d.ts.map +1 -1
  91. package/packages/safe-bash/dist/commands/time-env/date.js +3 -2
  92. package/packages/safe-bash/dist/commands/time-env/date.js.map +1 -1
  93. package/packages/safe-bash/dist/commands/tree/tree.d.ts.map +1 -1
  94. package/packages/safe-bash/dist/commands/tree/tree.js +2 -1
  95. package/packages/safe-bash/dist/commands/tree/tree.js.map +1 -1
  96. package/packages/safe-bash/dist/contracts/filesystem.d.ts +1 -1
  97. package/packages/safe-bash/dist/contracts/filesystem.d.ts.map +1 -1
  98. package/packages/safe-bash/dist/core.browser.js +259 -119
  99. package/packages/safe-bash/dist/core.browser.js.map +4 -4
  100. package/packages/safe-bash/dist/shell/conditional.d.ts.map +1 -1
  101. package/packages/safe-bash/dist/shell/conditional.js +10 -6
  102. package/packages/safe-bash/dist/shell/conditional.js.map +1 -1
  103. package/packages/safe-bash/dist/shell/input.d.ts +1 -1
  104. package/packages/safe-bash/dist/shell/input.d.ts.map +1 -1
  105. package/packages/safe-bash/dist/shell/input.js +7 -3
  106. package/packages/safe-bash/dist/shell/input.js.map +1 -1
  107. package/packages/safe-bash/dist/shell/runtime.d.ts +2 -1
  108. package/packages/safe-bash/dist/shell/runtime.d.ts.map +1 -1
  109. package/packages/safe-bash/dist/shell/runtime.js +37 -28
  110. package/packages/safe-bash/dist/shell/runtime.js.map +1 -1
  111. package/packages/safe-bash/dist/shell/shell.d.ts.map +1 -1
  112. package/packages/safe-bash/dist/shell/shell.js +3 -1
  113. package/packages/safe-bash/dist/shell/shell.js.map +1 -1
  114. package/packages/safe-fs/dist/contracts/filesystem.d.ts +6 -2
  115. package/packages/safe-fs/dist/core.d.ts +1 -0
  116. package/packages/safe-fs/dist/fs/devices/index.d.ts +33 -0
  117. package/packages/safe-fs/dist/fs/devices/path.d.ts +5 -0
  118. package/packages/safe-fs/dist/fs/devices/stream.d.ts +5 -0
  119. package/packages/safe-fs/dist/fs/memory/index.d.ts +3 -2
  120. package/packages/safe-fs/dist/fs/mount/index.d.ts +2 -2
  121. package/packages/safe-fs/dist/fs/overlay/index.d.ts +2 -2
  122. package/packages/safe-fs/dist/fs/readonly/index.d.ts +2 -2
  123. package/packages/safe-fs/dist/fs/real/index.d.ts +2 -2
  124. package/packages/safe-fs/dist/fs/s3/filesystem.d.ts +3 -2
  125. package/packages/safe-fs/dist/fs/webdav/webdav.d.ts +3 -2
  126. package/packages/safe-fs/dist/index.d.ts +1 -0
  127. package/packages/safe-js/dist/browser/chunks/{chunk-I3HSJDAA.js → chunk-QK4IEGRO.js} +610 -4
  128. package/packages/safe-js/dist/browser/chunks/chunk-QK4IEGRO.js.map +7 -0
  129. package/packages/safe-js/dist/browser/safe-fs-core.js +5 -1
  130. package/packages/safe-js/dist/browser/safe-fs.js +5 -1
  131. package/packages/safe-js/dist/chunks/{chunk-CQZRYT3K.js → chunk-6V4U2JZS.js} +610 -4
  132. package/packages/safe-js/dist/chunks/chunk-6V4U2JZS.js.map +7 -0
  133. package/packages/safe-js/dist/chunks/{chunk-PZSJ52ZO.js → chunk-EZRL4ES2.js} +3 -3
  134. package/packages/safe-js/dist/chunks/{chunk-66PPRTEP.js → chunk-XOQ5CVQM.js} +9 -2
  135. package/packages/safe-js/dist/chunks/chunk-XOQ5CVQM.js.map +7 -0
  136. package/packages/safe-js/dist/cli.js +3 -3
  137. package/packages/safe-js/dist/index.js +3 -3
  138. package/packages/safe-js/dist/safe-fs-core.js +5 -1
  139. package/packages/safe-js/dist/safe-fs-core.js.map +1 -1
  140. package/packages/safe-js/dist/safe-fs-node.js +6 -2
  141. package/packages/safe-js/dist/safe-fs.js +6 -2
  142. package/packages/safe-js/dist/browser/chunks/chunk-I3HSJDAA.js.map +0 -7
  143. package/packages/safe-js/dist/chunks/chunk-66PPRTEP.js.map +0 -7
  144. package/packages/safe-js/dist/chunks/chunk-CQZRYT3K.js.map +0 -7
  145. /package/packages/safe-js/dist/chunks/{chunk-PZSJ52ZO.js.map → chunk-EZRL4ES2.js.map} +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/shell/shell.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAA6B,MAAM,uBAAuB,CAAC;AACnF,OAAO,KAAK,EACA,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EACtE,sBAAsB,EAAE,kBAAkB,EAC3C,MAAM,uBAAuB,CAAC;AAS/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA+E9E,qBAAa,KAAM,YAAW,UAAU;;IACtC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;gBAUvB,OAAO,EAAE,YAAY;IASjC,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,kBAAkB,GAAG,IAAI;IA6BtD,QAAQ,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,IAAI;IAM5E,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAW9D,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAQlI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;IAmJhF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CA8BzB"}
1
+ {"version":3,"file":"shell.d.ts","sourceRoot":"","sources":["../../src/shell/shell.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,eAAe,EAA6B,MAAM,uBAAuB,CAAC;AACnF,OAAO,KAAK,EACA,iBAAiB,EAAE,iBAAiB,EAAE,UAAU,EAAE,UAAU,EACtE,sBAAsB,EAAE,kBAAkB,EAC3C,MAAM,uBAAuB,CAAC;AAS/B,OAAO,KAAK,EAAE,gBAAgB,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AA+E9E,qBAAa,KAAM,YAAW,UAAU;;IACtC,QAAQ,CAAC,QAAQ,EAAE,eAAe,CAAC;gBAUvB,OAAO,EAAE,YAAY;IASjC,GAAG,CAAC,UAAU,EAAE,UAAU,GAAG,kBAAkB,GAAG,IAAI;IA6BtD,QAAQ,CAAC,OAAO,EAAE,iBAAiB,EAAE,OAAO,CAAC,EAAE,sBAAsB,GAAG,IAAI;IAM5E,kBAAkB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,IAAI;IAW9D,gBAAgB,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAM,GAAG,OAAO,CAAC,OAAO,CAAC,UAAU,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAQlI,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,gBAAqB,GAAG,OAAO,CAAC,WAAW,CAAC;IAsJhF,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CA8BzB"}
@@ -1,4 +1,5 @@
1
1
  import { writeDiagnostic } from "../escaping.js";
2
+ import { createDeviceFileSystem } from "poe-code/safe-fs/core";
2
3
  import { CommandRegistry, resolvePath, toByteSource } from "../contracts/index.js";
3
4
  import { warnIfHostProcessEnv } from "./env-warning.js";
4
5
  import { parseShellUnit } from "./parser.js";
@@ -270,7 +271,8 @@ export class Shell {
270
271
  status: 0, substitutionStatus: 0, depth: 0, loopDepth: 0, functionDepth: 0, locals: [], pipefail: false, profile: "bash",
271
272
  };
272
273
  const admission = Runtime.rootCancellationAdmission(budget);
273
- const runtime = new Runtime(options.fs ?? this.#options.fs, this.commands, [...this.#middleware], budget, AbortSignal.any([cancellation.deliverySignal, scope.signal]), undefined, undefined, cancellation.deliverySignal, cancellation, cancellationState, owner, 0, admission.maxDepth);
274
+ const filesystem = options.fs ?? this.#options.fs;
275
+ const runtime = new Runtime(createDeviceFileSystem(filesystem), this.commands, [...this.#middleware], budget, AbortSignal.any([cancellation.deliverySignal, scope.signal]), undefined, undefined, cancellation.deliverySignal, cancellation, cancellationState, owner, 0, admission.maxDepth, undefined, filesystem);
274
276
  exitCode = 0;
275
277
  while (true) {
276
278
  for (const warning of unit.script.warnings ?? [])
@@ -1 +1 @@
1
- {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/shell/shell.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"shell.js","sourceRoot":"","sources":["../../src/shell/shell.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import type { ByteSource } from "./io.js";
2
- export type FileType = "file" | "directory" | "symlink";
2
+ export type FileType = "file" | "directory" | "symlink" | "character";
3
3
  export type EntryComparison = "same" | "distinct" | "unknown";
4
4
  export interface FileStat {
5
5
  readonly type: FileType;
@@ -50,6 +50,7 @@ export interface FileSystemCapabilities {
50
50
  readonly permissions?: boolean;
51
51
  readonly timestamps?: boolean;
52
52
  readonly atomicRename?: boolean;
53
+ readonly atomicRenameNoReplace?: boolean;
53
54
  readonly snapshotRmdir?: boolean;
54
55
  readonly streamingRead?: boolean;
55
56
  readonly retainedRead?: boolean;
@@ -65,6 +66,9 @@ export interface FileReadHandle {
65
66
  read(position: number, maxBytes: number, options?: FsOptions): Promise<Uint8Array>;
66
67
  close(): Promise<void>;
67
68
  }
69
+ export interface RenameOptions extends FsOptions {
70
+ readonly noReplace?: boolean;
71
+ }
68
72
  export interface ReadFileOptions extends FsOptions {
69
73
  readonly maxBytes?: number;
70
74
  }
@@ -116,7 +120,7 @@ export interface FileSystem {
116
120
  mkdir(path: string, options?: MkdirOptions): Promise<void>;
117
121
  rm(path: string, options?: RemoveOptions): Promise<void>;
118
122
  rmdir?(path: string, options?: FsOptions): Promise<void>;
119
- rename(source: string, destination: string, options?: FsOptions): Promise<void>;
123
+ rename(source: string, destination: string, options?: RenameOptions): Promise<void>;
120
124
  copyFile(source: string, destination: string, options?: CopyFileOptions): Promise<void>;
121
125
  realpath(path: string, options?: FsOptions): Promise<string>;
122
126
  access(path: string, mode?: number, options?: FsOptions): Promise<void>;
@@ -4,6 +4,7 @@ export * from "./contracts/io.js";
4
4
  export { assertPathWithin, isPathWithin, normalizePath, relativePath, resolvePath, validatePath } from "./contracts/virtual-path.js";
5
5
  export { basename, dirname, extname, isAbsolutePath, joinPath, posixPath } from "./contracts/portable-path.js";
6
6
  export * from "./fs/memory/index.js";
7
+ export * from "./fs/devices/index.js";
7
8
  export * from "./fs/readonly/index.js";
8
9
  export * from "./fs/mount/index.js";
9
10
  export * from "./fs/overlay/index.js";
@@ -0,0 +1,33 @@
1
+ import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, FileReadHandle, FileStat, FileSystem, FileSystemCapabilities, FsOptions, RenameOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
2
+ import type { ByteSource } from "../../contracts/io.js";
3
+ export declare class DeviceFileSystem implements FileSystem {
4
+ #private;
5
+ readonly capabilities: FileSystemCapabilities;
6
+ constructor(filesystem: FileSystem);
7
+ canonicalizeMissingTarget(path: string, options?: FsOptions): string | undefined;
8
+ capabilitiesFor(path: string, options?: FsOptions): Promise<FileSystemCapabilities>;
9
+ stat(path: string, options?: FsOptions): Promise<FileStat>;
10
+ lstat(path: string, options?: FsOptions): Promise<FileStat>;
11
+ compareEntry(path: string, peer: FileSystem, peerPath: string, options?: FsOptions): Promise<import("../../contracts/filesystem.js").EntryComparison>;
12
+ realpath(path: string, options?: FsOptions): Promise<string>;
13
+ readFile(path: string, options?: ReadFileOptions): Promise<Uint8Array>;
14
+ readStream(path: string, options?: ReadStreamOptions): ByteSource;
15
+ openReadFile(path: string, options?: FsOptions): Promise<FileReadHandle>;
16
+ writeFile(path: string, data: Uint8Array, options?: WriteFileOptions): Promise<void>;
17
+ appendFile(path: string, data: Uint8Array, options?: AppendFileOptions): Promise<void>;
18
+ writeStream(path: string, source: ByteSource, options?: WriteFileOptions): Promise<void>;
19
+ readdir(path: string, options?: ReadDirectoryOptions): Promise<DirectoryEntry[]>;
20
+ mkdir(path: string, options?: MkdirOptions): Promise<void>;
21
+ rm(path: string, options?: RemoveOptions): Promise<void>;
22
+ rmdir(path: string, options?: FsOptions): Promise<void>;
23
+ rename(source: string, destination: string, options?: RenameOptions): Promise<void>;
24
+ copyFile(source: string, destination: string, options?: CopyFileOptions): Promise<void>;
25
+ access(path: string, mode?: number, options?: FsOptions): Promise<void>;
26
+ readlink(path: string, options?: FsOptions): Promise<string>;
27
+ symlink(target: string, path: string, options?: FsOptions): Promise<void>;
28
+ link(existingPath: string, newPath: string, options?: FsOptions): Promise<void>;
29
+ chmod(path: string, mode: number, options?: FsOptions): Promise<void>;
30
+ utimes(path: string, atimeMs: number, mtimeMs: number, options?: FsOptions): Promise<void>;
31
+ truncate(path: string, length?: number, options?: FsOptions): Promise<void>;
32
+ }
33
+ export declare function createDeviceFileSystem(filesystem: FileSystem): DeviceFileSystem;
@@ -0,0 +1,5 @@
1
+ import type { FileSystem, FsOptions } from "../../contracts/filesystem.js";
2
+ export declare const nullPath = "/dev/null";
3
+ export declare const deviceDirectory = "/dev";
4
+ export declare function lexicalDevicePath(path: string): string;
5
+ export declare function resolveDevicePath(filesystem: FileSystem, path: string, options: FsOptions, followFinal?: boolean): Promise<string>;
@@ -0,0 +1,5 @@
1
+ import type { ByteSource } from "../../contracts/io.js";
2
+ import type { FileReadHandle } from "../../contracts/filesystem.js";
3
+ export declare function deviceReadStream(open: () => Promise<ByteSource>): ByteSource;
4
+ export declare function drainDeviceFile(handle: FileReadHandle, signal?: AbortSignal): Promise<void>;
5
+ export declare function drainDeviceInput(source: ByteSource, signal?: AbortSignal): Promise<void>;
@@ -1,4 +1,4 @@
1
- import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, EntryComparison, FileReadHandle, FileStat, FileSystem, FsOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
1
+ import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, EntryComparison, FileReadHandle, FileStat, FileSystem, FsOptions, RenameOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
2
2
  import type { ByteSource } from "../../contracts/io.js";
3
3
  import { type MemoryFileSystemOptions } from "./limits.js";
4
4
  export { defaultMemoryFileSystemLimits, type MemoryFileSystemLimits, type MemoryFileSystemOptions } from "./limits.js";
@@ -20,6 +20,7 @@ export declare class MemoryFileSystem implements FileSystem {
20
20
  removeDirectory: true;
21
21
  recursiveRemove: true;
22
22
  rename: true;
23
+ atomicRenameNoReplace: true;
23
24
  copy: true;
24
25
  exclusiveCopy: true;
25
26
  readlink: true;
@@ -76,7 +77,7 @@ export declare class MemoryFileSystem implements FileSystem {
76
77
  mkdir(path: string, options?: MkdirOptions): Promise<void>;
77
78
  rmdir(path: string, options?: FsOptions): Promise<void>;
78
79
  rm(path: string, options?: RemoveOptions): Promise<void>;
79
- rename(source: string, destination: string, options?: FsOptions): Promise<void>;
80
+ rename(source: string, destination: string, options?: RenameOptions): Promise<void>;
80
81
  copyFile(source: string, destination: string, options?: CopyFileOptions): Promise<void>;
81
82
  realpath(path: string, options?: FsOptions): Promise<string>;
82
83
  access(path: string, mode?: number, options?: FsOptions): Promise<void>;
@@ -1,4 +1,4 @@
1
- import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, FileReadHandle, FileStat, FileSystem, FileSystemCapabilities, FsOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
1
+ import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, FileReadHandle, FileStat, FileSystem, FileSystemCapabilities, FsOptions, RenameOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
2
2
  import type { ByteSource } from "../../contracts/io.js";
3
3
  export interface MountFileSystemOptions {
4
4
  readonly root: FileSystem;
@@ -29,7 +29,7 @@ export declare class MountFileSystem implements FileSystem {
29
29
  mkdir(path: string, options?: MkdirOptions): Promise<void>;
30
30
  rmdir(path: string, options?: FsOptions): Promise<void>;
31
31
  rm(path: string, options?: RemoveOptions): Promise<void>;
32
- rename(source: string, destination: string, options?: FsOptions): Promise<void>;
32
+ rename(source: string, destination: string, options?: RenameOptions): Promise<void>;
33
33
  copyFile(source: string, destination: string, options?: CopyFileOptions): Promise<void>;
34
34
  realpath(path: string, options?: FsOptions): Promise<string>;
35
35
  compareEntry(path: string, peer: FileSystem, peerPath: string, options?: FsOptions): Promise<import("../../contracts/filesystem.js").EntryComparison>;
@@ -1,5 +1,5 @@
1
1
  import type { ByteSource } from "../../contracts/io.js";
2
- import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, FileStat, FileSystem, FileSystemCapabilities, FsOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
2
+ import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, FileStat, FileSystem, FileSystemCapabilities, FsOptions, RenameOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
3
3
  export interface OverlayFileSystemOptions {
4
4
  readonly upper: FileSystem;
5
5
  readonly lower: FileSystem;
@@ -58,7 +58,7 @@ export declare class OverlayFileSystem implements FileSystem {
58
58
  rmdir(path: string, options?: FsOptions): Promise<void>;
59
59
  rm(path: string, options?: RemoveOptions): Promise<void>;
60
60
  private materialize;
61
- rename(source: string, destination: string, options?: FsOptions): Promise<void>;
61
+ rename(source: string, destination: string, options?: RenameOptions): Promise<void>;
62
62
  copyFile(source: string, destination: string, options?: CopyFileOptions): Promise<void>;
63
63
  readlink(path: string, options?: FsOptions): Promise<string>;
64
64
  symlink(target: string, path: string, options?: FsOptions): Promise<void>;
@@ -1,5 +1,5 @@
1
1
  import type { ByteSource } from "../../contracts/io.js";
2
- import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, FileStat, FileSystem, FileSystemCapabilities, FsOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
2
+ import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, FileStat, FileSystem, FileSystemCapabilities, FsOptions, RenameOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
3
3
  export declare class ReadOnlyFileSystem implements FileSystem {
4
4
  #private;
5
5
  constructor(filesystem: FileSystem);
@@ -22,7 +22,7 @@ export declare class ReadOnlyFileSystem implements FileSystem {
22
22
  rm(path: string, _options?: RemoveOptions): Promise<void>;
23
23
  unlink(path: string, _options?: FsOptions): Promise<void>;
24
24
  rmdir(path: string, _options?: FsOptions): Promise<void>;
25
- rename(source: string, destination: string, _options?: FsOptions): Promise<void>;
25
+ rename(source: string, destination: string, _options?: RenameOptions): Promise<void>;
26
26
  copyFile(source: string, destination: string, _options?: CopyFileOptions): Promise<void>;
27
27
  symlink(target: string, path: string, _options?: FsOptions): Promise<void>;
28
28
  link(existingPath: string, newPath: string, _options?: FsOptions): Promise<void>;
@@ -1,4 +1,4 @@
1
- import type { AppendFileOptions, ByteSource, CopyFileOptions, DirectoryEntry, FileReadHandle, FileStat, FileSystem, FileSystemCapabilities, FsOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/index.js";
1
+ import type { AppendFileOptions, ByteSource, CopyFileOptions, DirectoryEntry, FileReadHandle, FileStat, FileSystem, FileSystemCapabilities, FsOptions, RenameOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/index.js";
2
2
  export interface RealFileSystemOptions {
3
3
  /** An existing, absolute host directory. It is never created implicitly. */
4
4
  readonly root: string;
@@ -59,7 +59,7 @@ export declare class RealFileSystem implements FileSystem {
59
59
  mkdir(path: string, options?: MkdirOptions): Promise<void>;
60
60
  rmdir(path: string, options?: FsOptions): Promise<void>;
61
61
  rm(path: string, options?: RemoveOptions): Promise<void>;
62
- rename(source: string, destination: string, options?: FsOptions): Promise<void>;
62
+ rename(source: string, destination: string, options?: RenameOptions): Promise<void>;
63
63
  copyFile(source: string, destination: string, options?: CopyFileOptions): Promise<void>;
64
64
  realpath(path: string, options?: FsOptions): Promise<string>;
65
65
  access(path: string, mode?: number, options?: FsOptions): Promise<void>;
@@ -1,5 +1,5 @@
1
1
  import { FsError } from "../../contracts/errors.js";
2
- import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, EntryComparison, FileStat, FileSystem, FsOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
2
+ import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, EntryComparison, FileStat, FileSystem, FsOptions, RenameOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
3
3
  import type { ByteSource } from "../../contracts/io.js";
4
4
  import type { S3Transport } from "./transport.js";
5
5
  export interface S3FileSystemOptions {
@@ -41,6 +41,7 @@ export declare class S3FileSystem implements FileSystem {
41
41
  append: boolean;
42
42
  exclusiveCreate: boolean;
43
43
  truncate: boolean;
44
+ atomicRenameNoReplace: false;
44
45
  rename: boolean;
45
46
  streamingAppend: boolean;
46
47
  randomAccessWrite: false;
@@ -99,7 +100,7 @@ export declare class S3FileSystem implements FileSystem {
99
100
  rm(input: string, options?: RemoveOptions): Promise<void>;
100
101
  private copy;
101
102
  copyFile(sourceInput: string, destinationInput: string, options?: CopyFileOptions): Promise<void>;
102
- rename(sourceInput: string, destinationInput: string, options?: FsOptions): Promise<void>;
103
+ rename(sourceInput: string, destinationInput: string, options?: RenameOptions): Promise<void>;
103
104
  private copyWithPut;
104
105
  realpath(input: string, options?: FsOptions): Promise<string>;
105
106
  access(path: string, mode?: number, options?: FsOptions): Promise<void>;
@@ -1,6 +1,6 @@
1
1
  import type { PlatformComparisonCallback } from "#safe-fs-platform";
2
2
  import type { ByteSource } from "../../contracts/io.js";
3
- import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, EntryComparison, FileStat, FileSystem, FsOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
3
+ import type { AppendFileOptions, CopyFileOptions, DirectoryEntry, EntryComparison, FileStat, FileSystem, FsOptions, RenameOptions, MkdirOptions, ReadDirectoryOptions, ReadFileOptions, ReadStreamOptions, RemoveOptions, WriteFileOptions } from "../../contracts/filesystem.js";
4
4
  export type WebDavFetch = (url: string, init: RequestInit) => Promise<Response>;
5
5
  export interface WebDavAtomicEmptyDirectoryRequest {
6
6
  readonly operation: "atomic-empty-rmdir/v1";
@@ -49,6 +49,7 @@ export declare class WebDavFileSystem implements FileSystem {
49
49
  remove: true;
50
50
  recursiveRemove: true;
51
51
  rename: true;
52
+ atomicRenameNoReplace: false;
52
53
  copy: true;
53
54
  exclusiveCopy: true;
54
55
  readlink: false;
@@ -114,7 +115,7 @@ export declare class WebDavFileSystem implements FileSystem {
114
115
  private guardTransferIdentity;
115
116
  private transfer;
116
117
  private withDestinationLock;
117
- rename(source: string, destination: string, options?: FsOptions): Promise<void>;
118
+ rename(source: string, destination: string, options?: RenameOptions): Promise<void>;
118
119
  copyFile(source: string, destination: string, options?: CopyFileOptions): Promise<void>;
119
120
  realpath(path: string, options?: FsOptions): Promise<string>;
120
121
  access(path: string, mode?: number, options?: FsOptions): Promise<void>;
@@ -1,5 +1,6 @@
1
1
  export * from "./contracts/index.js";
2
2
  export * from "./fs/memory/index.js";
3
+ export * from "./fs/devices/index.js";
3
4
  export * from "./fs/real/index.js";
4
5
  export * from "./fs/s3/index.js";
5
6
  export type { S3StreamGetInput, S3StreamGetOutput, S3StreamPutInput } from "./fs/s3/transport.js";