Downloading of the Language Server hangs at a random percentage (See image). This happens sporadically after update of vscode. Happens after some updates, other updates fixes it. Reloading vscode just has the download hang at a different percentage. Reinstalling the extension did not solve this problem.

Thanks for your feedback! We have recently released a new and more performant language server called Pylance which likely solves these issues you are reporting. 聽You can download Pylance聽from the marketplace聽and install it alongside the core Python extension. Because our team's development efforts have shifted to support the new language server, we'd encourage you to try it out.
If you try out Pylance and this issue persists, you can open an issue on the pylance-release repo.
This seems to be an issue when an existing python repo is used in WSL. A hacky solution is to open a new workspace and create a python file. The language server will download successfully then reopen the existing workspace.
I'll start on Pylance soon. Sounds exciting
Why has this been closed? I'm experiencing the same issue but not using WSL but Remote/SSH. @Shahaed's solution worked for me, but we should not forget that this is only a workaround.
Our team's development efforts have shifted to support the new language server, we'd encourage you to try it out. We have recently released a new and more performant language server called Pylance which likely solves these issues you are reporting. 聽You can download Pylance聽from the marketplace聽and install it alongside the core Python extension.
@karthiknadig Thanks, I gave it a try but it does not yet look ready for prime to me. Without going into detail, Pylance does not show me the docstring for the to_csv() method while hovering in the following example whereas the default Python language server can do this:
pd.DataFrame([
{'file_path': html_task.output().path}
]).to_csv(stream))
Feel free to create an issue for this if Pylance should be able to support this. :-)
Most helpful comment
This seems to be an issue when an existing python repo is used in WSL. A hacky solution is to open a new workspace and create a python file. The language server will download successfully then reopen the existing workspace.
I'll start on Pylance soon. Sounds exciting