From a9a72b9a1418f7aed0f914be081d8395e4cf3b1a Mon Sep 17 00:00:00 2001 From: tiye Date: Thu, 12 Nov 2026 17:42:23 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8D=87=E7=BA=A7=20Text=20Diff=20=E5=88=B0=20?= =?UTF-8?q?Calcit=200.42.1?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 4 ++-- calcit.cirru | 15 ++++++++------- deps.cirru | 2 +- package.json | 2 +- yarn.lock | 10 +++++----- 5 files changed, 17 insertions(+), 16 deletions(-) diff --git a/README.md b/README.md index 25c3d7f..2daa61c 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ Text diff ### 使用者影响 -升级到 Calcit 和 `@calcit/procs` **0.41.1** 后,请重新安装依赖、编译并刷新。文本输入、Run 输出、原 Map 存档和页面 HUD 继续适用。 应用操作和 Reel 控制通过 `ResolvedOp` union 区分。Reel 面板直接接收独立控制回调,原存档结构保持兼容。 +升级到 Calcit 和 `@calcit/procs` **0.42.1** 后,请重新安装依赖、编译并刷新。文本输入、Run 输出、原 Map 存档和页面 HUD 继续适用。 应用操作和 Reel 控制通过 `ResolvedOp` union 区分。Reel 面板直接接收独立控制回调,原存档结构保持兼容。 Reel 使用 `State`。业务更新器接收具名操作。状态路径和顶层状态键统一使用 `CursorKey = Tag | String | Number`,已有 Map 或 Struct 存档仍在恢复时校验。恢复成功后才注册离页保存。 @@ -16,7 +16,7 @@ Reel 使用 `State`。业务更新器接收具名操作。状态路 Use `calcit.cirru` and `deps.cirru`; do not restore the retired `compact.cirru` or `package.cirru`. Generated `js-out/` is not committed. -Use Node 24 and Yarn 4.18.0. Install Calcit 0.41.1 and Caps 0.1.1 separately +Use Node 24 and Yarn 4.18.0. Install Calcit 0.42.1 and Caps 0.1.1 separately (the latter follows [the official Caps installation](https://github.com/calcit-lang/caps)); Corepack/Yarn does not install Caps. Strict dependency installation and the original type/test gates are retained. Browser and production acceptance remain separate from successful compilation. diff --git a/calcit.cirru b/calcit.cirru index 6a947c2..933d00a 100644 --- a/calcit.cirru +++ b/calcit.cirru @@ -48,6 +48,7 @@ :schema $ quote $ Fn (reel.typed/State text-diff.schema/Op text-diff.schema/Store) Fn reel.typed/Control $ -> Unit -> respo.schema/Component + :features :io :ns $ %{} 'NsEntry (:doc |) :code $ quote $ ns text-diff.comp.container :require (respo-ui.core :as ui) @@ -105,7 +106,7 @@ typed/record-op updater @*reel action (generate-id!) (shared/now-ms) , &unit :examples $ [] - :schema $ quote $ Fn schema/ResolvedOp (-> Unit) (:features :js-ffi) + :schema $ quote $ Fn schema/ResolvedOp (-> Unit) (:features :io :js-ffi :state) 'main! $ %{} 'CodeEntry (:doc |) :code $ quote $ defn main! () println "|Running mode:" $ if config/dev? |dev |release @@ -123,7 +124,7 @@ browser/add-event-listener! |beforeunload $ fn (event) (persist-storage!) println "|App started." :examples $ [] - :schema $ quote $ Fn (-> Unit) (:features :js-ffi) + :schema $ quote $ Fn (-> Unit) (:features :io :js-ffi :state) 'mount-target $ %{} 'CodeEntry (:doc |) :code $ quote $ defn mount-target () .unwrap $ respo-browser/query-selector |.app @@ -132,7 +133,7 @@ 'on-control! $ %{} 'CodeEntry (:doc |) :code $ quote $ defn on-control! (control) (dispatch! control) :examples $ [] - :schema $ quote $ Fn typed/Control (-> Unit) + :schema $ quote $ Fn typed/Control (-> Unit) (:features :io :state) 'persist-storage! $ %{} 'CodeEntry (:doc |) :code $ quote $ defn persist-storage! () browser/storage-set! @@ -140,7 +141,7 @@ format-cirru-edn $ &struct:to-map $ :store @*reel , &unit :examples $ [] - :schema $ quote $ Fn (-> Unit) (:features :js-ffi) + :schema $ quote $ Fn (-> Unit) (:features :js-ffi :state) 'reload! $ %{} 'CodeEntry (:doc |) :code $ quote $ defn reload! () if (nil? build-errors) @@ -154,7 +155,7 @@ hud! |error build-errors , &unit :examples $ [] - :schema $ quote $ Fn (-> Unit) (:features :js-ffi) + :schema $ quote $ Fn (-> Unit) (:features :io :js-ffi :state) 'render-app! $ %{} 'CodeEntry (:doc |) :code $ quote $ defn render-app! () render-with! (mount-target) @@ -163,11 +164,11 @@ hint-fn $ Fn schema/Op $ -> Unit dispatch! op :examples $ [] - :schema $ quote $ Fn (-> Unit) (:features :js-ffi) + :schema $ quote $ Fn (-> Unit) (:features :io :js-ffi :state) 'snippets $ %{} 'CodeEntry (:doc |) :code $ quote $ defn snippets () (println config/cdn?) :examples $ [] - :schema $ quote $ Fn (-> Unit) + :schema $ quote $ Fn (-> Unit) (:features :io) :ns $ %{} 'NsEntry (:doc |) :code $ quote $ ns text-diff.main :require diff --git a/deps.cirru b/deps.cirru index 9c865d3..71f8f54 100644 --- a/deps.cirru +++ b/deps.cirru @@ -1,5 +1,5 @@ -{} (:calcit-version |0.41.1) +{} (:calcit-version |0.42.1) :version |0.1.4 :dependencies $ {} (|Respo/reel.calcit |0.11.0) |Respo/respo-markdown.calcit |0.8.2 diff --git a/package.json b/package.json index 4cb055d..f5f839e 100644 --- a/package.json +++ b/package.json @@ -20,7 +20,7 @@ "vite": "^8.3.1" }, "dependencies": { - "@calcit/procs": "0.41.1", + "@calcit/procs": "0.42.1", "cirru-color": "^0.2.4", "copy-text-to-clipboard": "^3.2.2", "dayjs": "^1.11.20", diff --git a/yarn.lock b/yarn.lock index 682be99..005b92b 100644 --- a/yarn.lock +++ b/yarn.lock @@ -12,15 +12,15 @@ __metadata: languageName: node linkType: hard -"@calcit/procs@npm:0.41.1": - version: 0.41.1 - resolution: "@calcit/procs@npm:0.41.1" +"@calcit/procs@npm:0.42.1": + version: 0.42.1 + resolution: "@calcit/procs@npm:0.42.1" dependencies: "@calcit/finger-vec": "npm:0.1.1" "@calcit/ternary-tree": "npm:0.0.26" "@cirru/parser.ts": "npm:0.0.10" "@cirru/writer.ts": "npm:^0.1.9" - checksum: 10c0/f14d3d61fdfc3fef4b7b215cc4c2be3923950b42ea19333d94e3fc689631545b2e6f56a8da31246971c7beaf1283d6f55a3af469a20bd9cb80be9352996d413f + checksum: 10c0/58e306e7bc72b258e07c33dae4d543241cd0c7ed6830262628bf61c734453d7907ef453af0b25a770ba911e9ce6ede19f869d9a78decea4589cf4ae1f7c40629 languageName: node linkType: hard @@ -278,7 +278,7 @@ __metadata: version: 0.0.0-use.local resolution: "calcit-workflow@workspace:." dependencies: - "@calcit/procs": "npm:0.41.1" + "@calcit/procs": "npm:0.42.1" bottom-tip: "npm:^0.1.5" cirru-color: "npm:^0.2.4" copy-text-to-clipboard: "npm:^3.2.2"