@calcit/procs 0.13.26 → 0.13.28
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/README.md +34 -34
- package/RFCs/02-04-runtime-traits-plan.md +1 -1
- package/RFCs/02-17-register-platform-api-rfc.md +1 -1
- package/RFCs/02-18-language-theory-evolution-plan.md +3 -3
- package/RFCs/03-05-function-schema-dual-track-rfc.md +3 -3
- package/RFCs/03-18-query-def-tree-show-chunked-display-plan.md +11 -11
- package/RFCs/04-13-type-slot-mechanism-rfc.md +10 -10
- package/RFCs/05-12-program-diff-rfc.md +7 -7
- package/RFCs/06-15-effects-graph-rfc.md +16 -16
- package/RFCs/07-06-semantic-tree-navigation-rfc.md +33 -33
- package/RFCs/07-19-doc-knowledge-index-rfc.md +15 -15
- package/RFCs/07-19-type-introspection-consistency-rfc.md +3 -3
- package/RFCs/07-26-agent-docs-and-evaluation-rfc.md +1 -1
- package/RFCs/07-26-agent-machine-protocol-rfc.md +5 -5
- package/RFCs/07-26-safe-structured-editing-rfc.md +4 -4
- package/RFCs/07-26-static-semantic-analysis-rfc.md +9 -9
- package/RFCs/07-28-git-module-store-rfc.md +4 -4
- package/RFCs/07-28-persistent-tree-cursor-rfc.md +54 -54
- package/RFCs/08-08-cross-backend-host-ffi-contracts-rfc.md +4 -4
- package/RFCs/08-14-architecture-scaffold-rfc.md +7 -7
- package/RFCs/08-14-todo-placeholder-rfc.md +2 -2
- package/RFCs/08-18-calcit-typed-js-ffi-boundary-rfc.md +2 -2
- package/RFCs/08-21-js-ffi-runtime-contract-validation-rfc.md +295 -0
- package/RFCs/08-21-setup-calcit-version-and-toolchain-contract-rfc.md +241 -0
- package/RFCs/08-21-static-type-system-evolution-roadmap.md +315 -0
- package/RFCs/08-21-type-quality-ci-adoption-rfc.md +272 -0
- package/RFCs/README.md +7 -5
- package/editing-history/20260820-1704-repository-maintenance-review.md +20 -0
- package/editing-history/20260821-1512-type-system-ecosystem-rfcs.md +25 -0
- package/editing-history/20260821-1648-type-quality-and-ffi-doc-hints.md +12 -0
- package/editing-history/202608211958-calcit-command-alias.md +6 -0
- package/editing-history/202608212018-cli-review-followups.md +4 -0
- package/editing-history/ARCHIVE.md +45 -4
- package/editing-history/README.md +3 -1
- package/history/202608191628-revert-transparent-union-types.md +5 -0
- package/history/202608191741-release-01327.md +4 -0
- package/history/202608212020-release-01328.md +5 -0
- package/lib/package.json +11 -11
- package/package.json +11 -11
- package/profiling/README.md +3 -3
- package/profiling/profile-once.sh +1 -1
- package/profiling/samply-once.sh +4 -4
- package/profiling/samply-summary.py +1 -1
- package/RFCs/08-19-transparent-union-types-rfc.md +0 -522
- package/editing-history/2026-07-28-1346-edit-transaction.md +0 -27
- package/editing-history/2026-07-28-1454-persistent-tree-cursor.md +0 -30
- package/editing-history/2026-07-28-1651-cursor-focus-stack-clipboard.md +0 -30
- package/editing-history/2026-07-28-1719-cursor-navigation-search-selection.md +0 -21
- package/editing-history/2026-07-28-1958-agent-rfc-split.md +0 -14
- package/editing-history/2026-07-28-2004-cursor-editing-docs.md +0 -14
- package/editing-history/2026-07-28-2132-cursor-recoverable-clipboard.md +0 -18
- package/editing-history/2026-07-28-2151-cursor-native-structural-editing.md +0 -20
- package/editing-history/2026-07-28-2158-document-cursor-native-workflows.md +0 -13
- package/editing-history/2026-07-29-0022-add-cursor-cli-options.md +0 -7
- package/editing-history/2026-07-29-0022-audit-cursor-development-scenarios.md +0 -6
- package/editing-history/2026-07-29-0022-complete-cursor-structural-edits.md +0 -8
- package/editing-history/2026-07-29-0022-document-cursor-edit-recipes.md +0 -8
- package/editing-history/2026-07-29-0022-edit-target-cursor-alias.md +0 -6
- package/editing-history/2026-07-29-0022-guide-agents-through-cursor-workflows.md +0 -7
- package/editing-history/2026-07-29-0022-query-from-active-cursor.md +0 -8
- package/editing-history/2026-07-29-0022-tree-target-cursor-alias.md +0 -5
- package/editing-history/202608021730-release-0.12.58.md +0 -5
- package/editing-history/202608021928-release-0.12.59.md +0 -5
- package/editing-history/202608082312-release-0.13.5.md +0 -10
- package/editing-history/202608090107-release-0.13.6.md +0 -10
- package/editing-history/202608091812-release-0.13.7.md +0 -8
- package/editing-history/202608101042-release-0.13.8.md +0 -6
- package/editing-history/202608101101-release-pr-workflow.md +0 -8
- package/editing-history/202608101102-release-doc-tracked-path.md +0 -5
- package/editing-history/202608110140-release-0.13.9.md +0 -4
- package/editing-history/202608111349-release-0.13.10.md +0 -13
- package/editing-history/202608111650-release-0.13.11.md +0 -5
- package/editing-history/202608121900-release-0.13.12.md +0 -5
- package/editing-history/202608130003-release-0.13.13.md +0 -9
- package/editing-history/202608131650-release-0.13.15.md +0 -10
- package/editing-history/20260816-0254-release-0.13.17.md +0 -5
- package/editing-history/20260817-0006-release-0-13-18.md +0 -6
- package/editing-history/202608171118-project-module-runtime-resolution.md +0 -6
- package/editing-history/202608171133-visible-module-versions-and-cleanup.md +0 -6
- package/editing-history/202608171140-module-caches-root.md +0 -5
- package/editing-history/202608171200-module-cache-review-follow-up.md +0 -5
- package/editing-history/202608171205-release-0-13-19.md +0 -4
- package/editing-history/202608171215-module-path-resolution-docs.md +0 -4
- package/editing-history/202608171409-module-cache-review-followup.md +0 -5
- package/editing-history/202608171427-module-cache-review-followup-locking.md +0 -5
- package/editing-history/202608171438-module-docs-home-lock.md +0 -4
- package/editing-history/202608171611-dependency-audit-review.md +0 -4
- package/editing-history/202608181000-release-0-13-20.md +0 -5
- package/editing-history/202608181930-release-0-13-21.md +0 -5
- package/history/202608191418-rfc-defenum-syntax.md +0 -4
- package/history/202608191430-transparent-union-review.md +0 -5
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
# Type quality and JS FFI documentation hints
|
|
2
|
+
|
|
3
|
+
- Added a direct `cr docs read library-quality.md --full` hint when the native
|
|
4
|
+
`analyze quality` gate fails, so baseline regressions lead to the accepted
|
|
5
|
+
CI workflow rather than project-local report scripts.
|
|
6
|
+
- Added a direct `cr docs read js-interop.md --full` hint to strict JS FFI
|
|
7
|
+
capability, target, and read-only external-field diagnostics.
|
|
8
|
+
- Added regression assertions that the strict FFI errors retain their stable
|
|
9
|
+
diagnostic code and expose the documentation command.
|
|
10
|
+
|
|
11
|
+
Validation: targeted Rust tests for the affected diagnostics, full Rust tests,
|
|
12
|
+
Markdown documentation checks, and `git diff --check`.
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
# Calcit command migration
|
|
2
|
+
|
|
3
|
+
- Make `calcit` the only compiled primary CLI binary; do not keep a second Rust `cr` artifact.
|
|
4
|
+
- Keep old GitHub Actions workflows compatible in `setup-calcit` by creating a lightweight `cr` link beside the installed `calcit` binary.
|
|
5
|
+
- Move repository scripts, CI, user-facing diagnostics, and documentation to canonical `calcit` command examples.
|
|
6
|
+
- Refresh the agent-interface weak-type schema assertion from v2 to v3 so the renamed CLI continues to exercise the current machine protocol.
|
|
@@ -13,10 +13,10 @@ navigation layer.
|
|
|
13
13
|
|
|
14
14
|
## Release history (Jul–Aug 2026)
|
|
15
15
|
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
16
|
+
Release and release-policy notes are consolidated here. Each release
|
|
17
|
+
synchronizes `Cargo.toml` / `package.json` and refreshes the workspace lockfile
|
|
18
|
+
with `cargo update --workspace`; the full note text remains recoverable from
|
|
19
|
+
Git history.
|
|
20
20
|
|
|
21
21
|
| Version | Durable context |
|
|
22
22
|
| --- | --- |
|
|
@@ -31,6 +31,23 @@ from Git history.
|
|
|
31
31
|
| 0.13.2 | Struct/enum data model cleanup (PR #301), direct required Struct field access, symbol-based nominal formatting. |
|
|
32
32
|
| 0.13.3 | Struct/Enum terminology migration, deprecated API analysis, cross-backend canonical EDN formatting. |
|
|
33
33
|
| 0.13.4 | Typed host FFI (external-object traits) merged and released. |
|
|
34
|
+
| 0.12.58 | Receiver-first method inference and nominal trait identity fixes. |
|
|
35
|
+
| 0.12.59 | Top-level nominal value schema fix. |
|
|
36
|
+
| 0.13.5 | Typed `js-get` / `js-set` field access plus named-type preservation. |
|
|
37
|
+
| 0.13.6 | Opt-in raw-JS-FFI warning and readable low-cost JS emission. |
|
|
38
|
+
| 0.13.7 | Definition-attached core tests and safer, less noisy `cr` edits. |
|
|
39
|
+
| 0.13.8 | Typed Struct field access and robust branch-ref resolution. |
|
|
40
|
+
| 0.13.9 | Routine aligned Cargo/npm release. |
|
|
41
|
+
| 0.13.10 | Agent migration convergence and quoted-Cirru edit reliability. |
|
|
42
|
+
| 0.13.11 | Trailing `Option` parameters, typed Option/Struct handling, and terminating JS string replacement. |
|
|
43
|
+
| 0.13.12 | Type guidance/Dynamic audits and typed Struct constructors with omitted Option fields. |
|
|
44
|
+
| 0.13.13 | Project module-store and dependency-boundary work. |
|
|
45
|
+
| 0.13.15 | `decode-map-as` runtime decoder and core metadata. |
|
|
46
|
+
| 0.13.17 | Nested Struct context, migration diagnostics, and agent guidance. |
|
|
47
|
+
| 0.13.18 | Correct source locations for macro-generated field warnings. |
|
|
48
|
+
| 0.13.19 | Project-scoped module resolution, immutable cache visibility, and safe cleanup. |
|
|
49
|
+
| 0.13.20 | Typed JavaScript FFI capability boundary and browser/Node validation. |
|
|
50
|
+
| 0.13.21 | Typed JavaScript FFI follow-ups and `deps.cirru` version migration diagnostics. |
|
|
34
51
|
|
|
35
52
|
Also consolidated here: the 2026-08-01 ARCHIVE consolidation note, and the
|
|
36
53
|
release main-branch policy note — `main` needs no pull-request protection for
|
|
@@ -40,3 +57,27 @@ before tagging, and npm verification uses the published package name
|
|
|
40
57
|
|
|
41
58
|
For current behavior, prefer `docs/`, tests, and the retained current-window
|
|
42
59
|
notes over this summary.
|
|
60
|
+
|
|
61
|
+
## Consolidated development topics (Jul–Aug 2026)
|
|
62
|
+
|
|
63
|
+
### Cursor and transactional structural editing (Jul 28–29)
|
|
64
|
+
|
|
65
|
+
The CLI gained a project-local persistent cursor for safe, multi-command tree
|
|
66
|
+
editing. It supports navigation/history, selection search, clipboard actions,
|
|
67
|
+
focus previews, depth-first movement, symmetric slurp/barf operations, and
|
|
68
|
+
duplication. `@cursor` may resolve a definition target and tree path, but
|
|
69
|
+
two-target edits retain explicit destinations and transaction files remain
|
|
70
|
+
self-contained. Snapshot and cursor-sidecar writes are staged and report
|
|
71
|
+
partial success explicitly; a cursor is navigation state, never a concurrency
|
|
72
|
+
primitive or source identity. The authoritative interface and examples are in
|
|
73
|
+
`docs/run/edit-tree.md`, `docs/CalcitAgent.md`, and the cursor RFC.
|
|
74
|
+
|
|
75
|
+
### Project module cache hardening (Aug 17)
|
|
76
|
+
|
|
77
|
+
Runtime package-style module resolution is restricted to a project's
|
|
78
|
+
`.calcit/modules/` view, while immutable revisions live in the global
|
|
79
|
+
`module-caches/` store. Cache metadata preserves the highest observed SemVer
|
|
80
|
+
reference; `caps clean` retains the newest revision and every revision still
|
|
81
|
+
linked by a registered project. Cache and project-view updates are serialized
|
|
82
|
+
with OS-managed locks and installation is transactional. Current operational
|
|
83
|
+
details live in `docs/run/load-deps.md` and `docs/run/upgrade.md`.
|
|
@@ -7,7 +7,9 @@ history after they leave this directory.
|
|
|
7
7
|
## Retention
|
|
8
8
|
|
|
9
9
|
- Keep individual notes for the current development window (normally the most
|
|
10
|
-
recent 45 days)
|
|
10
|
+
recent 45 days), unless a completed topic has produced several overlapping
|
|
11
|
+
notes. Consolidate those clusters promptly; recency alone is not a reason to
|
|
12
|
+
retain duplicate implementation checkpoints.
|
|
11
13
|
- Periodically replace older clusters with a concise topic summary in
|
|
12
14
|
[ARCHIVE.md](ARCHIVE.md), then remove their individual files.
|
|
13
15
|
- Each code commit still adds one timestamped note, but it should capture only
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
# Revert transparent union types
|
|
2
|
+
|
|
3
|
+
- Removed the experimental `deftype (or ...)` transparent-union implementation, including its `struct-match` narrowing, type matching, runtime validation, core macro, RFC, Snapshot coverage, and Rust regression tests.
|
|
4
|
+
- Kept unrelated release-version and test-only visibility cleanup changes from follow-up commits.
|
|
5
|
+
- The experiment showed that collection and recursive boundaries still lose useful member-type evidence, causing consumer code to require additional assertions instead of becoming simpler.
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
# Release 0.13.27
|
|
2
|
+
|
|
3
|
+
- Released the patch version after reverting the experimental transparent union type implementation.
|
|
4
|
+
- The language returns to nominal Struct, Enum, and trait-based composition; future dynamic polymorphism should prefer explicit `dyn` trait boundaries.
|
package/lib/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@calcit/procs",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.28",
|
|
4
4
|
"main": "./lib/calcit.procs.mjs",
|
|
5
5
|
"devDependencies": {
|
|
6
6
|
"@types/node": "^25.7.0",
|
|
@@ -10,24 +10,24 @@
|
|
|
10
10
|
"compile": "rm -rf lib && tsc",
|
|
11
11
|
"procs-link": "ln -sfn ../../ node_modules/@calcit/procs",
|
|
12
12
|
"cp-mac": "cargo build --release && rm -rfv builds/* && node scripts/cp-version.js && scp builds/* rsync-user@calcit-lang.org:/web-assets/repo/calcit-lang/binaries/macos/",
|
|
13
|
-
"eval": "cargo run --bin
|
|
13
|
+
"eval": "cargo run --bin calcit -- eval",
|
|
14
14
|
"fmt-rs": "cargo fmt --all",
|
|
15
15
|
"lint-rs": "cargo clippy --all-targets -- -D warnings",
|
|
16
16
|
"test-rs": "cargo test -q",
|
|
17
|
-
"test-fail": "cargo test -q --bin
|
|
17
|
+
"test-fail": "cargo test -q --bin calcit type_fail_",
|
|
18
18
|
"test-snippets": "cargo test -q snippets::tests",
|
|
19
19
|
"check-js-runtime": "node scripts/check-js-runtime-identity.mjs",
|
|
20
|
-
"bench-recur-smoke": "cargo run --bin
|
|
20
|
+
"bench-recur-smoke": "cargo run --bin calcit -- calcit/test.cirru js && node --input-type=module -e \"import { test_loop } from './js-out/test-recursion.main.mjs'; const n=3000; const t0=process.hrtime.bigint(); for(let i=0;i<n;i++) test_loop(); const dt=Number(process.hrtime.bigint()-t0)/1e6; console.log('test_loop_ms='+dt.toFixed(3));\"",
|
|
21
21
|
"check-smooth": "yarn fmt-rs && yarn lint-rs && yarn test-rs && yarn check-all",
|
|
22
22
|
"check-all": "yarn compile && yarn check-js-runtime && yarn check-agent-interface && yarn try-core-tests && yarn try-rs && yarn try-js && yarn try-ir && yarn try-wasm",
|
|
23
|
-
"check-agent-interface": "cargo build --bin
|
|
23
|
+
"check-agent-interface": "cargo build --bin calcit && node scripts/check-agent-interface.mjs",
|
|
24
24
|
"try-all": "yarn check-all",
|
|
25
|
-
"try-core-tests": "cargo run --bin
|
|
26
|
-
"try-rs": "cargo run --bin
|
|
27
|
-
"warn-dyn-method": "cargo run --bin
|
|
28
|
-
"try-js-brk": "cargo run --bin
|
|
29
|
-
"try-js": "cargo run --bin
|
|
30
|
-
"try-ir": "cargo run --bin
|
|
25
|
+
"try-core-tests": "cargo run --bin calcit -- src/cirru/calcit-core.cirru test --tag unit --summary-only",
|
|
26
|
+
"try-rs": "cargo run --bin calcit -- calcit/test.cirru",
|
|
27
|
+
"warn-dyn-method": "cargo run --bin calcit -- calcit/test.cirru --warn-dyn-method",
|
|
28
|
+
"try-js-brk": "cargo run --bin calcit -- calcit/test.cirru js && node --inspect-brk js-out/main.mjs",
|
|
29
|
+
"try-js": "cargo run --bin calcit -- calcit/test.cirru js && node js-out/main.mjs",
|
|
30
|
+
"try-ir": "cargo run --bin calcit -- calcit/test.cirru ir",
|
|
31
31
|
"try-wasm": "bash scripts/test-wasm.sh"
|
|
32
32
|
},
|
|
33
33
|
"repository": {
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@calcit/procs",
|
|
3
|
-
"version": "0.13.
|
|
3
|
+
"version": "0.13.28",
|
|
4
4
|
"main": "./lib/calcit.procs.mjs",
|
|
5
5
|
"devDependencies": {
|
|
6
6
|
"@types/node": "^25.7.0",
|
|
@@ -10,24 +10,24 @@
|
|
|
10
10
|
"compile": "rm -rf lib && tsc",
|
|
11
11
|
"procs-link": "ln -sfn ../../ node_modules/@calcit/procs",
|
|
12
12
|
"cp-mac": "cargo build --release && rm -rfv builds/* && node scripts/cp-version.js && scp builds/* rsync-user@calcit-lang.org:/web-assets/repo/calcit-lang/binaries/macos/",
|
|
13
|
-
"eval": "cargo run --bin
|
|
13
|
+
"eval": "cargo run --bin calcit -- eval",
|
|
14
14
|
"fmt-rs": "cargo fmt --all",
|
|
15
15
|
"lint-rs": "cargo clippy --all-targets -- -D warnings",
|
|
16
16
|
"test-rs": "cargo test -q",
|
|
17
|
-
"test-fail": "cargo test -q --bin
|
|
17
|
+
"test-fail": "cargo test -q --bin calcit type_fail_",
|
|
18
18
|
"test-snippets": "cargo test -q snippets::tests",
|
|
19
19
|
"check-js-runtime": "node scripts/check-js-runtime-identity.mjs",
|
|
20
|
-
"bench-recur-smoke": "cargo run --bin
|
|
20
|
+
"bench-recur-smoke": "cargo run --bin calcit -- calcit/test.cirru js && node --input-type=module -e \"import { test_loop } from './js-out/test-recursion.main.mjs'; const n=3000; const t0=process.hrtime.bigint(); for(let i=0;i<n;i++) test_loop(); const dt=Number(process.hrtime.bigint()-t0)/1e6; console.log('test_loop_ms='+dt.toFixed(3));\"",
|
|
21
21
|
"check-smooth": "yarn fmt-rs && yarn lint-rs && yarn test-rs && yarn check-all",
|
|
22
22
|
"check-all": "yarn compile && yarn check-js-runtime && yarn check-agent-interface && yarn try-core-tests && yarn try-rs && yarn try-js && yarn try-ir && yarn try-wasm",
|
|
23
|
-
"check-agent-interface": "cargo build --bin
|
|
23
|
+
"check-agent-interface": "cargo build --bin calcit && node scripts/check-agent-interface.mjs",
|
|
24
24
|
"try-all": "yarn check-all",
|
|
25
|
-
"try-core-tests": "cargo run --bin
|
|
26
|
-
"try-rs": "cargo run --bin
|
|
27
|
-
"warn-dyn-method": "cargo run --bin
|
|
28
|
-
"try-js-brk": "cargo run --bin
|
|
29
|
-
"try-js": "cargo run --bin
|
|
30
|
-
"try-ir": "cargo run --bin
|
|
25
|
+
"try-core-tests": "cargo run --bin calcit -- src/cirru/calcit-core.cirru test --tag unit --summary-only",
|
|
26
|
+
"try-rs": "cargo run --bin calcit -- calcit/test.cirru",
|
|
27
|
+
"warn-dyn-method": "cargo run --bin calcit -- calcit/test.cirru --warn-dyn-method",
|
|
28
|
+
"try-js-brk": "cargo run --bin calcit -- calcit/test.cirru js && node --inspect-brk js-out/main.mjs",
|
|
29
|
+
"try-js": "cargo run --bin calcit -- calcit/test.cirru js && node js-out/main.mjs",
|
|
30
|
+
"try-ir": "cargo run --bin calcit -- calcit/test.cirru ir",
|
|
31
31
|
"try-wasm": "bash scripts/test-wasm.sh"
|
|
32
32
|
},
|
|
33
33
|
"repository": {
|
package/profiling/README.md
CHANGED
|
@@ -56,13 +56,13 @@ profiling/samply-once.sh calcit/fibo.cirru --release --top 20 --include 'calcit:
|
|
|
56
56
|
### 仅汇总已有 `.samply`
|
|
57
57
|
|
|
58
58
|
```bash
|
|
59
|
-
python3 profiling/samply-summary.py --input .tmp-profiles/fibo-debug-xxxx.samply --binary target/debug/
|
|
59
|
+
python3 profiling/samply-summary.py --input .tmp-profiles/fibo-debug-xxxx.samply --binary target/debug/calcit --top 30
|
|
60
60
|
```
|
|
61
61
|
|
|
62
62
|
release 对应:
|
|
63
63
|
|
|
64
64
|
```bash
|
|
65
|
-
python3 profiling/samply-summary.py --input .tmp-profiles/fibo-release-xxxx.samply --binary target/release/
|
|
65
|
+
python3 profiling/samply-summary.py --input .tmp-profiles/fibo-release-xxxx.samply --binary target/release/calcit --top 30
|
|
66
66
|
```
|
|
67
67
|
|
|
68
68
|
常用参数:
|
|
@@ -80,5 +80,5 @@ python3 profiling/samply-summary.py --input .tmp-profiles/fibo-release-xxxx.samp
|
|
|
80
80
|
|
|
81
81
|
## 说明
|
|
82
82
|
|
|
83
|
-
- `samply-once.sh` 会先 `cargo build`,再直接对 `target/debug/
|
|
83
|
+
- `samply-once.sh` 会先 `cargo build`,再直接对 `target/debug/calcit` 或 `target/release/calcit` 录制,避免把 `rustc` 编译过程混入热点。
|
|
84
84
|
- 临时产物位于 `.tmp-profiles/`,可按需清理。
|
package/profiling/samply-once.sh
CHANGED
|
@@ -37,11 +37,11 @@ stamp="$(date +%Y%m%d-%H%M%S)"
|
|
|
37
37
|
samply_path=".tmp-profiles/${entry_name}-${mode}-${stamp}.samply"
|
|
38
38
|
|
|
39
39
|
if [[ "$mode" == "release" ]]; then
|
|
40
|
-
build_args=(build --release --bin
|
|
41
|
-
binary="target/release/
|
|
40
|
+
build_args=(build --release --bin calcit)
|
|
41
|
+
binary="target/release/calcit"
|
|
42
42
|
else
|
|
43
|
-
build_args=(build --bin
|
|
44
|
-
binary="target/debug/
|
|
43
|
+
build_args=(build --bin calcit)
|
|
44
|
+
binary="target/debug/calcit"
|
|
45
45
|
fi
|
|
46
46
|
|
|
47
47
|
echo "Building binary: $binary"
|
|
@@ -34,7 +34,7 @@ def parse_args() -> argparse.Namespace:
|
|
|
34
34
|
parser.add_argument(
|
|
35
35
|
"--binary",
|
|
36
36
|
type=Path,
|
|
37
|
-
help="Mach-O binary for atos symbolization fallback (e.g. target/debug/
|
|
37
|
+
help="Mach-O binary for atos symbolization fallback (e.g. target/debug/calcit)",
|
|
38
38
|
)
|
|
39
39
|
parser.add_argument(
|
|
40
40
|
"--image-base",
|