Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
JetBrains releases RustRover IDE for Rust development (infoworld.com)
172 points by thunderbong on May 25, 2024 | hide | past | favorite | 100 comments



Should probably link to the official announcement: https://blog.jetbrains.com/rust/2024/05/21/rustrover-is-rele....

Notably, there's a "free for non-commercial use" license that grants access to the entire RustRover IDE.

There's also controversy because JetBrains removed JavaScript/TypeScript support from RustRover right before this release, admittedly because they want to keep these features gated behind a paid subscription in IntelliJ. That wouldn't normally be an issue, except the IntelliJ Rust plugin is deprecated and doesn't have the support that RustRover does; so there's currently no single IDE that fully supports Rust + web projects, even though JetBrains could easily make one, and even though people would be willing to pay for it. The end of the blog mentions "IntelliJ IDEA Ultimate will include support for the Rust plugin for free" so hopefully they are addressing this; if they re-package Rust support into into IntelliJ but only as a paid plugin I think that would make most people happy.


I wish they had a fully modular license where you just tick boxes (each box is a language) and the price changes proportionally, or at least there should be some intermediate options between the single-language IDEs and IDEA Ultimate, something like a "two language license" or "three language license".

Edit: is Fleet going to be that way perhaps? Not sure if pricing has been revealed yet.


I think Fleet aims to do this, its been in preview for 3 years now so I'm not sure what's left for them to actually release the thing. I'm looking forward to only having one IDE installed and loading/unloading language plugins as required, instead of having multiple heavy IDEs.

On top of that, the architecture of Fleet seems more amenable to remote development, like what VSCode has with their SSH plugin. In my experience the remote development feature in its current state has been a buggy mess.


> I think Fleet aims to do this, its been in preview for 3 years now so I'm not sure what's left for them to actually release the thing

I know this isn't _technically_ something that needs to happen before a stable release, but their Vim plugin is pretty abysmal and I'm fairly sure that I'm not the only one who that would be a deal-breaker for.


I find their IdeaVim plugin basic, but it complements the IDE very well. Felt it’s best compare to others like Vs Code’s.

What do you not like about it?


As far as I can tell, the Vim mode in Fleet isn't even able to save files yet, which I feel like is literally the first thing I learned to do in Vim. I'm not really sure what it's even supposed to be able to do yet because it's missing so much that it's not worth the time for me to invest in playing around with it.


Sorry, I didn't read carefully, not realizing you were referring to Fleet. I have not used it before.

IdeaVim in the pre-fleet Jetbrains IDE work well (enough) for me. Tried with WebStorm, RubyMine, AppCode. I think I wouldn't use them as much if IdeaVim didn't exist.


Yep, I like the Vim plugin in their IDEs, and I'd be thrilled if Fleet provided that level of functionality for its plugin, but unfortunately it's not clear when that's going to happen, if ever.


Who uses vim in 2024? :D


Tonnes of people, and what does the year have to do with it? Both vim and neovim are actively maintained, including new feature development.


I use vim bindings in vscode. You should try it!


We must run in different circles; I feel like at pretty much every job I've had, at least a quarter of the people on the team use Vim key bindings in their editor (even when it's not Vim), and it's not uncommon for it to be over half of the team.


Anyone who wants one of the best ways to manipulate text.


Vim Motions are really good. But you don't need to use Neovim (the best fork) to get them. Doom Emacs with evil-mode is just one of many good examples of this.


What's the state of Fleet at this moment? I haven't been following it since I've tried a few years ago and looked it was still at its early stage then.

Is JetBrains aiming to replace IntelliJ with it at some point or it would be an offering to complement or compete with the current offerings?


> I'm looking forward to only having one IDE installed and loading/unloading language plugins as required, instead of having multiple heavy IDEs.

Eclipse has been doing this for decades. But its eclipse so it’s not as polished as IntelliJ etc.


In line with this idea, at least the 'datagrip' part of Jetbrain can sometime be added as a paid plugin. In my case, I've worked for a long time with the "WebStorm + Datagrip plugin" combo when doing fullstack JS.


> except the IntelliJ Rust plugin is deprecated

This is incorrect.

https://plugins.jetbrains.com/plugin/22407-rust

