Skip to content

Implement LSP / Language Server #7763

@chriseth

Description

@chriseth

The main task in this issue is probably identifying the steps towards full LSP support.

Features for first release (mainly related to file lookup):

  • cwd should not matter for loading files / resolving paths
  • loading a single file with only relative imports should work without any configuration
  • it should be possible to configure root path and include paths
  • internal names cannot have file:// prefix due to absolute / direct imports, so we need translation functions
  • the server needs the ability to load files from disk itself (didOpen just means the client provides a "content override" to the server)

Features for subsequent releases (probably implemented in the client, but we should support it as much as possible):

  • node_modules should be auto-detected as an include path as much as possible
  • files synthesized by truffle should work (may need to invoke truffle to get it)
  • we should standardize the way how frameworks configure the language server, so this does not have to be implemented in all clients

Metadata

Metadata

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions