v0.3.0
What's New
Enhanced Quality Requirements
Quality blocks now support structured fields for comprehensive NFR specifications:
quality performance "API response time" {
metric: latency,
scale: p99,
target: < 100ms,
constraint: hard,
applies_to: action register,
measurement: per_request,
under_load: {
concurrent_users: 1000,
requests_per_second: 500,
},
verified_by: [
test "load_test_api",
monitor "datadog_latency",
],
}
New fields: scale (p50, p90, p95, p99, p999, mean, median, max, min), constraint (hard/soft), applies_to (action/state/type), measurement (per_request, hourly, daily, etc.), under_load (structured load conditions), verified_by (list of verification methods).
Variant Pattern Matching in is Expressions
The is operator now supports full pattern matching with nested variants:
result is Err(NotFound)
status is Pending(reason)
Previously only simple variant names were supported (e.g., result is Ok).
Dotted Paths in Use Statements
Import statements now support dotted module paths to match module declarations:
module abc.catalog
// ...
// In another file:
use abc.catalog::{Item, Category}
Full Changelog: v0.2.0...v0.3.0