The current Rust plugin is not deprecated. Perhaps you are confusing it with the old plugin (https://github.com/intellij-rust/intellij-rust?ref=chillfish...)

They're still making releases (latest 4 days ago) and there is no mention that the plugin is deprecated.

In fact: https://blog.jetbrains.com/rust/2024/05/21/rustrover-is-rele...

"IntelliJ IDEA Ultimate will include support for the Rust plugin for free. However, to use the plugin in CLion, you’ll need a commercial RustRover license or buy it separately. "

> so there's currently no single IDE that fully supports Rust + web projects

Wrong. Latest IntelliJ with Rust plugin and whatever web plugins you want works fine.


In addition, the Fleet editor supports this use case https://www.jetbrains.com/fleet/


Fleet uses rust-analyzer for Rust support and not the jetbrains rust plugin that is used in RustRover and Intellij.

Considering the state Fleet is in you are much better off with VSCode for Rust + web dev support.


I can attest to that. Am using Ultimate and everything works and gets regular updates.

That includes Rust and web development.

I have been a happy paying customer for 10+ years.


You can always beta test their cutting edge releases and use those versions for free for 1 month. Don't whine about Jetbrains, they give you several options if you don't have the money to use their products.


why is this an issue?

if you want to use the software in this specialized combination, purchase it.

if you want to use the free/community editions, go ahead.

if you are a student or are using it for community/non-profit purposes JetBrains also has a pretty good licensing for students/education/non-profits.

aside from depriving a software maker from charging for their labour, while making profit yourself, what does this complaint actually achieve?


This seems to misrepresent the parent. Wasn’t the parent claim that you can’t pay for a seamless version even if you want to? They note that if a paid plugin was to be offered it would work for most ... I don’t know if they got the facts right but didn’t seem to be complaining about lack of free.


The parent post is mistaken

there is a perfectly fine rust plugin available with the intellij idea ultimate - provided you pay for intellij ultimate (and / or get it through education/nonprofit licensing)

https://news.ycombinator.com/item?id=40472463

https://plugins.jetbrains.com/plugin/22407-rust


That’s good to know, but doesn't change my comment substantively.


I have a C# backend with VueJS SPA using this backend. I just use Rider for all my development, having the backend and UI in the same project (in a monorepo). Having two IDEs would just make things less fluent IMHO.


Are you mixing .rs and .js(x)/.ts(x) files in the same project? Jetbrains doesn't support multiple languages in any version of their IDE well AFAIK. I daily drive PyCharm and Webstorm in parallel.


Worked fine for me with IntelliJ Ultimate - java, js, html, sql, etc in the same project


Can you use npm for your frontend and maven for your backend, all in the same project?

I think you can actually try to do it with separate module for each "subproject". But when I tried it, it was kind of buggy and very fragile. So in the end it was easier to just use two separate projects.


I have a personal project that uses npm for my frontend and Gradle for my backend and it just works in IntelliJ Ultimate. One module per subproject.


A good example of projects that do this are things built with Tauri.

I myself work on a web project with a Rust backend and a TS front end, all in the same repo.

That said I use VS: Code, not Jetbrains stuff. It handles this case just fine.


I think they are rethinking this in their new project, Fleet. But VS Code is so good at this that it sets a very high bar.


Privacy concerns mean Ill not be using VS Code any time soon. JetBrains gets my business for that reason alone


It does, IntelliJ ultimate has multiple language support for quite a while now.


No C++.


Yeah, contrary to the full open source Eclipse and Netbeans, JetBrains wants people to pay for InteliJ and Clion, when doing JNI development.

Android Studio has C++ support, because Google lacked a CDT counterpart when they went InteliJ, and had to do an agreement with JetBrains to include the support.


I have no problems mixing .jsx and .cs files in the same Rider project


FYI the free version of RustRover has forced telemetry that cannot be disabled.

"It’s also important to note that if you’re using a non-commercial license, you cannot opt out of the collection of anonymous usage statistics. This is similar to our Early Access Program (where statistics is opt-out) and in compliance with our Privacy Policy"


/etc/hosts


I don't think that can be GDPR compliant, personal data cannot be used as a form of or alternative to payment afaik.


It's not personal, it's anonymous.


I assume the telemetry data contains some sort of installation identifier and without hard evidence I will assume the IP address as well.


All our stat collection in the products is fully compliant with GDPR, it doesn't send any personal information and it's not possible to link to the specific user from it.


For the record, can you confirm that the telementry does not contain any sort of installation or system ID and the telemetry endpoint never at any point records the IP address?

A lot of companies claim gdpr compliance while blatantly disregarding it.

I think forcing telemetry on free users, after the AI debacle and recently having moved the headquarters out of moscow for trust reasons, leaves a bad taste.


I like the jetbrains products a lot and have been using IntelliJ as my main IDE for years.

What I don’t like is their pricing with regards to multiple products. I use IntelliJ 95% of the time and pay for it. Sometimes, I’m writing some Python or C and would like to have a decent IDE as well, but then I immediately need to purchase the „all products pack“. I wish there was a cheaper option for occasional use of other IDEs. Right now I use the PyCharm community edition, but this feels a bit silly :)

