用于计算存储库最佳工程实践指标的python包
repository-scorer的Python项目详细描述
氡库记分仪
radon repository scorer是一个Python包,用于计算存储库最佳工程实践指标。在
本模块提供了以下8个精心设计的软件项目指标:
- Core contributors:提交总数占贡献总数80%或更多的贡献者的数量。在
- Continuous integration(CI):存储库有CI服务的证据,由该服务所需的配置文件(例如,a。特拉维斯·伊姆尔福特拉维西)。在
- Comments ratio:注释和代码行之间的比率。在
- Commit frequency:每月的平均提交次数。在
- Issue frequency:每月发生的问题事件的平均数。在
- License availability:存储库有许可证的证据(即许可证文件)。在
- 代码行:可执行代码行数。在
- IaC脚本的比率:基础设施作为代码(IaC)文件与总文件之间的比率。在
除最后一项指标外,所有上述指标均在以下章节中进行了深入描述:
@inproceedings{@article{munaiah2017curating, title={Curating GitHub for engineered software projects}, author={Munaiah, Nuthan and Kroh, Steven and Cabrey, Craig and Nagappan, Meiyappan}, journal={Empirical Software Engineering}, volume={22}, number={6}, pages={3219--3253}, year={2017}, publisher={Springer} }
注意:该工具旨在用作Python库。 因此,当前版本不提供命令行接口。在
如何安装
来自Python包索引的
pip install repository-scorer
,来自源代码
^{pr2}$如何使用
fromreposcorer.scorerimportscore_repositoryreport=score_repository(path_to_repo='path/to/cloned/repo',full_name_or_id='repo_owner/repo_name',# e.g., radon-h2020/radon-repository-scorerhost='github')# or gitlab
Output
{ 'has_ci': <bool>, 'comments_ratio': <float in [0,1]>, 'commit_frequency': <float>, 'core_contributors': <int>, 'iac_ratio': <float in [0,1]>, 'issue_frequency': <float>, 'has_license': <bool>, 'repository_size': <int> }
如何构建Docker镜像
docker build -t repo-scorer:latest .
如何从Dockerhub中提取
docker pull radonconsortium/repo-scorer:latest
如何使用Docker图像
docker run -e GIT(HU|LA)B_ACCESS_TOKEN=$TOKEN repo-scorer:latest <github|gitlab> <repo full name> <clone to>
示例
docker run -e GITHUB_ACCESS_TOKEN=$GITHUB_ACCESS_TOKEN repo-scorer:latest github UoW-CPC/COLARepo /tmp/
输出:
{"has_ci": false, "percent_comment": 0.0389, "commit_frequency": 4.56, "core_contributors": 3, "iac_ratio": 0.96, "issue_frequency": 0.0, "has_license": false, "repository_size": 2224}
有关发布的日志详细信息,请参见CHANGELOG。在
- 项目
标签: