python setup.py构建忽略一些文件

前端之家收集整理的这篇文章主要介绍了python setup.py构建忽略一些文件前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我的Python包有以下结构:

$tree -d | grep -v "__pycache__"
.
├── src
│   ├── poliastro
│   │   ├── iod
│   │   ├── tests
│   │   └── twobody
│   │       └── tests
├── setup.py
└── MANIFEST.in

47 directories
@H_301_8@

在执行python setup.py构建之后,不会复制最里面的测试目录:

$tree -d | grep -v "__pycache__"
.
├── build
│   ├── lib
│   │   └── poliastro
│   │       ├── iod
│   │       ├── tests
│   │       └── twobody
@H_301_8@

相反,python setup.py sdist正常工作.

到目前为止,我已经使用MANIFEST.in规则来包含或排除sdist中的某些文件,模式和目录.有没有办法控制构建目录的内容?为什么有些测试会到达而有些测试却没有?

参考原始问题和源代码https://github.com/poliastro/poliastro/issues/129

最佳答案
您的setup()缺失include_package_data = True.看到这个PR我做了https://github.com/poliastro/poliastro/pull/139

讨论:如果没有这个,默认情况下不包含非python包文件(例如您列出的不在“包中”的测试py文件),即使它们在技术上是其他包含的Python包目录树的一部分.
/ HTH

原文链接:https://www.f2er.com/python/438591.html

猜你在找的Python相关文章