Skip to content

feat(python): python code intelligence via Pyrefly with Ruff formatting#3016

Open
abose wants to merge 1 commit into
mainfrom
ai
Open

feat(python): python code intelligence via Pyrefly with Ruff formatting#3016
abose wants to merge 1 commit into
mainfrom
ai

Conversation

@abose

@abose abose commented Jul 7, 2026

Copy link
Copy Markdown
Member
  • New PythonSupport default extension (desktop only): completion, hover, signature help, jump-to-definition, references, type diagnostics and quick fixes through the shared LSP framework, powered by an exact-pinned Pyrefly wheel installed on demand from PyPI (sha256-verified, node-side download + stdlib zip extraction, no npm or Python runtime needed)
  • Ruff installs alongside (own pin, independent upgrade) and powers only the Beautify command as a standalone 'ruff format' stdin call
  • Generic NodeUtils: downloadFile (streamed, progress events, sha256), extractZipFile (stdlib unzipper, restores exec bits), setExecutableBits, execFileWithInput
  • LSP framework: per-server workspaceConfiguration served to workspace/configuration pulls (pyrefly treats the null fallback answer as all-diagnostics-off)
  • Install UX shared with PHP: once-per-lifetime dialog over the find-bar prompt (terse line + benefits hover card + powered-by links + download size beside the action buttons); bar styles generalized to lsp-install-*
  • Fix buttons (problems panel + hover quick view) now show the LSP code action title as tooltip so users see what a fix will apply
  • integration:Python LSP suite (7 specs) + fixtures

- New PythonSupport default extension (desktop only): completion, hover,
  signature help, jump-to-definition, references, type diagnostics and
  quick fixes through the shared LSP framework, powered by an exact-pinned
  Pyrefly wheel installed on demand from PyPI (sha256-verified, node-side
  download + stdlib zip extraction, no npm or Python runtime needed)
- Ruff installs alongside (own pin, independent upgrade) and powers only
  the Beautify command as a standalone 'ruff format' stdin call
- Generic NodeUtils: downloadFile (streamed, progress events, sha256),
  extractZipFile (stdlib unzipper, restores exec bits), setExecutableBits,
  execFileWithInput
- LSP framework: per-server workspaceConfiguration served to
  workspace/configuration pulls (pyrefly treats the null fallback answer
  as all-diagnostics-off)
- Install UX shared with PHP: once-per-lifetime dialog over the find-bar
  prompt (terse line + benefits hover card + powered-by links + download
  size beside the action buttons); bar styles generalized to lsp-install-*
- Fix buttons (problems panel + hover quick view) now show the LSP code
  action title as tooltip so users see what a fix will apply
- integration:Python LSP suite (7 specs) + fixtures
@sonarqubecloud

sonarqubecloud Bot commented Jul 7, 2026

Copy link
Copy Markdown

Quality Gate Failed Quality Gate failed

Failed conditions
20.8% Duplication on New Code (required ≤ 3%)

See analysis details on SonarQube Cloud

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant