Repository navigation
sysmlv2 v0.10.0
Added
- Checked property access and strict full-form JSON export in Rust, Python and WebAssembly: specification properties read through a generated semantic catalog, with typed refusals instead of placeholder values where the semantics are incomplete.
- Generated property and operation declaration catalogs for SDK generators; supported operations can be invoked by declaration identity.
- Checked reports for type features, inputs and memberships, specialization, featuring, variability, end constancy, model-level evaluability and collection cardinality.
- Opt-in
CanonicalV3graphs (Rust) with an explicit migration API; format-aware sessions, prepared libraries, snapshots, resolvers and deltas preserve the selected graph contract. - Editor: member completion after indexed values, invocations, qualified and global receivers and quoted names; unit completion on
[ranked by the declared quantity; signature help for calculation, function and constraint invocations; position-aware completion that follows the statement being typed; recovery of usable declarations from incomplete sources. - Prepared standard-library snapshot in the npm package (
stdlib/sysml-library.prepared.gz), streamed loading, and warm-start sessions that reuse the outcomes a previous session settled on;LspServer.withPreparedLibrarybuilds the language server on a prepared library. - Text reports mark each finding's span with carets and show a bounded excerpt of long lines.
Fixed
- View-directed diagrams no longer draw inherited exposed members as standalone nodes; views inherit their rendering from their definition.
- Parameters, ends and results inherit the members of the feature their position pairs them with; invocations bind inherited parameters in heritage order; a calculation without a result evaluates the nearest inherited one.
- Imported and inherited members keep their membership identities, order, visibility and alias provenance; redefinitions resolve in the declaring type's generals in written order.
- Library resolution replay re-resolves every library reference a workspace's root names can change.
- A
;where an expression belongs, or after a body's result expression, is reported at the;and no longer parsed as an empty expression. - Editor automatic imports name the conventional re-exporting package and are omitted when an existing import already provides the name.
- Corrected copyright and third-party license notices; the npm package ships the bundled standard library's license and notices. Shipped WebAssembly and WASI modules no longer embed build-machine paths.
Performance
- Faster session builds on a prepared standard library (shared lookup graph across passes, incremental ownership-path hashing, cheaper name tables, settled-outcome rebuilds);
checkno longer grows quadratically with expression nesting.
Removed
- The
rendercommand, the view template renderer and WebAssemblyrenderView. - The ambient
Web,Template,Svelte,WebAppandSvelteKitlibraries;TransformMetaremains ambient. - Rust
ResolvedModel::calc_params(usecalc_parameter_bindings).
Upgrade notes
- The default ID scheme changes from 1 to 2; freshly derived IDs for affected features and their descendants change, persisted explicit IDs are preserved. Scheme 1 ID-elided snapshots and deltas are no longer accepted.
- Evaluation no longer takes every feature to be single-valued; declare
[1]where a single value is intended. - The syntax tree's
ExprKind::BodyTerminatorvariant is removed. - Tools that read findings should use
--format jsonrather than parse the text report.
See CHANGELOG.md for the complete list.
Full Changelog: v0.9.1...v0.10.0