github dense-analysis/ale v3.3.0
ALE v3.3.0

16 months ago

New Features

  • ALE is now tested against the following Vim versions:
    • Vim 8.0
    • Vim 9.0
    • NeoVim 0.2
    • NeoVim 0.8
  • LSP completion messages with textEdit but no insertTextFormat. #4124
  • b:ale_shell and b:ale_shell_arguments can now be used to set shell options
    per-buffer. #4146
  • ALE now advertises codeActionLiteralSupport so language servers such as
    rust-analyzer return code actions to ALE. #4163
  • An ALEGoToImplementation command has been added to go to the location
    of the implementation of a symbol via supporting language servers.
  • All floating window borders characters can now be configured with
    g:ale_floating_window_border. #4215
  • Floating windows can be heavily customised with
    g:ale_floating_preview_popup_opts. #4247
  • The default omnicompletion regex for Racket is now '\k\+$'. #4186 #4293 #4352
  • ALE completion has been tweaked to work better with C files. #4231
  • ALE now always sets out_cb or err_cb for jobs to swallow messages to
    prevent Vim from excessively polling results. #4259
  • ALE now outputs virtual-text messages in Vim 9. #4281 #4291
  • virtual-text messages can be shown for all lines, not only the line the cursor
    is on, by setting ale_virtualtext_cursor = 'all'. #4289
  • virtual-text messages are now enabled by default where supported nicely. #4396
  • ALE now reports LSP linters that fail to run due to a project root not being
    set as an error, so you can figure out why nothing is happening more easily.
    #4207

New Linters

New Fixers

Linter Enhancements

  • You can now override --lint options for awk. #4114
  • rust-analyzer can now be run for non-Cargo projects. #4118
  • ALE now reports errors from a ghc panic. #4145
  • pylama output handling has been improved #4106
  • The default list of YAML linters is now spectral, yaml-language-server,
    and yamllint to avoid running linters specialised for particular
    applications of YAML. #4178
  • ALE now runs vimls for Vader files by default, and the default list of
    linters for Vader files is to run vimls. #4201
  • ALE now distinguishes between warnings and errors for golangci_lint. #4182
  • ALE now supports newer ansible-lint versions. #4188
  • ALE now checks for .mypy.ini to detect a Python project root. #4202
  • ALE now supports ember-template-lint >= 4.0.0, in addition to older
    versions. #4200
  • ALE now reads only shows detailed error messages if detail is not empty
    for terraform validate. #4157
  • YAML actionlint options can now be configured with
    ale_yaml_actionlint_options. #4216
  • ALE now runs dart analyze with --fatal-infos to capture more information.
    #4237
  • ALE now searches for deno.json and deno.jsonc to detect a Deno project
    root. #4306
  • The volar language server executable name now defaults to
    vue-language-server, which is its current name. #4308
  • clj-kondo is now run with a filename hint to get more accurate problems.
    #4315
  • ALE now uses header-specific filetype options for clang to improve on
    the accuracy of problems ALE reports. #4318 #4334
  • ALE now includes pyrightconfig.json and pyrightconfig.toml in the list of
    files it uses to find a Python project root. #4321
  • ALE now sets the cwd for pylsp and Pyright to the detected or manually
    configured project root to fix incorrect import errors produce by either
    pylsp with the mypy plugin, or by Pyright. #4388
  • ruff is now enabled as a linter for Python by default.
  • Options can now be configured for hadoint. #4353
  • --config is now explicitly set for checkmate so it loads the correct
    configuration file. #4351
  • The executable for markdownlint is now configurable. #4358
  • nix versions 2.12 and up are supported properly now. #4394

Fixer Enhancements

  • shfmt now runs with -filename= and no other options by default to
    use .editorconfig settings. #4244
  • dprint is now suggested for more filetypes. #4320
  • clang-format is now suggested for more filetypes. #4367

Bugs Fixed

  • :ALEImport should work with more language servers. #4105
  • ALE now reports errors ending at the last line in a file when linters reports
    end lines beyond the end of the file. #4130
  • ale_haskell_hls_executable was incorrectly named
    ale_haskell_his_executable. #4241
  • ALE no longer shows error messages on hover if ale_enabled == 0. #4277
  • <Plug>(ale_go_to_type_definition_in_vsplit) didn't run the command. #4304
  • A missing <Plug>(ale_go_to_implementation) mapping has been defined. #4337
  • ALE no longer errors when ansible-lint returns no output. #4373

Don't miss a new ale release

NewReleases is sending notifications on new releases.