如何删除setup.cfg中不需要的顶级包



根据本指南,我正在为我的第一个Python包开发setup.cfg。它基本上是有效的,但问题是它将我的包的子文件夹作为顶级包。来源树:

setup.cfg
src
Accentizer2
__init__.py
Accentizer.py
Annotation.py
DawgSharp
YaleDawg.py
Russian
Stress.py
Syllable.py
Vowels.py

(我知道,资本化是非常规的。我很快就会解决这个问题。(

setup.cfg:

[options]
package_dir =
= src
packages = find:
[options.packages.find]
where = src
exclude =
Accentizer2/DawgSharp
Accentizer2/Russian

以下是py -m build:的部分输出

adding 'Accentizer2/Accentizer.py'
adding 'Accentizer2/Annotation.py'
adding 'Accentizer2/__init__.py'
adding 'Accentizer2/DawgSharp/YaleDawg.py'
adding 'Accentizer2/DawgSharp/__init__.py'
adding 'Accentizer2/Russian/Stress.py'
adding 'Accentizer2/Russian/Syllable.py'
adding 'Accentizer2/Russian/Vowels.py'
adding 'Accentizer2/Russian/__init__.py'
adding 'DawgSharp/YaleDawg.py'
adding 'DawgSharp/__init__.py'
adding 'Russian/Stress.py'
adding 'Russian/Syllable.py'
adding 'Russian/Vowels.py'
adding 'Russian/__init__.py'

正如您所看到的,它添加了DawgSharpRussian两次:在Accentizer2内部和顶层。为什么?它还添加了不属于src树的DawgSharp/__init__.pyRussian/__init__.py

如何更改我的setup.cfg,使生成的包只包含DawgSharpRussian作为子文件夹,而不包含顶级模块?它们是我的包的用户不应该担心的实现细节。

我只需要清理我的构建文件夹。它正在拾取旧版本的文件(在它们被移动之前(。

最新更新