You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The json.rs wire shape (JsonDiagnostic etc.) carries `schemars` and Quarto's
`quarto.org` schema URLs — both Quarto policy. Make it opt-in so the
soon-to-be-published quarto-error-reporting is lean for non-Quarto consumers:
- `schemars` becomes `optional = true`; new `[features] json = ["dep:schemars"]`.
- `lib.rs`: `pub mod json` + its re-export gated behind `#[cfg(feature = "json")]`.
- `tests/schema_drift.rs`: `#![cfg(feature = "json")]` (empty test binary when off).
- The 4 crates that use the wire symbols (quarto, quarto-core, quarto-preview,
wasm-quarto-hub-client) enable `features = ["json"]`.
`cargo tree` confirms `schemars` is absent under default features and present with
`--features json`. `to_json` (uses serde_json::json!, not the module) and
coalesce.rs stay unconditional. In the q2 workspace json is on via feature
unification, so the wire shape and schema_drift test build as before.
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
0 commit comments