Talk:Rust

From ArchWiki

Things to add:

Add cargo.toml explanation
Should we duplicate the official docs? A link to the manifest documentation will be more complete and up-to-date. --Gyscos (talk) 23:18, 26 January 2016 (UTC)Reply[reply]
Add more links to the doc sections

Features of the language

Do we really need to add the features of the language in this wiki ? Installation and configuration are a given because it is directly linked to the operating system, but the feature of the language can be looked up anywhere, especially on Rust's official website. I don't think the language features are fit for this page. --Cobrand

Right. Taking inspiration from the python page, a paragraph or two to have an overview of the language are useful, but a complete language description is outside the scope of this page. Gyscos (talk) 20:03, 3 July 2016 (UTC)Reply[reply]

Lower than C

"It is this integration with LLVM that allows Rust to obtain greater performance than equivalent C applications compiled with Clang, making Rust software designed with libcore lower level than C."

Than C, designed with what? The first claim seems to be about as popular as it is rarely backed up by anything and whatever ("equivalent applications...") or however that would be, but at least it makes some sense. I'm not sure I even understand the latter part though, could be clipped perhaps without losing much. Specific technical aspects for just as specific setups/platforms apart, it reads more like advertising mumbo jumbo, making something with y or z "lower level" than x is a nonstarter. Nor is low-level necessarily equal speed. In this case it's all about integration, this is how the section starts, it might as well stop there. Otherwise it's an invitation to misunderstanding as even C++ folks like to decry the fact of Rust not being transparent enough at lower levels. -Expo 98 (talk) 04:06, 16 August 2019 (UTC)Reply[reply]

Kate support for Rust ... requires extra configurations?

According to https://wiki.archlinux.org/index.php/Rust#Kate extra configurations are required. However, despite being new to Kate and Rust, I found https://invent.kde.org/utilities/kate/-/commit/0080f2093e423aca5ed9bda70cb954e31c1f9c65 and https://kate-editor.org/post/2020/2020-01-01-kate-lsp-client-status/ (Thanks to Freenode IRC Network) that the rustcompletion addon for Kate is deprecated. Both https://github.com/racer-rust/racer and https://community.kde.org/Rust still link to https://invent.kde.org/utilities/kate/-/tree/master/addons/rustcompletion which no longer exists. Therefore, perhaps someone can update this section for Kate to reflect that the extra configurations listed are not only not required, but no longer possible and to replace them with other instructions that better reflect latest developments? https://linktr.ee/jasonkhanlar (talk) 01:35, 6 February 2020 (UTC)Reply[reply]

Latest Kate uses rust-analyzer by default, so I just completely removed these outdated instructions from the article. (I'm surprised no one has done this in two years.) andreymal (talk) 15:37, 19 January 2022 (UTC)Reply[reply]

Add lld for faster link time

https://fasterthanli.me/articles/a-new-website-for-2020 suggest using LLVM linker with

~/.cargo/config
[target.x86_64-unknown-linux-gnu]
rustflags = [
    "-C", "link-arg=-fuse-ld=lld",
]

Pickfire (talk) 04:52, 17 July 2020 (UTC)Reply[reply]

rustup package from pacman requires modifications to $PATH for rust-analyzer symlink to work

I am not sure why, but extra/rustup does not add a /usr/bin/rust-analyzer symlink, but instead it has a /usr/lib/rustup/bin/rust-analyzer symlink.

So, differently from /usr/bin/{rust,cargo,rustfmt} etc (which just work), in order for the rust-analyzer component to be in PATH users have to add /usr/lib/rustup/bin to their PATH.

It might be useful to add this information to the appropriate paragraph in this wiki page.

-- Bluehood (talk) 01:05, 18 June 2023 (UTC)Reply[reply]

PATH is automatically modified by /etc/profile.d/rustup.sh after re-logging -- andreymal (talk) 01:14, 18 June 2023 (UTC)Reply[reply]