发布 Rust crates 到 crates.io

发布时间: 更新时间: 总字数:466 阅读时间:1m 作者: IP属地: 分享 复制网址

本文介绍如何在 https://crates.io 上发布自己的 Rust crates。

crates.io 介绍

如何发布自己的 Crates

发布准备

  • 创建 crates.io 账号(或使用 github 账号登录),登录后验证邮箱
  • 登录后 -> 用户名下点击 Account Settings -> API Tokens -> New Token,起一个名字,点击创建
  • 本地登录:复制刚创建好的 token,格式为 cargo login <token>,在本地命令行执行,token 被保存在 ~/.cargo/credentials 中,文件内容如下:
[registry]
token = "xxx"

配置

修改 Cargo.toml

[package]
name = "rustabc"
version = "0.1.0"
edition = "2021"
description = "some info"
license = "MIT OR Apache-2.0"
author = ["xiexianbin"]

# See more keys and their definitions at https://doc.rust-lang.org/cargo/reference/manifest.html

[dependencies]

必填字段:

  • name 在 crates.io 上是唯一的
  • description crate 描述,会出现在搜索结果中
  • version
  • license 许可证,在 https://spdx.org/licenses/ 查找 license 标识,多个 license 使用 OR 分隔
  • author

发布 & 更新版本

cargo publish

说明:

  • 若发布有问题,请根据提示修复
  • 新版本,请修改 Cargo.toml 中的 version 值后重新发布
    • 版本参考:https://semver.org/

查看自己发布的 crates

https://crates.io/dashboard

版本撤销

  • 为保证依赖于该 crate 的项目可以正常工作,crate 一旦发布代码无法删除和覆盖
  • 可以使用 cargo yank 撤回版本
    • 已经存在的项目可继续将其作为依赖
    • 新项目不可依赖该版本
# 撤回指定版本
cargo yank --vers 0.1.1

# 取消撤回指定版本
cargo yank --vers 0.1.1 --undo

发布示例

Home Archives Categories Tags Statistics
本文总阅读量 次 本站总访问量 次 本站总访客数