@@ -4,8 +4,76 @@ All notable changes to the "sac-language-support" extension will be documented i
44
55## [ 0.0.1] : [ release date]
66
7- - Added a minimal SaC language server that publishes compiler diagnostics.
8- - Added configurable diagnostics modes (` onSave ` , ` onType ` , ` manual ` ).
9- - Added compiler resolution strategy with ` system ` , ` stable ` , and ` develop ` channels.
10- - Added machine-readable diagnostics parsing support via configurable messaging arguments.
11- - Added bundled compiler folder conventions under ` vendor/sac2c/ ` .
7+ ### Language + Editor Support
8+
9+ - Added SaC language registration for ` .sac ` files.
10+ - Added language configuration for editor behaviors (comments/brackets/word boundaries).
11+ - Added SaC TextMate grammar + injection support for SaC-aware highlighting inside C scopes.
12+ - Added built-in SaC snippets.
13+ - Added SaC file icon contribution and icon theme mapping.
14+ - Added multiple bundled SaC color themes (` Default ` , ` Warm ` , ` Cool ` , ` Vibrant ` ).
15+
16+ ### Language Server (LSP)
17+
18+ - Added SaC language server activation and lifecycle wiring from the extension host.
19+ - Added diagnostics publication to Problems panel + inline squiggles.
20+ - Added hover provider for:
21+ - builtins + stdlib docs from `docs/builtins` and `docs/stdlib`
22+ - compiler-index-backed symbols when available
23+ - source-defined function docs/signatures fallback
24+ - Added go-to-definition provider using compiler navigation index with source/stdlib fallbacks.
25+ - Added safe server error handling (` runSafely ` ) so failures are logged instead of crashing server process.
26+
27+ ### Diagnostics Pipeline
28+
29+ - Added diagnostics execution modes: ` onSave ` , ` onType ` (debounced), ` manual ` .
30+ - Added diagnostics presentation modes: ` expanded ` , ` smart ` , ` hybrid ` .
31+ - Added best-effort parser/grouping pipeline for ` sac2c ` output.
32+ - Added related information + stack/context rendering controls:
33+ - `sac.diagnostics.includeRelatedInformation`
34+ - `sac.diagnostics.includeStackInMessage`
35+ - `sac.diagnostics.maxStackFrames`
36+ - Added workspace-wide diagnostics scan controls:
37+ - `sac.diagnostics.workspaceScan.enabled`
38+ - `sac.diagnostics.workspaceScan.onInitialize`
39+ - `sac.diagnostics.workspaceScan.onConfigurationChange`
40+ - `sac.diagnostics.workspaceScan.excludeDirectories`
41+
42+ ** Compiler prerequisite (current fork status):**
43+
44+ - Error-column diagnostics improvements rely on sac2c branch: < https://gitlab.sac-home.org/LuckyLuuk/sac2c/-/tree/luukk/error-end-column >
45+ - Related upstream MR draft: < https://gitlab.sac-home.org/sac-group/sac2c/-/merge_requests/633 >
46+
47+ ### Compiler Resolution + Execution
48+
49+ - Added compiler resolution strategy with channels: ` system ` , ` stable ` , ` develop ` .
50+ - Added explicit compiler path override via ` sac.compiler.path ` .
51+ - Added fallback behavior to system compiler when bundled channel binary is missing.
52+ - Added backend execution modes:
53+ - `local`
54+ - `wsl` (Windows host)
55+ - `docker`
56+ - Added configurable extra compiler args and deterministic messaging args:
57+ - `sac.compiler.extraArgs`
58+ - `sac.compiler.messaging.enabled`
59+ - `sac.compiler.messaging.args`
60+
61+ ### Navigation + Hover Docs Infrastructure
62+
63+ - Added markdown documentation lookup + formatting pipeline for hover content.
64+ - Added heading/section parsing helpers for richer hover rendering.
65+ - Added builtin family doc resolution (for example ` _add_SxS_ ` -> ` _add_.md ` ).
66+ - Added hover/definition runtime tracing controls via ` sac.compiler.trace ` and debug logging hooks.
67+
68+ ** Compiler prerequisite (current fork status):**
69+
70+ - Hover/navigation output-phase support currently depends on fork branch: < https://gitlab.sac-home.org/LuckyLuuk/sac2c/-/commits/luukk/vscode-extension-output-phase >
71+
72+ ### Repository + Packaging Foundations
73+
74+ - Added diagnostics architecture docs (` docs/diagnostics-pipeline.md ` , ` docs/editor-agnostic-diagnostics.md ` ).
75+ - Added extension packaging optimization:
76+ - esbuild bundle pipeline for extension + server outputs
77+ - prepublish bundle hook before `vsce package`
78+ - lean `.vscodeignore` rules for smaller VSIX artifacts
79+ - Added initial GitHub workflow foundation for nightly/stable VSIX release automation.
0 commit comments