Skip to content

v1.17.0

Choose a tag to compare

@sam-at-luther sam-at-luther released this 11 Feb 01:52
· 1542 commits to main since this release
fb17119

What's Changed

Highlights

Semantic Analysis Engine (analysis/ package)

Scope-aware semantic analysis with cross-file workspace scanning. Powers 5 new lint checks: undefined-symbol, unused-variable, unused-function, shadowing, and user-arity. Use --workspace=. to enable.

Embedder Integration APIs

  • Lint API: lint.LintConfig with Registry field + LintFiles() — embedders pass their PackageRegistry so Go-provided symbols are visible to semantic analysis
  • Doc API: libhelp.CheckMissing() + lisplib.NewDocEnv() — embedders can check missing docs and query documentation across their entire environment

LSP Support Foundations

  • End positions on token.Location for LSP range support
  • Severity levels on lint diagnostics
  • Format-preserving parser options API
  • Structured parse error conditions
  • Function metadata helper for hover/signature help

Full Changelog: v1.16.14...v1.17.0