一个蟒蛇模块的骨架包
makenew-pypackage的Python项目详细描述
python模块的包骨架。
说明
不到一分钟就启动一个新的Python包。
功能
- 使用setuptools进行包管理并发布到PyPI。
- 使用Pipenv保护依赖关系管理。
- 用Pylint起毛。
- pytest帮助您编写更好的程序。
- 使用Codecov报告代码覆盖率。
- CircleCI准备好了。
- Keep a CHANGELOG。
- 与EditorConfig编码一致。
- 来自Shields.io的徽章。
启动新项目
在github上创建一个空(non initialized)存储库。
使用克隆此存储库的主分支
$ git clone --single-branch https://github.com/makenew/pypackage.git new-pypackage $ cd new-pypackage
(可选)重置为最新的 release使用
$ git reset --hard v1.2.0
运行
$ ./makenew.sh
这将替换样板文件,删除它本身, 移除git remote,移除上游标签, 并为提交准备更改。
使用
$ .circleci/envvars.sh
使用
$ git diff --cached $ git commit -m "Replace makenew boilerplate" $ git remote add origin git@github.com:<user>/<new-python-package>.git $ git push -u origin master
确保Circleci建筑通行证, 然后用
$ pipenv install --dev $ pipenv run bumpversion patch $ git push $ git push --tags
更新
如果你想从这个框架中获取未来的更新, 您可以从此存储库中获取和合并更改。
使用将其添加为新遥控器
$ git remote rename origin upstream
然后将origin分支配置为普通分支。
否则,请使用
$ git remote add upstream git@github.com:makenew/pypackage.git
然后,您可以使用
$ git fetch --no-tags upstream $ git merge upstream/master
更改日志
注意,CHANGELOG.md只是这个骨架的模板。这个 此项目的实际更改记录在提交历史和 总结如下 Releases。
安装
此包已在Python Package Index (PyPI)上注册 作为makenew_pypackage。
用
安装$ pipenv install makenew_pypackage
如果您正在编写依赖于此的python包, 将此添加到setup.py中的需求中。
开发和测试
快速启动
$ git clone https://github.com/makenew/pypackage.git $ cd pypackage $ pipenv install --dev
在单独的终端窗口中运行下面的每个命令:
$ make watch
主要开发任务在makefile中定义。
源代码
源代码位于github上。 用
$ git clone https://github.com/makenew/pypackage.git
测试
lint代码,使用
$ make lint
使用
运行测试$ make test
使用
$ make watch
出版
使用bumpversion命令发布新版本。 按下创建的git标记,它将触发circleci发布作业。
Circleci设置
circleci应已配置:此部分仅供参考。
必须在CircleCI上设置以下环境变量:
- TWINE_USERNAME:在pypi上发布的用户名。
- TWINE_PASSWORD:在pypi上发布的密码。
- CODECOV_TOKEN:用于上载覆盖率报告的codecov令牌(可选)。
这些可以手动设置,也可以通过运行脚本./circleci/envvars.sh来设置。
贡献
请提交并评论错误报告和功能请求。
提交修补程序:
- 叉它(https://github.com/makenew/pypackage/fork)。
- 创建功能分支(git checkout-b my new feature)。
- 做出改变。
- 提交更改(git commit-am'add some feature')。
- 推到分支(git push origin my new feature)。
- 创建新的拉取请求。
虱子硒
这个python包是在mit许可下授权的。
保修
本软件由版权所有者和贡献者“按原样”提供,并且 任何明示或默示保证,包括但不限于 适销性和特定用途适用性的保证是 否认。在任何情况下,版权持有人或贡献者均不承担责任 任何直接、间接、附带、特殊、惩戒性或间接损害 (包括但不限于替代货物或服务的采购; 使用、数据或利润的损失;或营业中断),无论是何种原因造成的 任何责任理论,无论是合同责任、严格责任还是侵权责任 (包括疏忽或其他)以任何方式产生的 软件,即使被告知有这种损坏的可能性。