#rb JeanFrancois.Dube, Brandon.Schaefer
#preflight 61fc3dcee058822bdaa87854
#ROBOMERGE-AUTHOR: andrew.rodham
#ROBOMERGE-SOURCE: CL 18852399 via CL 18853996 via CL 18854004 via CL 18854010 via CL 18855238 via CL 18855578
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18855620 by andrew rodham in ue5-main branch]
#rnx
#rb none
#ROBOMERGE-OWNER: ryan.durand
#ROBOMERGE-AUTHOR: ryan.durand
#ROBOMERGE-SOURCE: CL 10869210 via CL 10869511 via CL 10869900
#ROBOMERGE-BOT: (v613-10869866)
[CL 10870549 by ryan durand in Main branch]
Get GIsRequestingExit now by IsEngineRequestingExit()
Set GIsRequestingExit now by RequestEngineExit(const TCHAR* Reason) or RequestEngineExit(const FString& Reason)
NOTE If Reason is 4 or less chars it will generate an ensure to force a reason to exit
The reason behind this change is right now setting GIsRequestingExit to true can cause many things to break mainly early on and with out any sort of log warning we have entered this state. We should wrap this behind a function to allow for proper handling
#rb Chris.Babcock, Michael.Trepka, Michael.Noland
#jira UE-79933
[FYI] Michael.Noland
#ROBOMERGE-SOURCE: CL 8649683 via CL 8653683
#ROBOMERGE-BOT: (v417-8656536)
[CL 8658680 by brandon schaefer in Main branch]
- Brings over the necessary engine changes for embedding UE4 mobile as a dylib/so in native mobile app
- Various changes for facial animation, screen recording, others
- ARKit and ARCore plugins were removed, as deemed "not ready"
#rb many people
#ROBOMERGE-OWNER: josh.adams
#ROBOMERGE-AUTHOR: josh.adams
#ROBOMERGE-SOURCE: CL 5201138 via CL 5203024
[CL 5226277 by Josh Adams in Main branch]
#lockdown Nick.Penwarden
#rb none
============================
MAJOR FEATURES & CHANGES
============================
Change 3805828 by Gil.Gribb
UE4 - Fixed a bug in the lock free stalling task queue and adjusted a comment. The code is not current used, so this is not actually change the way the code works.
Change 3806784 by Ben.Marsh
UAT: Remove code to compile UBT when using UE4Build. It should already be compiled as a dependency of UAT.
Change 3807549 by Graeme.Thornton
Add a cook timer around VerifyCanCookPackage. A licensee reports this taking a lot of time so it'll be good to account for it.
Change 3807727 by Graeme.Thornton
Unhide the text asset format experimental editor option
Change 3807746 by Josh.Engebretson
Remove WER from iOS platform
Change 3807928 by Robert.Manuszewski
When async loading, GC Clusters will be created after packages have been processed to avoid situations where some of the objects that are being added to a cluster haven't been fully loaded yet
Change 3808221 by Steve.Robb
GitHub #4307 - Made GetModulePtr() thread safe by not using GetModule()
^ I'm not convinced by how much thread-safer this is really, but it's tidier anyway.
Change 3809233 by Graeme.Thornton
TBA: Misc changes to text asset commandlet
- Rename mode to "loadsave"
- Add -outputFormat option which can be assigned "text" or "binary"
- When saving binary, use a differentiated filename so that source assets aren't overwritten
Change 3809518 by Ben.Marsh
Remove the outdated UnrealSync automation script.
Change 3809643 by Steve.Robb
GitHub #4277 : fix bug; FMath::FormatIntToHumanReadable 3rd comma and negative value
#jira UE-53037
Change 3809862 by Steve.Robb
GitHub #3342 : [FRotator.h] Fix to DecompressAxisFromByte to be more efficient and reflect its intent accurately
#jira UE-42593
Change 3811190 by Graeme.Thornton
Add support for writing specific log channels to their own files
Change 3811197 by Graeme.Thornton
Minor updates to output formatting and timing for the text asset commandlet
Change 3811257 by Robert.Manuszewski
Cluster creation will now be time-sliced
Change 3811565 by Steve.Robb
Define out non-monolithic module functions.
Change 3812561 by Steve.Robb
GitHub #3886 : Enable Brace-Initialization for Declaring Variables
Incorrect semi-colon search removed after discussion with author.
Test added.
#jira UE-48242
Change 3812864 by Steve.Robb
Removal of some unproven code which was supposed to fix hot reloading BP class functions in plugins.
See: https://udn.unrealengine.com/questions/376978/aitask-blueprint-nodes-disappear-when-their-module.html
#jira UE-53089
Change 3820358 by Ben.Marsh
PR #4358: Incredibuild use ShowAgent by default (Contributed by projectgheist)
Change 3822594 by Ben.Marsh
UAT: Improvements to log file handling.
- Always create log files in the final location, rather than writing to a temp directory and copying in later.
- Now supports -Verbose and -VeryVerbose for increasing log verbosity, rather than -Verbose=XXX.
- Keep a backlog of log output before the log system is initialized, and flush it to the log file once it is.
- Allow buildmachines to specify the uebp_FinalLogFolder environment variable, which is used to form paths for display. When build machines copy log files elsewhere after UAT finishes (eg. a network share), this allows error messages to display the right location.
Change 3823695 by Ben.Marsh
UGS: Fix issue where precompiled binaries would not be shown as available for a change until scrolling the last submitted code change into the buffer (other symptoms, like de-focussing the main window would cause it to go back to an unavailable state, since the changes buffer was shrunk).
Now always queries changes up to the last change for which zipped binaries are available.
Change 3823845 by Ben.Marsh
UBT: Exclude C# projects for unsupported platforms when generating project files.
Change 3824180 by Ben.Marsh
UGS: Add an option to show changes by build machines, and move the "only show reviewed" option in there too (Options > Show Changes).
#jira
Change 3825777 by Steve.Robb
Fix to return value of StringToBytes.
Change 3825810 by Ben.Marsh
UBT: Reduce length of include paths for MSVC toolchain.
Change 3825822 by Robert.Manuszewski
Optimized PIE lazy pointer fixup. Should be up to 8x faster now.
Change 3826734 by Ben.Marsh
Remove code to disable TextureFormatAndroid on Linux. It seems to be an editor dependency.
Change 3827730 by Steve.Robb
Try to avoid decltype(auto) if it's not supported.
See: https://udn.unrealengine.com/questions/395644/build-417-with-c11-on-linux-ttuple-errors.html
Change 3827745 by Steve.Robb
Initializer list support for TMap.
Change 3827770 by Steve.Robb
GitHub #4399 : Added a CONSTEXPR qualifiers to FVariant::GetType()
#jira UE-53813
Change 3829189 by Ben.Marsh
UBT: Now always writes a minimal log file. By default, just contains the regular console output and any reasons why actions are outdated and needed to be executed. UAT directs child UBT instances to output logs into its own log folder, so that build machines can save them off.
Change 3830444 by Steve.Robb
BuildVersion and ModuleManifest moved to Core, and parsing of these files reimplemented to avoid a JSON library.
This should be revisited when Core has its own JSON library.
Change 3830718 by Ben.Marsh
Fix incorrect group name being returned by FStatNameAndInfo::GetGroupName() for stat groups.
The editor populates the viewport stats list by calling this for every registered stat and stat group (via FLevelViewportCommands::HandleNewStatGroup). The menu entry attempts to show the stat name with STAT_XXX stripped from the start as the menu item label, with the free-form text description as a tooltip.
For stat groups, the it would previously just return the stat group name as "Groups" (due to the raw naming convention of "//Groups//STATGROUP_Foo//..."). Since this didn't match the expected naming convention in FLevelViewportCommands::HandleNewStat (ie. STAT_XXX or STATGROUP_XXX), it would fail to add it.
When the first actual stat belonging to that group is added, it would add a menu entry for the group based on that, but the stat description no longer makes sense as a tooltip for the group. As a result, all the editor tooltips were junk.
#jira UE-53845
Change 3831064 by Ben.Marsh
Fix log file contention when spawning UBT recursively.
Change 3832654 by Ben.Marsh
UGS: Fix error panel not being selected when opened, and weird alignment/color issues on it.
Change 3832680 by Ben.Marsh
UGS: Fix failing to detect workspace if synced to a different stream. Seems to be a regression caused by recent P4D upgrade.
Change 3832695 by Ben.Marsh
UGS: Invert the options in the 'Show Changes' submenu for simplicity.
Change 3833528 by Ben.Marsh
UAT: Script to rewrite source files with public include paths relative to the 'Public' folder. Usage is: RebasePublicIncludePaths -UpdateDir=<Dir> [-Project=<Dir>] [-Write].
Change 3833543 by Ben.Marsh
UBT: Allow targets to opt-out of having public include paths added for every dependent module. This reduces the command line length when building a target, which has recently become a problem with larger games (due to Microsoft's compiler embedding the command line into each object file, with a maximum length of 64kb). All engine modules are compiled with this enabled; games may opt into it by setting bLegacyPublicIncludePaths = false; from their .target.cs, as may individual modules.
Change 3834354 by Robert.Manuszewski
Archetype pointer will now be cached to avoid locking the object tables when acquiring its info. It should also be faster this way regardless of any locks.
#jira UE-52035
Change 3834400 by Robert.Manuszewski
Fixing crash on exit caused by cached archetypes not being cleaned up before static exit cleanup.
#jira UE-52035
Change 3834947 by Steve.Robb
USE_FORMAT_STRING_TYPE_CHECKING removed from FMsg::Logf and FMsg::Logf_Internal.
Change 3835004 by Ben.Marsh
Fix code that relies on dubious behavior of requiring referenced "include path only" modules having their _API macros set to be empty, even if the module is actually implemented in a separate DLL.
Change 3835340 by Ben.Marsh
Fix errors making installed build from directories with spaces in the name.
Change 3835972 by Ben.Marsh
UBT: Improved diagnostic message for targets which don't need a version file.
Change 3836019 by Ben.Marsh
UBT: Fix warnings caused by defining linkage macros for third party libraries.
Change 3836269 by Ben.Marsh
Fix message box larger than the screen height being created when a large number of modules are incompatible on startup.
Change 3836543 by Ben.Marsh
Enable SoundMod plugin on Linux, since it's already supported through the editor.
Change 3836546 by Ben.Marsh
PR #4412: fix type mismatch (Contributed by nakapon)
Change 3836805 by Ben.Marsh
Fix commandlet to compile marketplace plugins.
Change 3836829 by Ben.Marsh
UBT: Fix ability to precompile plugins from installed engine builds.
Change 3837036 by Ben.Marsh
UBT: Write the previous and new contents of intermediate files to the log if they change. Makes it easier to debug unexpected rebuilds.
Change 3837037 by Ben.Marsh
UBT: Fix engine modules having inconsistent definitions depending on whether modules are only referenced for their include paths vs being linked into a binary (due to different _API macro).
Change 3837040 by Ben.Marsh
UBT: Remove code that initializes members in ModuleRules and TargetRules objects before the constructor is run. This is no longer necessary, now that the backwards-compatible default constructors have been removed.
Change 3837247 by Ben.Marsh
UBT: Remove UELinkerFixups module, now that plugins and precompiled modules do not require hacks to force initialization (since they're linked in as object files).
Encryption and signing keys are now set via macros expanded from the IMPLEMENT_PRIMARY_GAME_MODULE macro, via project-specific macros added in the TargetRules constructor.
Change 3837262 by Ben.Marsh
UBT: Set whether a module is an engine module or not via a default value for the rules assembly. All non-program engine and enterprise modules are created with this flag set to true; program targets and modules are now created from a different assembly that sets it to false. This removes hacks from UEBuildModule needed to adjust behavior for different module types based on the directory containing the module.
Also add a bUseBackwardsCompatibleDefaults flag to the TargetRules class, also initialized to a default value from a setting passed to the RulesAssembly constructor. This controls whether modules created for the target should be configured to allow breaking changes to default settings, and is set to false for all engine targets, and true for all project targets.
Change 3837343 by Ben.Marsh
UBT: Remove the OverrideExecutableFileExtension target property. Change the only current use for this (the MayaLiveLinkPlugin target) to use a post build step to copy the file instead.
Change 3837356 by Ben.Marsh
Fix invalid character encodings.
Change 3837727 by Graeme.Thornton
UnrealPak: KeyGenerator: Only generate prime table when required, not all the time
Change 3837823 by Ben.Marsh
UBT: Output warnings and errors when compiling module rules assembly in a way that allows them to be double-clicked in the Visual Studio output window.
Change 3837831 by Graeme.Thornton
UBT: When parsing crypto settings, always load legacy data first, then allow the new system to override it. Provides the same key backwards compatibility that the editor settings class gives
Change 3837857 by Robert.Manuszewski
PR #4404: Make FGCArrayPool singleton global instead of per-CU (Contributed by mhutch)
Change 3837943 by Robert.Manuszewski
PR #4405: Fix FGarbageCollectionTracer (Contributed by mhutch)
Change 3838451 by Ben.Marsh
UBT: Fix exceptions thrown on a background thread while caching C++ includes not being caught and logged correctly. Now captures exceptions and re-throws on the main thread.
#jira UE-53996
Change 3839519 by Ben.Marsh
UBT: Simplify configuring bPrecompile and bUsePrecompile settings for modules. Each rules assembly can now be configured as installed, which defaults the module rules it creates to use precompiled data.
Change 3843790 by Graeme.Thornton
UnrealPak: Log the size of all encrypted data
Change 3844258 by Ben.Marsh
Fix plugin compile failure when created via new plugin wizard. Passing -plugin on the command line is unnecessary, and is now reserved for packaging external plugins for the marketplace.
Also extend the length of time that the error toast stays visible, and don't delete the plugin on failure.
#jira UE-54157
Change 3845796 by Ben.Marsh
Workaround for slow performance of String.EndsWith() on Mono.
Change 3845823 by Ben.Marsh
Fix case sensitive matching of platform names in -TargetPlatform=X argument to BuildCookRun.
#jira UE-54123
Change 3845901 by Arciel.Rekman
Linux: fix crash due to lambda lifetime issues (UE-54040).
- The lambda goes out of scope in FBufferVisualizationMenuCommands::CreateVisualizationCommands, crashing the editor if compiled with a recent clang (5.0+).
(Edigrating 3819174 to Dev-Core)
Change 3846439 by Ben.Marsh
Revert CL 3822742 to always call Process.WaitForExit(). The Android target platform module in the editor spawns ADB.EXE, which inherits the editor's stdout/stderr handles and forks itself. Process.WaitForExit() waits for EOF on those pipes, which never occurs because the forked process never terminates.
Proper fix is probably to have the engine explicitly duplicate stdout/stderr handles for new pipes to output process, but too risky before copying up to Main.
Change 3816608 by Ben.Marsh
UBT: Use DirectoryReference objects for all include paths.
Change 3816954 by Ben.Marsh
UBT: Remove bIncludeDependentLibrariesInLibrary option. This is not widely supported by platform toolchains, and is not used anywhere.
Change 3816986 by Ben.Marsh
UBT: Remove UEBuildBinaryConfig; UEBuildBinary objects are now just created directly.
Change 3816991 by Ben.Marsh
UBT: Deprecate PlatformSpecificDynamicallyLoadedModules. We no longer have any special behavior for these modules.
Change 3823090 by Ben.Marsh
UAT: Improve logging for child UAT instances.
- Calling RunUAT now requires an identifier for prefixing into the parent log, which is also used to determine the name of the log folder.
- Stdout is no longer written to its own output file, since it's written to the parent stdout, the parent log file, and the child log file anyway.
- Log folders for child UAT instances are left intact, rather than being copied to the parent folder. The derived names for the copied names were confusing and hard to read.
- Output from UAT is no longer returned as a string. It should not be parsed anyway (but may be huge!). ProcessResult now supports running without capturing output.
Change 3826082 by Ben.Marsh
UBT: Add a check to make sure that all modules that are precompiled are correctly marked to enable it, even if they are part of the build target.
Change 3827025 by Ben.Marsh
UBT: Move the compile output directory into a property on the module, and explicitly pass it to the toolchain when compiling.
Change 3829927 by James.Hopkin
Made HTTP interface const correct
Change 3833533 by Ben.Marsh
Rewrite engine source files to base include paths relative to the "Public" directory. This allows reducing the number of public include paths that have to be added for engine modules.
Change 3835826 by Ben.Marsh
UBT: Precompiled targets now generate a separate manifest for each precompiled module, rather than adding object files to a library. This fixes issues where object files from static libraries would not be linked into a target if a symbol in them was not referenced.
Change 3835969 by Ben.Marsh
UBT: Fix cases where text is being written directly to the console rather than via logging functions.
Change 3837777 by Steve.Robb
Format string type checking added to FOutputDevice::Logf.
Fixes for those.
Change 3838569 by Steve.Robb
Algo moved up a folder.
[CL 3847482 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3209340 on 2016/11/23 by Ben.Marsh
Convert UE4 codebase to an "include what you use" model - where every header just includes the dependencies it needs, rather than every source file including large monolithic headers like Engine.h and UnrealEd.h.
Measured full rebuild times around 2x faster using XGE on Windows, and improvements of 25% or more for incremental builds and full rebuilds on most other platforms.
* Every header now includes everything it needs to compile.
* There's a CoreMinimal.h header that gets you a set of ubiquitous types from Core (eg. FString, FName, TArray, FVector, etc...). Most headers now include this first.
* There's a CoreTypes.h header that sets up primitive UE4 types and build macros (int32, PLATFORM_WIN64, etc...). All headers in Core include this first, as does CoreMinimal.h.
* Every .cpp file includes its matching .h file first.
* This helps validate that each header is including everything it needs to compile.
* No engine code includes a monolithic header such as Engine.h or UnrealEd.h any more.
* You will get a warning if you try to include one of these from the engine. They still exist for compatibility with game projects and do not produce warnings when included there.
* There have only been minor changes to our internal games down to accommodate these changes. The intent is for this to be as seamless as possible.
* No engine code explicitly includes a precompiled header any more.
* We still use PCHs, but they're force-included on the compiler command line by UnrealBuildTool instead. This lets us tune what they contain without breaking any existing include dependencies.
* PCHs are generated by a tool to get a statistical amount of coverage for the source files using it, and I've seeded the new shared PCHs to contain any header included by > 15% of source files.
Tool used to generate this transform is at Engine\Source\Programs\IncludeTool.
[CL 3209342 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================
Change 3129636 on 2016/09/17 by Ben.Marsh
UBT: Add a "-nolink" option which allows compiling object files without linking them into an executable. Useful for non-unity builds, which take a very long time to link or fail on some platforms due to command lines being too long, PDB file having too many records, etc...
Change 3129825 on 2016/09/18 by Ben.Marsh
UBT: Don't force Linux to build in unity; it seems to build fine without.
Change 3129965 on 2016/09/19 by Matthew.Griffin
Duplicating CL#3129960 from Release-4.13
Exclude NetworkProfiler when building CS tools for Linux
Change 3130653 on 2016/09/19 by Ben.Marsh
UHT: Fix missing "Error:" prefix in output log, causing messages to be ignored for failure emails.
Change 3130662 on 2016/09/19 by Ben.Marsh
EC: Prevent UHT failures from being reported twice, and remove the need for special case to show UHT summary output.
Change 3131956 on 2016/09/20 by Matthew.Griffin
Addtional fixes for compiling Editor as a monolithic executable
Change so monolithic editor is output to Project Binaries directory
Removed duplicated ReturnContainerIndexFromChannelName function
Only check for out of date modules for non monolithic editor
Don't define GIsGameAgnosticExe or PER_MODULE_BOILERPLATE for monolithic editor, done elsewhere
Correct IMPLEMENT_MODULE for QuadricMeshReduction and AudioCapture modules
Change 3132112 on 2016/09/20 by Ben.Marsh
Docs: Remove reference to UBT environment variables from configuration docs.
Change 3132815 on 2016/09/20 by Ben.Marsh
AutomationTool: Delete GUBP. Everything now uses BuildGraph!
Change 3132871 on 2016/09/20 by Ben.Marsh
UBT: Remove GUBP callbacks from TargetRules instances.
Change 3132987 on 2016/09/20 by Ben.Marsh
Allow public distribution of the compiled SimplygonMeshUtilities binaries.
Change 3133974 on 2016/09/21 by Ben.Marsh
Allow public distribution of the SimplygonSwarm module. Requires a separate Simplygon DLL (still in a NotForLicensees folder) to function correctly.
Change 3137228 on 2016/09/22 by Ben.Marsh
UAT: Merging fix to parallel executor on Linux from 4.13 branch.
Change 3139783 on 2016/09/26 by Matthew.Griffin
Fixed Xbox support for Installed Builds
Corrected typo in Xbox+PS4 filter creation and added XboxOnePackageNameUtil.exe
Added Xbox versions of ThirdParty libs that hadn't been specified until now
Change 3141721 on 2016/09/27 by Ben.Marsh
Remove declaration of circular references between FbxAutomationTestBuilder and LevelEditor; causes LevelEditor to be built differently if plugin is enabled, which results in shared build products being invalidated by switching between games.
Change 3141789 on 2016/09/27 by Ben.Marsh
UBT: Retain the ".suppressed" part of output file names when building import libraries for circularly referenced modules.
Change 3141805 on 2016/09/27 by Ben.Marsh
UBT: Allow reusing build ids in version manifests as long as we aren't modifying any engine binaries (building more or fewer is permitted), and merge manifests together if possible. Allows building the entire solution through Visual Studio, when some projects may build more modules than another.
Change 3141980 on 2016/09/27 by Ben.Marsh
EC: Include a "Steps to Reproduce" section in failure emails, which gives the command line to run to execute the step.
Change 3143996 on 2016/09/28 by Ben.Marsh
BuildGraph: Fix exported job steps having dependencies on nodes behind triggers, causing jobs to never terminate.
Change 3144696 on 2016/09/29 by Matthew.Griffin
Adding -NoSharedPCH to NonUnity build steps and split them into separate nodes for UE4Editor and UE4Game
Fixed redefinition of __WINDOWS_DS__
Change 3144931 on 2016/09/29 by Ben.Marsh
Core: Changes to search paths for DLL loading.
* The default binaries directory is now added to the list of search paths. Normally LoadLibrary finds these without needing to preload them, but plugins can change the global search paths by calling SetDefaultDllDirectories().
* Only the top entry of the DLL directory stack is searched. There is typically only one directory here anyway, but the intent is more consistent with the operation of SetDllDirectory().
* Resolved import paths are converted to absolute, so the resulting calls to LoadLibrary will not be influenced by calls to SetDefaultDllDirectories() changing the base directory.
* Search paths aren't de-duplicated any more. They don't overlap in practice, and it's not expensive even if they do.
Change 3144932 on 2016/09/29 by Ben.Marsh
Vulkan: Only add vulkan-1.dll as a delay load dependency from the VulkanRHI module, otherwise it can be added to the linker command-line 20 or more times.
Change 3145011 on 2016/09/29 by Ben.Marsh
Core: Include the compatible changelist in version manifests, so local builds after syncing with UGS will have the correct compatible changelist numbers post-hotfix.
[CL 3146509 by Ben Marsh in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2919729 on 2016/03/23 by Ben.Cosh
Support for macros in the profiler
#UEBP-177 - Macro instance handling
#Proj Kismet, BlueprintProfiler
- Adds support for timings inside macro calls
- Extends the tunnel graph support to handle multiple entry/exit sites
Change 2938064 on 2016/04/08 by Phillip.Kavan
[UE-17794] The "Delete Unused Variable" feature now considers the GetClassDefaults node as well.
change summary:
- added external linkage to UK2Node_GetClassDefaults::FindClassPin().
- added an include for the K2Node_GetClassDefaults header file to BlueprintGraphDefinitions.h.
- added UK2Node_GetClassDefaults::GetInputClass() as a public API w/ external linkage; moved default 'nullptr' param logic into this impl.
- modified FBlueprintEditorUtils::IsVariableUsed() to add an extra check for a GetClassDefaults node with a visible output pin for the variable that's also connected.
- modified UK2Node_GetClassDefaults::GetInputClass() to return the generated skeleton class for Blueprint class types.
Change 2938088 on 2016/04/08 by Mike.Beach
Making bytecode produced by latent action nodes deterministic.
Change 2938101 on 2016/04/08 by Mike.Beach
Fixing a bug where the compile summary was not being reported because another compiler log was lingering - making it so the MathExpression node compiler log is not initialized with intent to report its own summary (it gets folded into the primary log).
Change 2938121 on 2016/04/08 by Phillip.Kavan
Remove a few redundant MBASM calls on variable type change.
Change 2940295 on 2016/04/11 by Dan.Oconnor
We now 'tag subobjects' of a blueprint even if it's part of the rootset, this means we correctly detect references to the BPGC in FPendingDelete::CheckForReferences(). Original rootset check dates to 2012 and I can find no justification for it currently.
#jira UE-29216
Change 2943227 on 2016/04/13 by Dan.Oconnor
Fixed improper detection of functions from interfaces that themselves inherit from some other interface
#jira UE-29440
Change 2944270 on 2016/04/14 by Phillip.Kavan
[UEBP-176] First pass at BP graph node heat map visualization while profiling.
change summary:
- added an "indicator overlay" to graph node widget layouts
- added a heat mode "mode" selector widget to the BP profiler view panel
- extended IBlueprintProfilerInterface to include APIs for accessing current heat map mode state
- added FScriptNodePerfData::GetBlueprintPerfDataForAllTracePaths() (tentative - may need revisiting)
- added SGraphNode::GetNodeIndicatorOverlayColor() and GetNodeIndicatorOverlayVisibility() delegates
- added BP-specific delegate overrides to SGraphNodeK2Base; extended to include both compact and variable nodes
Change 2946932 on 2016/04/18 by Mike.Beach
Guarding against invalid EdGraphPins (ones that have been moved to the transient package) when constructing the widget - prevents a crash that we've been unable to repro or determine the cause of (turns it instead into an ensure, so we can collect more contextual information on the issue).
#jira UE-26998
Change 2949968 on 2016/04/20 by Dan.Oconnor
Array access out of bounds by value is a warning again, added ability to elevate individual warnings on a per project basis (or supress them)
#jira UE-28971
Change 2950113 on 2016/04/20 by Dan.Oconnor
Removed GBlueprintCompileTime, it was not accurate. Printing BlueprintCompileAndLoadTimerData.GetTime() at start instead
Change 2951086 on 2016/04/21 by Ben.Cosh
This change addresses the edge case in the blueprint profiler that caused stats to fail when tunnel nodes were linked through to other tunnel nodes.
#jira UE-28750 - Crash compiling a Blueprint that contains a For Loop with profiler active
#Proj Kismet, BlueprintProfiler
Change 2951336 on 2016/04/21 by Ben.Cosh
This change enables blueprint breakpoints during instrumented conditions.
#jira UEBP-178 - Fix breakpoints under profiling conditions
#Proj CoreUObject, BlueprintProfiler, UnrealEd, KismetCompiler
Change 2951406 on 2016/04/21 by Ben.Cosh
Fix for blueprint profiler stats for the top level blueprint stat entry not updating correctly.
#Proj Kismet
Change 2951832 on 2016/04/21 by Ben.Cosh
Fix for certain blueprint profiler stats not being updated and collected at the blueprint container level due to incorrect tracepaths.
#Proj Kismet
#info This should fix the node heatmaps as a side effect.
#Codereview Phillip.Kavan
Change 2956696 on 2016/04/26 by Dan.Oconnor
Tweak fix for macros being BS_Dirty after loading. The current fix had the side effect of not recompiling clients of the macro after making a change to the macro and entering PIE
#jira UE-29495
Change 2957564 on 2016/04/27 by Maciej.Mroz
Various fixes related to nativized enums.
#jira UE-27735 Enumerators are not set correctly in packaged games if Nativize Blueprint Assets is set to true
Change 2961626 on 2016/04/29 by Mike.Beach
Merging //UE4/Dev-Main to Dev-Blueprints (//UE4/Dev-Blueprints)
Change 2962747 on 2016/05/02 by Maciej.Mroz
#jira UE-30123 Cannot use abilities in nativized Orion build
GameplayAbility handles BPGC and DynamicClass the same way.
C++ backend do not assumes that some literal objects are UserDefinesEnum/UserDefinedStruct/BlueprintGeneratedClass.
Change 2965679 on 2016/05/04 by Maciej.Mroz
Increased stack size (384k) of threads spawned by Task Graph.
(Temporary?) fix for stack overflow, when amination in Orion are evaluated.
Change 2965758 on 2016/05/04 by Maciej.Mroz
#jira UE-30300 "ReturnToBase" ability does not work in nativized Orion.
Fixed CDO creation in async loaded Dynamic Class.
Fixed too restrict cast assertions.
Change 2966543 on 2016/05/04 by Maciej.Mroz
#jira UE-30235 Mac QAGame fails to package with nativization
#jira UE-30282 Match3 nativized android package fails to build
Change 2966839 on 2016/05/04 by Dan.Oconnor
Typo IMPLEMENT_MODULE creates weird linking error, also may need entry in Target.cs to get BlueprintRuntime to build. Copying that pattern from ___LoadingScreen modules
#jira UE-30333
Change 2967347 on 2016/05/05 by Maciej.Mroz
#jira UE-30196 Unable to package a copy of project with Nativize Blueprints enabled
CommandUtils.GetDirectoryName should not be used with directory path (but only with file path), because it cannot handle paths like "e:\My11Project 4.13" (containing '.'). It seems useless with directory path anyway.
[CL 2968184 by Dan Oconnor in Main branch]
#lockdown Nick.Penwarden
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2927181 on 2016/03/29 by Dmitry.Rekman
(Optionally) exclude idle time from server FPS charts.
- Time spent waiting for the next frame in order to hit capped FPS can be optionally excluded by using t.FPSChart.ExcludeIdleTime (set to 1 for servers).
- Server FPS charts analytics events and log output will include the information if idle time was excluded.
- Also: added a log line each time we detect a server hitch for easier pin-pointing them in the log.
#rb Paul.Moore
#codereview Paul.Moore, Michael.Noland
#tests Ran Linux server and Windows client on compatible content.
Change 2927084 on 2016/03/29 by Ben.Marsh
BuildGraph: Don't allow triggers to run until all their order dependencies are complete. Just because a downstream node doesn't have a dependency on an upstream node via temp storage doesn't mean it can run immediately.
#rb none
#tests none
Change 2927060 on 2016/03/29 by Michael.Noland
Renamed GPU analytics event from GPU to DesktopGPU to reflect that it is the default desktop adapter and not the one we initialized (which is GPUAdapter)
Updated text/log based FPS chart events to print out GPUAdapter instead (with DesktopGPU in parens if they differ, e.g., in an optimus setup)
#rb marcus.wassmer
#tests Ran and did some fps charts
Change 2927048 on 2016/03/29 by Michael.Noland
HLOD: Removed an unused cvar r.HLODEnabled (everything is done thru r.HLOD)
#tests Compiled and ran Paragon
#rb marcus.wassmer
Change 2926920 on 2016/03/29 by Ben.Marsh
BuildGraph: Update schema with Rename task.
Change 2926911 on 2016/03/29 by Ben.Marsh
BuildGraph: Add a task which can rename files matching a given wildcard. Syntax is: <Rename Files="*.txt" To="*.md"> or <Rename Files="Engine/Build/..." From="*.txt" To="*.md"/>
#rb none
#tests none
Change 2926908 on 2016/03/29 by Andrew.Grant
Fix for CDO properties of renamed blueprints not being applied
#rb none
#tests loaded Origin map (renamed from Playgo3) and verified properties are applied.
Change 2926799 on 2016/03/29 by Jason.Bestimt
#ORION_DG - Merge MAIN (23) @ CL# 2926780
#RB:none
#Tests:none
Change 2926663 on 2016/03/29 by david.nikdel
#ROBOMERGE-OBO: jason.bestimt
#ROBOMERGE-SOURCE: CL 2926660 in //Orion/Release-0.23/... via CL 2926662
#ROBOMERGE-BOT: ORION (Main -> Dev-General)
#ORION_23 - Potential fix for Cook failures
"Fix shelved in 2926635, tested in Dev-Blueprints. Could not run any GEditor related logic safely in ShutdownModule because of the same destruction issue orders that caused the bug in the first place. I will chat with Editor team about nulling out GEditor the same way we null out GUnrealEd."
#RB:none
#Tests: none
[CodeReviewed]: andrew.grant, dan.oconnor
Change 2926510 on 2016/03/29 by Andrew.Grant
Potential fix for OR-18207 - editor becomes unresponsive (audio deadlock)
#rb none
#tests compiled
Change 2926495 on 2016/03/29 by Rob.Cannaday
Change storing HTTP requests as raw pointers to weak pointers with validity being checked via Pinning it
#jira FORT-18947
#jira OR-17695
#tests golden path
#rb eric.newman
Change 2926427 on 2016/03/29 by Josh.Markiewicz
#UE4 - fixed typo
#rb none
#tests none
Change 2926250 on 2016/03/29 by Martin.Mittring
fixed OR-18489 HERO: IGGY: RMB on E ability causes blinding hair effect
#rb:Chris.Bunner
#codereview:Brian.Karis
Change 2926224 on 2016/03/29 by Daniel.Lamb
Fix for potenital threading issue with Console manager removing vars which could cause double free.
#rb Robert.Manuszewski
#test Orion cook
Change 2926174 on 2016/03/29 by Gareth.Martin
Cloned fix for bUseMaterialPositionOffsetInStaticLighting crashing across from //UE4/Dev-Landscape/ to unblock people
#rb
#tests editor
Change 2925968 on 2016/03/29 by David.Nikdel
#MCP #OSS
- Read RedirectUrl from ini
#RB: Eric.Newman
#TESTS: compiled in another branch (merge over)
#ROBOMERGE: Main
[CL 2929424 by Andrew Grant in Main branch]
==========================
MAJOR FEATURES + CHANGES
==========================
Change 2877442 on 2016/02/23 by Graeme.Thornton@GThornton_DevCore
Allow 'dumpnonframe' stat command to also take an optional group name which will filter the output
Change 2879289 on 2016/02/24 by Graeme.Thornton@GThornton_DevCore
Removed "-" in switch string for load time tracker. Makes -NoLoadTrackClear cmd line param actually work
Change 2879323 on 2016/02/24 by Graeme.Thornton@GThornton_DevCore
PC builds now log engine initialization time with the load time tracker
Change 2879418 on 2016/02/24 by Graeme.Thornton@GThornton_DevCore
Optimization for FSignedArchiveReader
- Compute incoming data hash in parallel on another thread while we serialize and decrypt the signature on the chunk cache worker thread
Change 2879419 on 2016/02/24 by Graeme.Thornton@GThornton_DevCore
Extra stats for PakFile group
- Time reading from pak handles
- Number of open pak handles
Change 2881199 on 2016/02/25 by Graeme.Thornton@GThornton_DevCore
Use 32 bit CRCs to hash chunk contents rather than SHA1. Much faster to compute than SHA1, and the decrypting 4 bytes rather than 20 is also a lot faster
Change 2885687 on 2016/02/29 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Close disregard for GC pool when disabling it to leave it in a good state.
Change 2887358 on 2016/03/01 by Steve.Robb@Dev-Core
FlushCurrentThreadCache calls forwarded on from FMalloc wrappers.
Change 2887398 on 2016/03/01 by Steve.Robb@Dev-Core
Stats for MallocBinned2.
Change 2887682 on 2016/03/01 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Added code to catch game hangs. If game thread is stalled for more than 5 seconds we will catch that, report its callstack and crash.
Change 2889573 on 2016/03/02 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Renamed the new StackWalkAndDump to ThreadStackWalkAndDump to avoid name collisions and build errors.
Change 2889687 on 2016/03/02 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Send thread heartbeats during potentially slow tasks.
Change 2889963 on 2016/03/02 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Added the ability to query the name of a thread given its TLS id.
Change 2890439 on 2016/03/02 by Steve.Robb@Dev-Core
MallocBinned redirection header, to allow easy switching between MallocBinned and MallocBinned2.
Switch back to MallocBinned by default.
Change 2891799 on 2016/03/03 by Steve.Robb@Dev-Core
Shrunken GMallocBinned2MemSizeToIndex array.
Improvement of some shared templated alignment-related functions.
Change 2891812 on 2016/03/03 by Graeme.Thornton@GThornton_DevCore
Refactoring of pak signing to be more compatible with patching
- Store signatures in a block at the end of the pak file
- Optimize decryption of signatures by serializing them all when the pak is opened, and decrypting on the chunk cache worker thread between read requests.
Change 2891813 on 2016/03/03 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream2
Don't compile UnrealPak with ICU
Change 2892386 on 2016/03/03 by Steve.Robb@Dev-Core
GitHub #2070 - Fix incorrect FMallocDebug::Malloc alignment checking
Change 2894189 on 2016/03/04 by Steve.Robb@Dev-Core
Memswap fixes for sizes of 3, 5, 6 and 7, and early out on 0.
Change 2894427 on 2016/03/04 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Don't display message boxes in unattended mode when D3D device is removed.
Change 2896912 on 2016/03/07 by Graeme.Thornton@GThornton_DevCore
Disable reading of anything outside the pak file when in shipping builds
Change 2897053 on 2016/03/07 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
A few improvements to thread heartbeat thread:
- Don't check for heartbeat in debug builds
- Don't spawn the thread heartbeat thread for programs
- Ignore stalls when exiting
Change 2898752 on 2016/03/08 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Fixing race conditions when using malloc verify
Change 2899075 on 2016/03/08 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
UnrealPak will now accept hex values for p and q. Added the command line param to trust p and q.
Change 2899091 on 2016/03/08 by Steve.Robb@Dev-Core
Fix for TQueue::Peek const-correctness.
Change 2902775 on 2016/03/10 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Adding code to test signature keys.
Change 2905040 on 2016/03/11 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
TBigInt Multiply is now 30x faster
Change 2905218 on 2016/03/11 by Steve.Robb@Dev-Core
New FCString::Strspn and FCString::Strcspn functions.
[CL 2921423 by Robert Manuszewski in Main branch]