6

使用 创建新项目时cargo new,我希望 Cargo.toml 文件自动包含预定义authors字段。

Rust 书说:

接下来的四行设置 Cargo 编译程序所需的配置信息:名称、版本、编写者以及要使用的 Rust 版本。Cargo 从您的环境中获取您的姓名和电子邮件信息,因此如果该信息不正确,请立即修复信息,然后保存文件。

很模糊,所以我搜索了一下。首先,我尝试将CARGO_NAMEand添加CARGO_EMAIL到我的环境变量中。没用。

然后我尝试在配置文件中添加变量nameemail字段[cargo-new].cargo/config.toml并了解到它已被弃用。

还有其他方法可以做到这一点吗?我做错什么了吗?

[package]
name = "hello_world"
version = "0.1.0"
edition = "2018"

authors = ["foo <bar@gmail.com>"] # Add this line automatically

[dependencies]

我在 Arch Linux 上使用工具链rustupnightly

4

1 回答 1

9

该行为在RFC 3052中进行了更改,在 Cargo 1.53 中实现。来自 RFC:

cargo init 将在运行命令时停止预填充该字段,并且它根本不会在默认 Cargo.toml 中包含该字段。如果 Crate 作者愿意,他们仍然可以在发布之前手动包含该字段。

事实证明,authors箱子清单中的列表产生的问题比它解决的问题多,因为清单是不可变的,而箱子的作者不是。

所以到今天为止,还没有办法自动添加authors一个新的货物项目。

于 2021-06-08T17:35:16.807 回答