From 863198d4722f1081caf51946a8e1e3ba6f6d1e38 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Thomas=20M=C3=BCller?= Date: Tue, 8 Sep 2026 20:47:22 +0200 Subject: [PATCH] :sparkles: Adopt @spences10/pi-lsp project-local MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Declare the read-only LSP extension in .pi/settings.json so it is shared with the team and auto-installed on project trust. Pin 0.0.46 explicitly: a bare `pi install` writes `^0.0.10`, and in semver a caret on 0.0.x pins to exactly 0.0.10, which hard-wires typescript-language-server and predates TypeScript 7. 0.0.46 detects the repo's own typescript@7 (no lib/tsserver.js) and spawns tsc --lsp --stdio against it — no extra server package required. Commit pi's own .pi/npm/.gitignore sentinel rather than adding a rule to the project root .gitignore: pi put the file there deliberately, so leaving it in place (and tracked) is the least-surprise option for a human reading the tree. --- .pi/npm/.gitignore | 2 ++ .pi/settings.json | 3 +++ 2 files changed, 5 insertions(+) create mode 100644 .pi/npm/.gitignore create mode 100644 .pi/settings.json diff --git a/.pi/npm/.gitignore b/.pi/npm/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/.pi/npm/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore diff --git a/.pi/settings.json b/.pi/settings.json new file mode 100644 index 0000000..78630bf --- /dev/null +++ b/.pi/settings.json @@ -0,0 +1,3 @@ +{ + "packages": ["npm:@spences10/pi-lsp@0.0.46"] +}