Crate of the Week


#404

Nominating clap-verbosity-flag - easily add a --port flag to CLIs using structopt.

This crate allows passing -v for log level warn. -vv for log level info. -vvv for log level debug. You get the picture. Using it is quite straight forward too:

extern crate clap_verbosity_flag;

// ...
#[derive(Debug, StructOpt)]
struct Cli {
    #[structopt(flatten)]
    verbose: clap_verbosity_flag::Verbosity,
}

I like this crate a lot because it allows reusing rather complex behavior through rather simple means. I think being able to import CLI flags from crates has a lot of potential for Rust’s command line experience, which is why I think this is worth nominating as crate of the week.

Full disclosure, I was around in Paris when people came up with both the approach & the crate. I’m also part of the CLI WG, just like the author of the crate. Despite that I think it’s an important crate to share, hence the nomination! :sparkles:


#405

I saw SIMDNoise on /r/rust and I thought it was pretty rad.


#406

In the great tradition of tooting one’s own horn, I’d like to suggest mutagen, a mutation testing framework for Rust. There has been some work since the last release and the next one is around the corner…


#407

Nannou - An open-source creative-coding framework for Rust.


#408

Oxy - A security focused remote access tool written in Rust. (alternative to SSH).


#409

C2Rust - C to Rust translation, refactoring, and cross-checking.


#410

cargo-geiger - Detects usage of unsafe Rust in your project and its dependencies.


#411

I’d like to nominate datafrog by Frank McSherry

In the words of @nikomatsakis on his blogpost MIR-based borrow check (NLL) status update:

[the] analysis is now easily as fast as the existing Nightly analysis, thanks some smarter encoding of the rules as well as the move to use datafrog.

(emphasis mine)

Anything that helps the borrowchecker iterate faster towards NLL is a foundational blessing to the entire ecosystem, and deserves as much recognition as it can get! :heart:


#412

I would like to suggest my crate because I also need help with it :D.
It is a lib + cli to put csv files in a memory sqlite to allow queries over those files.
https://crates.io/crates/csv-query


#413

A lot of cool stuff this week. I am impressed :heart:


#414

Agreed! Thanks @nasa42 for kickstarting it with a host of good suggestions! (and also for tirelessly editing TWiR! :heart: )


#415

simdeez looks kind of cool, though I have never used it.


#416

I’ll cheekily nominate my own crate, paste, which is a pastebin anyone can run that’s made to take on Gist, written almost completely in Rust (there are Ruby shims to call Rust code via sidekiq).


#417

I’d like to nominate Rutie (pronounced Rue-Tie) which is “the Tie between Ruby and Rust”. This crate is an official fork, and continuation, of both the Ruru crate and the ruby-sys crate.


#418

ngx-rust - Official Rust binding for NGINX.


#419

rav1e - The fastest and safest AV1 encoder from Xiph.Org Foundation.


#420

Argh @nasa42, how do you keep doing this? So much tasty Rust stuff, it is hard to choose! :stuck_out_tongue_closed_eyes:


#421

Mostly copy-paste from r/rust subreddit. :wink:


#422

Taizen - a TUI Wikipedia browser.


#423

Percy - A modular toolkit for building isomorphic web apps with Rust + WebAssembly.