You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

PyO3-Maturin执行publish命令未上传Readme和License到PyPi如何解决

Maturin发布PyPi同步上传README和LICENSE的实现方案

一、配置项目打包规则(后续发布自动包含对应文件)

Maturin会直接读取Cargo的标准包配置字段来确定打包包含的内容,不需要额外的Maturin专属配置,操作如下:

  • 打开项目根目录的Cargo.toml,定位到[package]配置段,新增以下字段:
    # 指定README文件路径,Maturin会自动读取该文件内容作为PyPi项目介绍
    readme = "Readme.md"
    # 填写你的项目使用的开源协议标识,如MIT/Apache-2.0等
    license = "MIT"
    # 若需要将LICENSE文件本身打入安装包,新增该字段指定LICENSE路径
    license-file = "LICENSE"
    # 显式指定打包时需要包含的所有文件,避免默认规则遗漏自定义文件
    include = [
      "src/**/*",
      "my_project/**/*",
      "Readme.md",
      "LICENSE",
      "Cargo.toml"
    ]
    
  • 配置完成后先执行本地打包验证,避免直接发布出错:
    1. 执行maturin sdist生成源码分发包
    2. 执行maturin build生成二进制wheel包
    3. 查看生成的target/wheels目录下的包文件,解压确认其中包含README和LICENSE文件,验证无误后再执行maturin publish即可同步上传到PyPi。

二、已发布版本的处理方案

PyPi平台不允许修改、补充已经上传的同版本号包的内容,已经发布的缺失文件的版本无法单独补充上传文件,只能修改版本号(比如升级补丁版本,从x.y.0升级到x.y.1),按上述规则配置后重新发布新版本即可。

内容的提问来源于stack exchange,提问作者Adam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.30 12:57:04