Repository navigation
Releases
Releases · yestechgroup/pherolang
Phero Lang v0.3.0
What's Changed
- feat(evidence): proof-carrying models — register, drift gate, theorem S, receipts (#202 P0/P1) by @magick93 in #238
- feat(graph): unified semantic graph — artifact, queries, analytics, and cross-surface navigation (#194) by @magick93 in #247
- feat: post-#247 semantic-graph quality pass (#249–#261) by @magick93 in #263
- feat(graph): give .deploy
requiresa platformCapability target by @magick93 in #269 - feat(ifml): migrate .ifml from Pest to chumsky (#212) by @magick93 in #279
- feat!: rebrand rexlang → Phero Lang (#270) by @magick93 in #280
- ci(release): make the release matrix runnable and keep it data by @magick93 in #281
Full Changelog: v0.2.0...v0.3.0
v0.2.0 — Foundation & trust
v0.2.0 — Foundation & trust
The security and dependency foundation for the 0.2 → 1.0 release ladder. No language, grammar, wire-format, or artifact changes — the nine surfaces are frozen as a set; the only golden diff this release is rexVersion provenance (0.1.0 → 0.2.0).
Security
cargo audit is fully clean (0 vulnerabilities, 0 unsound) and enforced in CI:
- RUSTSEC-2026-0308 —
salsa0.23.0 → 0.28.5 (use-after-free in interned values/cached results; salsa backs the LSP, which processes untrusted editor input). Zero behavioral change: navigation, compile, and the full in-process LSP suites pass (#213). - RUSTSEC-2026-0386 —
tokio1.53.1 → 1.54.1 (AsyncFd I/O safety; rexlang does not use AsyncFd) (#211). - RUSTSEC-2026-0486 —
rustix1.1.4 → 1.1.6 via the dev graph (xattr zero-length buffer) (#209). cargo deny(advisories, licenses, sources) gates every PR (deny.toml) (#215).
Changed
- Language server on the maintained fork:
tower-lsp0.20 →tower-lsp-server0.23 stable. Dispatch contract unchanged; positions stay UTF-16 (#214). - Dev/test dependency refresh (#209, #216): pest 2.9.6 (stricter grammar validation, Unicode 18, stack guard), serde_json 1.0.154, clap 4.6.7, sha2 0.11.1, proptest 1.12, ureq 3.5.2, thiserror 2.0.21, jsonschema 0.61, ariadne 0.6 (zero rendering churn), cedar-policy 4.14.1 (dev-only). Unused
askamaremoved.creusot-stddeliberately held at 0.14.
Added
rexlang fmt/fmt --checkaccept directories withcheck's exact semantics —check model/ && fmt --check model/works (#217, closes #136).- CI parity: every gate invokes
scripts/ci-local.sh; the fixture-glob list lives in exactly one file (#218, closes #121). cargo audit+cargo deny checkCI jobs;scripts/ci-local.sh auditlocally (#215).rexlang completions <shell>andrexlang man— rendered from the CLI definition itself (#219).- Directory scans on
walkdir(follow_links(false)), order-deterministic, symlink-loop immune (#219).
Policy
- CHANGELOG.md begins here — every later release documents its drift.
- docs/VERSIONING.md: 0.x allows breaking changes with changelog + golden notes; 1.0 freezes the wire formats (additive-only within
formatVersion 1).
Deferred
Tracked in #220: line-index/text-size LSP positions, assert_cmd CLI-test migration, chumsky 0.13 / logos 0.16 dedup spikes, check-time regex validation for .ifml, jiff/heck trials, creusot-std 0.15 (toolchain-coupled).
Full details: CHANGELOG.md