Skip to content

Releases: mrcjkb/rustaceanvim

5.1.3

02 Aug 21:59
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[5.1.3] - 2024-08-02

Fixed

  • LSP (runnables/quickfix executor): Always add both stdout and stderr
    to the quickfix list.

[5.1.2] - 2024-08-02

Fixed

  • DAP: Autoload new configurations in on_attach [#466].

[5.1.1] - 2024-07-29

Fixed

  • Neotest: One test failure caused all succeeding tests to be marked as failed
    when using cargo-nextest 0.9.7 [#460].
  • Neotest: Disable ansi colour coding in output to ensure output can be parsed.
  • Rustc unpretty: Support Windows.
  • Auto-detect the rustc edition.
    This deprecates the vim.g.rustaceanvim.tools.rustc.edition option
    in favour of vim.g.rustaceanvim.tools.rustc.default_edition.

[5.1.0] - 2024-07-27

Added

  • LSP: Added colored ansi code diagnostic to floating and split windows
    for RustLsp renderDiagnostic.
    Thanks @xzbdmw!

[5.0.0] - 2024-07-26

BREAKING CHANGES

  • Require Neovim >= 0.10.0.
  • Rename types in LuaCATS annotations and vimdoc.

[4.26.1] - 2024-07-10

Fixed

[4.26.0] - 2024-07-07

Added

  • LSP: Added optional current/cycle arguments to
    the explainError and renderDiagnostic commands.
    No argument defaults to cycle, which is current base behaviour. current
    makes these functions only look for diagnostics in current cursor line
    Thanks @Rumi152!

Fixed

[4.25.1] - 2024-06-21

Changed

  • Testables: Default to termopen test executor if not using neotest

Added

Fixed

  • LSP: Support completions for RustLsp with selection ranges.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [[#295](https://github.com/mrcjkb/rustace...
Read more

5.1.2

02 Aug 18:25
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[5.1.2] - 2024-08-02

Fixed

  • DAP: Autoload new configurations in on_attach [#466].

[5.1.1] - 2024-07-29

Fixed

  • Neotest: One test failure caused all succeeding tests to be marked as failed
    when using cargo-nextest 0.9.7 [#460].
  • Neotest: Disable ansi colour coding in output to ensure output can be parsed.
  • Rustc unpretty: Support Windows.
  • Auto-detect the rustc edition.
    This deprecates the vim.g.rustaceanvim.tools.rustc.edition option
    in favour of vim.g.rustaceanvim.tools.rustc.default_edition.

[5.1.0] - 2024-07-27

Added

  • LSP: Added colored ansi code diagnostic to floating and split windows
    for RustLsp renderDiagnostic.
    Thanks @xzbdmw!

[5.0.0] - 2024-07-26

BREAKING CHANGES

  • Require Neovim >= 0.10.0.
  • Rename types in LuaCATS annotations and vimdoc.

[4.26.1] - 2024-07-10

Fixed

[4.26.0] - 2024-07-07

Added

  • LSP: Added optional current/cycle arguments to
    the explainError and renderDiagnostic commands.
    No argument defaults to cycle, which is current base behaviour. current
    makes these functions only look for diagnostics in current cursor line
    Thanks @Rumi152!

Fixed

[4.25.1] - 2024-06-21

Changed

  • Testables: Default to termopen test executor if not using neotest

Added

Fixed

  • LSP: Support completions for RustLsp with selection ranges.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The ...
Read more

5.1.1

29 Jul 17:35
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[5.1.1] - 2024-07-29

Fixed

  • Neotest: One test failure caused all succeeding tests to be marked as failed
    when using cargo-nextest 0.9.7 [#460].
  • Neotest: Disable ansi colour coding in output to ensure output can be parsed.
  • Rustc unpretty: Support Windows.
  • Auto-detect the rustc edition.
    This deprecates the vim.g.rustaceanvim.tools.rustc.edition option
    in favour of vim.g.rustaceanvim.tools.rustc.default_edition.

[5.1.0] - 2024-07-27

Added

  • LSP: Added colored ansi code diagnostic to floating and split windows
    for RustLsp renderDiagnostic.
    Thanks @xzbdmw!

[5.0.0] - 2024-07-26

BREAKING CHANGES

  • Require Neovim >= 0.10.0.
  • Rename types in LuaCATS annotations and vimdoc.

[4.26.1] - 2024-07-10

Fixed

[4.26.0] - 2024-07-07

Added

  • LSP: Added optional current/cycle arguments to
    the explainError and renderDiagnostic commands.
    No argument defaults to cycle, which is current base behaviour. current
    makes these functions only look for diagnostics in current cursor line
    Thanks @Rumi152!

Fixed

[4.25.1] - 2024-06-21

Changed

  • Testables: Default to termopen test executor if not using neotest

Added

Fixed

  • LSP: Support completions for RustLsp with selection ranges.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The server.settings function can now take a default_settings tabe
    to be merged.

Fixed

  • Loading settings from rust-analyzer.json:
    Potent...
Read more

5.1.0

26 Jul 22:05
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[5.1.0] - 2024-07-27

Added

  • LSP: Added colored ansi code diagnotic to floating and split window
    for RustLsp renderDiagnostic.
    Thanks @xzbdmw!

[5.0.0] - 2024-07-26

BREAKING CHANGES

  • Require Neovim >= 0.10.0.
  • Rename types in LuaCATS annotations and vimdoc.

[4.26.1] - 2024-07-10

Fixed

[4.26.0] - 2024-07-07

Added

  • LSP: Added optional current/cycle arguments to
    the explainError and renderDiagnostic commands.
    No argument defaults to cycle, which is current base behaviour. current
    makes these functions only look for diagnostics in current cursor line
    Thanks @Rumi152!

Fixed

[4.25.1] - 2024-06-21

Changed

  • Testables: Default to termopen test executor if not using neotest

Added

Fixed

  • LSP: Support completions for RustLsp with selection ranges.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The server.settings function can now take a default_settings tabe
    to be merged.

Fixed

  • Loading settings from rust-analyzer.json:
    Potential for duplicate lua config keys if json keys are of the format:
    "rust-analyzer.foo.bar"

[4.12.2] - 2024-03-11

Fixed

  • LSP/Windows: path normalisation preventing lsp from working
    textDocument/definition to std library [#285].
    Thanks @tangtang95!

[4.12.1] - 2024-03-09

Fixed

  • UI: Buggy concealing of elements in rendered diagnostics [[#280](https://github.com/mrcjkb/rustaceanvim/issu...
Read more

5.0.0

26 Jul 11:52
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[5.0.0] - 2024-07-26

BREAKING CHANGES

  • Require Neovim >= 0.10.0.
  • Rename types in LuaCATS annotations and vimdoc.

[4.26.1] - 2024-07-10

Fixed

[4.26.0] - 2024-07-07

Added

  • LSP: Added optional current/cycle arguments to
    the explainError and renderDiagnostic commands.
    No argument defaults to cycle, which is current base behaviour. current
    makes these functions only look for diagnostics in current cursor line
    Thanks @Rumi152!

Fixed

[4.25.1] - 2024-06-21

Changed

  • Testables: Default to termopen test executor if not using neotest

Added

Fixed

  • LSP: Support completions for RustLsp with selection ranges.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The server.settings function can now take a default_settings tabe
    to be merged.

Fixed

  • Loading settings from rust-analyzer.json:
    Potential for duplicate lua config keys if json keys are of the format:
    "rust-analyzer.foo.bar"

[4.12.2] - 2024-03-11

Fixed

  • LSP/Windows: path normalisation preventing lsp from working
    textDocument/definition to std library [#285].
    Thanks @tangtang95!

[4.12.1] - 2024-03-09

Fixed

  • UI: Buggy concealing of elements in rendered diagnostics [#280].
  • LSP: Use file directory name as cwd when getting cargo metadata.
    This prevents rustaceanvim from detecting the wrong project root
    in standalone files if the current cwd is ...
Read more

4.26.1

10 Jul 07:17
047f9c9
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[4.26.1] - 2024-07-10

Fixed

[4.26.0] - 2024-07-07

Added

  • LSP: Added optional current/cycle arguments to
    the explainError and renderDiagnostic commands.
    No argument defaults to cycle, which is current base behaviour. current
    makes these functions only look for diagnostics in current cursor line
    Thanks @Rumi152!

Fixed

[4.25.1] - 2024-06-21

Changed

  • Testables: Default to termopen test executor if not using neotest

Added

Fixed

  • LSP: Support completions for RustLsp with selection ranges.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The server.settings function can now take a default_settings tabe
    to be merged.

Fixed

  • Loading settings from rust-analyzer.json:
    Potential for duplicate lua config keys if json keys are of the format:
    "rust-analyzer.foo.bar"

[4.12.2] - 2024-03-11

Fixed

  • LSP/Windows: path normalisation preventing lsp from working
    textDocument/definition to std library [#285].
    Thanks @tangtang95!

[4.12.1] - 2024-03-09

Fixed

  • UI: Buggy concealing of elements in rendered diagnostics [#280].
  • LSP: Use file directory name as cwd when getting cargo metadata.
    This prevents rustaceanvim from detecting the wrong project root
    in standalone files if the current cwd is a cargo project.

[4.12.0] - 2024-03-08

Fixed

  • DAP: :RustLsp! debuggables not falling back to UI select
    when no de...
Read more

4.26.0

07 Jul 12:39
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[4.26.0] - 2024-07-07

Added

  • LSP: Added optional current/cycle arguments to
    the explainError and renderDiagnostic commands.
    No argument defaults to cycle, which is current base behaviour. current
    makes these functions only look for diagnostics in current cursor line
    Thanks @Rumi152!

Fixed

[4.25.1] - 2024-06-21

Changed

  • Testables: Default to termopen test executor if not using neotest

Added

Fixed

  • LSP: Support completions for RustLsp with selection ranges.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The server.settings function can now take a default_settings tabe
    to be merged.

Fixed

  • Loading settings from rust-analyzer.json:
    Potential for duplicate lua config keys if json keys are of the format:
    "rust-analyzer.foo.bar"

[4.12.2] - 2024-03-11

Fixed

  • LSP/Windows: path normalisation preventing lsp from working
    textDocument/definition to std library [#285].
    Thanks @tangtang95!

[4.12.1] - 2024-03-09

Fixed

  • UI: Buggy concealing of elements in rendered diagnostics [#280].
  • LSP: Use file directory name as cwd when getting cargo metadata.
    This prevents rustaceanvim from detecting the wrong project root
    in standalone files if the current cwd is a cargo project.

[4.12.0] - 2024-03-08

Fixed

  • DAP: :RustLsp! debuggables not falling back to UI select
    when no debuggable is found.

Added

  • LSP: Support falling back to UI select for :RustLsp! runnables
    and :RustLsp! testables.

[4.11.1] - 2024-03-04

Fixed

  • LSP/Windows: Wi...
Read more

4.25.1

21 Jun 15:03
d6d7620
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[4.25.1] - 2024-06-21

Changed

  • Testables: Default to termopen test executor if not using neotest

Fixed

  • LSP: Support completions for RustLsp with selection ranges.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The server.settings function can now take a default_settings tabe
    to be merged.

Fixed

  • Loading settings from rust-analyzer.json:
    Potential for duplicate lua config keys if json keys are of the format:
    "rust-analyzer.foo.bar"

[4.12.2] - 2024-03-11

Fixed

  • LSP/Windows: path normalisation preventing lsp from working
    textDocument/definition to std library [#285].
    Thanks @tangtang95!

[4.12.1] - 2024-03-09

Fixed

  • UI: Buggy concealing of elements in rendered diagnostics [#280].
  • LSP: Use file directory name as cwd when getting cargo metadata.
    This prevents rustaceanvim from detecting the wrong project root
    in standalone files if the current cwd is a cargo project.

[4.12.0] - 2024-03-08

Fixed

  • DAP: :RustLsp! debuggables not falling back to UI select
    when no debuggable is found.

Added

  • LSP: Support falling back to UI select for :RustLsp! runnables
    and :RustLsp! testables.

[4.11.1] - 2024-03-04

Fixed

  • LSP/Windows: Windows path normalisation preventing LSP client
    from working [#273].

[4.11.0] - 2024-03-03

Added

  • LSP: By default, don't auto-attach to buffers that aren't files [#268].

Fixed

  • LSP: Bug preventing reload workspace on save Cargo.toml
    when op...
Read more

4.25.0

16 Jun 16:35
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[4.25.0] - 2024-06-16

Added

  • LSP: If Neovim's file watcher is disabled, configure rust-analyzer
    to enable server-side file watching, unless it has been configured
    otherwise [#423].

Fixed

  • DAP: Dynamic library path setup using nightly rust builds
    (stable rustc was always used due to a missing cwd parameter).
    Thanks @morfnasilu!
  • DAP: Dynamic linking on macOS not working due to a typo in the
    DYLD_LIBRARY_PATH environment variable.
    Thanks @morfnasilu!

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The server.settings function can now take a default_settings tabe
    to be merged.

Fixed

  • Loading settings from rust-analyzer.json:
    Potential for duplicate lua config keys if json keys are of the format:
    "rust-analyzer.foo.bar"

[4.12.2] - 2024-03-11

Fixed

  • LSP/Windows: path normalisation preventing lsp from working
    textDocument/definition to std library [#285].
    Thanks @tangtang95!

[4.12.1] - 2024-03-09

Fixed

  • UI: Buggy concealing of elements in rendered diagnostics [#280].
  • LSP: Use file directory name as cwd when getting cargo metadata.
    This prevents rustaceanvim from detecting the wrong project root
    in standalone files if the current cwd is a cargo project.

[4.12.0] - 2024-03-08

Fixed

  • DAP: :RustLsp! debuggables not falling back to UI select
    when no debuggable is found.

Added

  • LSP: Support falling back to UI select for :RustLsp! runnables
    and :RustLsp! testables.

[4.11.1] - 2024-03-04

Fixed

  • LSP/Windows: Windows path normalisation preventing LSP client
    from working [#273].

[4.11.0] - 2024-03-03

Added

  • LSP: By default, don't auto-attach to buffers that aren't files [#268].

Fixed

  • LSP: Bug preventing reload workspace on save Cargo.toml
    when opening another Rust buffer [#270].
  • LSP: Don't try to delete RustLsp command on client exit
    if it doesn't exist, and fail silently....
Read more

4.24.1

15 Jun 09:52
Compare
Choose a tag to compare

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog,
and this project adheres to Semantic Versioning.

[4.24.1] - 2024-06-15

Fixed

  • Don't set deprecated allFeatures setting by default.
    Thanks @zjp-CN!
  • Error when decoding invalid JSON or blank string from cargo metadata.

[4.24.0] - 2024-05-30

Added

  • Config: Add a new config.server.root_dir option to override the root
    directory detection logic
    Thanks @bgw!

Fixed

  • LSP: Force-extend Neovim's default client capabilities
    with detected plugin capabilities, to ensure plugin capability
    extensions take precedence in case of conflict.

[4.23.5] - 2024-05-24

Fixed

  • LSP: Bug preventing rustaceanvim from loading rust-analyzer.json settings
    if there's no "rust-analyzer": key.

[4.23.4] - 2024-05-23

Fixed

  • LSP: Error when editing a rust file in a directory
    that does not exist (#404).

[4.23.3] - 2024-05-23

Fixed

  • LSP/Clippy: use correct rust-analyzer config key, check instead
    of checkOnSave, to enable clippy if detected.
    Thanks @Ryex!

[4.23.2] - 2024-05-16

Fixed

  • Executors/termopen:
    <Esc> to close buffer not silent.
    Thanks @b1nhack!
  • LSP: Only register completionItem.snippetSupport client capability
    when using Neovim >= 0.10.

[4.23.1] - 2024-05-12

Fixed

  • UI/Config: Don't override Neovim defaults in default float_win_config.

[4.23.0] - 2024-05-11

Added

  • Config: Open vertical splits from floating windows with
    tools.float_win_config.open_split = 'vertical'.
    Thanks @dwtong!

[4.22.10] - 2024-05-04

Fixed

  • Neotest: Remove unsupported --show-output flag when running
    with cargo-nextest.

[4.22.9] - 2024-05-04

Changed

  • Update neovim nightly API call.
    If you are using neovim nightly, you need a build after May 04, 2024.
    Thanks @NicolasGB!

[4.22.8] - 2024-04-26

Fixed

[4.22.7] - 2024-04-26

Fixed

  • LSP: renderDiagnostic and explainError skipped diagnostics
    if they were in the same location
    as other diagnostics.
    Thanks @LukeFranceschini!
  • LSP: renderDiagnostic and explainError stopped searching early
    and defaulted to the first
    diagnostic in the file,
    instead of the next diagnostic after the current cursor position.
    Thanks @LukeFranceschini!

[4.22.6] - 2024-04-19

Changed

  • Update neovim nightly API call [#365].
    If you are using neovim nightly, you need a build after April 19, 2024.

[4.22.5] - 2024-04-18

Fixed

  • UI: float_win_config.border not applied
    to code action group windows [#363].

[4.22.4] - 2024-04-15

Fixed

  • Neotest: Replace nightly API call with Neovim 0.9 API call
    (introduced in 4.22.1).

[4.22.3] - 2024-04-14

Fixed

  • Neotest: No tests found when getting root directory for a project directory.

[4.22.2] - 2024-04-14

Fixed

  • Neotest/DAP: Undo sanitize command for debugging when running with
    a non-dap strategy, in case it was sanitized during a dap strategy run.

[4.22.1] - 2024-04-14

Fixed

  • Neotest/DAP: multiple --no-run flags added to command when debugging
    multiple times [#357].

[4.22.0] - 2024-04-14

Added

  • Config: Customise group action icon with tools.code_actions.group_icon.
    Thanks @ColdMacaroni!

[4.21.2] - 2024-04-13

Fixed

  • Health: Report error if version check fails for a required
    external dependency. This should help with false positives
    when detecting rust-analyzer if the rustup wrapper is installed,
    but rust-analyzer isn't.

[4.21.1] - 2024-04-11

Fixed

  • LSP: renderDiagnostic doesn't move cursor if it falls back to the
    first diagnostic when searching forwards.

[4.21.0] - 2024-04-01

Added

  • LSP: Support structural search and replace (SSR)
    just for the selected range.

[4.20.0] - 2024-04-01

Added

  • DAP/LSP: tools.cargo_override option to
    override the cargo command for runnables/debuggables/testables.

[4.19.0] - 2024-04-01

Added

  • DAP/LSP: RustLsp [run|debug] commands for running/debugging targets
    at the current cursor position.
  • LSP: Join multiple visually selected lines with :RustLsp joinLines.

Fixed

  • LSP: Escape character inserted before } when applying code action
    with SnippetTextEdit [#303].

[4.18.2] - 2024-03-28

Changed

  • DAP: Output command that was run if debug build
    compilation fails.

[4.18.1] - 2024-03-28

Fixed

  • DAP: Add both stderr and stdout to error message
    if debug build compilation fails.

[4.18.0] - 2024-03-27

Added

  • :RustLsp openDocs command [#325].

[4.17.0] - 2024-03-26

Added

Fixed

  • Neotest: Correctly mark passed and skipped tests when running a
    whole test file or module [#321].
  • DAP: Only load .vscode/launch.json configurations that don't conflict
    with the configured adapter type.

[4.16.0] - 2024-03-24

Added

  • Initialization: Warn if nvim-lspconfig.rust-analyzer setup is detected.

[4.15.0] - 2024-03-24

Added

  • LSP: RustAnalyzer reloadSettings command to reload settings without restarting
    [#309].
    Thanks @GuillaumeLagrange!

Fixed

  • DAP: Defer automatic registration of nvim-dap configurations on LSP client init,
    to improve reliability.

[4.14.1] - 2024-03-17

Fixed

  • Health: rust-analyzer reported as not found in neovim 0.9 [#302].

[4.14.0] - 2024-03-17

Added

  • [Experimental] Load rust-analyzer settings from .vscode/settings.json.
    Can be enabled by setting vim.g.rustaceanvim.server.load_vscode_settings
    to true [#286].
  • Health: Detect rust-analyzer wrapper without rust-analyzer (Neovim >= 0.10).

Fixed

  • Config: Don't validate configs whose types are defined in external APIs
    such as nvim-dap [#294].
  • DAP: Don't error if adding source/library information fails (warn instead).
  • LSP/DAP: Fail silently if adding DAP configurations
    on LSP client attach fails [#295].

[4.13.0] - 2024-03-15

Added

  • LSP: More flexibility when overriding default rust-analyzer settings.
    The server.settings function can now take a default_settings tabe
    to be merged.

Fixed

  • Loading settings from rust-analyzer.json:
    Potential for duplicate lua config keys if json keys are of the format:
    "rust-analyzer.foo.bar"

[4.12.2] - 2024-03-11

Fixed

  • LSP/Windows: path normalisation preventing lsp from working
    textDocument/definition to std library [#285].
    Thanks @tangtang95!

[4.12.1] - 2024-03-09

Fixed

  • UI: Buggy concealing of elements in rendered diagnostics [#280].
  • LSP: Use file directory name as cwd when getting cargo metadata.
    This prevents rustaceanvim from detecting the wrong project root
    in standalone files if the current cwd is a cargo project.

[4.12.0] - 2024-03-08

Fixed

  • DAP: :RustLsp! debuggables not falling back to UI select
    when no debuggable is found.

Added

  • LSP: Support falling back to UI select for :RustLsp! runnables
    and :RustLsp! testables.

[4.11.1] - 2024-03-04

Fixed

  • LSP/Windows: Windows path normalisation preventing LSP client
    from working [#273].

[4.11.0] - 2024-03-03

Added

  • LSP: By default, don't auto-attach to buffers that aren't files [#268].

Fixed

  • LSP: Bug preventing reload workspace on save Cargo.toml
    when opening another Rust buffer [#270].
  • LSP: Don't try to delete RustLsp command on client exit
    if it doesn't exist, and fail silently.

[4.10.2] - 2024-03-01

Fixed

  • LSP: Schedule Neovim API calls on on_exit [#267].
    Thanks @tomtomjhj!

[4.10.1] - 2024-02-27

Fixed

  • UI: Explicitly disable signcolumn for grouped code action
    and hover action windows [#262].

[4.10.0] - 2024-02-23

Added

  • LSP/Grouped code actions: Add <ESC> keymap to close buffer.
    This is consistent with the behaviour of the hover actions buffer.

[4.9.0] - 2024-02-23

Added

  • Nix: codelldb ...
Read more