* Contains some selected back outs from other cls that included config context dependent changes, though it's limited to only backing out broken parts as much as possible to minimize surface area.
[Backout] - CL20029182
[FYI] josh.adams
Original CL Desc
-----------------------------------------------------------------
- Adding FConfigContext which is used to repalce LoadExternalIniFile, LoadLocalIniFile, etc, as well as have localized data for all configs read on a thread (like the other platform configs loaded in the editor)
- The Load*IniFile functions will create a Context, but eventually those APIs will go away and the Context will be the only way to load ini files
- Simplified some of the ini loading code, like removing the HierarchyCache (it wasn't helping editor load times, and added much complexity, and was not thread-safe, and it shouldn't actually be helpful because all the calls to Load*IniFile should eventually be replaced with either GConfig or FCOnfigCacheIni::ForPlatform(), which won't need to re-read in files
- Ini reading time actually went down due to the simplification, including Cache removal
- Left in old code for now behing a #define (USE_CONTEXT) in case something goes wrong
- Added in VERIFY_CONTEXT mode which I used to run original and Context modes and compare (including preflighting builds) (I also added a Compare function that we may want to keep around to use for future debugging)
- Added a separate set of config layers for plugins which speeds up plugin parsing, but also will fix the issue with BaseEngine.ini vs DefaultEngine.ini in Engine vs Project plugins (this shows how Contexts can bring useful information down into the guts - however a later change will enable it)
- Once this is all seen to be working, I will clean up the non-Context functions, and some globals vs static members, etc
#rb paul.chipchase
#preflight 62716c1c5e6ce673f452005a
#ROBOMERGE-AUTHOR: josh.adams
#ROBOMERGE-SOURCE: CL 20029165 via CL 20029180 via CL 20905839 via CL 20905880
#ROBOMERGE-BOT: UE5 (Release-Engine-Staging -> Main) (v971-20777995)
[CL 20908094 by mic rooney in ue5-main branch]
- Deprecated some global functions now in ConfigUtilities
- Deleted a couple of old deprecated stuff from 3.24
#rb chris.waters
#preflight 628415e1ba3597a030b3b900
[CL 20259749 by Josh Adams in ue5-main branch]
TInlineAlloctor changed to be an alias of TSizedInlineAllocator, and TInlineAlloctor64 added.
Fix for Pakfile creation when the uncompressed buffer size exceeds int32 capacity.
#rb devin.doucette
[FYI] scott.lindeneau
#jira UE-141912
#preflight 6203bc9b7244040418573f53
#ROBOMERGE-AUTHOR: steve.robb
#ROBOMERGE-SOURCE: CL 18921401 in //UE5/Release-5.0/... via CL 18926938 via CL 18928756
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v916-18915374)
[CL 18929198 by steve robb in ue5-main branch]
- Fixes for the ini console command for other platforms
- Allow for reading Config files from another project (for instance from a program like UnrelPak)
#rb matt.peters
#preflight 61fae9189a71b11fd38faa0e
#ROBOMERGE-AUTHOR: josh.adams
#ROBOMERGE-SOURCE: CL 18834077 via CL 18835502 via CL 18835961 via CL 18836096 via CL 18844966 via CL 18845578
#ROBOMERGE-BOT: UE5 (Release-Engine-Test -> Main) (v910-18824042)
[CL 18845601 by josh adams in ue5-main branch]
because they are needed in startup phase (ini,res,uplugin,etc.)
it's now fine to use Oodle there
this commit does not enable the new option so behavior stays the same for now
#preflight 61ba896058796f05e14b6931
#rb none
#ROBOMERGE-AUTHOR: charles.bloom
#ROBOMERGE-SOURCE: CL 18480192 in //UE5/Release-5.0/... via CL 18481555
#ROBOMERGE-BOT: STARSHIP (Release-Engine-Staging -> Release-Engine-Test) (v899-18417669)
[CL 18481827 by charles bloom 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]
#ROBOMERGE-OWNER: robert.millar
#ROBOMERGE-AUTHOR: robert.millar
#ROBOMERGE-SOURCE: CL 16362667 via CL 16362689 via CL 16362713 via CL 16362729
#ROBOMERGE-BOT: (v804-16311228)
#ROBOMERGE-CONFLICT from-shelf
[CL 16363649 by robert millar in ue5-release-engine-staging branch]