==========================
MAJOR FEATURES + CHANGES
==========================
Change 2836261 on 2016/01/20 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Flush FAsyncPackage cache after pre-load to reduce peak memory usage when async loading (5.5-10x).
Change 2828630 on 2016/01/14 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Adding debug code to catch memory stomps in the async loading buffers that's independent from mallocstomp allocator. Changed the signature of PageProtect functions to be able to read-only protect memory.
Change 2816129 on 2016/01/05 by Steve.Robb@Dev-Core
Fixes for Realloc and alignment logic which caused redundant reallocations and incorrect binning.
Change 2821054 on 2016/01/08 by Steve.Robb@Dev-Core
Further Realloc savings when realigning within a block.
Change 2806820 on 2015/12/17 by Steve.Robb@Dev-Core
New AlignDown function, like Align, but which rounds a value/pointer down to the next alignment instead of up.
Change 2806816 on 2015/12/17 by Steve.Robb@Dev-Core
Sort UHT modules by type to improve iteration times in conjunction with makefiles.
Change 2823235 on 2016/01/11 by Steve.Robb@Dev-Core
UHT error messages about missing GENERATED_BODY() macros updated to represent intended use.
Change 2806815 on 2015/12/17 by Steve.Robb@Dev-Core
Module types split into Game and Engine runtime versions.
Change 2833809 on 2016/01/19 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
StaticLoadObject will now respect LOAD_NoRedirects flag.
Change 2811194 on 2015/12/22 by Bob.Tellez@Z2434_DevCore
#UE4 Prevent loading packages that have a newer LegacyFileVersion since serialization for FCustomVersion is not forward compatible. UE-24443
Change 2806818 on 2015/12/17 by Steve.Robb@Dev-Core
Removal of stats from MallocBinned2, to be readded later.
Change 2807069 on 2015/12/17 by Steve.Robb@Dev-Core
Clarification of some bucket hashing terminology.
Change 2815117 on 2016/01/04 by Steve.Robb@Dev-Core
Fix for a missing root build path on game modules.
Change 2815673 on 2016/01/05 by Steve.Robb@Dev-Core
Move FMalloc verification into a proxy object.
Change 2822873 on 2016/01/11 by Steve.Robb@Dev-Core
Fixes to off-by-one errors and removal of BinnedSizeLimit (assumed to be the same as MAX_POOLED_ALLOCATION_SIZE after OBO fix).
Change 2822923 on 2016/01/11 by Steve.Robb@Dev-Core
Simplification of MemSizeToPoolTable indexing.
Change 2824974 on 2016/01/12 by Steve.Robb@Dev-Core
Assert fixed.
AllocateBlockFromPool's return value made debuggable.
Change 2825241 on 2016/01/12 by Steve.Robb@Dev-Core
UHT now returns an error code on a warning when -warningsaserrors is specified.
Change 2825291 on 2016/01/12 by Steve.Robb@Dev-Core
WarningsAsErrors enabled on UHT, after disabling the hardcoded behavior in CL# 2825241.
Change 2829846 on 2016/01/15 by Steve.Robb@Dev-Core
GitHub #1938 - wrong Max value of enum is used during net serialization
Change 2829914 on 2016/01/15 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Reduce the amount of memory allocated for async cache buffers when guarding against memory stomps.
Change 2829988 on 2016/01/15 by Steve.Robb@Dev-Core
Generalized large pool allocations.
More redundancy removed.
Change 2831935 on 2016/01/18 by Chris.Wood@Chris.Wood.StreamB
Added UserActivity property to crash description in CRP and CR website.
[OR-12043] - Phone Home where crashes occur - pass context info to Crash Reporter
DB column added to db-09 by ColinR matching this change.
Published to server on Jan 18th 2016
Change 2834003 on 2016/01/19 by Chris.Wood@Chris.Wood.StreamB
Added Linux to normal callstack parsing code on CR website
[UE-25527] - Linux CrashReporter is missing information
Published to server on Jan 19th 2016
Change 2835466 on 2016/01/20 by Joe.Conley@Joe.Conley_EGJWD5708_Dev-Core-Minimal
Fix issue for cancelling package loads when there are still packages queued. Call their PackageLoadedDelegate with a "Cancelled" result.
Should solve remaining issue with UE-24062 - "Calling CancelAsyncLoading triggers an assert in FAsyncPackage::DetachLinker()"
- (ULevelStreaming::AsyncLevelLoadComplete was not being called if packages were still queued when cancel was issued)
Change 2836803 on 2016/01/20 by Chris.Wood@Chris.Wood.StreamB
CrashReportWebsite - fix exception thrown when parsing certain callstack formats
Change 2837952 on 2016/01/21 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
Changing FAsyncIORequest to be stored as reference when cancelling IO requests to improve performance.
Change 2838289 on 2016/01/21 by Robert.Manuszewski@Robert.Manuszewski_NCL_Stream1
[CL 2845588 by Robert Manuszewski in Main branch]
* Moving Ionic.Zip source code into UE4 from UE4 source.
* Only one left should be in Binaries/DotNET.
* Moving TPS info to source location.
* Deleting several copies that were floating around.
Assembly Resolve Refactor
* Added AssemblyUtils.InstallAssemblyResolver to handle resolving of known assemblies that may not exist in the same folder as the referencing assembly.
* This is now installed by UAT and UBT, which should handle all needs to load Ionic.Zip and RPCUtility.exe from scripts that install into subfolders of Binaries/DotNET.
* Other assemblies can be added easily as necesary, centralizing the location where this is handled.
* Removed AssemblyResolver from RPCUtilHelper as UBT handles it automatically now.
* Removed Ionic.Zip references from projects that weren't really using it.
#codereview:ben.marsh
[CL 2646891 by Wes Hunt in Main branch]
UEB-261 - Ensure that compiling AutomationTool in VS will compile all other Automation Projects
* Just set AutomationTool as your startup project and pass the command to execute.
* VS will build the script modules at build time, instead of every time at runtime.
* To make this happen, "UBT.exe -ProjectFiles" now generates a companion AutomationTool.csproj.References that make AutomationTool depend on all Automation modules.
* AutomationTool.exe defaults to not building script modules at runtime. Pass -compile if you want to dynamically build them.
* Without the .references file, AutomationTool will only build itself and you will need to pass -compile.
* RunUAT.bat still works that same, defaulting to runtime compilation and supporting -nocompile flag. It then passes -compile (or nothing) to AutomationTool.
Other
* All Automation projects target .Net 4.5. Some already were and had hard dependencies on them (Rocket and SyncGithub -> Octokit). Now that AutomationTool directly depends on them, everything had to use .Net 4.5.
* Decoupled logic for -NoCompile and -NoCompileEditor. The flags are still confusing, but -NoCompile is no longer linked to -NoCompileEditor.
* Had to leave in stub support in UAT for -NoCompile else RunUAT.bat passes it along and UAT complains that it doesn't understand it.
* Added a CommandUtils.Run option to support run command, but still output the run duration.
* Reduced the verbosity when UAT.proj is run from dozens of lines per module to a single Module -> Output line. It was looking like there were problems, but it was just msbuild spew.
#codereview:ben.marsh
[CL 2615060 by Wes Hunt in Main branch]
CaselessDictionary made serializable.
New FileContentsCacheType for enabling simple lookup and caching of file contents.
Fix for module references differing in case from module definitions e.g. Http and HTTP.
Some general refactoring.
#codereview robert.manuszewski
[CL 2581357 by Steve Robb in Main branch]
Fixing up of existing code which used these facilities - this fixes the 'You are attempting to compile on a machine that does not have a supported compiler!' UAT error on machines with really long PATH variables, and exceptions in envvars with non-ASCII characters.
#codereview robert.manuszewski
[CL 2572445 by Steve Robb in Main branch]