Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Python-Lsp-Server as a replacement for Jedi-Language-Server #24756

Open
dasTanmoy0096 opened this issue Jan 29, 2025 · 1 comment
Open

Python-Lsp-Server as a replacement for Jedi-Language-Server #24756

dasTanmoy0096 opened this issue Jan 29, 2025 · 1 comment
Assignees
Labels
feature-request Request for new features or functionality info-needed Issue requires more information from poster triage-needed Needs assignment to the proper sub-team

Comments

@dasTanmoy0096
Copy link

dasTanmoy0096 commented Jan 29, 2025

Why does this extension use the much featureless Jedi-Language-Server? Considering much of the upstream work happens on Python-Lsp-Server, which is maintained by the Spyder-IDE Team, it is rather weird to not use the LSP that recieves more attention and features.

One of the especially better features of Python-Lsp is that it features inbuilt Docstring to Markdown. Jedi and Jedi-LSP both are notorious for showing insanely long document hovers for docstrings, Python Lsp seems to fix that by using it's own in-house solution.

Not to mention the supporting extensions such as Black, Isort, MyPy, etc. is kinda unnecessary cause Python-Lsp integrates them from the get go.

Any future plans to drop Jedi and instead use PyLsp?

@dasTanmoy0096 dasTanmoy0096 added the feature-request Request for new features or functionality label Jan 29, 2025
@github-actions github-actions bot added the triage-needed Needs assignment to the proper sub-team label Jan 29, 2025
@karthiknadig
Copy link
Member

@dasTanmoy0096 for tooling like linting, formatting, and import sorting, I recommend using the Ruff Extension. Ruff provides a high-performance, all-in-one solution that covers most rules from multiple linters (pylint, flake8, mccabe, many more), and it’s actively evolving. They are also working on a static type-checker, making it a strong candidate for modern Python tooling.

Regarding docstring formatting, jedi-language-server does use docstring-to-markdown. If the hover tooltips are excessively large, that sounds like a bug worth reporting to jedi-language-server.

The Python ecosystem is rapidly evolving, and we are continuously evaluating the best tools to use. While jedi has limitations, the alternative (PyLsp) also relies on jedi under the hood. Given the emergence of modern, high-performance tools, we might consider adding support for natively built servers or exposing an API that allows any server to be used.

@github-actions github-actions bot added the info-needed Issue requires more information from poster label Jan 31, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature-request Request for new features or functionality info-needed Issue requires more information from poster triage-needed Needs assignment to the proper sub-team
Projects
None yet
Development

No branches or pull requests

2 participants