@calcit/procs 0.13.4 → 0.13.5

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
@@ -0,0 +1,15 @@
1
+ # Typed `js-get` and `js-set` fields
2
+
3
+ - Added external-object-aware inference for static `js-get` field reads.
4
+ - Added declared field validation for static `js-set` writes, including unknown-field and value-type diagnostics.
5
+ - Lowered typed static reads and writes through dedicated AST method kinds so JavaScript codegen applies external trait `:names` overrides and default kebab-to-camel mapping.
6
+ - Kept dynamic keys and `aget`/`aset` as explicit raw JavaScript escape hatches.
7
+ - Migrated representative Respo DOM field writes and methods to the typed external-object path and verified add/remove behavior in a controlled browser.
8
+
9
+ Validation:
10
+
11
+ - `cargo test -q`
12
+ - `cargo clippy --lib --bin cr -- -D warnings`
13
+ - `yarn compile`
14
+ - `cr docs check-md docs/features/js-interop.md --entry calcit/test.cirru`
15
+ - Respo: `cr js`, `yarn test`, controlled Chrome add/remove regression
@@ -0,0 +1,10 @@
1
+ # Release 0.13.5
2
+
3
+ - Bumped the Calcit package versions in `Cargo.toml`, `package.json`, and
4
+ `Cargo.lock` from 0.13.4 to 0.13.5.
5
+ - Releases typed static `js-get`/`js-set` field access with external-object
6
+ traits (PR #316) and the `unsafe-coerce` named-type preservation fix.
7
+ - Consolidated redundant non-functional editing-history notes (release and
8
+ release-policy entries) into `ARCHIVE.md`.
9
+ - Verified with formatting, tests, clippy, compilation, full checks, agent
10
+ interface smoke checks, and Markdown example checks.
@@ -11,5 +11,32 @@ navigation layer.
11
11
  | Apr 2026 | Records/enums, type narrowing and generic dispatch; the WASM runtime gained collections, strings, methods, host imports, and multi-module tests. |
12
12
  | May–Jun 2026 | Weak-type analysis, data-definition bounds, markdown checking, compiled-runtime backfill, scoped type slots, effects graph, and Agent/CLI documentation. |
13
13
 
14
- For current behavior, prefer `docs/`, tests, and the retained JulyAugust notes
15
- over this summary.
14
+ ## Release history (JulAug 2026)
15
+
16
+ Non-functional version-bump notes were consolidated here on 2026-08-08. Each
17
+ release synchronizes `Cargo.toml` / `package.json` and refreshes the workspace
18
+ lockfile with `cargo update --workspace`; the full note text remains recoverable
19
+ from Git history.
20
+
21
+ | Version | Durable context |
22
+ | --- | --- |
23
+ | 0.12.52 | Routine version bump with lockfile refresh. |
24
+ | 0.12.53 | Routine version bump. |
25
+ | 0.12.54 | Entry-level `:type-slots` configuration, CLI management, compile-time `with-type-slot` erasure, snapshot/config preservation. |
26
+ | 0.12.55 | Semantic snapshot entry descriptions and canonical symbol storage for entry functions. |
27
+ | 0.12.56 | Routine version bump after snapshot/entry work. |
28
+ | 0.12.57 | CLI mutation, atomic staging, test deduplication (PR #284) plus Windows staged-file synchronization fixes. |
29
+ | 0.13.0 | Concentrated breaking-change baseline for the Option/Result/Unit/JsNullish public contracts. |
30
+ | 0.13.1 | Fixed recursive expansion of self-referential nominal struct type annotations. |
31
+ | 0.13.2 | Struct/enum data model cleanup (PR #301), direct required Struct field access, symbol-based nominal formatting. |
32
+ | 0.13.3 | Struct/Enum terminology migration, deprecated API analysis, cross-backend canonical EDN formatting. |
33
+ | 0.13.4 | Typed host FFI (external-object traits) merged and released. |
34
+
35
+ Also consolidated here: the 2026-08-01 ARCHIVE consolidation note, and the
36
+ release main-branch policy note — `main` needs no pull-request protection for
37
+ verified changes, the stable version commit runs a fresh main-branch CI run
38
+ before tagging, and npm verification uses the published package name
39
+ `@calcit/procs`.
40
+
41
+ For current behavior, prefer `docs/`, tests, and the retained current-window
42
+ notes over this summary.
package/lib/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@calcit/procs",
3
- "version": "0.13.4",
3
+ "version": "0.13.5",
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.13.4",
3
+ "version": "0.13.5",
4
4
  "main": "./lib/calcit.procs.mjs",
5
5
  "devDependencies": {
6
6
  "@types/node": "^25.7.0",
@@ -1,12 +0,0 @@
1
- # 2026-07-26 12:44 Release 0.12.52
2
-
3
- ## 修改概要
4
-
5
- - 将 Rust crate 和 npm package 版本同步升级到 `0.12.52`。
6
- - 执行 `cargo update --workspace` 更新锁文件元数据。
7
-
8
- ## 发布前验证
9
-
10
- - `yarn compile`
11
- - `cargo test -q --bin cr`
12
- - `yarn try-js`
@@ -1,6 +0,0 @@
1
- # 2026-07-28 发布 0.12.53
2
-
3
- ## 修改概要
4
-
5
- - 同步 `Cargo.toml` 和 `package.json` 版本号到 `0.12.53`。
6
- - 执行 `cargo update --workspace` 更新 `Cargo.lock`。
@@ -1,22 +0,0 @@
1
- # Release 0.12.54
2
-
3
- Date: 2026-07-30 14:35 +0800
4
-
5
- ## Release scope
6
-
7
- - Entry-level `:type-slots` configuration and CLI management commands.
8
- - Compile-time-only `with-type-slot` erasure for single and multiple bodies.
9
- - Snapshot/config preservation, type-slot diagnostics, regression fixtures, and documentation.
10
- - The earlier PR 281 review fixes already carried by the same branch.
11
-
12
- ## Pre-release evidence
13
-
14
- - Feature commit `5e180a2e` passed the repository Test workflow on PR #282.
15
- - Local validation passed `cargo fmt`, Clippy with warnings denied, all Rust tests, TypeScript compilation, Agent interface checks, and the full Rust/JS/WASM integration suite.
16
- - Respo passed check-only, JS codegen, Node tests, and all Markdown checks with the new CLI.
17
-
18
- ## Version changes
19
-
20
- - `Cargo.toml`: `0.12.54`
21
- - `package.json`: `0.12.54`
22
- - `Cargo.lock`: refreshed with `cargo update --workspace`
@@ -1,5 +0,0 @@
1
- # Release 0.12.55
2
-
3
- - Bumped the Rust crate and npm package versions together to `0.12.55`.
4
- - Refreshed the workspace lockfile before the release commit.
5
- - This release includes semantic snapshot entry descriptions and canonical symbol storage for entry functions, while preserving legacy string input compatibility.
@@ -1,15 +0,0 @@
1
- # Release 0.12.56
2
-
3
- ## Summary
4
-
5
- - Bump the Calcit Rust crate and npm package versions from `0.12.55` to `0.12.56`.
6
- - Refresh the workspace lockfile so package metadata remains consistent.
7
-
8
- ## Validation
9
-
10
- - `cargo fmt --check`
11
- - `cargo clippy -- -D warnings`
12
- - `yarn compile`
13
- - `cargo test`
14
- - `yarn check-all`
15
- - `yarn check-agent-interface`
@@ -1,6 +0,0 @@
1
- # Consolidate historical editing notes
2
-
3
- - Replaced 142 individual notes from June 2026 and earlier with a compact topic index.
4
- - Retained all July–August notes for active maintenance context.
5
- - The removed notes remain recoverable through Git history; `editing-history/README.md` documents the retention rule.
6
- - Verification: reviewed the tracked path set and checked the resulting Git diff.
@@ -1,5 +0,0 @@
1
- # Release 0.12.57
2
-
3
- - Release the merged CLI mutation, atomic staging, and test deduplication work from PR #284.
4
- - Include the follow-up fixes for Windows staged-file synchronization, symlink destinations, query cloning, and cursor feedback.
5
- - Synchronize the Rust crate and npm package versions, then refresh the workspace lockfile before publishing.
@@ -1,5 +0,0 @@
1
- # Release main-branch policy
2
-
3
- - Main no longer requires pull-request protection for verified changes.
4
- - The release flow now requires the stable version commit to be on `main`, followed by a fresh main-branch CI run before tagging and creating the release.
5
- - Corrected the npm verification command to use the published package name, `@calcit/procs`.
@@ -1,5 +0,0 @@
1
- # 发布 0.13.0
2
-
3
- - 将 Cargo crate 与 npm package 的版本同步升级到 0.13.0。
4
- - 该 minor 版本承载 Option、Result、Unit 与 JsNullish 公共契约的集中 breaking change,作为后续 nil 安全 API 的稳定基线。
5
- - 发布前后继续通过 Calcit 全量验证与 Respo 真实页面回归,避免将未被类型系统发现的 JS FFI 兼容问题带入后续版本。
@@ -1,6 +0,0 @@
1
- # 发布 0.13.1
2
-
3
- - 将 Cargo crate 与 npm package 的版本同步升级到 0.13.1。
4
- - 本 patch 修复自递归 nominal struct 的类型注解解析,避免 Optional 自引用在定义时递归展开。
5
- - record、struct 与 enum 的展示名称统一为 symbol;JS DevTools formatter 同步展示 nominal 定义与 enum payload。
6
- - 发布前通过 Rust、TypeScript 与全量集成验证。
@@ -1,18 +0,0 @@
1
- # Release 0.13.2
2
-
3
- ## Scope
4
-
5
- - Release the struct / enum data model cleanup merged by PR #301.
6
- - Publish direct required Struct field access and migration diagnostics for removed record / tuple APIs.
7
- - Publish symbol-based nominal formatting and matching TypeScript runtime modules.
8
-
9
- ## Version synchronization
10
-
11
- - `Cargo.toml`: `0.13.2`
12
- - `package.json`: `0.13.2`
13
- - `Cargo.lock`: refreshed with `cargo update --workspace`
14
-
15
- ## Release gates
16
-
17
- - The feature PR passed Test and all CodeQL jobs before merge.
18
- - The release commit must pass the same GitHub Actions checks before tag `0.13.2` is created.
@@ -1,7 +0,0 @@
1
- # Release 0.13.3
2
-
3
- 在合并 Struct/Enum terminology migration、deprecated API analysis 与跨后端
4
- canonical EDN formatting 修复后,将 Rust crate 与 npm package 版本从 `0.13.2`
5
- 同步升级至 `0.13.3`。
6
-
7
- 验证:`cargo update --workspace`、`cargo test`、`yarn compile`。
@@ -1,4 +0,0 @@
1
- # Release 0.13.4
2
-
3
- - Bumped the Calcit package versions in `Cargo.toml`, `package.json`, and `Cargo.lock` from 0.13.3 to 0.13.4 after merging the typed host FFI work.
4
- - Verified the release with formatting, tests, clippy, compilation, full checks, and the agent interface smoke checks.