Hopefully Fleet will solve this.


I’m baffled by this. Many folks spend thousands on hardware. JetBrains makes such exceptional tools, I don’t understand how a few hundred bucks for the complete product pack is unreasonable (with understandable exceptions for folks with limited income). This stuff isn’t free, it surprises me when fellow engineers are averse towards paying for great software that helps us build software.


The price is so crazy cheap I don't get it. I pay $173/yr for the all products pack ($289 first year, $231 second year, $173 year 3+) and it's some of the best value/ROI.

Even if I though VSC was on the same level (I don't) the configuration and plugin management hell alone is worth $173/yr (No, I don't want to hear about how easy you think it is). If you're using it professionally then $173/yr is nothing, hell, I'd probably pay $300/yr and not gripe because again, I get so much value out of these tools. We are talking about a tiny fraction of a percentage of the income I make while using these tools.


The configuration management in JetBrains' products is far worse than in VSC. On the JetBrains side we have a configuration system based on a tree of XML files, some of which contain system-specific configuration and should not be checked in to version control (sometimes in the same file as shared configuration!). On the VSC side we have a handful of json files where system-specific configuration can be stored in the user's home directory, allowing for easy version control of shared configuration. What killer configuration management feature do JetBrains' products offer that outweighs the aforementioned flaws?


Okay, fine, I don’t disagree. Your complaints are warranted. VSCode is better, Xcode (imo) is worse.

>What killer configuration management feature do JetBrains' products offer that outweighs the aforementioned flaws?

I don’t know your use-case, but I’m sure that their products could support it if you spent a few minutes reading documentation.

Yes, it ain’t JSON, but it’s not “awful” either imo.

FWIW, one neat pattern is binding a nix file for setting up your developer environment with all the tools, scripts, etc. you need. You can even have nix bring in jetbrains products (pinned to a particular version) so the team is all squared away.


I don’t have to deal with JSON. It’s really that simple.

I’ve got better things to do than read every plugin’s docs for how they want to do something and hope it’s all up to date. Just give me a UI to configure it.


You can use Python plugin for Idea. It's essentially the same as PyCharm, at least theoretically.

No way to use C or C#, though. Those languages are outliers for some reason.


> then I immediately need to purchase the „all products pack“.

Most languages are available in IntelliJ via Plugins rather than needing to download the separate language specific product.


IntelliJ Ultimate has all the plugins ("other IDEs"). So you could purchase that one time, and use the fallback version for smaller tasks. Granted, it might not have the latest features.


It doesn't have them all, for example C.


is Fleet still being developed? I had a feeling it was dead given that Jetbrains has been pretty mum about it since the announcement couple years ago


They’re still building it. There was a new version 3 days ago.

https://blog.jetbrains.com/fleet/2024/05/fleet-1-35-is-out-i...


The VSCode extension for Rust is quite good too, probably the best IDE like support for any language I've tried.

I'm more excited for JetBrains Fleet than another standalone IDE at this point.


I like rust-analyzer in VSCode, but I've found that it does seem to struggle with large projects that have multiple nested Cargo workspaces. IntelliJ with the Rust plugin has handled that (admittedly niche) case better so far. I still prefer VSCode though so I just open each workspace in an individual window and it works more or less as expected.


I gave up on JetBrains because most of their language plugins are broken most of the time. VSCode plugins have a much larger user base and tend to work, and I don't need 9 different products. It's similar to what happened to Atom.

The main downside of VSCode is Electron leaks memory like crazy and will use north of 150 GiB of RAM.


That's a crazy amount of memory usage, it might be an extension doing it? VSCode has a process explorer tool you can access under `Help>Open Process Explorer`.


Yep. I should've last time but I will if/when it goes mad next time. I hadn't quit the process in about 2 weeks.


I'm going to make a wild guess that you use macosx and that 150GiB isn't usage but addressed space. Macs are notorious for returning nonsense memory figures with some applications.


No, it was using 90+ GiB of swap. There is a difference between virtual address space and RSS.


That has not been my experience at all. VSCode is mostly just a code editor with plugins, while Intellij is a full-blown IDE.


