Skip to content

Conversation

@marcelomendoncasoares
Copy link
Contributor

This is the same content of the PR to multispy to add support to other platforms for Dart LSP.

@MischaPanch
Copy link
Contributor

Thanks! Have you actually tried it with Dart, does the language server work there?

@MischaPanch MischaPanch merged commit 8a71b35 into oraios:main Apr 21, 2025
@marcelomendoncasoares marcelomendoncasoares deleted the dart-lsp-non-linux branch April 22, 2025 00:59
@marcelomendoncasoares
Copy link
Contributor Author

Thanks! Have you actually tried it with Dart, does the language server work there?

@MischaPanch, I have tried, but with no success to the moment. After the dependencies from this PR, I could start Serena, but all symbol call tools end with the following error:

Error executing tool: 'relativePath'
Traceback (most recent call last):
  File ".../serena/src/serena/agent.py", line 551, in apply_ex
    result = apply_fn(**kwargs)
             ^^^^^^^^^^^^^^^^^^
  File ".../serena/src/serena/agent.py", line 753, in apply
    symbols = self.symbol_manager.find_by_name(
              ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".../serena/src/serena/symbol.py", line 230, in find_by_name
    symbol_roots = self.lang_server.request_full_symbol_tree(within_relative_path=within_relative_path, include_body=include_body)
                   ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".../serena/src/multilspy/language_server.py", line 1780, in request_full_symbol_tree
    ).result(timeout=self.timeout)
      ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".../Python/Python311/Lib/concurrent/futures/_base.py", line 456, in result
    return self.__get_result()
           ^^^^^^^^^^^^^^^^^^^
  File ".../Python/Python311/Lib/concurrent/futures/_base.py", line 401, in __get_result
    raise self._exception
  File ".../serena/src/multilspy/language_server.py", line 990, in request_full_symbol_tree
    return await process_directory(start_path)
           ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".../serena/src/multilspy/language_server.py", line 946, in process_directory
    child_symbols = await process_directory(item_path)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".../serena/src/multilspy/language_server.py", line 946, in process_directory
    child_symbols = await process_directory(item_path)
                    ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
  File ".../serena/src/multilspy/language_server.py", line 964, in process_directory
    fix_relative_path(root_nodes)
  File ".../serena/src/multilspy/language_server.py", line 955, in fix_relative_path
    path = Path(node["location"]["relativePath"])
                ~~~~~~~~~~~~~~~~^^^^^^^^^^^^^^^^
KeyError: 'relativePath'

I have not investigated deeper, but I imagine that this is due to Serena not being able to find the symbols, right?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants