Hacktoberfest 2026: as issues que os mantenedores marcaram para outubro, abertas e boas para iniciantes. Ver issues do Hacktoberfest

Exception in multi-root workspace without "path".

Aberta
#70 1 comentário 1 reação 0 responsáveis Ver no GitHub

Mantenedores costumam responder em até 2 dias

Ninguém assumiu esta issue ainda.

Avaliação

Dificuldade
3/5
Tempo estimado
1-2 dias
Facilidade para iniciantes
65/100
Tipo de issue
Bug
Clareza
Razoavelmente clara
Status de atividade
Pouca atividade
Stack de tecnologia
python, vscode
Domínio
tooling

Direção de pesquisa

Comece em python/vscode_common_python_lsp/server.py, próximo a update_workspace_settings na linha de código-fonte indicada, e reproduza a falha com a configuração de workspace multi-root mostrada. Rastreie como uma entrada de workspace sem um caminho do sistema de arquivos é tratada; considera-se concluído quando a inicialização não gerar mais a exceção de caminho NoneType para workspaces remotos e os servidores de linguagem afetados iniciarem com sucesso.

Escrita pelo modelo de indexação a partir do texto da issue.

Descrição

triage-needed

When using the MicroPico extension, for example, with its Remote Workspace support that adds a multi-root workspace as such:

{
	"folders": [
		{
			"path": "."
		},
		{
			"name": "Mpy Remote Workspace",
			"uri": "pico:"
		}
	]
}

The Pylint server (ms-python.pylint) appears to fail because of a non-existent "path" attribute (or similar). I'm also seeing the same error with both the Black Formatter (ms-python.black-formatter) and isort (ms-python.isort), ending with the same stack frames.

[info] Server: Start requested.
[info] Exception occurred for message "0"
Traceback (most recent call last):
  File "***\.vscode\extensions\ms-python.pylint-2026.7.11691008\bundled\libs\pygls\protocol\json_rpc.py", line 300, in _send_handler_result
    self._send_response(msg_id, result=future.result())
                                       ~~~~~~~~~~~~~^^
  File "C:\Program Files\Python314\Lib\concurrent\futures\_base.py", line 447, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "C:\Program Files\Python314\Lib\concurrent\futures\_base.py", line 396, in __get_result
    raise self._exception
  File "***\.vscode\extensions\ms-python.pylint-2026.7.11691008\bundled\libs\pygls\protocol\json_rpc.py", line 273, in _run_generator
    value = future.result() if future is not None else None
            ~~~~~~~~~~~~~^^
  File "C:\Program Files\Python314\Lib\concurrent\futures\_base.py", line 447, in result
    return self.__get_result()
           ~~~~~~~~~~~~~~~~~^^
  File "C:\Program Files\Python314\Lib\concurrent\futures\_base.py", line 396, in __get_result
    raise self._exception
  File "***\.vscode\extensions\ms-python.pylint-2026.7.11691008\bundled\libs\pygls\protocol\json_rpc.py", line 236, in _execute_handler
    result = handler(*args, **kwargs)
  File "***\.vscode\extensions\ms-python.pylint-2026.7.11691008\bundled\tool\lsp_server.py", line 718, in initialize
    tool_server.apply_settings(params)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^
  File "***\.vscode\extensions\ms-python.pylint-2026.7.11691008\bundled\libs\vscode_common_python_lsp\server.py", line 482, in apply_settings
    self.update_workspace_settings(settings)
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^^^^^^^^^^
  File "***\.vscode\extensions\ms-python.pylint-2026.7.11691008\bundled\libs\vscode_common_python_lsp\server.py", line 152, in update_workspace_settings
    key = normalize_path(
        uris.to_fs_path(setting["workspace"]),
        resolve_symlinks=self.config.resolve_symlinks,
    )
  File "***\.vscode\extensions\ms-python.pylint-2026.7.11691008\bundled\libs\vscode_common_python_lsp\paths.py", line 236, in normalize_path
    path = pathlib.Path(file_path)
  File "C:\Program Files\Python314\Lib\pathlib\__init__.py", line 150, in __init__
    raise TypeError(
    ...<2 lines>...
        f"not {type(path).__name__!r}")
TypeError: argument should be a str or an os.PathLike object where __fspath__ returns a str, not 'NoneType'

[info] [Error] Server initialization failed.

Relevant source: https://github.com/microsoft/vscode-common-python-lsp/blob/0258b220929850986b1d9413ac27b203a72acc04/python/vscode_common_python_lsp/server.py#L137

Workarounds

A workaround is to disable the Remote Workspace, and not enable until after the analysis servers have already started.

Linguagem predominante
Python
Estrelas
2
Forks
3
Merge médio
2d 7h
PRs com merge (30d)
7

Preparar o ambiente

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de microsoft/vscode-common-python-lsp

Todas as issues de microsoft/vscode-common-python-lsp

Issues semelhantes

Mais issues de Python

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.