Rust库开发工作流程

时间:2014-08-11 12:21:40

标签: workflow rust rust-cargo

在Rust(+ Cargo)中开发库时,如何实现快速重新编译/测试循环?

开发应用时,很简单,我:

  • 在代码中进行更改

  • 切换到终端并运行cargo run

  • 请参阅编译器反馈

但现在我想将我的应用程序的一部分作为库提取并在GitHub上发布。 我想继续开发我的应用程序,但现在将此库作为依赖项。我将同时开发库和应用程序。

如何获得相同的快速反馈?

库和应用程序都将在同一台机器上开发,我想对库进行更改,相应地更新应用程序并查看编译器反馈。

我猜我可以使用我的库作为Cargo.toml中的依赖项,每次我想更新我的应用程序的依赖项时运行cargo update,但这会有点慢,因为它必须下载代码每次都从github重新编译所有依赖项。

1 个答案:

答案 0 :(得分:10)

您可以使用这种有点无证的货物特征。将以下行添加到~/.cargo/config文件(或/path/to/your/binary/project/.cargo/config以限制对二进制项目的影响):

paths = ["/path/to/your/library"]

从现在开始,依赖于您的库的每个货物包(或/path/to/your/binary/project根下的货物包)将使用/path/to/your/library作为其源代码,无论此包清单中指定了什么,因此您可以在程序清单中保留Git repo URL。希望将来可以记录此功能。

<强>更新

现在记录在Cargo guide