wonderful-iron-54019
01/22/2021, 4:42 PMhundreds-father-404
01/22/2021, 4:50 PMpackage
goal, compiling code, or even more generic like running testswonderful-iron-54019
01/22/2021, 4:51 PMwonderful-iron-54019
01/22/2021, 4:51 PMwonderful-iron-54019
01/22/2021, 4:52 PMwonderful-iron-54019
01/22/2021, 4:52 PMhundreds-father-404
01/22/2021, 4:56 PMawait Get()
differently
For example, rather than MultiGet()
, you can use a for
loop like this https://github.com/pantsbuild/pants/blob/4e23ed4962ec88b2dd93f36097b151d90a1ebc5e/src/python/pants/backend/python/lint/python_fmt.py#L36-L52
Usually, you want that parallelism, but up to you decide.
Or, do:
part1 = await Get(A, B, b)
part2 = await Get(X, Y, z)
wonderful-iron-54019
01/22/2021, 4:57 PMdeps = await MultiGet(Get(Targets, DependenciesRequest(target.get(Dependencies()) for target in targets)
await MultiGet(Get(Results, target) for target in deps if target.has_fields([])
but the semantics of the dependency field seems like it might be useful to push that up to the build graph, obviously there may be architectural challenges to thatwonderful-iron-54019
01/22/2021, 4:58 PMhundreds-father-404
01/22/2021, 5:01 PMwonderful-iron-54019
01/22/2021, 5:02 PMwonderful-iron-54019
01/22/2021, 5:02 PMhappy-kitchen-89482
01/22/2021, 5:57 PMMultiGet
classfiles for all the deps, even if that involves recursively calling the same rule.