Skip to content

v1.0.0

Latest

Choose a tag to compare

@atusy atusy released this 20 Aug 12:00
b811693

kakehashi's first stable major release. The configuration surface, the kakehashi/* custom methods, and the bridge protocols shipped through v0.11.0 are now the stable v1 contract. Everything that worked in v0.11.0 keeps working in v1.0.0 — including every deprecated compatibility path.

⚠️ Deprecated features will be removed in v2.0.0

The following compatibility paths, deprecated during v0, remain accepted throughout v1 but are scheduled for removal in v2.0.0. Migrate now:

Deprecated Use instead
languageServers.*.rootMarkers languageServers.*.workspaceMarkers
Top-level autoInstall languages._.autoInstall (override per language with languages.<lang>.autoInstall)
Top-level captureMappings features."textDocument/semanticTokens".captureMappings
languages.*.aliases base on each derived language entry
Unwrapped workspace/didChangeConfiguration settings Wrap runtime settings in the notification's settings.kakehashi object

Each deprecated path emits a once-per-session migration notice naming the v2 deadline, with concrete TOML/JSON migration examples where the rewrite is non-trivial (aliases).

Changes since v0.11.0

  • Deprecation removal deadlines are enforced in code (#1019). Every retained compatibility path declares the major it was deprecated in and the major it must be removed in; a kakehashi build at or after the removal major fails to compile until the path is actually removed, making a major-version bump an unavoidable deprecation inventory check. Runtime notices are derived from the same declarations, deprecated keys are exposed (marked deprecated, hidden from generated docs) in the JSON Schema, and the schema declares the canonical and deprecated marker spellings (workspaceMarkers / rootMarkers) mutually exclusive. See docs/architecture-decisions/deprecation-removal-deadlines.md.

Full changelog: v0.11.0...v1.0.0