Crate of the Week

unprolix Boilerplate generator for constructors, getters and setters with derive macros

wiremock-rs: HTTP mocking to test Rust applications

aeron-rs: efficient and reliable UDP / IPC message transport for Rust

6 Likes

rftp: A remake of sftp

dust Named du-dust on crates.io

Similar to du but more intuitive and easier to use.

1 Like

regex2fat: Did you ever want to match a regex, but all you had was a fat32 driver? Ever wanted to serialize your regex DFAs into one of the most widely supported formats used by over 3 billion devices? Are directory loops your thing?

13 Likes

FAQ
Q: NOOOOOOOOOOO!!! YOU CAN'T TURN A DFA INTO A FAT32 FILE SYSTEM!!!! YOU CAN'T JUST HAVE A DIRECTORY WITH MULTIPLE PARENTS!!! YOU ARE BREAKING THE ASSUMPTION OF LACK OF LOOPERINOS NOOOOOOOOO
A: Haha OS-driven regex engine go brrrrr

pure gold :D

9 Likes

handle Pin<&mut :crab:>A handle trait for asynchronous context pipeline.

cargo-license: A license checker for your crates. It checks all the dependencies and can give tons of information about each dependency and their license. This is especially helpful for checking license compatibility.

4 Likes

@kylegalloway's suggestion reminded me of:

cargo-deny: Cargo plugin for linting your dependencies

6 Likes

Warning: Self promotion ahead!

cfg_aliases: A dependency-less macro for creating aliases that can be used in #[cfg] checks.

7 Likes

I'd like to nominate coercible_errors - a zero-cost abstraction over errors that may be either some actual error type or Infallible in associated types.

1 Like

tco: TCO is a tail-call optimization library. It's a proof-of-concept attribute macro you can slap onto item functions to optimize them if they are in tail-calling format.

5 Likes

bottom: Yet another cross-platform graphical process/system monitor

runiq: An efficient way to filter duplicate lines from input, à la uniq

Official Windows WinRT API winrt-rs

9 Likes

Cargo Workspace Manager

A tool to manage your cargo workspace, inspired by Lerna.

  • You can list all the crates in the workspace
  • You can list all the changed crates in the workspace since the last git tag (or other git refs)
  • You can release the changed crates in the workspaces by interactively bumping their version which also bumps this crates version in other crates in the workspace if this is being used as a dependency.
  • You can publish the crates in the workspace automatically in the correct order.
6 Likes

apply: a tiny library for chaining free functions into method call chains. For example, ever wanted tuples to have a .map() equivalent? let second = (12, 20, 30).apply(|x| x.1) does the trick.

6 Likes

cargo-wipe

Cargo subcommand that recursively finds and optionally wipes all "target" or "node_modules" folders that are found in the current path.

2 Likes

defer-drop: a newtype that defers object drops to a background thread.

1 Like