Incorrect and hairsplitting. It's a full IDE when you configure and use it properly. Meta uses a lightly-modified fork of it internally as their private IDE for internal use.


I have been using RustRover on Arch Linux as my daily IDE for a few months but then I switched to Zed when they landed their Linux support. RustRover is definitely more feature complete but one of my wishes is to start following the development of a large Rust project as a I use it daily. Zed, or Lapce, or Helix or similar editors fit that very well along with being very usable. Still, I would highly recommend RustRover (or PyCharm which I have used a lot over the years).


I'm the same way, it's one of the reasons I use helix, even for non rust dev


It's alright. Good to have this option but I'd stick with neovim. Nothing really beats treesitter + LSP + completion + formatting and still being in vim. Just the other day I wrote a treesitter query to format and highlight JavaScript within HTML within a string in rust. And all it took was a few lines of lua and 10 minutes.


> it’s alright

Are you kidding me?

Even with nixos, the loe for nvim if you want to get anywhere near parity with RustRover or any other Jetbrains product ime is formidable if not impossible.

Unless I can do stuff like automatically generate all arms for match statements, refactor across files, debugger support, have ease of setup (among other things), I simply cannot accept this nvim/treesitter supremacy nonsense.

Can it do all that? I mean easily? With consistent keybindings between languages I don’t have to reconfigure for each language? Without installing like 20 plugins?


Yes. Yes you can do all that with neovim (with under 20 plugins).

Can you do it easily? If you're starting from 0 then no, probably not.

Look, I am not knocking this IDE. I use these products too for certain tasks. Maybe my comparison wasn't fair because setting up neovim is basically programming lua and it is usually heavily personalized/individualized. What I really meant is, so far I don't see a killer feature yet that would get me to move from either neovim or also other editors with rust-analyzer to this.


If you have the time, could you please post the list of plugins you are using?


I’m locked in to JetBrains for JVM stuff, but the language server is so good, using Neovim is an absolute pleasure for Rust.


I can't justify the cost currently but I'm really going to miss the RustRover EAP. Lovely editor.


I think JetBrains is a virus. My folks can't do anything w/o it. They tend to just use what works out of the box and don't want to learn standard open source tools. No wonder after so man years they still suck at command line.

Their IDE still can't do basic things like direnv and nix shell [1]. And when I rant about them being merging master into their feature branches instead of rebasing they say it doesn't matter since JetBrains paints such merges in gray.

https://github.com/Fapiko/intellij-better-direnv/issues/27


I’ve been using the pre-release version for a bit because I am a big fan of PyCharm. I found it very good besides the profiling interface. The “jump to source” option never works for some reason. Overall, though, provides a great experience.


Ha, what coincidence. I installed the EAP (Early Access Program) edition only last week as I've been learning Rust.


Reminder that neovim is completely free, you can modify the editor using Lua, it has a renaissance of new awesome plugins, LSP support for the official Rust LSP server, and as a system developer you can run it on a target device or quickly switch between a serial console and your editor using tmux. Plus, you can easily add new LLM integrations or wrap tools in about a half an hour of hacking. My neovim setup is easily 10x more productive than RustRover.


My NeoVim broke so often I came to realize a product that has 50 random people working on the core and various plugins is not going to make a stable product that would work for years.

After all, there is no consistent testing as a whole product but it's a combination of "works for me" and after some months of originally setting the editor up, things start to break apart saying something is deprecated, something is incompatible with something else and it will start asking for newer NeoVim version which the distro obviously can't keep up with. It's like you're using a nightly build of a product or worse if things can't be fixed.

Maybe someone could snapshot a stable state of NeoVim + some popular plugins and release as some sort of LTS and things might change but currently you'll need to spend time fixing frequently than use it for what you need it for.


Are you using a neovim distro? I think the broken things only applies for automated setups. I use Vim instead of neovim, but my plugins set is pretty minimal. Most of my config is Vim-related, then a couple of options for the plugins. I instead use the terminal for most stuff.

> Maybe someone could snapshot a stable state of NeoVim + some popular plugins and release as some sort of LTS

Vim Plug (and maybe other plugins managers) can handle tags, branches, and commits references for versioning.


It’s all fucked ime even with nixos from the pov of “just working.” Yes, it’s fun and cool and impressive if you get things all setup and dialed in. But if you care about just dropping in and not spending tons of time configuring your tools, imo JetBrains is just the way to go.


