arewefastyet
xshell
arewefastyet | xshell | |
---|---|---|
9 | 10 | |
19 | 637 | |
- | - | |
0.0 | 5.0 | |
about 1 year ago | 21 days ago | |
Rust | Rust | |
MIT License | Apache License 2.0 |
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.
arewefastyet
-
Rust Support in the Linux Kernel
That page averages all the builds across different code bases. It doesn’t specify which version/tag of which code base, nor does it talk about the hardware.
https://arewefastyet.pages.dev/ - This page tracks compile times across some common crates over all supported compiler versions, with different hardware (2, 4, 8, 16 cores). This used to be https://arewefastyet.rs but the domain expired.
-
you cant defeat rust
https://arewefastyet.rs/ see benchmark
-
Rust programming language: We want to take it into the mainstream, says Facebook
You can check incremental compile times on http://arewefastyet.rs. Choose one compile mode (Debug OR Release, preferably Debug), one hardware config (4 cores let's say) and both profile modes (Clean, Incremental).
- Arewefastyet.rs – benchmarking the Rust compiler over time
-
Reducing Rust Incremental Compilation Times on macOS by 70%
Compile times in rustc have been steadily improving with time, as shown here - https://arewefastyet.rs.
Every release doesn't make every workload faster, but over a long time horizon, the effect is clear. Rust 1.34 was released in April 2019 and since then many crates have become 33-50% faster to compile, depending on the hardware and the compiler mode (clean/incremental, check/debug/release).
Interestingly, the speedup mentioned in OP won't show up in these charts because that's a change on macOS and these benchmarks were recorded on Linux.
What is expected to be a gamechanger is the release of cranelift in 2021 or 2022. It's an alternate debug backend that promises much faster debug builds.
-
Rust compile speed
Yes plenty of effort goes into making Rust compilation faster, see https://arewefastyet.rs/, its FAQ, and some easy internet searches.
-
Announcing Rust 1.50.0
Thanks for your work on arewefastyet.rs, I was about to post a link to it haha
-
[ELI5]: How to write a simple custom Serde de/serializer?
I implemented something similar. Deserialising a comma separated strings into a struct - example. Hope that helps!
xshell
- Hey Rustaceans! Got a question? Ask here (17/2023)!
-
would you use rust for scripting?
Just a few minutes ago I learned about https://github.com/matklad/xshell and it looks nice!
-
Rust for Web Development | An Honest Evaluation
For developer-oriented stuff, there's tools like xshell and cargo-xtask. For operator tasks that need to run in a deployed environment, it's not usually a big lift to add CLI subcommands to your binary. It's certainly more boilerplate and inertia than doing stuff in a live REPL, though, and sometimes difficult to recommend for truly one-off situations.
- Started using Rust for scripting
-
Rust as bash scripting replacement?
how was your experience with trying to use [xshell](https://github.com/matklad/xshell/) as a shell script replacement? was the boilerplate worth it?
-
How to improve my Rust workflow?
Also xshell might be helpful here https://github.com/matklad/xshell
-
Rust Support in the Linux Kernel
* time to compile whatever syn generated
I didn’t do a super thorough studies of things, but my impression is that 2, performance of syn itself, is rarely an issue. Most of the time it is 1) (and the associated problem of decreased build parallelism because half of the crates wait for syn to compile) and 3).
To get a feeling how costly a simple proc macro is, run this benchmark: https://github.com/matklad/xshell/blob/4e5090e9f79baeed1037b....
-
cradle: Run child processes with ease
This is an API vulnerable to shell injection. I think it’s relatively important to design command-running libraries which don’t re-introduce the possibility of this error into Rust. The fix here is to ensure that the string is a compile-time string, and, preferably, even lex it at compile time. See xshell for an example of ergonomic and safe API here: https://github.com/matklad/xshell.
-
The Plan for the Rust 2021 Edition
Note that “lexer level” proc macros, which don’t parse rust code, and which don’t generate a ton of Rust code, could be pretty light weight on compile times. Here’s a benchmark one can run to measure that: https://github.com/matklad/xshell/blob/master/tests/it/main.rs#L376
What are some alternatives?
bevy - A refreshingly simple data-driven game engine built in Rust
rfcs - RFCs for changes to Rust
gdnative - Rust bindings for Godot 3
Cradle - Play Twine stories in Unity.
veloren - An open world, open source voxel RPG inspired by Dwarf Fortress and Cube World. This repository is a mirror. Please submit all PRs and issues on our GitLab page.
compiler-explorer - Run compilers interactively from your web browser and interact with the assembly
rust - Empowering everyone to build reliable and efficient software.
sccache - Sccache is a ccache-like tool. It is used as a compiler wrapper and avoids compilation when possible. Sccache has the capability to utilize caching in remote storage environments, including various cloud storage options, or alternatively, in local storage.
hashira-templates - Starter templates for hashira
tch-rs - Rust bindings for the C++ api of PyTorch.
evcxr