类列表

class PackagesList

一系列的配方、修订和包。

split()

返回一个 PackageList 列表,每个引用分割成一个。这对于并行化上传等任务很有用,可以按引用并行化。

only_recipes() None

过滤掉所有的包和包修订,只保留 self._data 中的配方和配方修订。

add_ref(ref: RecipeReference) None

向包列表中添加一个新的 RecipeReference。

add_pref(pref: PkgReference, pkg_info: dict = None) None

将 PkgReference 添加到包列表中已存在的 RecipeReference。

items() Iterable[Tuple[RecipeReference, Dict[PkgReference, Dict]]]

遍历包列表的内容。

第一个字典是直接属于配方-修订的信息。第二个字典包含 PkgReference 作为键,以及一个包含特定包引用(设置、选项等)的字典。

recipe_dict(ref: RecipeReference)

提供对包含特定 RecipeReference 信息的字典的读写访问。

package_dict(pref: PkgReference)

提供对包含特定 PkgReference 信息的字典的读写访问。

serialize()

将实例序列化为字典。

static deserialize(data)

从序列化的字典加载数据。

class MultiPackagesList

按远程名称分组的 PackagesList 集合。

serialize()

将对象序列化为字典。

static load(file)

从指向 file 的序列化 JSON 文件路径创建类的实例。

static load_graph(graphfile, graph_recipes=None, graph_binaries=None, context=None)

从图文件路径创建类的实例,该文件是 conan graph infoconan create/install 等命令返回的 JSON 格式。

参数:
  • graphfile (str) – 图文件的路径

  • graph_recipes (list[str]) – 要返回的配方种类的列表。例如,"cache" 将只返回本地缓存中的配方,"download" 将只返回已下载的配方,而传入 "*" 将返回所有配方。

  • graph_binaries (list[str]) – 要返回的二进制文件种类的列表。例如,"cache" 将只返回本地缓存中的二进制文件,"download" 将只返回已下载的二进制文件,"build" 将只返回已构建的二进制文件,"missing" 将只返回缺失的二进制文件,"invalid" 将只返回无效的二进制文件,而传入 "*" 将返回所有二进制文件。

  • context (str) – 用于过滤图的上下文,可以是 "host""build""host-only""build-only"

class ListPattern(expression, rrev='latest', package_id=None, prev='latest', only_recipe=False)

持有匹配配方、修订和包的模式的对象。

参数:
  • expression – 要匹配的模式,例如 "name/*:*"

  • rrev – 要匹配的配方修订,默认为 "latest",也可以是 "!latest""~latest" 来匹配除最新修订之外的所有修订,例如 "1234*" 来匹配特定修订,或特定修订如 "1234"

  • package_id – 要匹配的包 ID,默认为 None,匹配所有包 ID。

  • prev – 要匹配的包修订,默认为 "latest",也可以是 "!latest""~latest" 来匹配除最新修订之外的所有修订,例如 "1234*" 来匹配特定修订,或特定修订如 "1234"

  • only_recipe – 如果为 True,则只解析表达式的配方部分,忽略 package_idprev。这对于只操作配方的命令(如 conan search)很有用。