Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 2 additions & 1 deletion .github/workflows/upload.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -42,6 +42,7 @@ jobs:
caps --strict --ci
yarn install --immutable
caps verify --toolchain
git diff --quiet -- deps.cirru package.json yarn.lock .yarnrc.yml

- name: Check canonical Calcit snapshot
run: |
Expand All @@ -51,7 +52,7 @@ jobs:
test ! -e compact.cirru
test ! -e package.cirru
calcit calcit.cirru edit format
git diff --exit-code -- calcit.cirru
git diff --quiet -- calcit.cirru
calcit calcit.cirru --check-only --all-defs
calcit calcit.cirru --check-only --ns app.comp.container --ns app.config --ns app.main --ns app.schema --ns app.updater --summary-only --format json
calcit calcit.cirru fix --workflow strict --verify --format json | jq -e '.data.workflow.status == "passed" and .diagnostics == []'
Expand Down
13 changes: 11 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,8 +20,9 @@ https://github.com/calcit-lang/respo-calcit-workflow

### Development and deployment

开发与 CI 使用配对正式 Calcit/procs 0.30.1,以及精确正式 Reel 0.6.41、Respo 0.16.124、
js-ffi 0.2.5;升级后需重新安装模块。站点链接、存储键与部署路径不变。
开发与 CI 使用配对正式 Calcit/procs 0.30.1,以及精确正式 Reel 0.6.42、Respo 0.16.126、
js-ffi 0.2.6;升级后需重新安装模块并构建、刷新,避免混用旧生成代码。
站点链接、存储键、存档格式与部署路径不变,npm 依赖和 lock 不变。
自动保存从误用的 60 毫秒修正为 60 秒;存档恢复成功后才安装定时器与卸载保存监听。
损坏存档仍明确报告错误,但不会被后续自动保存覆盖;页面静态链接仍可用。
Use Node.js 24 and Yarn 4.18.0. The canonical source files are
Expand Down Expand Up @@ -49,6 +50,14 @@ legacy Map/new Store data when hydrating the original `map.clj.im` storage key.
保留一处实际 `&struct:to-map` 转换,不以类型断言或 Dynamic 擦除伪造身份。
移除无引用的模板 `repeat!` / `snippets`,不引入新的定时器框架。

三处源码及一处原测试的 Option helper 改为接收者 `.unwrap`,仍在缺失时失败;
没有改为吞错、nil 或默认值。原两项测试的业务断言不变。
三份静态样式的行高改为无单位 String(4、3、2.4),对应 schema 从
`Map<Tag,Dynamic>` 收紧为 `Map<Tag,String>`。实际 Respo DOM 实现原本就将这些
数值行高输出为同样的无单位字符串,因此不改变行高,也不新增运行期转换或强断言。
`hud!`、恢复成功后才启用保存的顺序、60 秒间隔和卸载保存均保持。
这些真实源头类型可以直接收紧,不需要增加编译器 fix/proof 规则或迁移脚本。

本轮本地未运行 Caps;开发者仍须执行上述安装步骤以生成模块链接,CI 独立 strict 解析。
两项定义附着业务测试覆盖旧 Map/Struct 存档往返、局部状态更新及 content 保留,
不新增检查脚本。此前 alpha 迁移曾用隔离合成存档验收恢复、保存重载、热更新回放及损坏存档卸载不覆盖;
Expand Down
20 changes: 10 additions & 10 deletions calcit.cirru
Original file line number Diff line number Diff line change
Expand Up @@ -88,9 +88,9 @@
:schema $ :: 'Map 'Tag 'String
'style-category $ %{} 'CodeEntry (:doc |)
:code $ quote $ def style-category
{} (:font-size |32px) (:font-weight |bold) (:line-height 4)
{} (:font-size |32px) (:font-weight |bold) (:line-height |4)
:examples $ []
:schema $ :: 'Map 'Tag 'Dynamic
:schema $ :: 'Map 'Tag 'String
'style-container $ %{} 'CodeEntry (:doc |)
:code $ quote $ def style-container
{} $ :font-family "|Helvetica Neue, PingFang SC, Microsoft Yahei, 微软雅黑, STXihei, 华文细黑, sans-serif"
Expand All @@ -109,15 +109,15 @@
:schema $ :: 'Map 'Tag 'String
'style-hint $ %{} 'CodeEntry (:doc |)
:code $ quote $ def style-hint
{} (:text-align |center) (:font-size |12px) (:line-height 3)
{} (:text-align |center) (:font-size |12px) (:line-height |3)
:background-color $ hsl 120 40 92
:examples $ []
:schema $ :: 'Map 'Tag 'Dynamic
:schema $ :: 'Map 'Tag 'String
'style-link $ %{} 'CodeEntry (:doc |)
:code $ quote $ def style-link
{} (:line-height 2.4) (:font-size |18px) (:text-decoration |none) (:display |block)
{} (:line-height |2.4) (:font-size |18px) (:text-decoration |none) (:display |block)
:examples $ []
:schema $ :: 'Map 'Tag 'Dynamic
:schema $ :: 'Map 'Tag 'String
'style-resources $ %{} 'CodeEntry (:doc |)
:code $ quote $ def style-resources
{} $ :padding-left |40px
Expand Down Expand Up @@ -209,7 +209,7 @@
:features $ #{} :js-ffi
'mount-target $ %{} 'CodeEntry (:doc |)
:code $ quote $ def mount-target
option:unwrap $ dom/query-selector |.app
.unwrap $ dom/query-selector |.app
:examples $ []
:schema $ :: 'respo.dom/DomElement
'persist-storage! $ %{} 'CodeEntry (:doc |)
Expand Down Expand Up @@ -284,8 +284,8 @@
fields $ if (map? raw) raw $ if (struct? raw) (&struct:to-map raw) (raise |Saved-store-must-be-a-Map-or-Struct)
decode-map-as
{}
:states $ option:unwrap $ get fields :states
:content $ option:unwrap $ get fields :content
:states $ .unwrap $ get fields :states
:content $ .unwrap $ get fields :content
, Store
:examples $ []
:schema $ :: 'Fn $ {} (:return 'app.schema/Store)
Expand Down Expand Up @@ -335,7 +335,7 @@
:: :states ([] :editor) |draft
, |test 0
assert= |keep $ :content next
assert= |draft $ option:unwrap $ get-in (:states next) ([] :editor :data)
assert= |draft $ .unwrap $ get-in (:states next) ([] :editor :data)
assert= ({}) (:states base)
:ns $ %{} 'NsEntry (:doc |)
:code $ quote $ ns app.updater
Expand Down
6 changes: 3 additions & 3 deletions deps.cirru
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{} (:calcit-version |0.30.1)
:version |0.0.1
:dependencies $ {}
|Respo/reel.calcit |0.6.41
|Respo/respo.calcit |0.16.124
|calcit-lang/js-ffi |0.2.5
|Respo/reel.calcit |0.6.42
|Respo/respo.calcit |0.16.126
|calcit-lang/js-ffi |0.2.6