2.6 KiB
Migrating from ruff-lsp
While ruff server supports the same feature set as ruff-lsp, migrating to
ruff server may require changes to your Ruff or language server configuration.
!!! note
The [VS Code extension](https://github.com/astral-sh/ruff-vscode) settings include documentation to indicate which
settings are supported by `ruff server`. As such, this migration guide is primarily targeted at editors that lack
explicit documentation for `ruff server` settings, such as Helix or Neovim.
Unsupported Settings
Several ruff-lsp settings are not supported by ruff server. These are, as follows:
format.argsignoreStandardLibraryinterpreterlint.argslint.runpath
!!! note
Some of these settings, like `interpreter` and `path`, are still accepted by the VS Code
extension. `path`, in particular, can be used to specify a dedicated binary to use when
initializing `ruff server`. But the language server itself will no longer accept such settings.
New Settings
ruff server introduces several new settings that ruff-lsp does not have. These are, as follows:
configurationconfigurationPreferenceexcludeformat.previewlineLengthlint.selectlint.extendSelectlint.ignorelint.preview
Several of these new settings are replacements for the now-unsupported format.args and lint.args. For example, if
you've been passing --select=<RULES> to lint.args, you can migrate to the new server by using lint.select with a
value of ["<RULES>"].
Examples
Let's say you have these settings in VS Code:
{
"ruff.lint.args": "--select=E,F --line-length 80 --config ~/.config/custom_ruff_config.toml"
}
After enabling the native server, you can migrate your settings like so:
{
"ruff.configuration": "~/.config/custom_ruff_config.toml",
"ruff.lineLength": 80,
"ruff.lint.select": ["E", "F"]
}
Similarly, let's say you have these settings in Helix:
[language-server.ruff.config.lint]
args = "--select=E,F --line-length 80 --config ~/.config/custom_ruff_config.toml"
These can be migrated like so:
[language-server.ruff.config]
configuration = "~/.config/custom_ruff_config.toml"
lineLength = 80
[language-server.ruff.config.lint]
select = ["E", "F"]