#cargo #dependencies #crates #cli

bin+lib cargo-rhack

临时编辑你的 Cargo 依赖

5 个版本

0.1.5 2024 年 3 月 19 日
0.1.4 2024 年 3 月 17 日
0.1.3 2024 年 3 月 17 日
0.1.2 2023 年 5 月 21 日
0.1.1 2023 年 5 月 19 日

#864命令行工具

Download history 340/week @ 2024-03-14 51/week @ 2024-03-21 21/week @ 2024-03-28 11/week @ 2024-04-04

每月 164 次下载

自定义许可

32KB
369

cargo-rhack

Version info

描述

你想要快速将类似于 dbg! 的宏放入外部 crate 中以了解某些内部数据结构是如何工作的吗?如果是这样,那么 cargo-rhack 就是你需要的!

cargo-rhack 使得编辑依赖于你的项目的代码更简单。

用法

假设你想要修改 reqwest crate。

[dependencies]
reqwest = "0.11"

运行以下命令

cargo rhack edit reqwest

这将把 crate 复制到 $HOME/.rhack/reqwest-0.11.1 并将其路径添加到 Cargo.toml 的 [patch] 部分,路径会自动检测

[patch.crates-io]
reqwest = { path = "/home/you/.rhack/reqwest-0.11.1" }

现在你的包使用的是本地检出副本,而不是来自 crates.io 的副本。现在你可以打开文件(通常通过利用“跳转到定义”功能),然后随意修改源代码。

撤销

只需运行 undo 命令,然后你可以撤销对 Cargo.toml 的所有更改

cargo rhack undo

请注意,此命令不会删除任何 crate 的副本。

设置

它默认使用 $HOME/.rhack 作为复制外部 crate 源代码的目标位置。你可以通过设置和公开环境变量 $RHACK_DIR 来更改它。

安装

对于 MacOS、Linux 和 Windows,可以通过 这里 获取预构建的二进制文件。

Cargo

cargo install cargo-rhack

Binstall

cargo binstall cargo-rhack

贡献

发现了一个错误? 打开一个问题!

对改进有想法? 不要保守!

行为准则

请在为该项目贡献力量时,请仔细阅读并遵守《Rust 社区行为准则》(Rust Community Code of Conduct)。未来,我们可能会创建自己的行为准则并在本位置进行补充。

最低 Rust 版本政策

此软件包最低支持的 rustc 版本是 1.74.1

当前政策是,使用此软件包所需的最低 Rust 版本可以在次要版本更新中提高。例如,如果 crate 1.0 需要 Rust 1.20.0,那么 crate 1.0.z 对于所有 z 的值也将需要 Rust 1.20.0 或更高版本。然而,对于 crate 1.y(其中 y > 0)可能需要更高的最低 Rust 版本。

一般来说,此软件包将对 Rust 的最低支持版本持保守态度。

致谢

此工具的原始作者是 nakabonne,我将其复活并修复了一些问题。我感谢原始作者为 Rust 社区付出的努力和贡献。我希望这个工具将为 Rust 社区的许多人带来便利。

原始灵感

此工具高度受到 gohack 的启发。它明显激发了我的创作热情。向他们表示衷心的感谢!

许可证

BSD-3-Clause 许可证;见 LICENSE

依赖项

~3–11MB
~114K SLoC