@calcit/procs 0.13.57 → 0.13.58
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.yarn/install-state.gz +0 -0
- package/RFCs/04-15-wasm-compilation-feasibility.md +1 -0
- package/editing-history/202608280826-wasm-stable-list-sort.md +17 -0
- package/editing-history/202608281155-document-shared-native-ffi.md +13 -0
- package/editing-history/202608281215-review-ffi-responsibility-wording.md +11 -0
- package/editing-history/202608281225-document-second-native-ffi-rollout.md +11 -0
- package/editing-history/202608281430-consume-shared-raw-abi.md +13 -0
- package/editing-history/202608281450-release-0.13.58.md +13 -0
- package/lib/package.json +1 -1
- package/package.json +1 -1
package/.yarn/install-state.gz
CHANGED
|
Binary file
|
|
@@ -253,6 +253,7 @@ WASM GC proposal(2024 年起 V8/SpiderMonkey 已发布)提供:
|
|
|
253
253
|
2. 继续补充 `calcit.core` 常见高阶路径。
|
|
254
254
|
- `foldl`、`foldl-shortcut`、`foldr-shortcut`、`sort`、`&call-spread` 仍是大量跳过项的源头。
|
|
255
255
|
- 这部分不是为了追求“理论完备”,而是为了减少真实项目中被迫绕开 core helper 的情况。
|
|
256
|
+
- 2026-08:带显式 comparator 的 `sort` / `&list:sort` 已实现稳定 WASM 排序;一参数 heterogeneous total-order 仍明确拒绝,等待类型化比较协议。
|
|
256
257
|
|
|
257
258
|
3. 持续扩大 `test-wasm.cirru` 的下游回归覆盖。
|
|
258
259
|
- 每补一个能力,都应优先加一个最小但能锁定语义边界的 WASM 用例。
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
# WASM stable list sort / WASM 稳定列表排序
|
|
2
|
+
|
|
3
|
+
## 中文
|
|
4
|
+
|
|
5
|
+
- 用稳定 insertion sort 替换 `sort` 与 `&list:sort` 的静默 identity stub。
|
|
6
|
+
- 排序前复制线性内存 list,保持输入不可变;comparator 复用 static、inline、native proc 与动态函数表调用路径。
|
|
7
|
+
- comparator 结果仅在大于零时移动左值,因此 equal/NaN 保持原顺序。
|
|
8
|
+
- 一参数 heterogeneous total-order 明确报 unsupported,不再生成语义错误的 WASM。
|
|
9
|
+
- 增加升序、降序、重复 key 稳定性、输入不可变、动态 comparator 与 unsupported 路径测试。
|
|
10
|
+
|
|
11
|
+
## English
|
|
12
|
+
|
|
13
|
+
- Replace the silent identity stubs for `sort` and `&list:sort` with stable insertion sort.
|
|
14
|
+
- Copy the linear-memory list before sorting to preserve input immutability, reusing static, inline, native-proc, and dynamic function-table comparator paths.
|
|
15
|
+
- Move the left value only when the comparator is greater than zero, preserving order for equal and NaN results.
|
|
16
|
+
- Reject the one-argument heterogeneous total-order form explicitly instead of generating semantically incorrect WASM.
|
|
17
|
+
- Add ascending, descending, duplicate stability, input immutability, dynamic comparator, and unsupported-path tests.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# 记录共享 native FFI crate rollout / Document the shared native FFI crate rollout
|
|
2
|
+
|
|
3
|
+
## 中文
|
|
4
|
+
|
|
5
|
+
- 在 FFI bindings 与升级手册中推荐使用已发布的 `calcit_native_ffi`,明确 protocol 文档与模块侧实现的职责边界。
|
|
6
|
+
- 记录首批迁移并发布的五个模块版本。
|
|
7
|
+
- 修正升级手册中的 GitHub 仓库名称,并要求稳定 crate version 而非 git hash。
|
|
8
|
+
|
|
9
|
+
## English
|
|
10
|
+
|
|
11
|
+
- Recommend the published `calcit_native_ffi` in the FFI bindings and upgrade guide, clarifying the boundary between normative protocol docs and the maintained module-side implementation.
|
|
12
|
+
- Record the first five migrated and released module versions.
|
|
13
|
+
- Fix repository names in the upgrade guide and require stable crate versions instead of git hashes.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# 修正文档责任边界措辞 / Clarify responsibility-boundary wording
|
|
2
|
+
|
|
3
|
+
## 中文
|
|
4
|
+
|
|
5
|
+
- 根据 PR review 将模块职责改为非穷举表述。
|
|
6
|
+
- 明确业务参数与逻辑、thread、connection/task registry、cancel state、server lifecycle 和其他领域状态仍由模块维护。
|
|
7
|
+
|
|
8
|
+
## English
|
|
9
|
+
|
|
10
|
+
- Make the module-responsibility wording non-exhaustive in response to PR review.
|
|
11
|
+
- Clarify that modules continue to own domain arguments and behavior, threads, connection/task registries, cancellation state, server lifecycles, and other domain-specific state.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# 记录第二批 native FFI rollout / Document the second native FFI rollout
|
|
2
|
+
|
|
3
|
+
## 中文
|
|
4
|
+
|
|
5
|
+
- 记录 JSON、Clipboard、Command 与 Regex 的共享 crate 发布版本。
|
|
6
|
+
- 明确 Regex 的 opaque-resource registry 仍属于模块,仅 buffer-v1 transport adapter 进入共享层。
|
|
7
|
+
|
|
8
|
+
## English
|
|
9
|
+
|
|
10
|
+
- Record the shared-crate releases for JSON, Clipboard, Command, and Regex.
|
|
11
|
+
- Clarify that Regex retains its module-owned opaque-resource registry and shares only the buffer-v1 transport adapter.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# 消费共享 raw ABI / Consume the shared raw ABI
|
|
2
|
+
|
|
3
|
+
## 中文
|
|
4
|
+
|
|
5
|
+
- Calcit runtime 直接依赖 `calcit_native_ffi 0.1.2` 的 no-default-features raw contract。
|
|
6
|
+
- 删除 host 内重复的 buffer/async/blocking/resource version、symbol、function pointer、C-layout descriptor 与数值常量定义。
|
|
7
|
+
- 保留类型安全 handle/event enum、event queue、task/resource registry、lease、dylib cache 与 callback lifecycle 在 Calcit host。
|
|
8
|
+
|
|
9
|
+
## English
|
|
10
|
+
|
|
11
|
+
- Made the Calcit runtime consume the no-default-features raw contract from `calcit_native_ffi 0.1.2` directly.
|
|
12
|
+
- Removed host-local copies of buffer/async/blocking/resource versions, symbols, function pointers, C-layout descriptors, and numeric constants.
|
|
13
|
+
- Kept typed handle/event enums, the event queue, task/resource registries, leases, the dylib cache, and callback lifecycle in the Calcit host.
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
# 发布 0.13.58 / Release 0.13.58
|
|
2
|
+
|
|
3
|
+
## 中文
|
|
4
|
+
|
|
5
|
+
- 发布 WASM 后端显式 comparator 的稳定 list sort。
|
|
6
|
+
- 记录 native FFI 共享 crate 的完整 rollout,并让 runtime 直接消费 `calcit_native_ffi 0.1.2` raw ABI。
|
|
7
|
+
- 保持 C ABI v1 与现有 native 模块兼容,删除 host 内 184 行重复 raw contract 实现。
|
|
8
|
+
|
|
9
|
+
## English
|
|
10
|
+
|
|
11
|
+
- Release stable list sorting with an explicit comparator in the WASM backend.
|
|
12
|
+
- Document the complete shared native-FFI rollout and make the runtime consume the raw ABI from `calcit_native_ffi 0.1.2` directly.
|
|
13
|
+
- Preserve C ABI-v1 compatibility with existing native modules while removing 184 lines of duplicated host raw-contract code.
|
package/lib/package.json
CHANGED