When build graph macro expansion fails due to missing required arguments, only a warning is emitted, which allows the graph to still execute.
This can be potentially quite dangerous, as the macro could have provided critical functionality without necessarily being a requirement for a well defined graph. For example, the macro could have provided contextually important overrides to certain properties, or validation of certain properties to prevent an unsafe action later in the graph.
On the surface it seems like these could just be bumped up to errors instead, but I wanted to see if there was any missing context as to why this is a warning before putting up a PR.
I can’t share any concrete timelines, unfortunately, but we are actively working in this area and aim to have C# BuildGraph in use across the board for the UE6 release.
I would recommend holding off until UE6 Early Access to see where the progress stands, so that we can work to ensure all our current use cases are covered.
Typically we try to upstream changes like this to prevent future merge conflicts. It sounds like with the focus on C# build graph, that the changes us a major overhaul on your part to XML build graph is unlikely, so the conflict risk is low for us either way.
On the topic of C# build graph, is there anything you can share regarding the plans there? Specifically, whether there are there major architectural changes coming to it. We were considering adopting some usage of it, but even if we base that off of UE6-main, we’d like to understand how much of a risk we’re taking on there. I can make a new thread for this if you prefer.