External plugins will be built in project_dir/Intermediate/External/...
#jira UE-136243
#preflight 61a8efe3ca183f8de48d781f
#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 18353193 in //UE5/Release-5.0/... via CL 18353223
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
[CL 18353249 by jonathan adamczewski in ue5-release-engine-test branch]
When looking up member names in documentation xml, replace + with .
Type.FullName uses '+' to indicate a nested class (e.g. UnrealBuildTool.UnrealBuildTool+GlobalOptions), but generated documentation xml always uses '.'
#jira UE-133900
#rb ben.marsh
#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 18325633 in //UE5/Release-5.0/... via CL 18325639
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v895-18170469)
[CL 18325644 by jonathan adamczewski in ue5-release-engine-test branch]
This represents UE4/Main @18073326, Release-5.0 @18081140 and Dev-PerfTest @18045971
[CL 18081471 by aurel cordonnier in ue5-release-engine-test branch]
This represents UE4/Main @17911760, Release-5.0 @17915875 and Dev-PerfTest @17914035
[CL 17918595 by aurel cordonnier in ue5-release-engine-test branch]
This represents UE4/Main @17774255, Release-5.0 @17791557 and Dev-PerfTest @17789485
[CL 17794212 by aurel cordonnier in ue5-release-engine-test branch]
Example code:
[XmlConfigFile(Deprecated = true, NewAttributeName = "PrimaryProjectName")]
protected string MasterProjectName = "UE5";
Example output:
WARNING: Deprecated setting found in "/Users/jonathan.adamczewski/.config/Unreal Engine/UnrealBuildTool/BuildConfiguration.xml":
WARNING: The setting "MasterProjectName" is deprecated. Support for this setting will be removed in a future version of Unreal Engine.
WARNING: Use "PrimaryProjectName" in place of "MasterProjectName"
The value provided for "MasterProjectName" will be applied to "PrimaryProjectName"
#jira none
#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 17680559 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v875-17642767)
[CL 17680584 by jonathan adamczewski in ue5-release-engine-test branch]
Output from /sourceDependencies isn't quite the same as from /sourceDependencies:directives
#jira none
#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 17667809 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v875-17642767)
[CL 17668636 by jonathan adamczewski in ue5-release-engine-test branch]
Intended for writing unit, integration, functional and all types of tests.
#jira UEENGQA-49764
#rb Jerome.Delattre
#ROBOMERGE-AUTHOR: chris.constantinescu
#ROBOMERGE-SOURCE: CL 17666358 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v875-17642767)
[CL 17666384 by chris constantinescu in ue5-release-engine-test branch]
Log file will contain lines like the following:
[00:00:00.032] Log started at 9/28/2021 8:46:43 AM (2021-09-28T15:46:43Z)
[00:00:00.051] No config file at /Users/jonathan.adamczewski/Unreal Engine/UnrealBuildTool/BuildConfiguration.xml
[00:00:00.051] Configuration will be read from:
[00:00:00.051] /Users/jonathan.adamczewski/Perforce/UE5_Main/Engine/Restricted/NotForLicensees/Programs/UnrealBuildTool/BuildConfiguration.xml
[00:00:00.051] /Users/jonathan.adamczewski/Perforce/UE5_Main/Engine/Saved/UnrealBuildTool/BuildConfiguration.xml
[00:00:00.051] /Users/jonathan.adamczewski/.config/Unreal Engine/UnrealBuildTool/BuildConfiguration.xml
#jira none
#trivial
#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 17648226 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v875-17642767)
[CL 17648240 by jonathan adamczewski in ue5-release-engine-test branch]
Prevents interference with interactive git commands that may be running at the same time
#jira none
#rb branden.turner
#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 17586516 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v871-17566257)
[CL 17586528 by jonathan adamczewski in ue5-release-engine-test branch]
IsActionGraph() is complicated: recursively evaluating a graph, modifying data at each node (ActionHistory.UpdateProducingAttributes) making it easy to introduce hard-to-see race conditions, and difficult to optimize.
This change splits the function into two parts:
IsIndividualActionOutdated(): finds nodes that are out of date, based on the node's own data - able to be run in parallel, with less cross-thread contention.
IsActionOutdatedDueToPrerequisites(): recursively traverse the graph, to determine if an action is out of date based on its prerequisites. Does not run in parallel, but is fast (processes ~6000 actions in 2-3ms).
For a clean, simple project editor build, total runtime is <100ms, compared to ~150ms previously.
#jira none
[FYI] ben.marsh
#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 17553054 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)
[CL 17553068 by jonathan adamczewski in ue5-release-engine-test branch]
Can be used to reduce the number of build actions that will be run in parallel by ParallelExecutor or TaskExecutor.
Example use, in MyProject.Target.cs:
public class MyProjectTarget : TargetRules
{
public MyProjectTarget(TargetInfo Target) : base(Target)
{
Type = TargetType.Game;
DefaultBuildSettings = BuildSettingsVersion.V2;
ExtraModuleNames.AddRange( new string[] { "MyProject" } );
MemoryPerActionGB = 4;
}
}
#jira none
#ROBOMERGE-AUTHOR: jonathan.adamczewski
#ROBOMERGE-SOURCE: CL 17546182 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)
[CL 17546186 by jonathan adamczewski in ue5-release-engine-test branch]
This adds support for running Editor in BuildGraph Command and Commandlet tasks where the Project at hand has it's own BuildEnvironment.
#jira none
#rb ben.marsh
#preflight 6143be8d9bba9a0001dfc9ee
#ROBOMERGE-AUTHOR: geoff.evans
#ROBOMERGE-SOURCE: CL 17546102 in //UE5/Main/...
#ROBOMERGE-BOT: STARSHIP (Main -> Release-Engine-Test) (v870-17433530)
[CL 17546103 by geoff evans in ue5-release-engine-test branch]