astral-sh/ruff-lsp

support typeguard 4.x

billwanjohi opened this issue · 6 comments

ruff-lsp currently depends on pygls, which does not yet have a version that supports typeguard >=4.0.0. This prevents me from installing this tool in a python environment that relies on newer versions of that library (e.g. phantom-types >=2).

Note that while #187 asserts that dropping Python 3.7 support blocks typeguard upgrade, the typeguard version history and commit log indicate that Python 3.7 is supported up to version 4.1.2, so this could plausibly be independently addressed.


A couple of workarounds I'm aware of:

  • install ruff-lsp via a system package manager and the conflicting libraries only in individual virtual environments
    • this works until you have another binary that you want global access to
  • install ruff-lsp via pipx, which provides isolated environments for each package under management
    • this works but is yet another tool to manage, for those who haven't already adopted it
zanieb commented

Thanks for the note regarding Python 3.7 and typeguard — I've updated that issue.

pygls, which does not yet have a version that supports typeguard >=4.0.0

What can we do here then? Maybe I misunderstand you but if pygls does not support it then how can we resolve this issue?

xref #229

Yeah, I imagine the first step is opening an issue with pygls, to at least get a sense of their plans.

zanieb commented

I've resolved this upstream in openlawlibrary/pygls#405, we'll bump our pygls and typeguard versions shortly.

zanieb commented

Should be resolved by #302

@zanieb - You rock, thank you.

Amazing!