你生活中的一点美食家
pyfoobar的Python项目详细描述
PyFoobar
一个python项目模板,它突出显示了python打包中的一些最佳实践。罐头 用作GitHub template 为您的新python项目。
最佳实践
git repo的name应该是包的pypi名称应该是 您键入
import mypackagename
。这意味着包名中没有连字符!你的包裹应该是一匹one-trick小马。如果没有人想安装一个巨大的工具箱 他们只需要里面的图像转换器。
在
import yourpackagename
之后,人们应该能够调用yourpackagename.__version__
加上一些其他元数据。这有助于调试。使用linting和格式化,将它们包括在集成测试中。 black是我喜欢的格式化程序,因为您不能 配置它——黑就是黑。好的绒布是 flake8或pylint。
一旦您按顺序进行了测试,请确保每次git推送都会执行这些测试。二 运行测试的流行ci服务是traviscircleci。此存储库包含每个 两个人中的一个。
确保没有人可以推到master。在Github上,转到“设置”->;“分支”->; 添加规则并选择在合并和include之前需要通过状态检查 管理员。在pull请求中进行开发,这确保没有人-- 包括你自己——不小心把坏东西推给主人。
使用工具测量测试覆盖率。codecov是一个,并且 circleci配置将数据提交给它。
婊子喜欢徽章。如果已设置CI,则希望显示测试覆盖率或公布 pypi上的可用性,使用自述文件顶部的徽章。退房 shields.io对于可用的。
如何使用此模板
首次运行
find . -type f -name "*.py" -o -name Makefile -o -name "*.yml" -print0 | xargs -0 sed -i 's/pyfoobar/your-project-name/g'
并重命名文件夹pyfoobar
以自定义名称。
有一个简单的Makefile
可以帮助您完成某些任务:
运行
make black
以应用black格式。运行
make lint
以运行flake8 linting运行
make publish
到- 在git上标记项目(
make tag
) - 将您的包上载到pypi(
make upload
)
发布后,人们可以使用
pip3 install --user pyfoobar
- 在git上标记项目(
测试
要运行pyfoobar单元测试,请签出此存储库并键入
pytest
许可证
pyfoobar发布在MIT license下。