使用setup.cfg构建wheel包后如何清理xxx.egg-info并构建文件夹

问题描述

我正在按照教程 here一个 python 项目打包成一个wheel包。我正在使用 setup.cfg 进行构建。我能够做到

python -m build --wheel

创建车轮包。但是,我想在“dist/”中获取wheel包后自动清理不需要的文件夹“build/”和“xxx.egg-info”。我进行了大量搜索,但我找到的唯一答案是使用 setup.py(例如 here)。我想知道是否有任何方法可以使用 setup.cfg 进行清理?

解决方法

AFAIK 你不能,构建只能从 setup.py 脚本中清除,而 egg-info 目录根本无法清除。但是,您可以将两个目录都指向临时目录,以便在下次重新启动时清除它们。例如,输入您的 setup.cfg:

[build]
build-base = /tmp/build

[egg_info]
egg-base = /tmp

或者您可以使用 clean 子命令调用一个虚假的安装脚本而不创建它。不过,这只会删除 build 目录:

$ python -c "from setuptools import setup; setup()" clean --all