Skip to content

forcedotcom/soql-language-server

SOQL Language Server

Provides SOQL language capabilities for text editors, including code-completion and errors checks. This package implements the server-side of the LSP protocol.

Salesforce's SOQL VS Code extension, which lives in repo salesforcedx-vscode, includes an LSP client implementation for this server.

Development

If you are interested in contributing, please take a look at the CONTRIBUTING guide.

  • yarn from the top-level directory to pull all dependencies
  • yarn build to build
  • yarn run lint to run static checks with eslint
  • yarn run test to run automated tests

This package is used by VS Code extension salesforcedx-vscode-soql which lives in repo salesforcedx-vscode.

During development, you can work with a local copy of the salesforcedx-vscode repo, and configure it to use your local build from your soql-language-server repo using yarn/npm links. Example:

# Make global links available
cd soql-language-server
yarn link

# Link to them from the VS Code SOQL extension package
cd salesforcedx-vscode
npm install
cd ./packages/salesforcedx-vscode-soql
npm link @salesforce/soql-language-server

With that in place, you can make changes to soql-language-server, build, and then relaunch the salesforcedx-vscode extensions from VS Code to see the changes.

Debug Jest Test

You can debug Jest test for an individual package by running the corresponding launch configuration in VS Codes RUN panel.

Resources