自动化科学软件审查
项目描述
AutoReviewer
科学家经常做同样不好的事情。自动化Python包同行评审期间的反馈。
目标
- 给定一个GitHub存储库,自动化查找常见问题,例如
- 没有 setup.py/setup.cfg/pyproject.toml
- 没有从README链接到zenodo存档
- 非标准代码布局(如
src/
或破坏) - 文件包含硬编码的文件路径
- 没有文档(在README中搜索readthedocs的链接)
- 包名与GitHub存储库名不匹配
- 没有可重现的安装说明(即,README是否包含
pip
) - 使用conda进行安装
- 代码风格不一致(例如,没有为
black
配置) pyroma
未通过10/10- 缺少
LICENSE
文件 - 缺少
CITATION.cff
文件
- 自动化将问题发送到存储库,说明如何做这些事情
- 为所有问题使用确定的标题以避免重复/使幂等
- 创建和编辑“史诗”问题以链接其他问题
示例审查
- https://github.com/fanavarro/lexical-analysis-obo-foundry/issues/4
- https://github.com/krishnanlab/PecanPy/issues/12
- https://github.com/huihui1126/drugSim-pathway/issues/14
想要合作吗?您对Python包有什么期望?请在评论区告诉我。我想象这是一个模块化的东西,人们可以贡献他们自己的检查。
期望的接口
通过命令行运行
$ autoreviewer https://github.com/rs-costa/sbml2hyb
J. Chem. Inf. Analysis
有一个子模块 autoreviewer.jcheminf
,它提供了从《化学信息杂志》抓取论文列表、获取它们的ePub文件、从可用性声明中提取GitHub引用、对每个文件运行自动评审,然后使用 python -m autoreviewer.jcheminf
生成以下摘要的实用工具。
🚀 安装
最新版本可以从 PyPI 使用以下命令安装:
$ pip install autoreviewer
最新代码和数据可以直接从GitHub安装
$ pip install git+https://github.com/cthoyt/autoreviewer.git
您还需要确保已安装 pandoc
。在macOS上,最好的方法是使用 brew install pandoc
。
👐 贡献
贡献,无论是提交问题、创建拉取请求还是进行分支操作,都受到欢迎。有关参与的信息,请参阅 CONTRIBUTING.md。
👋 致谢
⚖️ 许可证
本包中的代码受MIT许可证许可。
🍪 Cookiecutter
此包是用 @audreyfeldroy 的 cookiecutter 包和 @cthoyt 的 cookiecutter-snekpack 模板创建的。
🛠️ 开发者
查看开发者说明
README的最后一部分是为如果您想通过代码贡献来参与。
开发安装
要开发模式安装,请使用以下命令
$ git clone git+https://github.com/cthoyt/autoreviewer.git
$ cd autoreviewer
$ pip install -e .
🥼 测试
在克隆存储库并使用 pip install tox
安装 tox
后,可以重复运行 tests/
文件夹中的单元测试
$ tox
此外,这些测试还会在每个提交时自动重新运行,在 GitHub Action 中。
📖 构建文档
可以使用以下命令在本地构建文档
$ git clone git+https://github.com/cthoyt/autoreviewer.git
$ cd autoreviewer
$ tox -e docs
$ open docs/build/html/index.html
文档会自动安装包以及 setup.cfg
中指定的 docs
额外内容。可以添加 texext
等类似 sphinx
插件。此外,它们还需要添加到 docs/source/conf.py
中的 extensions
列表。
📦 发布版本
在开发模式下安装包并使用 pip install tox
安装 tox
后,创建新版本的命令包含在 tox.ini
的 finish
环境中。在shell中运行以下命令
$ tox -e finish
此脚本执行以下操作
- 使用 Bump2Version 将
setup.cfg
、src/autoreviewer/version.py
和docs/source/conf.py
中的版本号更改为不带-dev
后缀 - 使用
build
将代码打包成tar归档和wheel - 使用
twine
上传到PyPI。请确保已配置.pypirc
文件以避免在此步骤中需要手动输入 - 推送到GitHub。您需要创建一个发布版本,与提高版本的提交相对应
- 将版本提升到下一个补丁。如果您进行了重大更改并希望通过次要版本提升版本,则可以使用
tox -e bumpversion minor
。
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解更多关于安装包的信息。
源代码分发
构建分发
autoreviewer-0.0.5.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 694ddff489aaddb64b20f2e1c0e06fed8bba42a6d4fd38f910aea002059981ae |
|
MD5 | 07a124650732dffdbf962ff28c9ce1a4 |
|
BLAKE2b-256 | 8dfb2e763bef65a2f33138a87afa1fda2cb7674b823d010260c64d4affba0d28 |
autoreviewer-0.0.5-py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 3f4d12562ad43950ef75c6774bc5350a1a806beda9ca425d37e765a5653809f8 |
|
MD5 | 86005a827f115b4628943880a2c2fa50 |
|
BLAKE2b-256 | 986ee5750a773e9367e2f4dbff1183966c9b8e2d630c561f080a0978934cdd73 |