@calcit/procs 0.12.50 → 0.12.51

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.
Binary file
@@ -5,17 +5,20 @@
5
5
  All display-level Cirru tree paths now use `@` prefix notation when rendered to user.
6
6
 
7
7
  ### Display format change
8
+
8
9
  - `1.2.3.4` → `@1.2.3.4` (bare path)
9
10
  - `[1.2.3.4]` → `[@1.2.3.4]` (bracketed path)
10
11
  - `NodeLocation::Display` now outputs `ns/def [@1.2.3]` instead of `ns/def [1.2.3]`
11
12
 
12
13
  ### Backward compatibility
14
+
13
15
  - `parse_path()` strips leading `@` if present, so CLI input still accepts both `@1.2.3` and `1.2.3`
14
16
  - Error messages and help text updated to show `@` format
15
17
 
16
18
  ### Files modified
17
19
 
18
20
  **Core functions:**
21
+
19
22
  - `src/bin/cli_handlers/common.rs`: `format_path()` returns `@1.2.3`; `parse_path()` strips `@` prefix; test assertions updated
20
23
  - `src/calcit.rs`: `NodeLocation::Display` outputs `[@1.2.3]`; test assertion updated
21
24
  - `src/bin/cli_handlers/cirru_validator.rs`: local `format_path()` updated
@@ -24,17 +27,20 @@ All display-level Cirru tree paths now use `@` prefix notation when rendered to
24
27
  - `src/runner/preprocess/mod.rs`: `[&inspect-type]` debug output uses `@`
25
28
 
26
29
  **Tree/edit handlers:**
30
+
27
31
  - `src/bin/cli_handlers/tree.rs`: inline path formatting in swap handler
28
32
  - `src/bin/cli_handlers/edit.rs`: error message example
29
33
  - `src/cli_args.rs`: help text examples (3 locations)
30
34
 
31
35
  **Documentation:**
36
+
32
37
  - `docs/CalcitAgent.md`: 19 path examples updated
33
38
  - `docs/run/agent-advanced.md`: 23 path examples updated
34
39
  - `docs/run/edit-tree.md`: 6 path examples updated
35
40
  - `docs/Respo-Agent.md` (respo project): 26 path examples updated
36
41
 
37
42
  ### Why
43
+
38
44
  - `@` prefix helps LLMs distinguish path coordinates from other dotted numeric patterns (like version numbers or floats)
39
45
  - `@` is safe in shell (no escaping needed)
40
46
  - All display output now consistent with `@` prefix
@@ -0,0 +1,9 @@
1
+ ## Summary
2
+
3
+ Refresh CLI-facing docs to match the current command surface.
4
+
5
+ ## Notes
6
+
7
+ - Align `cr edit` / `cr tree` examples with current subcommand names and long-option forms.
8
+ - Document stdin fallback for edit/tree code inputs while keeping the Cirru EDN `quote` requirement explicit.
9
+ - Update agent-oriented guides so examples no longer mix legacy structured command syntax with current shell CLI usage.
@@ -0,0 +1,9 @@
1
+ ## Summary
2
+
3
+ Upgrade compatible Rust dependencies, including `cirru_edn`, without changing the existing `strum` line.
4
+
5
+ ## Notes
6
+
7
+ - Bump `cirru_edn` to `0.7.8` in normal and build dependencies.
8
+ - Upgrade other compatible crates such as `argh`, `colored`, `ctrlc`, `regex`, `rpds`, `semver`, `serde`, `serde_json`, and `ureq`.
9
+ - Refresh `Cargo.lock` after version changes so the workspace resolves to the new compatible releases.
@@ -0,0 +1,15 @@
1
+ # 2026-07-21 01:10 Cirru 格式化与文档命令更新
2
+
3
+ ## 修改概要
4
+
5
+ - 使用 `cr <snapshot> edit format` 统一格式化 `calcit/` 下 56 个非空 Cirru 文件。
6
+ - 保留 `calcit/debug/.compact-inc.cirru` 这个 0 字节热更新占位文件原样。
7
+ - 修正文档中已移除的 `check-md -d`、`remote-libs readme -f`、`read-lines -s/-n` 旧参数。
8
+ - 在快速参考中加入文档知识图谱常用命令。
9
+
10
+ ## 验证
11
+
12
+ - `cr docs agents --full`
13
+ - `cargo test -q`
14
+ - `yarn check-all`
15
+ - `git diff --check`
@@ -0,0 +1,23 @@
1
+ # Fix exponential `or` expansion and bound code generation
2
+
3
+ ## Summary
4
+
5
+ - Fixed the `or` macro so its recursive tail is emitted once instead of being duplicated in both falsy branches.
6
+ - Preserved Calcit truthiness semantics for `nil`, `false`, and arbitrary truthy values.
7
+ - Added a long-operand regression case to the macro test suite.
8
+ - Added verbose preprocessing phase/definition diagnostics for JS and IR generation.
9
+ - Added a configurable code generation timeout, defaulting to 60 seconds, including watch-mode rebuilds.
10
+ - Increased the code generation worker stack for deeply nested macro and type preprocessing.
11
+
12
+ ## Root cause
13
+
14
+ The previous `or` macro emitted the remaining operands in both the `nil` and `false` branches. Recursive macro expansion therefore grew exponentially for long `or` expressions. A real-world 40-plus-operand predicate appeared to hang and consumed CPU until externally terminated.
15
+
16
+ ## Validation
17
+
18
+ - `cargo fmt --check`
19
+ - `cargo clippy --bin cr -- -D warnings`
20
+ - `cargo test --lib runner::preprocess -- --nocapture`
21
+ - `target/debug/cr calcit/test.cirru`
22
+ - `target/debug/cr calcit/test.cirru --timeout 60 js`
23
+ - The original `respo/markdown/calcit.cirru` reproduction now reaches its project-level warnings in under one second instead of timing out after 60 seconds.
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@calcit/procs",
3
- "version": "0.12.50",
3
+ "version": "0.12.51",
4
4
  "main": "./lib/calcit.procs.mjs",
5
5
  "devDependencies": {
6
6
  "@types/node": "^25.7.0",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@calcit/procs",
3
- "version": "0.12.50",
3
+ "version": "0.12.51",
4
4
  "main": "./lib/calcit.procs.mjs",
5
5
  "devDependencies": {
6
6
  "@types/node": "^25.7.0",