Skip to content

Run Rust files and expressions as scripts without any setup or compilation step.

License

Notifications You must be signed in to change notification settings

CodeIter/runrust

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

runrust - Run Rust script

MSRV

  • Original rust-script :

    • rust-script CI Crates.io/rust-script
  • runrust :

    • runrust CI Crates.io/runrust

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

  • Example:
set -e

cargo install runrust

cat - << EOF > my-rust-script.rs
#!/usr/bin/env runrust
//! 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);
}
EOF

chmod -c u+x my-rust-script.rs

./my-rust-script.rs
  • Output:
A random number: 9240261453149857564

Rust version 1.64 or newer required.

See the documentation at codeiter.github.io/runrust.

Related projects

  • rust-script - the original project that runrust was forked from.
  • 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

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

About

Run Rust files and expressions as scripts without any setup or compilation step.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 97.2%
  • Shell 2.8%