查看您仓库的依赖关系。
项目描述
all-repos-depends
查看您仓库的依赖关系。
all-repos-depends
是all-repos的附加项目。
安装
pip install all-repos-depends
命令行界面
要生成数据库,运行all-repos-depends-generate
。
要运行Web应用程序,运行all-repos-depends-server
。服务器在可配置的--port
上运行。
配置
{
"all_repos_config": "../all-repos/all-repos.json",
"get_packages": [
"all_repos_depends.packages.setup_py",
"all_repos_depends.packages.package_json"
],
"get_depends": [
"all_repos_depends.depends.setup_py",
"all_repos_depends.depends.requirements_tools"
]
}
提供者
提供者是all-repos-depends
的可插拔部分。提供了一些免费的提供者。
提供者将生成的类型在all_repos_depends.types
中定义
Package = collections.namedtuple('Package', ('type', 'key', 'name'))
Depends = collections.namedtuple(
'Depends', ('relationship', 'package_type', 'package_key', 'spec'),
)
如果提供者遇到可检测的错误状态,它应引发类型为all_repos_depends.errors.DependsError
的异常。
package
提供者
当cwd
位于仓库根目录时,将调用package
提供者。它必须返回一个all_repos_depends.types.Package
,该包由仓库提供(如果不适用的,则返回None
)。
提供了一些开箱即用的(欢迎提交更多PR!)
all_repos_depends.packages.setup_py
此package
提供者读取setup.py
的ast并搜索name
关键字参数。目前这意味着它只能读取具有python3兼容语法并设置名称为字面量的setup.py
文件。
all_repos_depends.packages.package_json
从npm的package.json
文件中读取name
字段。
depends
提供者
当cwd
位于仓库根目录时,将调用depends
提供者。它必须返回一个包含all_repos_depends.types.Depends
的序列,该序列由仓库提供(如果不适用的,则返回空序列)。
all_repos_depends.depends.setup_py
此depends
提供者读取setup.py
的ast并搜索install_requires
关键字参数。
all_repos_depends.depends.requirements_tools
此 depends
提供者根据 requirements-tools 的约定读取以下需求文件
requirements-minimal.txt
(DEPENDS
)requirements.txt
(REQUIRES
)requirements-dev-minimal.txt
(DEPENDS_DEV
)requirements-dev.txt
(REQUIRES_DEV
如果存在-minimal
,否则DEPENDS_DEV
)