34 breaking releases

0.35.0 Sep 3, 2024
0.34.0 Sep 26, 2023
0.33.0 Sep 26, 2023
0.30.0 Jul 27, 2023
0.9.0 Nov 4, 2020

#25 in Development tools

Download history 1571/week @ 2024-08-21 1530/week @ 2024-08-28 1850/week @ 2024-09-04 2005/week @ 2024-09-11 2516/week @ 2024-09-18 4706/week @ 2024-09-25 3411/week @ 2024-10-02 3281/week @ 2024-10-09 2080/week @ 2024-10-16 2162/week @ 2024-10-23 1122/week @ 2024-10-30 1278/week @ 2024-11-06 1304/week @ 2024-11-13 1102/week @ 2024-11-20 1416/week @ 2024-11-27 1606/week @ 2024-12-04

5,568 downloads per month

MIT/Apache

84KB
2.5K SLoC

CI Crates.io MSRV

rust-script

Run Rust script files without any setup or explicit compilation step, with seamless use of crates specified as dependencies inside the scripts.

$ cargo install rust-script
[...]

$ cat script.rs
#!/usr/bin/env rust-script
//! Dependencies can be specified in the script file itself as follows:
//!
//! ```cargo
//! [dependencies]
//! rand = "0.8.0"
//! ```

use rand::prelude::*;

fn main() {
    let x: u64 = random();
    println!("A random number: {}", x);
}

$ ./script.rs
A random number: 9240261453149857564

Rust version 1.64 or newer required.

See the documentation at rust-script.org.

  • cargo-script - the unmaintained project that rust-script was forked from.
  • cargo-eval - maintained fork of cargo-script.
  • cargo-play - local Rust playground.
  • runner - tool for running Rust snippets.
  • scriptisto - language-agnostic "shebang interpreter" that enables you to write scripts in compiled languages.
  • official cargo-script RFC - in progress integration into cargo

License

rust-script is primarily distributed under the terms of both the MIT license and the Apache License (Version 2.0).

Dependencies

~7–21MB
~253K SLoC