dotnet / dotnet/msbuild

Support building a static graph node's direct children serially

Open
#5,977 0 comments 1 reaction 0 assignees View on GitHub
Area: Static Graph triaged
Dominant language
C#
Stars
5.5k
Forks
1.5k
Avg merge
1d 8h
Merged PRs (30d)
141

Description

Some big repos have build phases where they want to build multiple p2p graphs in sequence: graph1, graph2, etc. So graph1 builds in parallel, then graph2 builds in parallel, etc.

Currently there is no way in static graph to express that that graph1 and graph2 should build one after the other. One way to support this is to add a gesture specifying that a node's direct children must be built in order. Something like:

TopLevelMultiPhaseBuild.proj
```xml





true

```

Current workarounds to build each phase via static graph:
- express `TopLevelMultiPhaseBuild.proj` as a script (bash, powershell, python) instead in msbuild
- have `TopLevelMultiPhaseBuild.proj` call phases via Exec, like ``

Another option is to add a graph option to the MSBuild task, but I'd advise against it because the task is a runtime concept and so the static graph constructor and scheduler can never know about it in order to stitch all the subgraphs in one big graph.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.