如何指定Python版本使其添加至wheel文件名(使用hatch build)
如何通过Hatch Build指定Wheel文件名中的Python版本
requires-python 仅声明包兼容的Python版本范围,不会直接控制wheel文件名中的版本标签。要实现这个需求,Hatch提供了两种直接的方法:
方法1:配置pyproject.toml持久化设置
在你的pyproject.toml中添加Hatch wheel构建的专属配置段,指定目标Python版本:
[tool.hatch.build.targets.wheel] # 指定要生成的wheel对应的Python版本,这里对应3.8 pyversions = ["3.8"]
如果需要更精准控制ABI标签(比如针对CPython的特定版本),可以补充abis参数:
[tool.hatch.build.targets.wheel] pyversions = ["3.8"] abis = ["cp38"]
配置后执行hatch build,生成的wheel文件名就会带上对应Python版本的标识(比如your_package-0.1.0-cp38-cp38-linux_x86_64.whl)。
方法2:构建时通过命令行临时指定
如果不想修改配置文件,可在构建时通过--target-options参数传递版本信息:
# 指定单个Python版本 hatch build --target-options wheel.pyversions=3.8 # 指定多个版本用逗号分隔 hatch build --target-options wheel.pyversions=3.8,3.9
注:如果你的包是纯Python包(无C扩展),Hatch默认会生成兼容多版本的universal wheel,通过上述方式指定pyversions可强制生成对应特定版本的wheel,确保文件名包含目标Python版本标识。
内容的提问来源于stack exchange,提问作者rchitect-of-info
相关产品推荐
相关产品推荐

