Closed jwortmann closed 1 year ago
This seems to be an issue with pygls
and lspprotocol
and it's already worked on: https://github.com/openlawlibrary/pygls/issues/317#issuecomment-1452962422
Hello Ruff Folk 😊 Tom here from Pygls, I just wanted to piggyback off this issue here to see if there's something we can do to improve Pygls.
My intuition is that this error occurred because lsprotocol
updated in order to fix a different issue https://github.com/charliermarsh/ruff-vscode/issues/116 (which Ruff folk also found!). And because Pygls doesn't pin to any particular version of lsprotocol
then Pygls inherited this new error that this issue is reporting.
So what I'm wondering is what our options are for avoiding these kinds of issues in the future? Firstly, we did take somewhat of a calculated risk in depending on lsprotocol
whilst it hasn't hit v1 yet. So maybe we've caused some unnecessary hiccups with that decision, but hopefully that's just short term whilst lsprotocol
settles down. So the other thing is version pinning. I think tools like poetry
and its poetry.lock
can at least offer a way for holding back upstream bugs like this? Unfortunately lsprotocol
itself isn't yet using semantic versioning, so we don't have any other option in Pygls itself to soft pin to say, minor versions, eg; ~0.1
.
So I don't have a specific question per se, just wondering if anybody has any thoughts around this.
We are using pip
to install dependencies which doesn't have a way to generate "lock files" but I found that "pip-tools" can generate pip-compatible requirements.txt
files with all used packages listed. So created #9 to add this generated file. The Github's dependabot will notify us about all package updates and we can choose whether we want to update or not.
Error from the LSP logs (immediately after initialize request):
I've checked the file from the error message and
WorkspaceConfigurationParams
indeed doesn't exist in that file.Windows 11