As a pragmatic programmer, one of the rules is Know thy tools. You don't really drop in. You learn the tools, and adapt them. The first commit of my dotfiles is more than 3 years ago. And I think the actual files are older. And that was me starting from scratch after years of Linux.

Even with JetBrains IDEs, I usually spend an hour configuring stuff (never bothered to save the config, as I seldom use them). I tune my setup as I go. If I'm spending hours everyday with a software, I want it suited to my workflows.


> Even with JetBrains IDEs, I usually spend an hour configuring stuff

That's you, not most people. Tons of people use VSCode every day for years and their user-level config is not more than a few lines.

You can say what you did helped you personally and you found it worthwhile, but that is no indication of how that would apply to others.


> As a pragmatic programmer, one of the rules is Know thy tools.

Dunno what you’re trying to say with respect to the broader conversation (though I don’t take issue with any of your points, really).

When I say IntelliJ “just works” I hope it’s obvious I’m not just using it as a text editor ;). On the contrary, it is an incredibly powerful tool (I just remembered I forgot to mention shelving — yet another wonderful feature).

Because I’ve spent countless hours with it, I mean it “just works” for doing incredibly sophisticated things that VSCode and nvim hardly approach (let alone with consistency between languages supported by Jetbrains) without an insane amount of time configuring ime.

Yea, you can get good at the configuring, say, with nvim; and it can be fascinating. I am a tools guy. But again, if I want to create X today, futzing with getting the perfect bespoke nvim environment is simply not to my taste.

My point isn’t that my taste is “better”, but more an attempt to say “just use nvim” is not preferable for many folks in many situations.


I agree with you. I’m not a purist pushing “Unix as a IDE”. I reach to Intellij, Android Studio, and Xcode when the needs arise. I’m saying that a lot of people got confused and try to replicate vs code in neovim, lending to a fragile setup. The correct approach is ground up, maybe taking inspiration from others configs. But everything in your config should be understood.

The same applies to all the tools you use, may it be Intellij, or your shell.


People can spend hours to initially set their environment up but the original post was about having it broken after a period of usage which involves spending unnecessary amount of time fixing than do what they want to do.


And that's a solved problem. First by not having a fragile setup, then doing backups to have some kind of rollback solutions. An IDE strong point is their cohesion and product support. But it's not magic and things can go haywire. It's like people coding with C or using Arch Linux vs using Java or Debian. The latter are stabler, but they're not silver bullets.


True, but I don’t have the time or energy anymore to spend time configuring it. Jetbrains vim plugin is largely pretty good.


Need evidence of that 10x number.

The bottleneck in programming is often how fast you can think, not how fast you can type or use auto completion, and definitely not some shortcuts. They cut down time but are not magic. Not to mention that different IDEs often have the same features, you just need to find them.


Folks shilling for the nvim cult completely baffle me. YES it’s cool and impressive, but it also means essentially spending hours and hours of time managing your configuration if you want anything remotely close ime to RustRover or any other JetBrains product.

Spending that time can be interesting, but personally, frankly, I’d rather be writing code than fucking around with lua wrappers for vimscript.

Let’s be honest about this stuff and stop putting down an incredible firm that makes incredible tools.


As someone old enough to remember when VI was occasionally all caps, XEmacs was cool, no thanks.


10x is quite a claim.

Anyhow helix is nice for most of the reasons that neovim is, and also because you spend more time coding and less time fiddling with your setup.


"Most" by range, not by value, since plugins is the biggest reason, and they don't exist in helix


Well yes, but that's the point.

I think it's analogous to zsh/fish, either you think that customizing is fun and you want to spend time doing it, or you want a nice set of features enabled by default and a minimal config footprint. Can't have both.


You can have both, it's called "good defaults", then you don't need to customize anything if you don't like customizing. But you can.

Also, helix doesn't have minimal config, it has dozens of various options even before potentially hundreds of keybindings, so you can get buried there "for fun" just like in vim


Do you have a link to your config?


Reminder that RustRover is also free (for non commercial use) and doesn't require the user to read adv entire manual before they can use it.


This. But also just pay for your tools if you can. It’s the kind/empathetic thing to do, honors the hard work of others, and helps elevate the craft.


Anyone claiming bullshit like 10x difference has absolutely no basis in reality. Hell, there wouldn’t be an order of magnitude difference between your best setup vs literally touch typing on a foreign keyboard layout.

Also, neovim is just a text/code editor, not an IDE even with plugins.


rust r over, brilliant name




Consider applying for YC's Fall 2025 batch! Applications are open till Aug 4

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: