xbintsc 0.5.20 → 0.5.22

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 (119) hide show
  1. package/AGENTS.md +5 -3
  2. package/dist/src/driver/compiler.js +1 -1
  3. package/dist/src/driver/compiler.js.map +1 -1
  4. package/dist/src/driver/runtime-objects.d.ts +1 -1
  5. package/dist/src/driver/runtime-objects.js +1 -0
  6. package/dist/src/driver/runtime-objects.js.map +1 -1
  7. package/dist/src/driver/version.d.ts +1 -1
  8. package/dist/src/driver/version.js +1 -1
  9. package/dist/src/extensions/node/fs/index.d.ts +4 -3
  10. package/dist/src/extensions/node/fs/index.js +12 -3
  11. package/dist/src/extensions/node/fs/index.js.map +1 -1
  12. package/dist/src/extensions/node/fs-promises/index.d.ts +5 -5
  13. package/dist/src/extensions/node/fs-promises/index.js +15 -6
  14. package/dist/src/extensions/node/fs-promises/index.js.map +1 -1
  15. package/dist/tests/e2e/async-await.test.js +1 -1
  16. package/dist/tests/e2e/async-fs.test.d.ts +9 -0
  17. package/dist/tests/e2e/async-fs.test.js +119 -0
  18. package/dist/tests/e2e/async-fs.test.js.map +1 -0
  19. package/dist/tests/e2e/fetch.test.js +24 -0
  20. package/dist/tests/e2e/fetch.test.js.map +1 -1
  21. package/dist/tests/e2e/gui-canvas.test.js +159 -0
  22. package/dist/tests/e2e/gui-canvas.test.js.map +1 -1
  23. package/dist/tests/e2e/gui-example-canvas.test.d.ts +11 -0
  24. package/dist/tests/e2e/gui-example-canvas.test.js +70 -0
  25. package/dist/tests/e2e/gui-example-canvas.test.js.map +1 -0
  26. package/dist/tests/e2e/gui-inline-svg.test.d.ts +11 -0
  27. package/dist/tests/e2e/gui-inline-svg.test.js +160 -0
  28. package/dist/tests/e2e/gui-inline-svg.test.js.map +1 -0
  29. package/doc/ai/contributing.md +2 -1
  30. package/doc/ai/extensions.md +8 -6
  31. package/doc/ai/language-support.md +2 -1
  32. package/doc/ai/zh-CN/contributing.md +1 -1
  33. package/doc/ai/zh-CN/extensions.md +6 -4
  34. package/doc/ai/zh-CN/language-support.md +2 -1
  35. package/doc/gui/api.md +8 -0
  36. package/doc/gui/canvas.md +47 -21
  37. package/doc/gui/known-issues.md +10 -9
  38. package/doc/gui/media.md +32 -3
  39. package/doc/gui.md +31 -3
  40. package/doc/implemented/async.md +16 -3
  41. package/doc/implemented/fetch.md +38 -6
  42. package/doc/implemented/node/fs-promises.md +19 -8
  43. package/doc/implemented/node.md +1 -1
  44. package/doc/implemented.md +1 -1
  45. package/doc/unimplemented/deviations.md +1 -1
  46. package/doc/unimplemented/node/async.md +6 -3
  47. package/doc/unimplemented/node/fs-promises.md +10 -6
  48. package/doc/unimplemented/node/fs.md +7 -8
  49. package/doc/unimplemented/node.md +2 -2
  50. package/doc/unimplemented/toolchain.md +1 -1
  51. package/doc/zh-CN/gui/api.md +7 -0
  52. package/doc/zh-CN/gui/canvas.md +36 -17
  53. package/doc/zh-CN/gui/known-issues.md +8 -7
  54. package/doc/zh-CN/gui/media.md +26 -2
  55. package/doc/zh-CN/gui.md +24 -3
  56. package/doc/zh-CN/implemented/async.md +13 -2
  57. package/doc/zh-CN/implemented/fetch.md +23 -4
  58. package/doc/zh-CN/implemented/node/fs-promises.md +6 -3
  59. package/doc/zh-CN/implemented/node.md +1 -1
  60. package/doc/zh-CN/implemented.md +1 -1
  61. package/doc/zh-CN/unimplemented/deviations.md +1 -1
  62. package/doc/zh-CN/unimplemented/node/async.md +6 -3
  63. package/doc/zh-CN/unimplemented/node/fs-promises.md +4 -4
  64. package/doc/zh-CN/unimplemented/node/fs.md +2 -2
  65. package/doc/zh-CN/unimplemented/node.md +2 -2
  66. package/doc/zh-CN/unimplemented/toolchain.md +1 -1
  67. package/package.json +1 -1
  68. package/runtime/ext_gui/canvas.cpp +114 -199
  69. package/runtime/ext_gui/canvas.h +101 -2
  70. package/runtime/ext_gui/canvas_gradient.cpp +112 -0
  71. package/runtime/ext_gui/canvas_internal.h +6 -6
  72. package/runtime/ext_gui/canvas_raster.cpp +27 -5
  73. package/runtime/ext_gui/canvas_stroke.cpp +252 -0
  74. package/runtime/ext_gui/canvas_style.cpp +240 -0
  75. package/runtime/ext_gui/dom_api.cpp +1 -0
  76. package/runtime/ext_gui/dom_api_canvas.cpp +38 -4
  77. package/runtime/ext_gui/dom_api_canvas_extra.cpp +232 -0
  78. package/runtime/ext_gui/dom_api_internal.h +31 -0
  79. package/runtime/ext_gui/dom_api_proto.cpp +24 -0
  80. package/runtime/ext_gui/inline_svg.cpp +219 -0
  81. package/runtime/ext_gui/inline_svg.h +41 -0
  82. package/runtime/ext_gui/layout.cpp +18 -0
  83. package/runtime/ext_gui/layout.h +7 -0
  84. package/runtime/ext_gui/layout_flow.cpp +4 -3
  85. package/runtime/ext_gui/paint.cpp +14 -0
  86. package/runtime/ext_gui/paint.h +5 -1
  87. package/runtime/ext_gui/renderer_image.cpp +53 -25
  88. package/runtime/ext_gui/style_ua.cpp +3 -0
  89. package/runtime/ext_gui/svg.cpp +122 -39
  90. package/runtime/ext_gui/svg.h +14 -3
  91. package/runtime/ext_gui/window.cpp +28 -0
  92. package/runtime/ext_node/fs/async_api.c +314 -0
  93. package/runtime/ext_node/fs/async_complete.c +99 -0
  94. package/runtime/ext_node/fs/async_fh.c +206 -0
  95. package/runtime/ext_node/fs/async_job.c +81 -0
  96. package/runtime/ext_node/fs/async_job.h +132 -0
  97. package/runtime/ext_node/fs/async_worker.c +534 -0
  98. package/runtime/ext_node/fs/async_worker_dir.c +439 -0
  99. package/runtime/ext_node/fs/async_worker_dir.h +33 -0
  100. package/runtime/ext_node/fs/async_worker_fd.c +74 -0
  101. package/runtime/ext_node/fs/dir.c +60 -15
  102. package/runtime/ext_node/fs/fs_common.h +9 -0
  103. package/runtime/ext_node/fs/fs_ops.c +18 -29
  104. package/runtime/ext_node/fs/parts/builtins.inc +34 -0
  105. package/runtime/ext_node/fs/parts/platform.inc +66 -0
  106. package/runtime/ext_node/fs/promises.c +44 -234
  107. package/runtime/rt_internal.h +2 -0
  108. package/runtime/xt_async_io.c +333 -0
  109. package/runtime/xt_async_io.h +47 -0
  110. package/runtime/xt_fetch/async.inc +295 -0
  111. package/runtime/xt_fetch/request.inc +6 -183
  112. package/runtime/xt_fetch/socket.inc +5 -4
  113. package/runtime/xt_fetch.c +6 -4
  114. package/runtime/xt_loop.c +44 -3
  115. package/src/driver/compiler.ts +1 -1
  116. package/src/driver/runtime-objects.ts +1 -0
  117. package/src/driver/version.ts +1 -1
  118. package/src/extensions/node/fs/index.ts +12 -3
  119. package/src/extensions/node/fs-promises/index.ts +15 -6
