This project separates server distribution from editor integration:
- Server binaries are published as GitHub Release artifacts.
- Editor adapters stay thin and are distributed via editor-native channels.
- Artifact source:
.github/workflows/release.yml - Deliverables:
vbnet-language-server-*archives - Transport: stdio (default) and named pipes
- Artifact source:
.github/workflows/release.yml - Deliverables:
vbnet-language-support-*.vsix
- Source snapshot:
adapters/nvim/vbnet-lsp.nvim - Validation:
.github/workflows/editor-adapters.yml(nvim-smokejob) - Distribution target: dedicated plugin repository and Neovim plugin managers
- Source snapshot:
adapters/emacs/vbnet-eglot - Validation:
.github/workflows/editor-adapters.yml(emacs-smokejob) - Distribution target: dedicated adapter repository, then MELPA/package-vc
- MELPA recipe template:
adapters/emacs/vbnet-eglot/melpa-recipe
- Keep editor code limited to startup/configuration concerns.
- Do not duplicate language semantics already implemented by the server.
- Prefer standard LSP behavior first; add editor-specific glue only when needed.
- Keep server release cadence independent from adapter release cadence.
-
Publish language server artifacts from this repo.
-
Update adapter snapshots from this repo into dedicated editor adapter repos. Use:
powershell -NoProfile -ExecutionPolicy Bypass -File ./adapters/scripts/export-adapter-repos.ps1 -NvimRepoPath ../vbnet-lsp.nvim -EmacsRepoPath ../vbnet-eglot -Clean
-
Tag and publish adapters through editor-native channels.
-
Run smoke checks in this repo before and after adapter releases.
Detailed step-by-step: Adapter Release Checklist.