diff options
| author | Gabriel Schneider <[email protected]> | 2026-09-29 22:31:27 -0300 |
|---|---|---|
| committer | Gabriel Schneider <[email protected]> | 2026-10-01 00:12:17 -0300 |
| commit | 7e8e2655567cab1c28597f44d0aec79e46b0deb8 (patch) | |
| tree | 1dd74701cfcbd6b663170e86df854166ed0f0600 /build.zig.zon | |
| parent | 813a0b2bf3c110f2287d7136f0dfc540c0978cd6 (diff) | |
| download | pardes-7e8e2655567cab1c28597f44d0aec79e46b0deb8.tar.gz pardes-7e8e2655567cab1c28597f44d0aec79e46b0deb8.zip | |
Zig files go to zls as a child process through the protocol client, as every other language does: the in-process ZLS backend goes
lsp_zls.zig (1,522 lines), the zls dependency, build.zig's zls wiring and the import graph it baked into the options only for it, and main.zig's reference go. lsp_client's table gains a zls row (PARDES_LSP_ZIG overrides it); Hover, Rename, Diagnostics, WsSymbols, Lspinfo and gd answer through it (checked with lspprobe and the snapshots against zls 0.16.1-dev). What changes for a user: zls must be on PATH; a completion's rows are zls's candidates at the cursor, where the linked analyser gave each one's declaration; document symbols carry no signature. The Zig snapshots (lsp, lspcomplete, lspcompletemoved, lspdebug, lsprelpath) run the real zls now: lspdebug reads the client's explain and report, lsprelpath spells gr's rows where it spelled a completion's, and their goldens are recorded again (stable over three runs). Lspinfo still opens with its backend line. The ReleaseFast tty binary is 105.35 MB to 96.28 MB, the Debug one 296.5 MB to 245.9 MB. docs/lsp.md, web.md, design.typ and the README say so.
Co-Authored-By: Claude Opus 5.5 <[email protected]>
Diffstat (limited to 'build.zig.zon')
| -rw-r--r-- | build.zig.zon | 14 |
1 files changed, 0 insertions, 14 deletions
diff --git a/build.zig.zon b/build.zig.zon index e766e158..81b2561a 100644 --- a/build.zig.zon +++ b/build.zig.zon @@ -12,20 +12,6 @@ .url = "git+https://git.sr.ht/~gbrls/cloud9#f35b7ed09d0a170e4ffe55b5286c28f74c9a8760", .hash = "cloud9-0.1.0-yt86quEKHgCwewf5XRlEZji1JCmdsfufsrZYGZqzHj5_", }, - // ZLS as a LIBRARY, not a language server: src/lsp_zls.zig imports the - // `zls` module its build.zig publishes and calls the analyser in - // process — no zls binary, no JSON-RPC, no handshake. - // - // Fetched like every other dependency, so it lands in zig-pkg/ and the - // build is reproducible from the .zon alone. Pinned to a COMMIT on the - // 0.16.x branch rather than a tag: master requires Zig 0.17-dev, and no - // tagged release both builds on 0.16 and exports these internals. - // 0.16.x pins `minimum_zig_version = "0.16.0"` exactly, which is why - // this needs none of the patches an older checkout did. - .zls = .{ - .url = "git+https://github.com/zigtools/zls#3e0d082084be43e36865136a138c1fe2023b33ca", - .hash = "zls-0.16.1-dev-rmm5ftfOJgAzIdWUGVB08ycFbud2O3viKnGF1HZgfKZJ", - }, // Pinned to the exact libvaxis commit ghostty is built against, so it // is compatible with ghostty's uucode configuration (the one we share // with it via `external_uucode` in build.zig). |