package/AGENTS.md CHANGED
@@ -60,9 +60,11 @@ in [doc/ai/language-support.md](./doc/ai/language-support.md).
60
60
  `split`, `padStart` and `for...of` follow UTF-16 code units (or code points for
61
61
  iteration). The lazy cons-node representation is still byte based.
62
62
  - **`async`/`await` suspends on pending promises.** An `async` body runs on a
63
- stackful coroutine, so a promise settled from a timer or socket callback can be
64
- awaited. Every `await` queues a microtask (settled values included), and
65
- `fs/promises` still blocks before settling.
63
+ stackful coroutine, so a promise settled from a timer, socket callback or
64
+ offloaded file operation can be awaited. Every `await` queues a microtask
65
+ (settled values included). `fs/promises` and `fetch` run their blocking work on
66
+ a small worker pool and settle on the event loop, so timers keep firing while
67
+ they wait.
66
68
  - **No CommonJS in your own source.** `require()` is rejected; use ESM
67
69
  `import`. Packages inside `node_modules` may be CommonJS and are bundled.
68
70
  No live bindings.
@@ -236,7 +236,7 @@ export function build(entryPath, options = {}) {
236
236
  outputPath,
237
237
  linkerFlags: [
238
238
  ...toolchain.linkerArgs,
239
- ...(process.platform === "win32" ? ["-lws2_32"] : ["-lm"]),
239
+ ...(process.platform === "win32" ? ["-lws2_32"] : ["-lm", "-pthread"]),
240
240
  ...registry.linkerFlags(),
241
241
  /* A GUI program is a Windows-subsystem executable: no console window is
242
242
  * created when it is launched. Console output (stdout/stderr) is lost in
@@ -1 +1 @@
1
- {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/driver/compiler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"compiler.js","sourceRoot":"","sources":["../../../src/driver/compiler.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@
8
8
  import type { ExtensionRegistry } from "../extensions/registry.js";
9
9
  import { type PgoMode, type Runner } from "./toolchain.js";
10
10
  /** Core runtime translation units (each compiled and cached independently). */
11
- export declare const RUNTIME_SOURCES: readonly ["xt_alloc.c", "xt_values.c", "xt_bigint.c", "xt_containers.c", "xt_weak.c", "xt_typed_array.c", "xt_stdlib.c", "xt_stdlib2.c", "xt_promise.c", "xt_async.c", "xt_loop.c", "xt_generator.c", "xt_coroutine.c", "xt_fetch.c", "xt_symbol.c", "xt_builtins.c", "xt_constructors.c", "xt_structured_clone.c", "xt_performance.c", "xt_text_codec.c", "xt_url.c", "xt_array_buffer.c", "xt_io.c"];
11
+ export declare const RUNTIME_SOURCES: readonly ["xt_alloc.c", "xt_values.c", "xt_bigint.c", "xt_containers.c", "xt_weak.c", "xt_typed_array.c", "xt_stdlib.c", "xt_stdlib2.c", "xt_promise.c", "xt_async.c", "xt_loop.c", "xt_async_io.c", "xt_generator.c", "xt_coroutine.c", "xt_fetch.c", "xt_symbol.c", "xt_builtins.c", "xt_constructors.c", "xt_structured_clone.c", "xt_performance.c", "xt_text_codec.c", "xt_url.c", "xt_array_buffer.c", "xt_io.c"];
12
12
  export interface RuntimeObjects {
13
13
  readonly runtimeObjects: readonly string[];
14
14
  readonly extensionObjects: readonly string[];
@@ -24,6 +24,7 @@ export const RUNTIME_SOURCES = [
24
24
  "xt_promise.c",
25
25
  "xt_async.c",
26
26
  "xt_loop.c",
27
+ "xt_async_io.c",
27
28
  "xt_generator.c",
28
29
  "xt_coroutine.c",
29
30
  "xt_fetch.c",
@@ -1 +1 @@
1
- {"version":3,"file":"runtime-objects.js","sourceRoot":"","sources":["../../../src/driver/runtime-objects.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"runtime-objects.js","sourceRoot":"","sources":["../../../src/driver/runtime-objects.ts"],"names":[],"mappings":"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"}
@@ -9,4 +9,4 @@
9
9
  * `main`/`master` only (see `.githooks/pre-commit`), so feature branches never
10
10
  * change this line and merging two of them cannot conflict here.
11
11
  */
12
- export declare const COMPILER_VERSION = "0.5.20";
12
+ export declare const COMPILER_VERSION = "0.5.22";
@@ -9,5 +9,5 @@
9
9
  * `main`/`master` only (see `.githooks/pre-commit`), so feature branches never
10
10
  * change this line and merging two of them cannot conflict here.
11
11
  */
12
- export const COMPILER_VERSION = "0.5.20";
12
+ export const COMPILER_VERSION = "0.5.22";
13
13
  //# sourceMappingURL=version.js.map
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Node's `fs` module: synchronous file and directory operations backed by
3
- * `runtime/ext_node/fs`. Asynchronous callbacks are not supported (xbintsc has
4
- * no event loop), so the API is the `*Sync` surface plus `watch`/`watchFile`
5
- * (which return API-shaped watchers that never emit).
3
+ * `runtime/ext_node/fs`, plus the `fs.promises` namespace (implemented in
4
+ * `async_*.c` on top of the asynchronous I/O pool). The callback-style
5
+ * `readFile`/`writeFile` forms are not supported; `*Sync` and `fs.promises` are.
6
+ * `watch`/`watchFile` return API-shaped watchers that never emit.
6
7
  *
7
8
  * `fs.constants` and `fs.promises` are exposed as value getters, so both
8
9
  * `import { constants } from "fs"` and the `fs.constants.F_OK` property form
@@ -1,8 +1,9 @@
1
1
  /**
2
2
  * Node's `fs` module: synchronous file and directory operations backed by
3
- * `runtime/ext_node/fs`. Asynchronous callbacks are not supported (xbintsc has
4
- * no event loop), so the API is the `*Sync` surface plus `watch`/`watchFile`
5
- * (which return API-shaped watchers that never emit).
3
+ * `runtime/ext_node/fs`, plus the `fs.promises` namespace (implemented in
4
+ * `async_*.c` on top of the asynchronous I/O pool). The callback-style
5
+ * `readFile`/`writeFile` forms are not supported; `*Sync` and `fs.promises` are.
6
+ * `watch`/`watchFile` return API-shaped watchers that never emit.
6
7
  *
7
8
  * `fs.constants` and `fs.promises` are exposed as value getters, so both
8
9
  * `import { constants } from "fs"` and the `fs.constants.F_OK` property form
@@ -34,6 +35,14 @@ export const fsModule = {
34
35
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/watch.c"),
35
36
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/constants.c"),
36
37
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/streams.c"),
38
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_job.c"),
39
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_worker.c"),
40
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_worker_dir.c"),
41
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_worker_fd.c"),
42
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_complete.c"),
43
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_api.c"),
44
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_fh.c"),
45
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/promises.c"),
37
46
  ],
38
47
  builtins: () => builtins,
39
48
  exports: () => exports,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/extensions/node/fs/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,QAAQ,GAAG,EAAE,GAAG,gBAAgB,EAAE,GAAG,iBAAiB,EAAE,GAAG,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAAC;AAEtG,MAAM,OAAO,GAAkB;IAC7B,GAAG,QAAQ;IACX,SAAS,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAC7C,QAAQ,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE;CAC5C,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAe;IAClC,IAAI,EAAE,IAAI;IACV,cAAc,EAAE,GAAG,EAAE,CAAC;QACpB,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,6CAA6C,CAAC;QAC3E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,8CAA8C,CAAC;QAC5E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,0CAA0C,CAAC;QACxE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,0CAA0C,CAAC;QACxE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,uCAAuC,CAAC;QACrE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,wCAAwC,CAAC;QACtE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,yCAAyC,CAAC;QACvE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,6CAA6C,CAAC;QAC3E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,2CAA2C,CAAC;KAC1E;IACD,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ;IACxB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;CACvB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/extensions/node/fs/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAE3C,OAAO,EAAE,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,cAAc,CAAC;AAEhD,MAAM,QAAQ,GAAG,EAAE,GAAG,gBAAgB,EAAE,GAAG,iBAAiB,EAAE,GAAG,aAAa,EAAE,GAAG,gBAAgB,EAAE,CAAC;AAEtG,MAAM,OAAO,GAAkB;IAC7B,GAAG,QAAQ;IACX,SAAS,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE;IAC7C,QAAQ,EAAE,EAAE,WAAW,EAAE,gBAAgB,EAAE;CAC5C,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAe;IAClC,IAAI,EAAE,IAAI;IACV,cAAc,EAAE,GAAG,EAAE,CAAC;QACpB,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,6CAA6C,CAAC;QAC3E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,8CAA8C,CAAC;QAC5E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,0CAA0C,CAAC;QACxE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,0CAA0C,CAAC;QACxE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,uCAAuC,CAAC;QACrE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,wCAAwC,CAAC;QACtE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,yCAAyC,CAAC;QACvE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,6CAA6C,CAAC;QAC3E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,2CAA2C,CAAC;QACzE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,6CAA6C,CAAC;QAC3E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,gDAAgD,CAAC;QAC9E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,oDAAoD,CAAC;QAClF,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,mDAAmD,CAAC;QACjF,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,kDAAkD,CAAC;QAChF,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,6CAA6C,CAAC;QAC3E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;KAC3E;IACD,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ;IACxB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;CACvB,CAAC"}
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * Node's `fs/promises` module.
3
3
  *
4
- * There is no asynchronous I/O scheduler, so each function wraps the matching
5
- * synchronous `fs` implementation in an already-settled promise (rejected on
6
- * failure). `readFile`, `writeFile`, `mkdir`, `readdir`, `stat`, `rm`,
7
- * `open` (a `FileHandle`), ... are therefore importable from `fs/promises`.
8
- * `constants` is re-exported as a value getter.
4
+ * Each function submits a job to the asynchronous I/O pool: the blocking
5
+ * syscall runs on a worker thread and the promise settles on the event loop, so
6
+ * awaiting `readFile`, `writeFile`, `stat`, `rm`, `open` (a `FileHandle`), ...
7
+ * yields to timers and sockets while the I/O is in flight. `constants` is
8
+ * re-exported as a value getter.
9
9
  */
10
10
  import type { NodeModule } from "../module.js";
11
11
  export declare const fsPromisesModule: NodeModule;
@@ -1,11 +1,11 @@
1
1
  /**
2
2
  * Node's `fs/promises` module.
3
3
  *
4
- * There is no asynchronous I/O scheduler, so each function wraps the matching
5
- * synchronous `fs` implementation in an already-settled promise (rejected on
6
- * failure). `readFile`, `writeFile`, `mkdir`, `readdir`, `stat`, `rm`,
7
- * `open` (a `FileHandle`), ... are therefore importable from `fs/promises`.
8
- * `constants` is re-exported as a value getter.
4
+ * Each function submits a job to the asynchronous I/O pool: the blocking
5
+ * syscall runs on a worker thread and the promise settles on the event loop, so
6
+ * awaiting `readFile`, `writeFile`, `stat`, `rm`, `open` (a `FileHandle`), ...
7
+ * yields to timers and sockets while the I/O is in flight. `constants` is
8
+ * re-exported as a value getter.
9
9
  */
10
10
  import { resolveFrom } from "../module.js";
11
11
  const builtins = {
@@ -48,7 +48,7 @@ const exports = {
48
48
  export const fsPromisesModule = {
49
49
  name: "fs/promises",
50
50
  runtimeSources: () => [
51
- // Reuse the synchronous fs implementations the promise wrappers delegate to.
51
+ // Synchronous builtins (used by `watch` and the sync module) plus the async job split.
52
52
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/read_file.c"),
53
53
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/write_file.c"),
54
54
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/fs_ops.c"),
@@ -57,6 +57,15 @@ export const fsPromisesModule = {
57
57
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/link_ops.c"),
58
58
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/copy_ops.c"),
59
59
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/constants.c"),
60
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/dir.c"),
61
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/watch.c"),
62
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_job.c"),
63
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_worker.c"),
64
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_worker_dir.c"),
65
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_worker_fd.c"),
66
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_complete.c"),
67
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_api.c"),
68
+ resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/async_fh.c"),
60
69
  resolveFrom(import.meta.url, "../../../../runtime/ext_node/fs/promises.c"),
61
70
  ],
62
71
  builtins: () => builtins,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/extensions/node/fs-promises/index.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAG3C,MAAM,QAAQ,GAA8C;IAC1D,QAAQ,EAAE,EAAE,MAAM,EAAE,qBAAqB,EAAE;IAC3C,SAAS,EAAE,EAAE,MAAM,EAAE,sBAAsB,EAAE;IAC7C,UAAU,EAAE,EAAE,MAAM,EAAE,uBAAuB,EAAE;IAC/C,KAAK,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE;IACpC,OAAO,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE;IACxC,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;IAC9B,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;IACtC,KAAK,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE;IACpC,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;IACtC,QAAQ,EAAE,EAAE,MAAM,EAAE,qBAAqB,EAAE;IAC3C,EAAE,EAAE,EAAE,MAAM,EAAE,cAAc,EAAE;IAC9B,QAAQ,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE;IAC1C,IAAI,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE;IAClC,KAAK,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE;IACpC,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;IACtC,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;IACtC,IAAI,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE;IAClC,KAAK,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE;IACpC,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;IACtC,KAAK,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE;IACpC,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;IACtC,QAAQ,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE;IAC1C,MAAM,EAAE,EAAE,MAAM,EAAE,kBAAkB,EAAE;IACtC,OAAO,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE;IACxC,IAAI,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE;IAClC,OAAO,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE;IACxC,QAAQ,EAAE,EAAE,MAAM,EAAE,oBAAoB,EAAE;IAC1C,OAAO,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE;IACxC,OAAO,EAAE,EAAE,MAAM,EAAE,mBAAmB,EAAE;IACxC,IAAI,EAAE,EAAE,MAAM,EAAE,gBAAgB,EAAE;IAClC,KAAK,EAAE,EAAE,MAAM,EAAE,iBAAiB,EAAE;CACrC,CAAC;AAEF,MAAM,OAAO,GAAkB;IAC7B,GAAG,QAAQ;IACX,SAAS,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE;CAC9C,CAAC;AAEF,MAAM,CAAC,MAAM,gBAAgB,GAAe;IAC1C,IAAI,EAAE,aAAa;IACnB,cAAc,EAAE,GAAG,EAAE,CAAC;QACpB,6EAA6E;QAC7E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,6CAA6C,CAAC;QAC3E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,8CAA8C,CAAC;QAC5E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,0CAA0C,CAAC;QACxE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,0CAA0C,CAAC;QACxE,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;QAC1E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,6CAA6C,CAAC;QAC3E,WAAW,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,EAAE,4CAA4C,CAAC;KAC3E;IACD,QAAQ,EAAE,GAAG,EAAE,CAAC,QAAQ;IACxB,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO;CACvB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/extensions/node/fs-promises/index.ts"],"names":[],"mappings":"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"}
@@ -181,11 +181,11 @@ async function main(): Promise<void> {
181
181
  const base = ${base};
182
182
  await fsp.mkdir(base, { recursive: true });
183
183
  const order: string[] = [];
184
- setTimeout(() => order.push("timer"), 1);
185
184
  await fsp.writeFile(base + "/a.txt", "hello");
186
185
  order.push("write");
187
186
  const text = await fsp.readFile(base + "/a.txt", "utf8");
188
187
  order.push("read:" + text);
188
+ setTimeout(() => order.push("timer"), 1);
189
189
  await new Promise<void>((resolve) => setTimeout(resolve, 5));
190
190
  order.push("waited");
191
191
  console.log(order.join(","));
@@ -0,0 +1,9 @@
1
+ /**
2
+ * End-to-end tests for the asynchronous `fs/promises` implementation.
3
+ *
4
+ * The promise must settle on the event loop, not inside the call, and a worker
5
+ * running a blocking syscall must not stop timers from firing. The FIFO case
6
+ * makes the blocking part deterministic: opening a FIFO for reading blocks until
7
+ * a writer arrives, which happens only after the timer has had time to fire.
8
+ */
9
+ export {};
@@ -0,0 +1,119 @@
1
+ /**
2
+ * End-to-end tests for the asynchronous `fs/promises` implementation.
3
+ *
4
+ * The promise must settle on the event loop, not inside the call, and a worker
5
+ * running a blocking syscall must not stop timers from firing. The FIFO case
6
+ * makes the blocking part deterministic: opening a FIFO for reading blocks until
7
+ * a writer arrives, which happens only after the timer has had time to fire.
8
+ */
9
+ import { execFileSync, spawn } from "node:child_process";
10
+ import { join } from "node:path";
11
+ import { expect, it } from "vitest";
12
+ import { describeE2E } from "./harness.js";
13
+ const itPosix = process.platform === "win32" ? it.skip : it;
14
+ describeE2E("async fs/promises", (harness) => {
15
+ it("settles promises on the event loop instead of inside the call", () => {
16
+ const target = JSON.stringify(join(harness.workdir, `settle_${Math.random().toString(36).slice(2)}.txt`));
17
+ const output = harness.runProgram(`
18
+ import { promises as fsp } from "node:fs";
19
+
20
+ async function main(): Promise<void> {
21
+ const target = ${target};
22
+ await fsp.writeFile(target, "hello");
23
+
24
+ let settled = false;
25
+ const pending = fsp.stat(target);
26
+ pending.then(() => { settled = true; });
27
+ console.log("immediate", settled);
28
+ await pending;
29
+ console.log("later", settled);
30
+ await fsp.unlink(target);
31
+ }
32
+ main();
33
+ `, { extensions: true });
34
+ expect(output).toBe("immediate false\nlater true");
35
+ });
36
+ itPosix("fires timers while a read is blocked on a FIFO", () => {
37
+ const suffix = Math.random().toString(36).slice(2);
38
+ const fifo = join(harness.workdir, `pipe_${suffix}`);
39
+ const marker = join(harness.workdir, `pipe_ready_${suffix}`);
40
+ execFileSync("mkfifo", [fifo]);
41
+ const quote = (path) => `'${path.replace(/'/g, "'\\''")}'`;
42
+ // `runProgram` compiles before it runs, so the writer must wait for the
43
+ // compiled program to signal that it is about to read. It then waits long
44
+ // enough for the 10ms timer to be due before unblocking the reader.
45
+ const writer = spawn("sh", ["-c", `while [ ! -f ${quote(marker)} ]; do sleep 0.01; done; sleep 0.5; printf hello > ${quote(fifo)}`], { stdio: "ignore" });
46
+ try {
47
+ const output = harness.runProgram(`
48
+ import { promises as fsp } from "node:fs";
49
+
50
+ async function main(): Promise<void> {
51
+ await fsp.writeFile(${JSON.stringify(marker)}, "ready");
52
+ const order: string[] = [];
53
+ const pending = fsp.readFile(${JSON.stringify(fifo)}, "utf8").then((text) => order.push("read:" + text));
54
+ setTimeout(() => order.push("timer"), 10);
55
+ await pending;
56
+ await new Promise<void>((resolve) => setTimeout(resolve, 10));
57
+ console.log(order.join(","));
58
+ }
59
+ main();
60
+ `, { extensions: true, timeout: 60000 });
61
+ expect(output).toBe("timer,read:hello");
62
+ }
63
+ finally {
64
+ writer.kill();
65
+ }
66
+ });
67
+ it("runs independent file operations concurrently", () => {
68
+ const base = JSON.stringify(join(harness.workdir, `concurrent_${Math.random().toString(36).slice(2)}`));
69
+ const output = harness.runProgram(`
70
+ import { promises as fsp } from "node:fs";
71
+
72
+ async function main(): Promise<void> {
73
+ const base = ${base};
74
+ await fsp.mkdir(base, { recursive: true });
75
+ await Promise.all([
76
+ fsp.writeFile(base + "/a.txt", "alpha"),
77
+ fsp.writeFile(base + "/b.txt", "beta"),
78
+ fsp.writeFile(base + "/c.txt", "gamma"),
79
+ ]);
80
+ const [a, b, c, listing] = await Promise.all([
81
+ fsp.readFile(base + "/a.txt", "utf8"),
82
+ fsp.readFile(base + "/b.txt", "utf8"),
83
+ fsp.readFile(base + "/c.txt", "utf8"),
84
+ fsp.readdir(base),
85
+ ]);
86
+ console.log(a, b, c, listing.length);
87
+ const entries = await fsp.readdir(base, { withFileTypes: true });
88
+ console.log(entries.length, entries[0].isFile());
89
+ await fsp.cp(base + "/a.txt", base + "/a-copy.txt");
90
+ console.log(await fsp.readFile(base + "/a-copy.txt", "utf8"));
91
+ await fsp.rm(base, { recursive: true, force: true });
92
+ }
93
+ main();
94
+ `, { extensions: true });
95
+ expect(output).toBe("alpha beta gamma 3\n3 true\nalpha");
96
+ });
97
+ it("does not leave a pending job unrooted across a collection", () => {
98
+ const target = JSON.stringify(join(harness.workdir, `fire_forget_${Math.random().toString(36).slice(2)}.txt`));
99
+ // The promise returned by the fire-and-forget call is reachable only through
100
+ // the job's root slot; a stress collection between submission and completion
101
+ // would otherwise sweep it before the worker settles it.
102
+ const output = harness.runProgram(`
103
+ import { promises as fsp } from "node:fs";
104
+
105
+ async function main(): Promise<void> {
106
+ const target = ${target};
107
+ await fsp.writeFile(target, "kept");
108
+ fsp.readFile(target, "utf8");
109
+ console.log("scheduled");
110
+ await new Promise<void>((resolve) => setTimeout(resolve, 50));
111
+ console.log("survived");
112
+ await fsp.unlink(target);
113
+ }
114
+ main();
115
+ `, { extensions: true, env: { XT_GC_THRESHOLD: "1" } });
116
+ expect(output).toBe("scheduled\nsurvived");
117
+ });
118
+ });
119
+ //# sourceMappingURL=async-fs.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"async-fs.test.js","sourceRoot":"","sources":["../../../tests/e2e/async-fs.test.ts"],"names":[],"mappings":"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"}
@@ -49,6 +49,11 @@ const server = createServer((req, res) => {
49
49
  } else if (url === "/cookies") {
50
50
  res.writeHead(200, { "set-cookie": ["a=1", "b=2"], "content-type": "text/plain" });
51
51
  res.end("cookies");
52
+ } else if (url === "/slow") {
53
+ setTimeout(() => {
54
+ res.writeHead(200, { "content-type": "text/plain" });
55
+ res.end("slow");
56
+ }, 150);
52
57
  } else if (url === "/bytes") {
53
58
  res.writeHead(200, { "content-type": "application/octet-stream" });
54
59
  res.end(Buffer.from([0, 1, 2, 255]));
@@ -254,6 +259,25 @@ describeWithClang("fetch builtin", () => {
254
259
  "missing true",
255
260
  ]);
256
261
  });
262
+ it("keeps the reactor running while a request is in flight", () => {
263
+ const base = baseUrl();
264
+ const { status, stdout } = run(`
265
+ async function main() {
266
+ const order: string[] = [];
267
+ const slow = fetch("${base}/slow");
268
+ slow.then(async (res) => order.push("response:" + (await res.text())));
269
+ setTimeout(() => order.push("timer"), 10);
270
+ await slow;
271
+ await new Promise<void>((resolve) => setTimeout(resolve, 20));
272
+ console.log(order.join(","));
273
+ }
274
+ main();
275
+ `);
276
+ expect(status).toBe(0);
277
+ // A blocking client would finish the 150ms response before the 10ms timer
278
+ // is even scheduled; a reactor-driven one fires the timer first.
279
+ expect(stdout.trim()).toBe("timer,response:slow");
280
+ });
257
281
  it("is usable as a first-class value", () => {
258
282
  const base = baseUrl();
259
283
  const { status, stdout } = run(`
@@ -1 +1 @@
1
- {"version":3,"file":"fetch.test.js","sourceRoot":"","sources":["../../../tests/e2e/fetch.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fetch.test.js","sourceRoot":"","sources":["../../../tests/e2e/fetch.test.ts"],"names":[],"mappings":"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"}