You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I have verified this feature I'm about to request hasn't been suggested before.
Describe the enhancement you want to request
Follow-up to #5345, which was auto-closed for inactivity (the bot suggested opening a fresh one).
opencode already ships ty as a built-in Python LSP behind an experimental flag (experimentalLspTy in packages/opencode/src/lsp/server.ts), but there is no built-in ruff server counterpart — Ruff is wired up only as a formatter. Astral's own guidance is to run ty + ruff together (ty for types, ruff for lint + quick-fixes / import fixing), so the built-in Python LSP support is currently half-complete.
Proposal: add a flag-gated ruff LSP that mirrors the existing Ty server exactly and runs alongside pyright/ty rather than replacing them (same way eslint runs next to typescript):
new Ruff entry in lsp/server.ts, extensions .py/.pyi, launched via ruff server
I know this is achievable today via custom lsp config, and there were prior stale PRs (#9126, #14850). Filing this mainly to confirm whether a first-class, ty-symmetric built-in is wanted before I open a PR — happy to implement it if so.
Feature hasn't been suggested before.
Describe the enhancement you want to request
Follow-up to #5345, which was auto-closed for inactivity (the bot suggested opening a fresh one).
opencode already ships
tyas a built-in Python LSP behind an experimental flag (experimentalLspTyinpackages/opencode/src/lsp/server.ts), but there is no built-inruff servercounterpart — Ruff is wired up only as a formatter. Astral's own guidance is to run ty + ruff together (ty for types, ruff for lint + quick-fixes / import fixing), so the built-in Python LSP support is currently half-complete.Proposal: add a flag-gated
ruffLSP that mirrors the existingTyserver exactly and runs alongside pyright/ty rather than replacing them (same wayeslintruns next totypescript):Ruffentry inlsp/server.ts, extensions.py/.pyi, launched viaruff servertyruffon PATH or in.venv/venv, no auto-install (per the earlier maintainer note in [FEATURE]: ty + ruff lsp rather than pyright #5345)I know this is achievable today via custom
lspconfig, and there were prior stale PRs (#9126, #14850). Filing this mainly to confirm whether a first-class, ty-symmetric built-in is wanted before I open a PR — happy to implement it if so.