python依赖项管理实用程序
dante的Python项目详细描述
但丁
<<<<<<<<<<<<<<<<<版本
版本标志将使dante显示它已安装的版本结束退出:
dante --version
但丁命令
dante在cli的顶层有几个标志:
--all
-显示所有包(不使用忽略列表)--忽略忽略
-忽略指定的包。可多次使用。
依赖项列表
列出与项目相关的所有软件包:
dante list [--requirements REQUIREMENTS]
<表><广告>setup.cfg
)与pip freeze不同,除非它与
--all标志一起使用
显示项目所需的包。这是通过使用
已安装的软件包和要求文件。
依赖关系树
显示单个包或整个环境的依赖关系树:
dante tree [--package PACKAGE] [--requirements REQUIREMENTS]
<表><广告>setup.cfg
)结构关于
以json格式显示当前配置:
dante config
示例结果:
{"dante":{"any_version":"Any","checks":["conflicts","cyclic","missing","validate"],"ignore_list":["dante","pip","setuptools","wheel"],"allow_named_versions":true,"named_version_patterns":["0.*version"],"lock_file_path":"requirements-dev.lock","requirements_files":["requirements-dev.lock"],"lock_files":["requirements-dev.lock"],"graph_name":"dante-graph","graph_filename":null,"graph_format":"pdf","graph_engine":"dot","graph_strict":true},"graph_attributes":{},"graph_node_attributes":{"shape":"box3d"},"graph_edge_attributes":{"fontsize":"10"}}
验证
对要求和锁定文件执行各种检查:
dante validate [-requirments REQUIREMENTS] [--lock LOCK] [--strict]
<表><广告>setup.cfg
)setup.cfg
)执行的检查如下:
- 检查是否所有设置的要求都设置为版本或版本范围
- 检查是否已将所有锁定的要求设置为精确版本
- 检查所有安装的软件包版本是否与锁定的要求版本匹配
- 检查所有必需版本是否与锁定的必需版本匹配
成功运行将打印出来:
All set requirements locked
No unset locks found
All package versions matching
All requirement versions matching
使用--strict
标志运行验证将添加一些附加检查:
- 检查是否安装了任何不需要的软件包
- 检查是否有任何不需要的锁定要求
建议尽可能使用严格检查。
成功运行将打印出来:
No non-required packages found
No non-required locks found
相互冲突的依赖关系
检测已安装软件包之间的冲突:
pip install dante
0
当多个包需要具有 不兼容的版本(例如,一个版本需要<;1.0.0,另一个版本需要>;2.0.0)。 成功运行将打印出来:
pip install dante
1
循环依赖性
检测已安装软件包中的循环依赖项:
pip install dante
2
当包依赖项中存在循环路径时(例如
package1
需要package2
这需要package3
需要
package1
)。成功运行将打印出来:
pip install dante
3
缺少依赖项
检测环境中是否存在未安装的必需软件包:
pip install dante
4
<表><广告>setup.cfg
)成功运行将打印出来:
pip install dante
5
检查
一次运行所有定义的检查:
pip install dante
6
<表><广告>setup.cfg
)setup.cfg
)成功运行所有检查将打印出来:
pip install dante
7
锁定
显示或保存当前项目的锁定要求:
pip install dante
8
<表><广告>setup.cfg
)setup.cfg
)锁定的需求是通过遍历所有已安装的包来确定的 并递归地提供需求以检索其依赖项。
只需要满足r项目将被退回。
图表
返回依赖关系图描述或将其呈现到文件:
pip install dante
9
<表><广告>API
dante通过api模块公开它的操作,因此可以导入它们 并用于您的库/应用程序:
检索已安装软件包的示例:
dante --version
0
Ci
Dante可以用作CI检查工具,在
setup.cfg
已配置,对任何CI运行检查所需的全部时间是:
dante --version
1
dante在通过cli运行时包含错误代码,因此它将使构建失败 如果检测到任何问题。
注意:建议尽可能使用严格检查,因为 不必要的需求仍然会导致环境中的问题 (例如,可以覆盖其他包的文件…):
dante --version
2
测试
要运行测试,只需安装requirements-dev.lock
中的所有依赖项并运行:
dante --version
3
路线图:
- 完整文档