vscode-rust VS rust-analyzer

Compare vscode-rust vs rust-analyzer and see what are their differences.

vscode-rust

Rust extension for Visual Studio Code (by rust-lang)
InfluxDB - Purpose built for real-time analytics at any scale.
InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured
vscode-rust rust-analyzer
8 134
1,401 14,055
- 1.2%
4.4 10.0
almost 2 years ago 3 days ago
TypeScript Rust
GNU General Public License v3.0 or later Apache License 2.0
The number of mentions indicates the total number of mentions that we've tracked plus the number of user suggested alternatives.
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.

vscode-rust

Posts with mentions or reviews of vscode-rust. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2022-08-24.
  • Pinecone: Rust – A hard decision pays off
    10 projects | news.ycombinator.com | 24 Aug 2022
    > it crashes process IDs more often than Justin Bieber crashes Maseratis: https://github.com/rust-lang/vscode-rust/issues/890

    So -- this guy used an extension (named Rust) with rust-analyzer, which was known to not work, and it didn't work(!), and the Rust extension author recommends he tries the extension made for rust-analyzer. That extension doesn't have the features he likes (it works for me and has loads of features, so I have no idea what this is about?), and so they close the issue?

    Hardly a case for the ages. Guy uses unsupported config and things don't work?

    > What clangd does is work.

    Don't doubt it. I'm just saying -- I haven't had any problems with the rust-analyzer extension since it became the Rust default. But, yes, I had a few hiccups and crashes beforehand, no doubt. I just have to imagine it's both younger, and doing more/different things than clangd.

  • RLS Deprecation | Rust Blog
    2 projects | /r/rust | 1 Jul 2022
    I know. It's been argued for a long time. But at least if you follow the advice to install RA, it's fine. And if you don't, you won't be able to install RLS anyway, but instead get a helpful message pointing to RA.
  • rust-analyzer changelog #113
    4 projects | /r/rust | 17 Jan 2022
    But the last commit to the Code extension was almost one year ago (an URL update), a pull request for a pretty annoying issue was not merged in more than a year, and the only activity on the issue tracker is people complaining about old issues and sometimes me asking them nicely to try rust-analyzer instead (but only when I'm pretty certain that their issue does not happen in RA).
  • rust-analyzer changelog #102
    5 projects | /r/rust | 8 Nov 2021
    It's been asked before: https://github.com/rust-lang/vscode-rust/issues/927. Basically, rust-analyzer is not (yet?) a rust-lang.org project and it's not even going to be mentioned in the official docs until that happens.
  • rust-analyzer changelog #59
    5 projects | /r/rust | 11 Jan 2021
    Yeah, see e.g. https://github.com/rust-lang/vscode-rust/issues/880.
  • rust-analyzer changelog #56
    3 projects | /r/rust | 21 Dec 2020
    RA will be merged with the vscode-rust extension and aims to replace RLS (tracking issue on the vscode-rust repo).

rust-analyzer

Posts with mentions or reviews of rust-analyzer. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-09-06.
  • LSP: The Good, the Bad, and the Ugly
    7 projects | news.ycombinator.com | 6 Sep 2024
    I've responded on reddit before (https://www.reddit.com/r/rust/comments/1eqqwa7/comment/lhwwn...), but I'll restate and cover some other things here.

    > I have a maybe wrong and bad opinion that LSP is actually at the wrong level. Right now every language needs to implement a from scratch implementation of their LSP server. These implementations are HUGE and take YEARS to develop. rust-analyzer is over 365,000 lines of code. And every language has their own massive, independent implementation.

    rust-analyzer a big codebase, but it's also less problematic than the raw numbers would make you think. rust-analyzer has a bunch of advanced functionality (term search https://github.com/rust-lang/rust-analyzer/pull/16092 and refactors), assists (nearly 20% of rust-analyzer!) and tests.

    > I think there should be a common Intellisense Database file format for providing LSP or LSP-like capabilities. Ok sure there will still be per-language work to be done to implement the IDB format.

    I think you might be describing formats like (https://code.visualstudio.com/blogs/2019/02/19/lsif) and SCIP (https://github.com/sourcegraph/scip). I personally like SCIP a bit more LSIF because SCIP's design makes it substantially easier to incrementally update a large index. We use SCIP with Glean (https://glean.software/) at work; it's pretty nice.

    > But you'd get like 95% of the implementation for free for any LLVM language. And generating a common IDB format should be a lot simpler than implementing a kajillion LSP protocols.

    I wouldn't say 95%. SCIP/LSIF can do the job for navigation, but that's only a subset of what you want from an IDE. For example:

  • Higher RAII, and the Seven Arcane Uses of Linear Types
    1 project | news.ycombinator.com | 14 May 2024
  • Cranelift code generation comes to Rust
    5 projects | news.ycombinator.com | 18 Mar 2024
    go build 3.62s user 0.76s system 171% cpu 2.545 total

    I was looking forward to parallel front-end[4], but I have not seen any improvement for these small changes.

    [1]: https://github.com/rust-lang/rust-analyzer

  • A guide on Neovim's LSP client
    7 projects | dev.to | 13 Jan 2024
    For example, intelephense can show diagnostics in real time, there is no need to save the file to get new diagnostics. But rust-analyzer, the language server for rust, can only update diagnostics after saving the file.
  • Top 10 Rusty Repositories for you to start your Open Source Journey
    11 projects | dev.to | 19 Dec 2023
    6. Rust Analyzer
  • The rust-analyzer vscode extension is not working at all.
    1 project | /r/rust | 7 Dec 2023
    The rust-analyzer readme suggests you go here for support request. But even there, you'll need to provide more details to get useful help.
  • LSP could have been better
    12 projects | news.ycombinator.com | 11 Oct 2023
    For example: https://github.com/rust-lang/rust-analyzer/blob/master/docs/...

    > If you create an LSP, it will work best in VS Code.

    Any editor can work just as well as (or even better than) VS Code.

  • Discussion Thread
    1 project | /r/neoliberal | 24 Sep 2023
    So, apparently the reason why rust-analyzer, the LSP server for Rust does not have persistent caching is because it would make "optimizing initial passes less important".
  • The AI Content Flippening
    1 project | news.ycombinator.com | 20 Sep 2023
  • Introducing RustRover – A Standalone Rust IDE by JetBrains
    1 project | /r/rust | 15 Sep 2023
    All I want to know is: Will it have a build configuration pulldown?

What are some alternatives?

When comparing vscode-rust and rust-analyzer you can also consider the following projects:

rust-analyzer - A Rust compiler front-end for IDEs [Moved to: https://github.com/rust-lang/rust-analyzer]

intellij-rust - Rust plugin for the IntelliJ Platform

syntax-highlighter - Syntax Highlighter extension for Visual Studio Code (VSCode). Based on Tree-sitter.

sublime-rust - The official Sublime Text 4 package for the Rust Programming Language

vscode-debug-visualizer - An extension for VS Code that visualizes data during debugging.

rustfmt - Format Rust code

RocksDB - A library that provides an embeddable, persistent key-value store for fast storage.

eglot - A client for Language Server Protocol servers

vscode-drawio - This unofficial extension integrates Draw.io (also known as diagrams.net) into VS Code.

coc-rust-analyzer - rust-analyzer extension for coc.nvim

vscode-cpptools - Official repository for the Microsoft C/C++ extension for VS Code.

typescript-language-server - TypeScript & JavaScript Language Server

InfluxDB - Purpose built for real-time analytics at any scale.
InfluxDB Platform is powered by columnar analytics, optimized for cost-efficient storage, and built with open data standards.
www.influxdata.com
featured
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com
featured