图形 API

警告

此功能是实验性的,可能会发生重大更改。有关更多信息,请参阅 Conan 稳定性 部分。

class GraphAPI(conan_api, helpers)
load_root_test_conanfile(path, tested_reference, profile_host, profile_build, update=None, remotes=None, lockfile=None, tested_python_requires=None)

从 test_package/conanfile.py 消费者创建并初始化一个根节点

参数:
  • tested_python_requires – 要测试的 python_require 的引用

  • lockfile – 最好锁定 python-requires, build-requires

  • path – 使用中的 test_package/conanfile.py 的完整路径

  • tested_reference – 被测试包的完整 RecipeReference

  • profile_host

  • profile_build

  • update

  • remotes

返回:

一个图节点, recipe=RECIPE_CONSUMER

load_graph(root_node, profile_host, profile_build, lockfile=None, remotes=None, update=None, check_update=False)

计算依赖图,从根包开始,使用 profile_build 和 profile_host 中提供的配置评估图。结果图是配方图,但包尚未计算(结果中的 package_ids 将为空)。结果可能包含错误,例如版本或配置冲突,但仍然可以检查它。只有尝试安装这样的图才会失败。

参数:
  • root_node – 起始点,一个已初始化的节点结构,由“load_root_node” API 返回

  • profile_host – 主机配置文件

  • profile_build – 构建配置文件

  • lockfile – 一个有效的锁定文件(默认为 None,表示未锁定)

  • remotes – 要检查的远程仓库列表

  • update – (默认为 False),Conan 是否应该在 Conan 缓存中查找现有配方的新版本或修订版

  • check_update – 对于“graph info”命令,检查是否有配方更新

analyze_binaries(graph, build_mode=None, remotes=None, update=None, lockfile=None, build_modes_test=None, tested_graph=None)

给定一个依赖图,将计算图中所有配方的 package_ids,并评估它们是否应该从源代码构建、从远程服务器下载,或者包是否已存在于本地 Conan 缓存中。

参数:
  • lockfile

  • graph – 一个 Conan 依赖图,由“load_graph()”返回

  • build_mode – 待办:讨论这应该是一个 BuildMode 对象还是参数列表

  • remotes – 远程仓库列表

  • update – (默认为 False),Conan 是否应该在 Conan 缓存中查找现有配方的新版本或修订版

  • build_modes_test – –build-test 参数

  • tested_graph – 如果是“test_package”,则为被测试的图

static find_first_missing_binary(graph, missing=None)

(实验性)给定一个依赖图,将返回第一个缺少二进制包的节点