# HG changeset patch # User Antoine Cezar # Date 1591345738 -7200 # Node ID cf04f62d1579bed3781f2ee14673360ebc477199 # Parent 5965efb609b6f8f2108b5b55ecd34e23b7fc093c rhg: add rhg crate The goal of rhg is to speedup some of hg's commands when possible by bypassing python entirely for the time being. It is by no means a replacement for hg as it will not support extentions or configuration and implement only a subset of hg's commands and options. Only use rhg if you understand what the tradeoffs are. Differential Revision: https://phab.mercurial-scm.org/D8610 diff -r 5965efb609b6 -r cf04f62d1579 rust/Cargo.lock --- a/rust/Cargo.lock Fri Jun 05 08:48:09 2020 +0200 +++ b/rust/Cargo.lock Fri Jun 05 10:28:58 2020 +0200 @@ -487,6 +487,10 @@ ] [[package]] +name = "rhg" +version = "0.1.0" + +[[package]] name = "rustc_version" version = "0.2.3" source = "registry+https://github.com/rust-lang/crates.io-index" diff -r 5965efb609b6 -r cf04f62d1579 rust/Cargo.toml --- a/rust/Cargo.toml Fri Jun 05 08:48:09 2020 +0200 +++ b/rust/Cargo.toml Fri Jun 05 10:28:58 2020 +0200 @@ -1,3 +1,3 @@ [workspace] -members = ["hg-core", "hg-cpython"] +members = ["hg-core", "hg-cpython", "rhg"] exclude = ["chg", "hgcli"] diff -r 5965efb609b6 -r cf04f62d1579 rust/rhg/Cargo.toml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rust/rhg/Cargo.toml Fri Jun 05 10:28:58 2020 +0200 @@ -0,0 +1,8 @@ +[package] +name = "rhg" +version = "0.1.0" +authors = ["Antoine Cezar "] +edition = "2018" + +[dependencies] + diff -r 5965efb609b6 -r cf04f62d1579 rust/rhg/README.md --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rust/rhg/README.md Fri Jun 05 10:28:58 2020 +0200 @@ -0,0 +1,4 @@ +# rhg + +This project provides a fastpath Rust implementation of the Mercurial (`hg`) +version control tool. diff -r 5965efb609b6 -r cf04f62d1579 rust/rhg/rustfmt.toml --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rust/rhg/rustfmt.toml Fri Jun 05 10:28:58 2020 +0200 @@ -0,0 +1,3 @@ +max_width = 79 +wrap_comments = true +error_on_line_overflow = true diff -r 5965efb609b6 -r cf04f62d1579 rust/rhg/src/exitcode.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rust/rhg/src/exitcode.rs Fri Jun 05 10:28:58 2020 +0200 @@ -0,0 +1,4 @@ +pub type ExitCode = i32; + +/// Command not implemented by rhg +pub const UNIMPLEMENTED_COMMAND: ExitCode = 252; diff -r 5965efb609b6 -r cf04f62d1579 rust/rhg/src/main.rs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/rust/rhg/src/main.rs Fri Jun 05 10:28:58 2020 +0200 @@ -0,0 +1,5 @@ +mod exitcode; + +fn main() { + std::process::exit(exitcode::UNIMPLEMENTED_COMMAND) +}