Commit Graph

18 Commits

Author SHA1 Message Date
jonathan adamczewski
c12d99d854 .net6.0 is not supported in VS2019. Suppress warnings about that when using that IDE (with this change, when building UnrealBuildTool & AutomationTool)
#jira none
#rnx
#rb joe.kirchoff
#preflight 624f2c163c2aff69c54ff9eb

[CL 19675097 by jonathan adamczewski in ue5-main branch]
2022-04-07 15:06:02 -04:00
jonathan adamczewski
c1bb6901bf Upgrade to .NET 6.0
#jira UE-119846
#preflight 624cbb2ecc0872e96b0d5181

[CL 19652696 by jonathan adamczewski in ue5-main branch]
2022-04-06 14:46:50 -04:00
jonathan adamczewski
5c68d1d9ef Revert //UE5/Main/... changelist 19531725 - return to NET Core 3.1
#preflight 62422fd0470aff98e946bfce
#jira UE-119846

[CL 19534572 by jonathan adamczewski in ue5-main branch]
2022-03-28 18:25:19 -04:00
jonathan adamczewski
18ac15cbb1 Upgrade to .NET 6.0
#jira UE-119846
#preflight 6241fc06470aff98e943c035

[CL 19531725 by jonathan adamczewski in ue5-main branch]
2022-03-28 15:30:56 -04:00
jonathan adamczewski
8dc68a7f85 AutomationTool: Compile script modules within the application
Add a layer of caching to avoid running msbuild as much as possible.

#jira UE-109181
#rb ben.marsh

[CL 17102399 by jonathan adamczewski in ue5-main branch]
2021-08-09 10:39:09 -04:00
Ben Marsh
6f927647b1 Changing C# code over to using EpicGames.Core over DotNETCommon.
#rb none
#rnx

[CL 14962096 by Ben Marsh in ue5-main branch]
2020-12-21 23:07:37 -04:00
Joakim Lindqvist
017048f505 Changed pdb format to not use portable pdbs (which is the default in net core) and instead back to our old pdb configuration.
This resolves a issue with PCBs were pdbcopy failed to run because it does not support portable pdbs.

#rb none

[CL 14837521 by Joakim Lindqvist in ue5-main branch]
2020-12-02 14:54:53 -04:00
Joakim Lindqvist
e7039d3d35 UBT and UAT now use .NET Core instead of Framework and Mono. This means that we use the same runtime on Windows, Linux and Mac. Further benefits including newer C# features and a lot of intresting features for the future around AOT and Tiered compilation.
Some behavior changes:
Output paths - Both tools are now output to a subdirectory of Binaries/Dotnet, I believe most hardcoded paths have been fixed up but there may be tools that will fail because of this.
UAT Plugin Building - As .NET Core does not support AppDomain unloading, how we build the plugins has changed quite a bit, these are now built before UAT is started rather then by UAT itself. If you just start UAT via RunUAT.bat/sh this should just continue to work.

#rb ben.marsh

[CL 14834347 by Joakim Lindqvist in ue5-main branch]
2020-12-02 06:57:13 -04:00
Ben Marsh
0cc6e3dca6 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 6631504 by Ben Marsh in Main branch]
2019-05-24 11:51:54 -04:00
Ben Marsh
a22b952aa9 Copying //UE4/Dev-Build to Dev-Main (//UE4/Dev-Main)
#rb none
#rnx

[CL 4718806 by Ben Marsh in Main branch]
2019-01-14 12:11:24 -05:00
Ben Marsh
0f885bbf64 Switch UAT and UBT to use .NET 4.6.2, in order to support long file names (which is enabled via an app.manifest file in each application).
#rb none

[CL 4679962 by Ben Marsh in Dev-Build branch]
2019-01-03 16:47:48 -05:00
Ben Marsh
b0da1f4fe7 Merging //UE4/Dev-Main to Dev-Build (//UE4/Dev-Build)
#rb none

[CL 4577636 by Ben Marsh in Dev-Build branch]
2018-11-19 10:12:17 -05:00
Ben Marsh
ea340d3fbf Copying //UE4/Fortnite-Staging to Dev-Main (//UE4/Dev-Main)
#rb none
#lockdown Nick.Penwarden

[CL 4567513 by Ben Marsh in Main branch]
2018-11-14 19:05:13 -05:00
Ben Marsh
fedc653232 Copying //UE4/Dev-Core to //UE4/Dev-Main (Source: //UE4/Dev-Core @ 3620134)
#lockdown Nick.Penwarden
#rb none

============================
  MAJOR FEATURES & CHANGES
============================

Change 3550452 by Ben.Marsh

	UAT: Improve readability of error message when an editor commandlet fails with an error code.

Change 3551179 by Ben.Marsh

	Add methods for reading text files into an array of strings.

Change 3551260 by Ben.Marsh

	Core: Change FFileHelper routines to use enum classes for flags.

Change 3555697 by Gil.Gribb

	Fixed a rare crash when the asset registry scanner found old cooked files with package level compression.

	#jira UE-47668

Change 3556464 by Ben.Marsh

	UGS: If working in a virtual stream, use the name of the first non-virtual ancestor for writing version files.

Change 3557630 by Ben.Marsh

	Allow the network version to be set via Build.version if it's not overriden from Version.h.

Change 3561357 by Gil.Gribb

	Fixed crashes related to loading old unversioned files in the editor.

	#jira UE-47806

Change 3565711 by Graeme.Thornton

	PR #3839: Make non-encoding specific Base64 functions accessible (Contributed by stfx)


Change 3565864 by Robert.Manuszewski

	Temp fix for a race condition with the async loading thread enabled - caching the linker in case it gets removed (but not deleted) from super class object.

Change 3569022 by Ben.Marsh

	PR #3849: Update gitignore (Contributed by mhutch)


Change 3569113 by Ben.Marsh

	Fix Japanese errors not displaying correctly in the cook output log.

	#jira UE-47746

Change 3569486 by Ben.Marsh

	UGS: Always sync the Enterprise folder if the selected .uproject file has the "Enterprise" flag set.

Change 3570483 by Graeme.Thornton

	Minor C# cleanups. Removing some redundant "using" calls which also cause dotnetcore compile errors

Change 3570513 by Robert.Manuszewski

	Fix for a race condition with async loading thread enabled.

Change 3570664 by Ben.Marsh

	UBT: Use P/Invoke to determine number of physical processors on Windows rather than using WMI. Starting up WMIC adds 2.5 seconds to build times, and is not compatible with .NET core.

Change 3570708 by Robert.Manuszewski

	Added ENABLE_GC_OBJECT_CHECKS macro to be able to quickly toggle UObject pointer checks in shipping builds when the garbage collector is running.

Change 3571592 by Ben.Marsh

	UBT: Allow running with -installed without creating [InstalledPlatforms] entries in BaseEngine.ini. If there is no HasInstalledPlatformInfo=true setting, assume that all platforms are still available.

Change 3572215 by Graeme.Thornton

	UBT
	- Remove some unnecessary using directives
	- Point SN-DBS code at the new Utils.GetPhysicalProcessorCount call, rather than trying to calculate it itself

Change 3572437 by Robert.Manuszewski

	Game-specific fix for lazy object pointer issues in one of the test levels. The previous fix had to be partially reverted due to side-effects.

	#jira UE-44996

Change 3572480 by Robert.Manuszewski

	MaterialInstanceCollections will no longer be added to GC clusters to prevent materials staying around in memory for too long

Change 3573547 by Ben.Marsh

	Add support for displaying log timestamps in local time. Set LogTimes=Local in *Engine.ini, or pass -LocalLogTimes on the command line.

Change 3574562 by Robert.Manuszewski

	PR #3847: Add GC callbacks for script integrations (Contributed by mhutch)


Change 3575017 by Ben.Marsh

	Move some functions related to generating window resolutions out of Core (FParse::Resolution, GenerateConvenientWindowedResolutions). Also remove a few headers from shared PCHs prior to splitting application functionality out of Core.

Change 3575689 by Ben.Marsh

	Add a fixed URL for opening the API documentation, so it works correctly in "internal" and "perforce" builds.

Change 3575934 by Steve.Robb

	Fix for nested preprocessor definitions.

Change 3575961 by Steve.Robb

	Fix for nested zeros.

Change 3576297 by Robert.Manuszewski

	Material resources will now be discarded in PostLoad (Game Thread) instead of in Serialize (potentially Async Loading Thread) so that shader deregistration doesn't assert when done from a different thread than the game thread.

	#jira FORT-38977

Change 3576366 by Ben.Marsh

	Add shim functions to allow redirecting FPlatformMisc::ClipboardCopy()/ClipboardPaste() to FPlatformApplicationMisc::ClipboardCopy()/ClipboardPaste() while they are deprecated.

Change 3578290 by Graeme.Thornton

	Changes to Ionic zip library to allow building on dot net core

Change 3578291 by Graeme.Thornton

	Ionic zip library binaries built for .NET Core

Change 3578354 by Graeme.Thornton

	Added FBase64::GetDecodedDataSize() to determine the size of bytes of a decoded base64 string

Change 3578674 by Robert.Manuszewski

	After loading packages flush linker cache on uncooked platforms to free precache memory

Change 3579068 by Steve.Robb

	Fix for CLASS_Intrinsic getting stomped.
	Fix to EClassFlags so that they are visible in the debugger.
	Re-added mysteriously-removed comments.

Change 3579228 by Steve.Robb

	BOM removed.

Change 3579297 by Ben.Marsh

	Fix exception if a plugin lists the same module twice.

	#jira UE-48232

Change 3579898 by Robert.Manuszewski

	When creating GC clusters and asserting due to objects still being pending load, the object name and cluster name will now be logged with the assert.

Change 3579983 by Robert.Manuszewski

	More fixes for freeing linker cache memory in the editor.

Change 3580012 by Graeme.Thornton

	Remove redundant copy of FileReference.cs

Change 3580408 by Ben.Marsh

	Validate that arguments passed to the checkf macro are valid sprintf types, and fix up a few places which are currently incorrect.

Change 3582104 by Graeme.Thornton

	Added a dynamic compilation path that uses the latest roslyn apis. Currently only used by the .NET Core path.

Change 3582131 by Graeme.Thornton

	#define out some PerformanceCounter calls that don't exist in .NET Core. They're only used by mono-specific calls anyway.

Change 3582645 by Ben.Marsh

	PR #3879: fix bug when creating a new VS2017 C++ project (Contributed by mnannola)

	#jira UE-48192

Change 3583955 by Robert.Manuszewski

	Support for EDL cooked packages in the editor

Change 3584035 by Graeme.Thornton

	Split RunExternalExecutable into RunExternaNativelExecutable and RunExternalDotNETExecutable. When running under .NET Core, externally launched DotNET utilities must be launched via the 'dotnet' proxy to work correctly.

Change 3584177 by Robert.Manuszewski

	Removed unused member variable (FArchiveAsync2::bKeepRestOfFilePrecached)

Change 3584315 by Ben.Marsh

	Move Android JNI accessor functions into separate header, to decouple it from the FAndroidApplication class.

Change 3584370 by Ben.Marsh

	Move hooks which allow platforms to load any modules into the FPlatformApplicationMisc classes.

Change 3584498 by Ben.Marsh

	Move functions for getting and setting the hardware window pointer onto the appropriate platform window classes.

Change 3585003 by Steve.Robb

	Fix for TChunkedArray ranged-for iteration.

	#jira UE-48297

Change 3585235 by Ben.Marsh

	Remove LogEngine extern from Core; use the platform log channels instead.

Change 3585942 by Ben.Marsh

	Move MessageBoxExt() implementation into application layer for platforms that require it.

Change 3587071 by Ben.Marsh

	Move Linux's UngrabAllInput() function into a callback, so DebugBreak still works without SDL.

Change 3587161 by Ben.Marsh

	Remove headers which will be stripped out of the Core module from Core.h and PlatformIncludes.h.

Change 3587579 by Steve.Robb

	Fix for Children list not being rebuilt after hot reload.

Change 3587584 by Graeme.Thornton

	Logging improvements for pak signature check failures
	 - Added "PakCorrupt" console command which corrupts the master signature table
	 - Added some extra log information about which block failed
	 - Re-hash the master signature table and to make sure that it hasn't changed since startup
	 - Moved the ensure around so that some extra logging messages can make it out before the ensure is hit
	 - Added PAK_SIGNATURE_CHECK_FAILS_ARE_FATAL to IPlatformFilePak.h so we have a single place to make signature check failures fatal again

Change 3587586 by Graeme.Thornton

	Changes to make UBT build and run on .NET Core
	 - Added *_DNC csproj files for DotNETUtilities and UnrealBuildTool projects which contain the .NET Core build setups
	 - VCSharpProjectFile can no be asked for the CsProjectInfo for a particular configuration, which is cached for future use
	 - After loading VCSharpProjectFiles, .NET Core based projects will be excluded unless generating VSCode projects

Change 3587953 by Steve.Robb

	Allow arbitrary UENUM initializers for enumerators.
	Editor-only data UENUM support.
	Enumerators named MAX are now treated as the UENUM's maximum, and will not cause a MAX+1 value to be generated.

	#jira UE-46274

Change 3589827 by Graeme.Thornton

	More fixes for VSCode project generation and for UBT running on .NET Core
	 - Use a different file extension for rules assemblies when build on .NET Core, so they never get used by their counterparts
	 - UEConsoleTraceListener supports stdout/stderror constructor parameter and outputs to the appropriate channel
	 - Added documentation for UEConsoleTraceListener
	 - All platforms .NET project compilation tasks/launch configs now use "dotnet" and not the normal batch files
	 - Restored the default UBT log verbosity to "Log" rather than "VeryVeryVerbose"
	 - Renamed assemblies for .NETCore versions of DotNETUtilities and UnrealBuildTool so they don't conflict with the output of the existing .NET Desktop Framework stuff

Change 3589868 by Graeme.Thornton

	Separate .NET Core projects for UBT and DotNETCommon out into their own directories so that their intermediates don't overlap with the standard .NET builds, causing failures.

	UBT registers ONLY .NET Core C# projects when generating VSCode solutions, and ONLY standard C# projects in all other cases

Change 3589919 by Robert.Manuszewski

	Fixing crash when cooking textures that have already been cooked for EDL (support for cooked content in the editor)

Change 3589940 by Graeme.Thornton

	Force UBT to think it's running on mono when actually running on .NET Core. Disables a lot of windows specific code paths.

Change 3590078 by Graeme.Thornton

	Fully disable automatic assembly info generation in .NET Core projects

Change 3590534 by Robert.Manuszewski

	Marking UObject as intrinsic clas to fix a crash on UFE startup.

Change 3591498 by Gil.Gribb

	UE4 - Fixed several edge cases in the low level async loading code, especially around cancellation. Also PakFileTest is a console command which can be used to stress test pak file loading.

Change 3591605 by Gil.Gribb

	UE4 - Follow up to fixing several edge cases in the low level async loading code.

Change 3592577 by Graeme.Thornton

	.NET Core C# projects now reference source files explicitly, to stop it accidentally compiling various intermediates

Change 3592684 by Steve.Robb

	Fix for EObjectFlags being passed as the wrong argument to csgCopyBrush.

Change 3592710 by Steve.Robb

	Fix for invalid casts in ListProps command.
	Some name changes in command output.

Change 3592715 by Ben.Marsh

	Move Windows event log code into cpp file, and expose it to other modules even if it's not enabled by default.

Change 3592767 by Gil.Gribb

	UE4 - Changed the logic so that engine UObjects boot before anything else. The engine classes are known to be cycle-free, so we will get them done before moving onto game modules.

Change 3592770 by Gil.Gribb

	UE4 - Fixed a race condition with async read completion in the prescence of cancels.

Change 3593090 by Steve.Robb

	Better error message when there two clashing type names are found.

Change 3593697 by Steve.Robb

	VisitTupleElements function, which calls a functor for each element in the tuple.

Change 3595206 by Ben.Marsh

	Include additional diagnostics for missing imports when a module load fails.

Change 3596140 by Graeme.Thornton

	Batch file for running MSBuild

Change 3596267 by Steve.Robb

	Thread safety fix to FPaths::GetProjectFilePath().

Change 3596271 by Robert.Manuszewski

	Added code to verify compression flags in package file summary to avoid cases where corrupt packages are crashing the editor

	#jira UE-47535

Change 3596283 by Steve.Robb

	Redundant casts removed from UHT.

Change 3596303 by Ben.Marsh

	EC: Improve parsing of Android Clang errors and warnings, which are formatted as MSVC diagnostics to allow go-to-line clicking in the Output Window.

Change 3596337 by Ben.Marsh

	UBT: Format messages about incorrect headers in a way that makes them clickable from Visual Studio.

Change 3596367 by Steve.Robb

	Iterator checks in ranged-for on TMap, TSet and TSparseArray.

Change 3596410 by Gil.Gribb

	UE4 - Improved some error messages on runtime failures in the EDL.

Change 3596532 by Ben.Marsh

	UnrealVS: Fix setting command line to empty not affecting property sheet. Also remove support for VS2013.

	#jira UE-48119

Change 3596631 by Steve.Robb

	Tool which takes a .map file and a .objmap file (from UBT) and creates a report which shows the size of all the symbols contributed by the source code per-folder.

Change 3596807 by Ben.Marsh

	Improve Intellisense when generated headers are missing or out of date (eg. line numbers changed, etc...). These errors seem to be masked by VAX, but are present when using the default Visual Studio Intellisense.

	* UCLASS macro is defined to empty when __INTELLISENSE__ is defined. Previous macro was preventing any following class declaration being parsed correctly if generated code was out of date, causing squiggles over all class methods/variables.
	* Insert a semicolon after each expanded GENERATED_BODY macro, so that if it parses incorrectly, the compiler can still continue parsing the next declaration.

Change 3596957 by Steve.Robb

	UBT can be used to write out an .objsrcmap file for use with the MapFileParser.
	Renaming of ObjMap to ObjSrcMap in MapFileParser.

Change 3597213 by Ben.Marsh

	Remove AutoReporter. We don't support this any more.

Change 3597558 by Ben.Marsh

	UGS: Allow adding custom actions to the context menu for right clicking on a changelist. Actions are specified in the project's UnrealEngine.ini file, with the following syntax:

	+ContextMenu=(Label="This is the menu item", Execute="foo.exe", Arguments="bar")

	The standard set of variables for custom tools is expanded in each parameter (eg. $(ProjectDir), $(EditorConfig), etc...), plus the $(Change) variable.

Change 3597982 by Ben.Marsh

	Add an option to allow overriding the local DDC path from the editor (under Editor Preferences > Global > Local Derived Data Cache).

	#jira UE-47173

Change 3598045 by Ben.Marsh

	UGS: Add variables for stream and client name, and the ability to escape any variables for URIs using the syntax $(VariableName:URI).

Change 3599214 by Ben.Marsh

	Avoid string duplication when comparing extensions.

Change 3600038 by Steve.Robb

	Fix for maps being modified during iteration in cache compaction.

Change 3600136 by Steve.Robb

	GitHub #3538 : Fixed a bug with the handling of 'TMap' key/value types in the UnrealHeaderTool

Change 3600214 by Steve.Robb

	More accurate error message when unsupported template parameters are provided in a TSet property.

Change 3600232 by Ben.Marsh

	UBT: Force UHT to run again if the .build.cs file for a module has changed.

	#jira UE-46119

Change 3600246 by Steve.Robb

	GitHub #3045 : allow multiple interface definition in a file

Change 3600645 by Ben.Marsh

	Convert QAGame to Include-What-You-Use.

Change 3600897 by Ben.Marsh

	Fix invalid path (multiple slashes) in LibCurl.build.cs. Causes exception when scanning for includes.

Change 3601558 by Graeme.Thornton

	Simple first pass VSCode editor integration plugin

Change 3601658 by Graeme.Thornton

	Enable intellisense generation for VS Code project files and setup include paths properly

Change 3601762 by Ben.Marsh

	UBT: Add support for adaptive non-unity builds when working from a Git repository.

	The ISourceFileWorkingSet interface is now used to query files belonging to the working set, and has separate implementations for Perforce (PerforceSourceFileWorkingSet) and Git (GitSourceFileWorkingSet). The Git implementation is used if a .git directory is found in the directory containing the Engine folder, the directory containing the project file, or the parent directory of the project file, and spawns a "git status" process in the background to determine which files are untracked or staged.

	Several new settings are supported in BuildConfiguration.xml to allow modifying default behavior:

	<SourceFileWorkingSet>
	    <Provider>Default</Provider> <!-- May be None, Default, Git or Perforce -->
	    <RepositoryPath></RepositoryPath> <!-- Specifies the path to the repository, relative to the directory containing the Engine folder. If not set, tries to find a .git directory in the locations listed above. -->
	    <GitPath>git</GitPath> <!-- Specifies the path to the Git executable. Defaults to "git", which assumes that it will be on the PATH -->
	</SourceFileWorkingSet>

Change 3604032 by Graeme.Thornton

	First attempt at automatically detecting the existance and location of visual studio code in the source code accessor module. Only works for windows.

Change 3604038 by Graeme.Thornton

	Added FSourceCodeNavigation::GetSelectedSourceCodeIDE() which returns the name of the selected source code accessor.
	Replaced all usages of FSourceCodeNavigation::GetSuggestedSourceCodeIDE() with GetSelectedSourceCodeIDE(), where the message is referring to the opening or editing of code.

Change 3604106 by Steve.Robb

	GitHub #3561 : UE-44950: Don't see all caps struct constructor as macro

Change 3604192 by Steve.Robb

	GitHub #3911 : Improving ToUpper/ToLower efficiency

Change 3604273 by Graeme.Thornton

	IWYU build fixes when malloc profiler is enabled

Change 3605457 by Ben.Marsh

	Fix race for intiialization of ThreadID variable on FRunnableThreadWin, and restore a previous check that was working around it.

Change 3606720 by James.Hopkin

	Dave Ratti's fix to character base recursion protection code - was missing a GetOwner call, instead attempting to cast a component to a pawn.

Change 3606807 by Graeme.Thornton

	Disabled optimizations around FShooterStyle::Create(), which was crashing in Win64 shipping game builds due to some known compiler issue. Same variety of fix as BenZ did in CL 3567741.

Change 3607026 by James.Hopkin

	Fixed incorrect ABrush cast - was attempting to cast a UModel to ABrush, which can never succeed

Change 3607142 by Graeme.Thornton

	UBT - Minor refactor of BackgroundProcess shutdown in SourceFileWorkingSet. Check whether the process has already exited before trying to kill it during Dispose.

Change 3607146 by Ben.Marsh

	UGS: Fix exception due to formatting string when Perforce throws an error.

Change 3607147 by Steve.Robb

	Efficiency fix for integer properties, which were causing a property mismatch and thus a tag lookup every time.
	Float and double conversion support added to int properties.
	NAME_DoubleProperty added.
	Fix for converting enum class enumerators > 255 to int properties.

Change 3607516 by Ben.Marsh

	PR #3935: Fix DECLARE_DELEGATE_NineParams, DECLARE_MULTICAST_DELEGATE_NineParams. (Contributed by enginevividgames)


Change 3610421 by Ben.Marsh

	UAT: Move help for RebuildLightMapsCommand into attributes, so they display when running with -help.

Change 3610657 by Ben.Marsh

	UAT: Unify initialization of command environment for build machines and local execution. Always derive parameters which aren't manually set via environment variables.

Change 3611000 by Ben.Marsh

	UAT: Remove the -ForceLocal command line option. Settings are now determined automatically, independently of the -Buildmachine argument.

Change 3612471 by Ben.Marsh

	UBT: Move FastJSON into DotNETUtilities.

Change 3613479 by Ben.Marsh

	UBT: Remove the bIsCodeProject flag from UProjectInfo. This was only really being used to determine which projects to generate an IDE project for, so it is now checked in the project file generator.

Change 3613910 by Ben.Marsh

	UBT: Remove unnecessary code to guess a project from the target name; doesn't work due to init order, actual project is determined later.

Change 3614075 by Ben.Marsh

	UBT: Remove hacks for testing project file attributes by name.

Change 3614090 by Ben.Marsh

	UBT: Remove global lookup of project by name. Projects should be explicitly specified by path when necessary.

Change 3614488 by Ben.Marsh

	UBT: Prevent annoying (but handled) exception when constructing SQLiteModuleSupport objects with -precompile enabled.

Change 3614490 by Ben.Marsh

	UBT: Simplify generation of arguments for building intellisense; determine the platform/configuration to build from the project file generation code, rather than inside the target itself.

Change 3614962 by Ben.Marsh

	UBT: Move the VS2017 strict conformance mode (/permissive-) behind a command line option (-Strict), and disable it by default. Building with this mode is not guaranteed to work correctly without updated Windows headers.

Change 3615416 by Ben.Marsh

	EC: Include an icon showing the overall status of a build in the grid view.

Change 3615713 by Ben.Marsh

	UBT: Delete any files in output directories which match output files in other directories. Allows automatically deleting build products which are moved into another folder.

	#jira UE-48987

Change 3616652 by Ben.Marsh

	Plugins: Fix incorrect dialog when binaries for a plugin are missing. Should only prompt to disable if starting a content-only project.

	#jira UE-49007

Change 3616680 by Ben.Marsh

	Add the CodeAPI-HTML.tgz file into the installed engine build.

Change 3616767 by Ben.Marsh

	Plugins: Tweak error message if the FModuleManager::IsUpToDate() function returns false for a plugin module; the module may be missing, not just incompatible.

Change 3616864 by Ben.Marsh

	Cap the length of the temporary package name during save, to prevent excessively long filenames going over the limit once a GUID is appended.

	#jira UE-48711

Change 3619964 by Ben.Marsh

	UnrealVS: Fix single file compile for foreign projects, where the command line contains $(SolutionDir) and $(ProjectName) variables.

Change 3548930 by Ben.Marsh

	UBT: Remove UEBuildModuleCSDLL; there is no codepath that still supports creating them. Remove the remaining UEBuildModule/UEBuildModuleCPP abstraction.

Change 3558056 by Ben.Marsh

	Deprecate FString::Trim() and FString::TrimTrailing(), and replace them with separate versions to mutate (TrimStartInline(), TrimEndInline()) or return by copy (TrimStart(), TrimEnd()). Also add a functions to trim whitespace from both ends of a string (TrimStartAndEnd(), TrimStartAndEndInline()).

Change 3563309 by Graeme.Thornton

	Moved some common C# classes into the DotNETCommon assembly

Change 3570283 by Graeme.Thornton

	Move some code out of RPCUtility and into DotNETCommon, removing the dependency between the two projects
	Added UEConsoleTraceListener to replace ConsoleTraceListener, which doesn't exist in DotNetCore

Change 3572811 by Ben.Marsh

	UBT: Add -enableasan / -enabletsan command line options and bEnableAddressSanitizer / bEnableThreadSanitizer settings in BuildConfiguration.xml (and remove environment variables).

Change 3573397 by Ben.Marsh

	UBT: Create a <ExeName>.version file for every target built by UBT, in the same JSON format as Engine/Build/Build.version. This allows monolithic targets to read a version number at runtime, unlike when it's embedded in a modules file, and allows creating versioned client executables that will work with versioned servers when syncing through UGS.

Change 3575659 by Ben.Marsh

	Remove CHM API documentation.

Change 3582103 by Graeme.Thornton

	Simple ResX writer implemetation that the xbox deloyment code can use instead of the one from the windows forms assembly, which isn't supported on .NET Core

	Removed reference to System.Windows.Form from UBT.

Change 3584113 by Ben.Marsh

	Move key-mapping functionality into the InputCore module.

Change 3584278 by Ben.Marsh

	Move FPlatformMisc::RequestMinimize() into FPlatformApplicationMisc.

Change 3584453 by Ben.Marsh

	Move functionality for querying device display density to FApplicationMisc, due to dependence on application-level functionality on mobile platforms.

Change 3585301 by Ben.Marsh

	Move PlatformPostInit() into an FPlatformApplicationMisc function.

Change 3587050 by Ben.Marsh

	Move IsThisApplicationForeground() into FPlatformApplicationMisc.

Change 3587059 by Ben.Marsh

	Move RequiresVirtualKeyboard() into FPlatformApplicationMisc.

Change 3587119 by Ben.Marsh

	Move GetAbsoluteLogFilename() into FPlatformMisc.

Change 3587800 by Steve.Robb

	Fixes to container visualizers for types whose pointer type isn't simply Type*.

Change 3588393 by Ben.Marsh

	Move platform output devices into their own headers.

Change 3588868 by Ben.Marsh

	Move creation of console, error and warning output devices int PlatformApplicationMisc.

Change 3589879 by Graeme.Thornton

	All automation projects now have a reference to DotNETUtilities
	Fixed a build error in the WEX automation library

Change 3590034 by Ben.Marsh

	Move functionality related to windowing and input out of the Core module and into an ApplicationCore module, so it is possible to build utilities with Core without adding dependencies on XInput (Windows), SDL (Linux), and OpenGL (Mac).

Change 3593754 by Steve.Robb

	Fix for tuple debugger visualization.

Change 3597208 by Ben.Marsh

	Move CrashReporter out of a public folder; it's not in a form that is usable by subscribers and licensees.

Change 3600163 by Ben.Marsh

	UBT: Simplify how targets are cleaned. Delete all intermediate folders for a platform/configuration, and delete any build products matching the UE4 naming convention for that target, rather than relying on the current build configuration or list of previous build products. This will ensure that build products which are no longer being generated will also be cleaned.

	#jira UE-46725

Change 3604279 by Graeme.Thornton

	Move pre/post garbage collection delegates into accessor functions so they can be used by globally constructed objects

Change 3606685 by James.Hopkin

	Removed redundant 'Cast's (casting to either the same type or a base).

	In SClassViewer, replaced cast with TAssetPtr::operator* call to get the wrapped UClass.
	Also removed redundant 'IsA's from AnimationRetargetContent::AddRemappedAsset in EditorAnimUtils.cpp.

Change 3610950 by Ben.Marsh

	UAT: Simplify logic for detecting Perforce settings, using environment variables if they are set, otherwise falling back to detecting them. Removes special cases for build machines, and makes it simpler to set up UAT commands on builders outside Epic.

Change 3610991 by Ben.Marsh

	UAT: Use the correct P4 settings to detect settings if only some parameters are specified on the command line.

Change 3612342 by Ben.Marsh

	UBT: Change JsonObject.Read() to take a FileReference parameter.

Change 3612362 by Ben.Marsh

	UBT: Remove some more cases of paths being passed as strings rather than using FileReference objects.

Change 3619128 by Ben.Marsh

	Include builder warnings and errors in the notification emails for automated tests, otherwise it's difficult to track down non-test failures.

[CL 3620189 by Ben Marsh in Main branch]
2017-08-31 12:08:38 -04:00
Brent Pease
e1162a17f7 + Standarize on AnyCPU for all platforms
+ Remove other non AnyCPU platforms
 + Ensure all AnyCPU targets actually use the AnyCPU architecture
 + Clean up inconsistent references and paths

#rb ben.marsh
#lockdown ben.marsh

[CL 3125996 by Brent Pease in Main branch]
2016-09-14 19:52:44 -04:00
Josh Adams
1b81c281d4 Copying //UE4/Dev-Platform to //UE4/Dev-Main (Source: //UE4/Dev-Platform @ 3120366)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2714591 on 2015/10/02 by Ben.Marsh

	Initial branch of files from Engine-Main (//UE4/Engine-Main) to Dev-Platform (//UE4/Dev-Platform)

Change 2916715 on 2016/03/21 by Daniel.Lamb

	First pass at splitting out build cook run into into seperate scripts.

Change 2948322 on 2016/04/19 by Nick.Shin

	update libwebsockets to v1.7.4

	part 4 of 4 - doing this in stages for tracking purposes

	#jira UEPLAT-1246  -  Update libWebsockets
	#jira UEPLAT-1221  -  update websocket library
	#jira UEPLAT-1204  -  Rebuild libwebsockets with SSL

Change 2970016 on 2016/05/07 by Nick.Shin

	undo all of the following upgrades:
	- zlib
	- openssl
	- libcurl
	- libwebsockets

	and reset webrtc

	#jira UE-30298 - Fortnite and Orion crash on login

Change 3059693 on 2016/07/21 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)

Change 3061151 on 2016/07/22 by Niklas.Smedberg

	Fast ASTC texture compression, using ISPC.

	#jira UE-32308

Change 3061428 on 2016/07/22 by Peter.Sauerbrei

	Back out changelist 3061151 as it wasn't approved for submission

Change 3061970 on 2016/07/22 by Steve.Cano

	Adding AdMob interstitital ad support for Android, including Blueprint functions

	#jira UE-33286
	#ue4
	#android

Change 3062160 on 2016/07/22 by Mark.Satterthwaite

	Fix the fix for handling RHISetStreamSource overriding stride on Metal - not all MTLVertexDescriptors are equally hashable so do this ourselves.
	#jira UE-33355

Change 3062770 on 2016/07/24 by Brent.Pease

	UE-32397 Error Message displays as Unknown Error when failing to supply a Remote Build server for ios on Windows

Change 3063227 on 2016/07/25 by Dmitry.Rekman

	Update hlslcc cross-compile after libc++ change.

Change 3063314 on 2016/07/25 by Jeff.Campeau

	Xbox One DLL loading
	Receipts can be read back by request for target info

Change 3063329 on 2016/07/25 by Mark.Satterthwaite

	CL #3046743 was breaking other samples in unexpected ways after a recent Main merge, so make a Metal-specific change to the shader instead and amend the MetalBackend to better match HLSL's handling of NaN/inf with common single-precision float intrinsics. This is sufficient to fix the AtmosphericFog and the recent regressions.
	#jira UE-33600
	#jira UE-33028
	#jira UE-27879
	#jira UE-25802

Change 3063492 on 2016/07/25 by Brent.Pease

	UE-23846 - iOS Movie Player can't handle videos at resolutions that aren't multiples of 16
	UE-33200 - A movie isn't played on iOS occasionally.

Change 3063729 on 2016/07/25 by Dmitry.Rekman

	Linux: enable XGE on all platforms.

	#tests Cross-compiled a number of Linux targets on Windows.

Change 3063732 on 2016/07/25 by Dmitry.Rekman

	Fixed formatting (spaces->tabs) in previous change.

Change 3063750 on 2016/07/25 by Daniel.Lamb

	Added code to dump the cook modification delegate loads to log.
	Fixed the memory usage output log.
	#test cook paragon.

Change 3063804 on 2016/07/25 by Daniel.Lamb

	Added cookpartialgc additional commandline option to uat.
	#test UFE

Change 3064008 on 2016/07/25 by Mark.Satterthwaite

	For non-shipping builds conditionally bind a default uniform buffer in Metal and report an error if the slot was unbound, if our validation layer is enabled attempt to report the shader source in question. This relies on the shader compiler providing accurate information about uniform buffer bindings and won't fix all occurances of bad uniform usage (if a buffer is bound but too short the result will be GPU restarts or an error in Apple's validation layer - we can't detect this case) but will help debug the typical error of leaving an active slot unbound.
	#jira FORT-27685

Change 3064141 on 2016/07/25 by Jeff.Campeau

	Rebuild vpxmd.lib with delayed codegen disabled (fixes linker warning building Win64).

Change 3065024 on 2016/07/26 by Nick.Shin

	Change filetype
	remove exclusive check out bit

	requested by or.coheni & nick.penwarden

Change 3065274 on 2016/07/26 by Jonathan.Fitzpatrick

	DirectoriesToAlwaysStageAsUFS now properly filters out *.uasset and *.umap files
	This prevents the bug where cooked assets get trampled by staging their uncooked version on top of them during the UFS step

	Added a file filter to DirectoriesToAlwaysStageAsUFS for uasset and umap.

Change 3066338 on 2016/07/27 by Mark.Satterthwaite

	Handle releasing an SRV/UAV & the source object within a single Metal command-buffer.
	#jira UE-33779

Change 3066789 on 2016/07/27 by Daniel.Lamb

	Realtime mode does not save any packages anymore unless they are ready.
	#test cookontheside, cookbythebook shooter game

Change 3066847 on 2016/07/27 by Jeff.Campeau

	Fix define
	#2634
	#jira UE-33813

Change 3068868 on 2016/07/28 by Mark.Satterthwaite

	Extend hlslcc's handling of switch-statements to allow implict casts from scalar bool, half & float as HLSL itself permits while also making sure it errors if the expression input is not scalar. This fixes shader compile errors in UT.

Change 3070040 on 2016/07/29 by Dmitry.Rekman

	Delete Nadzorca.

Change 3070947 on 2016/07/29 by Jeff.Campeau

	Perforce C++ API 2015.2 (includes debug libraries)

Change 3073707 on 2016/08/02 by Daniel.Lamb

	Derived data cache commandlet runs resolve string asset references to load any string asset refereced packages from the map.
	Also process async results from shaders being compiled so they can have their memory resources released.
	#test DerivedDataCache commandlet shootergame.

Change 3076613 on 2016/08/03 by Brent.Pease

	 + UnrealTargetConfiguration is now passed into deploy and package methods
	 + The UIRequiredDeviceCapabilities  plist key now only considers the architectures from the corresponding target configuration (shipping or development)

Change 3076668 on 2016/08/03 by Brent.Pease

	Back out changelist 3076613

Change 3077157 on 2016/08/04 by Daniel.Lamb

	Fixed up DLC staging so that it stages to the proper mount point.
	Fixes up include engine content in DLC staging paths.
	#test Made up shooter game DLC

Change 3077191 on 2016/08/04 by Daniel.Lamb

	More smartly process async shader compilation if we are waiting for it.
	#test cook on the side shooter game cook by the book shooter game.

Change 3077412 on 2016/08/04 by Mark.Satterthwaite

	Fix "iOS Metal-based build crashes at launch with sub-levels":
	- Slate should not bind the null RHI texture from an unitialised texture atlas - atlases only have a valid texture pointer once an entry has been added to them and in the template projects an empty sub-level doesn't add anything.
	- To prevent this kind of bug resurfacing and being so hard to track down add Metal shader binding validation to our validation layer as Apple's is incomplete on iOS and won't warn us about nil texture usage which causes these GPU restarts. This requires reworking our vertex declaration handling to be more efficient so that we can cache the pipeline reflection data as well as the pipeline objects.
	- Fix validation error of texture reallocation on loading template projects under Metal.
	#jira UE-30847

Change 3077958 on 2016/08/04 by Brent.Pease

	 + UnrealTargetConfiguration is now passed into deploy and package methods
	 + The UIRequiredDeviceCapabilities  plist key now only considers the architectures from the corresponding target configuration (shipping or development)

Change 3079503 on 2016/08/05 by Mark.Satterthwaite

	Initialise more variable types to 0 in Metal shaders to workaround Xcode 8 toolchain no longer doing this for us for "threadgroup shared" variables. Everything but structs and atomic's will now be initialised.
	#jira UE-33856

Change 3079737 on 2016/08/05 by Jeff.Campeau

	Add support for delay load DLLs on Xbox One
	Turn off warnging for missing PDBs to match VCToolchain.cs

Change 3081005 on 2016/08/08 by Mark.Satterthwaite

	Fix-up Metal device name on AMD for macOS 10.12 which reports it correctly and enable tiled reflections on Intel from macOS 10.12 too as they now work.

Change 3081557 on 2016/08/08 by Daniel.Lamb

	File-> Package saves all packages before starting packaging.
	#test File package first person template

Change 3082215 on 2016/08/09 by Lee.Clark

	PS4 - Added 4k profile

Change 3082412 on 2016/08/09 by Daniel.Lamb

	Fixed cook on the fly server not handling cook requests.
	#test Cook on the fly shooter game.

Change 3082955 on 2016/08/09 by Dmitry.Rekman

	Linux: convert existing Strcat() uses to Strncat().

	- Strcat() does not check destination size so can silently corrupt memory. While this was not observed, this conversion removes this concern altogether.

Change 3083772 on 2016/08/10 by Luke.Thatcher

	[PLATFORM] [PS4] [+]
	Checking in PS4CrashHandler files so we have a copy in Perforce rather than just on the server.
	 - Taken from \\devweb-02 and removed all the unused files/dependencies.
	 - Created a publish profile pointing to \\devweb-02\Sites\PS4Services\PS4CrashHandlerDev so I'm not writing over the existing deployed crash handler.
	 - Moved all code in the Page_Load event to inside the check for the HTTP method (POST) otherwise GET'ing the page from a browser will generate crash folders that hang around forever.

Change 3085450 on 2016/08/11 by Lee.Clark

	PS4 - Fix mediaplayer pipeline allocation

Change 3086360 on 2016/08/11 by Michael.Trepka

	Fixed a non-unity build error in Mac UnrealFrontend

Change 3087224 on 2016/08/12 by Luke.Thatcher

	[PLATFORM] [PS4] [~]
	Refactor PS4 Crash Handler site
	 - Removed CoreDumpHandler. Processing dump files is handled directly by an async thread within the aspx process.
	 - Separated configuration values into their own class. Currently set to output to a testing directory, rather than the actual crash reporter landing zone.
	 - Added a debug upload page to allow manual submission of .orbisdmp/.txt settings files, accessible by GET'ing Default.aspx.
	 - Added logging. Logs self-delete after 30 days.

	Testing required before we switch to the new system.

	#jira UE-34504
	#jira OR-26886

Change 3087626 on 2016/08/12 by Dmitry.Rekman

	PR #2689: Fix copying/duplicating failing on Linux (UE-34586).

	- Contributed by Web-eWorks.

Change 3087991 on 2016/08/12 by Mark.Satterthwaite

	Initial AVFoundation implementation of Media Framework for Mac, iOS & tvOS.
	- Video playback occurs via AVPlayerItemVideoOutput's attached to the AVPlayerItem's output. This means gathering video samples is trivial.
	- Metal texture updates occur by wrapping the texture object provided by AVF - for Mac this is simple as it can bind to the IOSurface directly, for iOS/tvOS we have to create a CVMetalTextureCache and allocate our texture from there.
	- OpenGL and OpenGLES currently have to lock the pixel buffer and upload to a texture the old fashioned way - this should be revisited when there is time.
	- Subtitles/Captions are captured using AVPlayerItemLegibleOutput which also connects to the AVPlayerItem's output.
	- On Mac audio samples are returned by manually reading from the stream using an AVAssetReaderTrackOutput, including manual seeking and synching.
	- On iOS/tvOS the audio is played directly by AVPlayer because the IOSAudio system can't handle procedural buffers - otherwise it could reuse the Mac code.
	- AVFoundation does not support AVI - that's an obsolete Microsoft/Windows file-format.
	- Only 'file://' URLs are supported - streaming would require a totally different audio solution (using MTAudioProcessingTap) and has many more edge and failure cases that would need to be handled.
	#jira UE-34315

Change 3088790 on 2016/08/15 by Luke.Thatcher

	[PLATFORM] [PS4] [~]
	Hook new PS4 crash handler up to the crash reporter website.
	 - Removed indentation from generated crash context XML file. The crash reporter process does manual XML parsing which doesn't correctly handle whitespace at the start of lines.
	 - Switched the final output folder to match the one the crash reporter process is watching.
	 - Hide upload form on a config variable.

	#jira UE-34504
	#jira OR-26886

Change 3089060 on 2016/08/15 by Luke.Thatcher

	[PLATFORM] [PS4] [!]
	Change PS4 crash handler log file extension to ".ps4chlog", otherwise the crash reporter site attaches the wrong log file to the crash report.
	Allowed showing of debug upload form via "Default.aspx?showform=1" query string.

	#jira UE-34504
	#jira OR-26886

Change 3089089 on 2016/08/15 by Mark.Satterthwaite

	Duplicated changes to AppleMovieStreamer from CL #3088149.
	#jira UE-34315

Change 3089460 on 2016/08/15 by Mark.Satterthwaite

	Duplicate CL #3080971:
	Workaround a macOS 10.12 Beta bug on some Metal drivers that can't initialise temporary/local variable arrays, only those that are marked threadgroup shared.
	#jira UE-34355

Change 3089465 on 2016/08/15 by Mark.Satterthwaite

	For Metal shader translation retain more precision for float constants -1.0f >< 1.0f by emitting them in scientific notation - prevents Hammersley constant amongst others from being flushed to 0.

Change 3089902 on 2016/08/15 by Daniel.Lamb

	Changed the next compiling ID to the correct compiling ID.
	#test Cook

Change 3089903 on 2016/08/15 by Daniel.Lamb

	Cooker monitors config useage during cook and uses those settings to invalidate cooked content instead of all config settings.

Change 3090114 on 2016/08/16 by Luke.Thatcher

	[PLATFORM] [PS4] [~]
	Minor change to PS4 settings text on crash handler site.

Change 3090949 on 2016/08/16 by Nick.Shin

	WebSocketNetDriver crash fix

	filled in missing chunk of code that calls PacketHandler's "packet modifiers"

	#jira UE-25492   HTML5 Client cannot connect to Windows Server
	#jira UE-30880   WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket
	#code.review john.pollard john.barrett

Change 3091265 on 2016/08/16 by Brent.Pease

	Add IOS support to HarfBuzz

Change 3091267 on 2016/08/16 by Brent.Pease

	Add references to fix mono build

Change 3091291 on 2016/08/16 by Nick.Shin

	CIS warning fix

	#jira UE-25492   HTML5 Client cannot connect to Windows Server
	#jira UE-30880   WinServer crashes when NetDriver is set to WebSocket and Client attempts to connect via websocket

Change 3091781 on 2016/08/17 by Joe.Barnes

	UE-33640: Exposed UPrimitiveComponent::IsAnyRigidBodyAwake() to Blueprints.

Change 3092687 on 2016/08/17 by Daniel.Lamb

	Added support for using binned allocator in cooker instead of tbb.
	#test Cook shootergame.

Change 3093867 on 2016/08/18 by Mark.Satterthwaite

	Use a read/write mutex to protect access to Metal's internal shader pipeline caches so that parallel threads can progress in the common case where new shaders are not being compiled.

Change 3093950 on 2016/08/18 by Mark.Satterthwaite

	Change the Mac GPU identification code to cope with AMD's new naming scheme on 10.12.

Change 3093951 on 2016/08/18 by Mark.Satterthwaite

	More SCW threads on Mac - they work now.

Change 3093960 on 2016/08/18 by Mark.Satterthwaite

	Increase the default number of command-buffers on Mac because bigger games overflow the current limit of 64 per queue.

Change 3096493 on 2016/08/22 by Jeff.Campeau

	Use Xbox version of DirectX include.

Change 3097509 on 2016/08/23 by Luke.Thatcher

	[PLATFORM] [PS4] [+]
	Refactor PS4 Symbol Publish
	 - Moved the SymStore task from Win.Automation to BuildGraph.Automation, and made it more generic.
	 - The specifics of uploading symbols are now implemented in the platform tool chain, alongside StripSymbols().
	 - Re-generated the build graph schema file.
	 - Removed the old PS4 symbols upload path in the package step.

	Modified OrionBuild.xml to publish symbols for all PS4 dev, test and shipping config builds of OrionClient.

Change 3097635 on 2016/08/23 by Luke.Thatcher

	[PLATFORM] [PS4] [+]
	Refactor Age Symbols task in UAT.
	 - Moved the AgeStore task from Win.Automation to BuildGraph.Automation and made it more generic.
	 - Symbol server directory structure is now defined by the platform tool chain, which the common task uses to clean out old symbols.
	 - Added a "filter" parameter to prevent age tasks deleting symbols from unrelated builds in shared symbol servers.

	Modified OrionBuild.xml to age both the Windows and PS4 symbol stores.

Change 3097713 on 2016/08/23 by Luke.Thatcher

	[PLATFORM] [PS4] [+]
	Enable new PS4 crash handler server
	 - Created live deployment profile and applied the required config file changes.

Change 3099214 on 2016/08/24 by Luke.Thatcher

	[PLATFORM] [PS4] [!]
	Fix compile error in PS4 tool chain. For some reason, this only breaks ocassionally. Maybe we're alternating between the 2013 and 2015 C# compilers depending on what initiates the build (e.g. Visual Studio vs GenerateProjectFiles)?

Change 3099222 on 2016/08/24 by Luke.Thatcher

	[PLATFORM] [PS4] [+]
	Added PS4 support for FPlatformMisc::MessageBoxExt using the MsgDialog library.
	 - Note, only one and two button message dialogs are supported (limitation of MsgDialog).

Change 3099260 on 2016/08/24 by Luke.Thatcher

	[PLATFORM] [PS4] [~]
	Better PS4 exit function. Calls quick_exit instead of abort when we've not asserted. Allows for a "cleaner" forced exit without generating a crash dump.

Change 3101192 on 2016/08/25 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)

Change 3101944 on 2016/08/25 by Daniel.Lamb

	Ask to save the current level when we are using launch on.

Change 3102036 on 2016/08/25 by Nick.Shin

	check for minimum expected size upon data received from network

	#jira UE-13657 - HTML5 plugin OnRawRecieve overflow

Change 3102115 on 2016/08/25 by Brent.Pease

	 - Fix small errors that probably only show up in the mac mono build

	#code.review peter.sauerbrei

Change 3102747 on 2016/08/26 by Jeremiah.Waldron

	Re-submitting OnlineSubsystemGameCircle with TPS permission for Amazon SDK
	 - Also fixed the plugin to remove any related files from the final package when IAP is disabled or GameCircle support itself is disabled with the plugin still enabled
	 - Added support for new AlreadyOwned IAP response code as well which is already used for GooglePlay and IOS

Change 3102900 on 2016/08/26 by Nick.Shin

	since last checkin (CL: 2981945) - prints are crashing the browser - this change will allow browser to print the details via console.log()

	#jira UE-26047 - HTML5 HTTP Response Headers not implemented

Change 3103130 on 2016/08/26 by Brent.Pease

	UE-24679 - Enable the ability to change ports for a firewall to pass them through rsync

Change 3103225 on 2016/08/26 by Daniel.Lamb

	Fixed issue with warning which would cause crash.

Change 3103425 on 2016/08/26 by Dmitry.Rekman

	Enable offscreen GL rendering without X.

	- Added new video subsystem to SDL that is uses EGL to initialize the context.
	- Most windoing functions stubbed.
	- Also added a new test case to TestPAL for easier debugging.

Change 3104743 on 2016/08/29 by Brent.Pease

	Support remote offline metal shader compilation

Change 3105051 on 2016/08/29 by Brent.Pease

	UE-2382 - TASK: MobleMVP: iOS: Add ability to view iOS device console output in the editor UFE

	 - IOS Automation will now create a thread to collect the console logs from the device and send them to C# Console output while the app is running on device
	 - Made ProcessResult an interface (IProcessResult) which ProcessResult implements. This allows platforms to provide their own implementation if needed.
	 - Moved the RunLoop related parts of CoreFoundation into MobileDevice.cs

Change 3105053 on 2016/08/29 by Brent.Pease

	 - IOS dll's as part of the last check-in

Change 3106853 on 2016/08/30 by Jeff.Campeau

	Implement FD3D11DynamicRHI::RHICreateComputeFence to prevent memory overwrite

Change 3107361 on 2016/08/30 by Dmitry.Rekman

	Renderer: changes to allow postproc delegates.

Change 3107362 on 2016/08/30 by Dmitry.Rekman

	Plugin with a CUDA postproc example.

	- Linux version only. Runs under a headless GL too (without X).
	- Disabled during cross-compilation, can be compiled natively only.
	- CUDA kernel should be compiled separately, CMakefile with compilation attached (can be used to generate VStudio projects as well).
	- To test the output, run under the debugger, interrupt and set global variable GSaveTheOutput to 50 (this will write out kernel output buffer 50 times as .bmp files into working directory).

Change 3107913 on 2016/08/31 by Daniel.Lamb

	Fixed loading of cooked content in the editor.

Change 3107916 on 2016/08/31 by Daniel.Lamb

	Added error case when shader compilation fails to notify shader.
	#test Cook shooter game.

Change 3108080 on 2016/08/31 by Josh.Adams

	- Fixed PS4Automation compile errors

Change 3109077 on 2016/08/31 by Brent.Pease

	Fix C# debug builds by specifying x64 and add reference to MobileDeviceInterface

Change 3110086 on 2016/09/01 by Dmitry.Rekman

	Fix race condition in PThread runnable (UE-35074).

	- Instead of relying on busy-wait, join the threads. This prevents race between PostRun() (executed in the context of the thread) and FPThreadRunnableThread() destructor (see UE-34909).
	- Do not use an invalid value for pthread_t, since there's none.

Change 3110172 on 2016/09/01 by Dmitry.Rekman

	Fixed a crash exiting VR Preview on Windows GL4 (UE-28708).

	- PR #2188 submitted by ardneran.

Change 3110313 on 2016/09/01 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)

Change 3111134 on 2016/09/01 by Dmitry.Rekman

	UBT: prevent mono from hanging on Ctrl-C.

	- Sometimes Ctrl-C can cause thread creation to fail. Without this change, UBT would lock up.

Change 3111171 on 2016/09/01 by Brent.Pease

	Move all C# projects to use the x64 Platform for consistency with other changes made to move to the x64 Platform

Change 3111177 on 2016/09/01 by Dmitry.Rekman

	Fix Linux build on systems without CUDA (UE-35460).

Change 3111548 on 2016/09/02 by Luke.Thatcher

	[PLATFORM] [PS4] [!]
	Fix for PS4 iterative deployment.
	 - Changes in Dev-Mobile broke the deployment manifests, as PS4 was now using the wrong filename when creating delta and obsolete file lists.

Change 3111863 on 2016/09/02 by Dmitry.Rekman

	Better fix for build without CUDA (UE-35460).

Change 3112738 on 2016/09/02 by Mark.Satterthwaite

	Fix the pausing particles on Metal - one line bug in the Metal query implementation meant that the first query wouldn't return the correct result for no good reason.
	#jira UE-34989

Change 3114579 on 2016/09/06 by Chris.Babcock

	Fix Vulkan include path in NDK check (contributed by geediiiiky)
	#jira UE-35490
	#github #2758
	#ue4
	#android

Change 3115115 on 2016/09/06 by Jeff.Campeau

	Calculate buffer size for paks using the bitwindow override as needed

Change 3115600 on 2016/09/07 by Luke.Thatcher

	[PLATFORM] [PS4] [~]
	Make the crash dump handler registration much earlier, to catch crashes in early engine init.
	 - Fixed up places in FGenericCrashContext::SerializeContentToBuffer which used the command line. If we crash early, the command line may not have been initialized yet.
	 - Added a GetNoInit function to FThreadHeartBeat to avoid creating the heart beat thread if we crash early, and the thread doesn't exist yet.

	Tested by calling abort() immediately inside int main(), and we get a valid crash dump that the crash handler service can consume.

Change 3115676 on 2016/09/07 by Luke.Thatcher

	[PLATFORM] [~]
	Dev-Platform integration fix for original CL 3064888 in //Orion/Release-29.1
	Add .exe and .dll to windows symbol upload file filters.

Change 3115811 on 2016/09/07 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)

Change 3115944 on 2016/09/07 by Michael.Trepka

	Implemented IsGamepadAttached() for Mac

Change 3115948 on 2016/09/07 by Michael.Trepka

	Don't try to restore Help menu item on Mac if MenuBlock does not contain it

Change 3116200 on 2016/09/07 by Jeff.Campeau

	Fix parameter ordering

Change 3117660 on 2016/09/08 by Josh.Adams

	Merging //UE4/Dev-Main to Dev-Platform (//UE4/Dev-Platform)

Change 3117728 on 2016/09/08 by Michael.Trepka

	Copy of CL 3117698 by Mike.Fricker

	Fixed regression with editor's Simulate mode where cursor would teleport back to the center of the viewport after every click
	- This bug was introduced in CL 3075932 from a borderless window cursor handling fix that was needed for games that capture the cursor

Change 3117797 on 2016/09/08 by Peter.Sauerbrei

	Shader Resource compression

Change 3117988 on 2016/09/08 by Brent.Pease

	 - Solutiion generator will now pick x64 instead of AnyCPU for the default platform configuration
	 - Fix what I think was a merge error in BuildGraph.cs

Change 3118296 on 2016/09/08 by Daniel.Lamb

	Fixed crash with launch on.  Couldnt' correctly detect previous generated ini settings.
	#test launch on QA game
	#jira UE-35741

Change 3118438 on 2016/09/08 by JohnHenry.Carawon

	Fix UAT compilation on Linux
	#UE-35745

Change 3118934 on 2016/09/08 by Jeff.Campeau

	Shader compression setting based on target platform instead of cooking host platform.

	#jira UE-35753

Change 3120190 on 2016/09/09 by Ben.Marsh

	Add missing Platform attribute to build script for Dev-Platform.

[CL 3120378 by Josh Adams in Main branch]
2016-09-09 20:13:41 -04:00
Ben Marsh
1ae32843fa Copying //UE4/Dev-Build to //UE4/Dev-Main (Source: //UE4/Dev-Build @ 3058348)
#lockdown Nick.Penwarden
#rb none

==========================
MAJOR FEATURES + CHANGES
==========================

Change 2982033 on 2016/05/18 by Chad.Garyet

	Checking in progress on the ue4 BuildGraph conversion.
	Builds and Compiles editor and game on all platforms
	Builds DDC on win64 and mac
	Builds Tools on win64

Change 3047983 on 2016/07/13 by Ben.Marsh

	PR #2597: Fix P4 environment used for running BuildUGS commandlet (Contributed by paulevans)

Change 3048267 on 2016/07/13 by Ben.Marsh

	BuildGraph: Allow more permissive list of characters for node names; just restrict against characters which are illegal in filenames. Allows creating aggregate names which match job names (eg. "Editor, Tools & Monolithics").

Change 3048293 on 2016/07/13 by Ben.Marsh

	BuildGraph: Allow passing -listonly without a specific -target=... parameter in BuildGraph, to see the contents of the entire script.

Change 3048454 on 2016/07/13 by Ben.Marsh

	BuildGraph: Disable output of error messages when just printing the contents of the graph.

Change 3048507 on 2016/07/13 by Ben.Marsh

	BuildGraph: Rename "Ticket" to "Token" for files used to ensure exclusive access to run part of a build.

Change 3049459 on 2016/07/14 by Matthew.Griffin

	Updated location of HTML5 SDKs for Installed Builds
	#jira UE-32171

Change 3049675 on 2016/07/14 by Matthew.Griffin

	Ensured that all platforms are registered when running -validateplatform command
	#jira UE-31082

Change 3049922 on 2016/07/14 by Ben.Marsh

	UBT: Fix path to XML config file in boilerplate message.

Change 3051483 on 2016/07/15 by Ben.Marsh

	EC: Remove code to prettify node names, now that we can have pretty node names explicitly.

Change 3051522 on 2016/07/15 by Ben.Marsh

	BuildGraph: Change spawn task to fail if a non-zero exit code is returned by an external program. The minimum exit code to be treated as an error can be set using the "ErrorLevel" attribute, similar to ERRORLEVEL in DOS.

Change 3051770 on 2016/07/15 by Ben.Marsh

	UGS: Add support for narrowing virtual streams; fetch event and precompiled binaries for parent stream instead.

Change 3052990 on 2016/07/17 by Ben.Marsh

	Show the names of people with notifications disabled in the heading of failure emails, so it's clear that they're not on CC.

Change 3053556 on 2016/07/18 by Ben.Marsh

	BuildGraph: Add a explicit <Option> tag instead of the <Property Default=""/> shenanigans, so that properties that are meant to be modified by the user are listed explicitly. Supported attributes are "DefaultValue" (which specifies a default if the user does not set it on the command line), "Description" (which explains the purpose of the option to users, which is displayed in a table when BuildGraph is invoked with the -listonly argument), and "Restrict" (which specifies a regex to validate an argument supplied by the user).

	Also add an <EnvVar Name="Blah"/> tag which imports the given environment variable as a property (or sets it to "" if it doesn't exist), and rename the <Choose>/<Option>/<Otherwise> triple to <Switch>/<Case>/<Default> to avoid confusion with the new <Option> tag.

Change 3053688 on 2016/07/18 by Ben.Marsh

	Update build scripts to link to p4-swarm rather than p4-web in dashboard pages and notification emails.

Change 3054039 on 2016/07/18 by Ben.Marsh

	Fix confusing message when compiler isn't installed if the target forces VS2013

Change 3054360 on 2016/07/18 by Ben.Marsh

	Remove GUBP support from EC scripts.

Change 3054399 on 2016/07/18 by Ben.Marsh

	Remove circular include from Json.h -> JsonSerializerMacros.h -> Json.h

Change 3055671 on 2016/07/19 by Ben.Marsh

	Remove incomplete UWP integration from UE4.

Change 3055943 on 2016/07/19 by Ben.Marsh

	Remove the WinRT target platform.

Change 3056270 on 2016/07/19 by Ben.Marsh

	Core: Move VectorRegister.h include to eliminate include dependency on UnrealMathUtility.h

Change 3056390 on 2016/07/19 by Ben.Marsh

	Core: Directly include headers required by default JsonWriter template instantiation.

Change 3057444 on 2016/07/20 by Ben.Marsh

	UBT: Fall back to checking for the VS140COMNTOOLS environment variable if we couldn't determine the Visual Studio installation directory from the registry. Allows using the standalone Visual Studio build tools to compile UE4.

Change 3058337 on 2016/07/20 by Ben.Marsh

	Remove EnvVarsToXML. All target platforms now determine their compile environment directly from the registry.

Change 3058348 on 2016/07/20 by Ben.Marsh

	Disable optimization for all automation projects. They don't generally do anything particularly CPU intensive, and VS2015 optimizations are inhibitive to debugging.

[CL 3058822 by Ben Marsh in Main branch]
2016-07-20 20:25:02 -04:00
Matt Kuhlenschmidt
1da24c4701 Copying //UE4/Dev-Editor to //UE4/Dev-Main (Source: //UE4/Dev-Editor @ 3050373)
#lockdown Nick.Penwarden
#rb none
==========================
MAJOR FEATURES + CHANGES
==========================

Change 2973846 on 2016/05/11 by Jamie.Dale

	Exposed FConfigValue::ExpandValue and added FConfigValue::CollapseValue

	These are both static and can be used to expand or collapse the macros used in our config files (mostly when dealing with paths), in code that has to deal with the config system, but isn't internal to the config system (mostly things that deal with default configs outside of UObjects).

	The old non-static version of FConfigValue::ExpandValue is now FConfigValue::ExpandValueInternal, which just calls FConfigValue::ExpandValue on SavedValue and ExpandedValue.

	This also changes some code that was using FString.Replace to use FString.ReplaceInline. This reduces allocations, and also allows us to avoid another string comparison to see whether the strings are identical (as ReplaceInline returns the number of replacements that were made).

Change 2973847 on 2016/05/11 by Jamie.Dale

	Changing the loading phase in the localization dashboard now writes to the default config

	#jira UE-30482

Change 2973866 on 2016/05/11 by Jamie.Dale

	Deprecated some functions that were taking an unused position.

	These unused parameters caused confusion and lead to UE-30276. The old versions have been deprecated, and new versions without those parameters have been added. Existing code has been updated to call the non-deprecated version.

	- FViewportFrame::ResizeFrame
	- FSceneViewport::ResizeFrame
	- FSceneViewport::ResizeViewport

Change 2974505 on 2016/05/11 by Nick.Darnell

	PR #2309: Added Combobox styling (Contributed by Chris528)

Change 2975241 on 2016/05/12 by Richard.TalbotWatkin

	Made sRGB Preview the default in the Color Picker.

Change 2975390 on 2016/05/12 by Jamie.Dale

	Made sure that en-US-POSIX is in our list of available cultures

	Some people use machine tags as their native text, so they need an invariant machine like culture to use as their native culture. en-US-POSIX is perfect for this.

Change 2975411 on 2016/05/12 by Jamie.Dale

	PR #2237: Fixed formatting of Error_TooManyMaterials message (Contributed by pfranz)

Change 2975559 on 2016/05/12 by Jamie.Dale

	Dialogue Wave VO direction can now be localized

	This is gathered as editor-only data.

	#jira UE-28715

Change 2975710 on 2016/05/12 by Jamie.Dale

	Implemented UObject::IsLocalizedResource to test whether the object belongs to a localized package

Change 2975728 on 2016/05/12 by Jamie.Dale

	Exported dialogue scripts now include a column that says whether they have a localized recording of that line of dialogue

	#jira UETOOL-794

Change 2975763 on 2016/05/12 by Jamie.Dale

	We no longer warn if asked to check out a UNC path when running the GatherText commandlets

	#jira UE-25833

Change 2975766 on 2016/05/12 by Jamie.Dale

	Resolved some loc key conflicts

	#jira UE-25833

Change 2975774 on 2016/05/12 by Jamie.Dale

	PO files now only contain a single entry in the case of a native translation being exported

	They used to contain the original entry, as well as an entry for the native translation, however the original entry would never be used.

	This change also cleans up some directory walking code that was looking for archive files, and replaces it with code to load the specific archive file.

Change 2975776 on 2016/05/12 by Jamie.Dale

	Downgraded a PO file import warning that isn't really an issue

	#jira UE-25833

Change 2976675 on 2016/05/13 by Jamie.Dale

	Fixed some more fallout from changes to use the window position when changing the game viewport mode

	- FSceneViewport::ResizeFrame:
	  - Fixed the HMD monitor info setting the wrong variables.
	  - Fixed SetWindowMode and ResizeViewport potentially being passed two different modes.
	  - We now only move the window if we need to (this avoids issues with WindowedFullscreen window positioning).

	- FWindowsWindow::MoveWindowTo:
	  - Now treats the screen space position it's given as relative to the top-left of the window, rather than the top-left of the windows' client area.

	- FWindowsApplication:
	  - WM_MOVE was passing a screen space position relative to the top-left of the windows' client area, rather than its window area like Slate expected.

	#jira UE-30276
	#jira UE-30677

Change 2976804 on 2016/05/13 by Jamie.Dale

	Slight optimization to FICUInternationalization::FindOrMakeCulture to avoid hitting the filesystem until we know we need to

Change 2976967 on 2016/05/13 by Alexis.Matte

	#jira UE-30687 Cannot import a skeletal mesh scale to zero

Change 2977042 on 2016/05/13 by Alexis.Matte

	#jira UE-29952 log a warning if fbx exceed the maximum number of LOD.

	#2326 Github PR

	#code review matt.kuhlenschmidt

Change 2977074 on 2016/05/13 by Jamie.Dale

	Follow up to CL# 2976804 to avoid a potential change in behavior

Change 2977076 on 2016/05/13 by Jamie.Dale

	Some tidy up and optimization to SCulturePicker

Change 2977327 on 2016/05/13 by Alex.Delesky

	Now deleting the Redirector package on Redirector Fix Up rather than simply removing it from the Content Browser.

	#jira UE-30423

Change 2977499 on 2016/05/13 by Alexis.Matte

	#jira UE-29475
	Enable UStruct child property to be favorite

Change 2978415 on 2016/05/16 by Jamie.Dale

	We now pre-load all the culture data when starting the editor to avoid a UI hitch later

Change 2978517 on 2016/05/16 by Alex.Delesky

	#jira UE-29406

	Creating a static mesh from a geometry brush and then attempting to reimport the mesh will no longer crash the editor.

Change 2978518 on 2016/05/16 by Alex.Delesky

	#jira UE-28210

	The FBX Importer no longer runs cleanup upon failing to import an FBX file and won't crash the engine the next time an FBX is imported within the same editor session.

Change 2978556 on 2016/05/16 by Alexis.Matte

	Fbx tests automation
	#jira UE-29635

Change 2978797 on 2016/05/16 by Alexis.Matte

	#jira UE-30774
	- prevent baking the pivot if we transform the vertex with the absolute transform.
	- Also make sure we set the identity for the Max puivot in case we dont bake the pivot and we dont transform the vertex with the absolute transform.

	#code review matt.kuhlenschmidt

Change 2978965 on 2016/05/16 by Alexis.Matte

	FBX importer, fix the socket rotation.
	#jira UE-30094

Change 2980613 on 2016/05/17 by Jamie.Dale

	Moved the XLOC UAT localization provider to be publicly accessible

Change 2980614 on 2016/05/17 by Jamie.Dale

	Reference update for project move

Change 2980633 on 2016/05/17 by Jamie.Dale

	Made the culture mapping used between XLOC and UE4 configurable on a per-project basis

	You can now override GetEpicCultureToXLocLanguageId in your custom localization provider in order to change the default mappings.

Change 2980836 on 2016/05/17 by Jamie.Dale

	Added -LocalizationSteps flag to allow you to only run a subset of the UAT "Localise" command

	You can pass any of the following steps: Download, Gather, Import, Export, Compile, GenerateReports, Upload

Change 2982700 on 2016/05/18 by Jamie.Dale

	Fixed the loc package gather potentially adding the same source location multiple times

Change 2983906 on 2016/05/19 by Jamie.Dale

	Slight cleanup of the way we register localization gatherer callbacks

Change 2984356 on 2016/05/19 by Chris.Wood

	Removed temporary analytics API change needed for earlier hot fix
	[UE-31005] - Undo temp Hardware Survey API change from 4.10 - CL 2782817

Change 2986679 on 2016/05/23 by Alex.Delesky

	#jira UE-24747 - Importing FBX files that contain meshes that do not have non-degenerate triangles will no longer crash the editor on import, and will warn the user that the meshes are bad.

Change 2986798 on 2016/05/23 by Alex.Delesky

	#jira UE-31136 - Chord Input fields will no longer display the blinking edit cursor if they do not have focus.

Change 2987106 on 2016/05/23 by Alexis.Matte

	Fbx importer, fail import must not create a package in the content browser
	#jira UE-31154

Change 2987563 on 2016/05/23 by Alex.Delesky

	#jira UE-30988 - Changed the default window mode when launching a game from the .uproject file to Windowed

Change 2987564 on 2016/05/23 by Alex.Delesky

	#jira UE-28856 - Fixed a crash that could potentially occur when starting up PIE while dragging objects like widgets in the editor.

Change 2988321 on 2016/05/24 by Jamie.Dale

	Added a way to backup and restore the selection state of a level (its actors and components) in a way that can be reapplied even if the level is reloaded

Change 2988708 on 2016/05/24 by Jamie.Dale

	Fix for crash when missing the fallback/last resort font

Change 2988782 on 2016/05/24 by Jamie.Dale

	Added the ability to version each localized string individually when loaded into the localization manager

	The single 32-bit global history has now been replaced with two 16-bit histories. One is global, and is updated whenever the culture is changed (or a LocRes file is loaded), and the other is local to each string, and is updated if the display string is changed outside of a culture update (to handle cases where the display string is changed, but the key is preserved). Changing the global history will reset all local histories.

	Because of the change from an int32 to a uint16, 0, rather than INDEX_NONE, is now considered the "unset" value for a history.

Change 2988856 on 2016/05/24 by Jamie.Dale

	Added a way to get the package(s) of the object(s) being edited by a property panel

	Typically the package is just the outermost of the object being edited, however there are some cases where this may not be the case:
	  - UMG widgets edit a transient copy of the real data, so we use the SetObjectPackageOverrides to override the package these objects should use to be the real asset package.
	  - Structs (UDS, Data Table, etc) don't have a way to get to their package, so you have to specify it on their FStructOnScope instance (see FStructOnScope::GetPackage and FStructOnScope::SetPackage). This has been hooked up for the UDS and Data Table editors.

Change 2988955 on 2016/05/24 by Alex.Delesky

	#jira UE-30645 - Adding in support for splash images to support .png and .jpg files. In general, this adds multi-extension support for external image references and external image picker modules.

	Git Request #2376

Change 2989418 on 2016/05/25 by Jamie.Dale

	Added a way to count text references within a package that match the given search criteria

	This can be used to detect whether a localization ID is unique within its package.

	The following search modes are available:
	  - MatchId: Detect a reference if it matches the given ID (ignoring the source text)
	  - MatchSource: Detect a reference if it matches the given ID and source string
	  - MismatchSource: Detect a reference if it matches the given ID but has a different source string

Change 2989436 on 2016/05/25 by Jamie.Dale

	Added "root-level" meta-data (meta-data associated with the package rather than an object within it)

Change 2989471 on 2016/05/25 by Alexis.Matte

	Fbx scene importer, fix naming clash when creating package we now also look in memory to find existing package not just on disk

Change 2989639 on 2016/05/25 by Jamie.Dale

	Added static version of FName::IsValidXName

	This allows you to verify name-like strings without having to convert them to an FName (and thus add them to the name table)

Change 2989716 on 2016/05/25 by Alex.Delesky

	#jira UE-30828 - The Standalone Session Frontend will now render the names of automation tests correctly instead of as solid white blocks.

Change 2990100 on 2016/05/25 by Alexis.Matte

	Fix crash when reimporting a mesh that originaly exceed the maximum number of LOD

	#jira UE-30907

Change 2991442 on 2016/05/26 by Bob.Tellez

	#UE4 Fix components in world not rendering when saved without a physics scene.

Change 2991736 on 2016/05/26 by Bob.Tellez

	#UE4 Fix duplicated worlds not being initialized when inactive. Re-enabled duplication of worlds in the content browser.

Change 2991942 on 2016/05/26 by Alex.Delesky

	#jira UE-31012 - Setting a Decimal Grid Interval value to 0 and using it will no longer crash the editor or cause an editor crash on startup.

Change 2991994 on 2016/05/26 by Alex.Delesky

	#jira UE-31177 - Attempting to export an entire level as an object file and choosing to export all materials as images will no longer crash the editor.

Change 2994037 on 2016/05/30 by Alexis.Matte

	Add Fbx Automation Tests
	- static mesh import reimport (sections and materials)
	- skeletal mesh import and reimport (sections and materials also bone position)
	- static/skeletal mesh LODs (import, add, reimport)
	- rigid mesh (import, reimport)

Change 2994253 on 2016/05/31 by Alexis.Matte

	Mikkt crash when computing the normals if there is more vertex then the number of wedge

	#jira UE-29143

Change 2994260 on 2016/05/31 by Alexis.Matte

	Make sure we cannot modify fbx test plan when json file is read only

Change 2994431 on 2016/05/31 by Alex.Delesky

	#jira UE-21900 - The scale widget should now render all axes when using an orthographic camera.

Change 2994432 on 2016/05/31 by Alex.Delesky

	#jira UE-31328 - New objects dragged into the scene will now comply with the Surface Snapping option in the viewport, and will not use the Surface Offset if snapping is disabled.

Change 2994537 on 2016/05/31 by Richard.TalbotWatkin

	Fixed potential crash in the Mesh Paint tool when non-transactable actors are in the SelectedActors list following a Redo.
	#jira UE-31172 - Crash related to Vertex Painting - MeshPaint!CastChecked<AActor,UObject>()

Change 2994983 on 2016/05/31 by Richard.TalbotWatkin

	Added some guard code to protect against a crash when editing geometry. Repro currently unknown, ensure was added in order to try to get more information.
	#jira UE-30820 - UT EDITOR: CRASH: Crash in Public Release CL#2973693

Change 2995022 on 2016/05/31 by Jamie.Dale

	PR #2428: Added missing END_OPTIMIZATION macro to SOutputLog (Contributed by MatzeOGH)

Change 2995027 on 2016/05/31 by Jamie.Dale

	PR #2409: fixed a small typo in GraphEditor.h (Contributed by MatzeOGH)

Change 2995963 on 2016/06/01 by Alex.Delesky

	#jira UE-31317 -  The transform gizmo will no longer block the placement of a material onto a mesh.

Change 2997002 on 2016/06/01 by Cody.Albert

	Fix to ensure ActiveTopLevelWindow is properly set after a window is destroyed

	#jira UE-31448

Change 2998013 on 2016/06/02 by Alexis.Matte

	Prevent static mesh materials array to grow when using the reset button in the staticmesh editor.

	#jira UE-12931

Change 2998370 on 2016/06/02 by Alexis.Matte

	Fbx Automation, add some import LOD test in case the options are not ok

Change 2999709 on 2016/06/03 by Jamie.Dale

	Fixed some issues with gathering text from BP bytecode

	Bytecode in Blueprints is very volatile, and can only be safely gathered after it's been compiled (which is not guaranteed to have happened by the time we save the package). This change avoids caching any assets that contain scripts (non-data-only Blueprints), and instead will always load them to perform a gather (which will ensure the Blueprint bytecode is up-to-date due to compile-on-load).

Change 2999755 on 2016/06/03 by Richard.TalbotWatkin

	Fixes to Spline Mesh collision generation.
	- Fixed a serious issue with DDC ID generation, in that the static mesh wasn't forming a part of the key, hence any two spline meshes with identical properties but different meshes would yield the same cache entry.
	- Fixed how different collision boxes are transformed when rebuilding physics meshes. Convex collision transforms are now correctly taken into account, and spherical and capsule collision now gets correctly translated when a scale is applied to the start or end of the spline mesh.
	- Optimized physics rebuilding.  A new BodySetup object is now only created when needed, otherwise it is reused.

	#jira UE-31361 - Splines handle box collision and collision from other shapes differently

Change 2999973 on 2016/06/03 by Jamie.Dale

	We now skip bulk data when detecting text references

	#jira UE-31596

Change 3000159 on 2016/06/03 by Alex.Delesky

	#jira UE-30244 - Added a safeguard against a potential crash when editing BSP brushes before placing another BSP brush into the level.

Change 3001814 on 2016/06/06 by Alexis.Matte

	Make sure the staticmesh Materials list dont grow when we reimport or override a LOD other then the base mesh.
	Add a fbx test to make sure the problem is flag by automation test

	#jira UE-1394

Change 3001820 on 2016/06/06 by Alex.Delesky

	#jira UE-19079 - Widget Blueprints should no longer crash when dragging widgets from one blueprint to a second and then compiling the second blueprint.

Change 3001915 on 2016/06/06 by Alexis.Matte

	Make sure we check attribute type before checking attribute unique ID in case of unique id clash.

	#jira UE-31214

Change 3002026 on 2016/06/06 by Alexis.Matte

	Importing morph target should not import textures like materials since the base mesh already import thoses.

	UDN Question:
	https://udn.unrealengine.com/questions/293973/does-importing-an-fbx-with-morph-targets-cause-a-m.html

Change 3002623 on 2016/06/06 by Jamie.Dale

	Fixing more loc conflicts

Change 3002883 on 2016/06/06 by Jamie.Dale

	Adding retry when dealing with OneSky

	This is attempting to compensate for some timeouts with OneSky, which were also noticed when testing UE-31413

Change 3003004 on 2016/06/06 by Trung.Le

	#jira UE-13101 - Make "Description" field for a BluePrint Function multiline

Change 3003859 on 2016/06/07 by Alexis.Matte

	#jira UE-30436 Refresh the property editor when a array element is added, remove, insert, delete and the property is favorite

Change 3004132 on 2016/06/07 by Jamie.Dale

	Fixed a hash conflict that could occur when both the case-sensitive and case-insensitive FName hashes were identical

	This resulted in the case-preserving FName being added to the head of the linked list for the bucket, which caused any subsequent name lookups to return that name index for the comparison index (since it matched an insensitive string comparison), rather than the name index of the first case-variant of that name that was added to the bucket.

	This change has new entries be inserted at the tail of the list, which ensures that enumeration for a case-insensitive name will always find the same entry in the bucket (the first one that was ever added) and will continue to compare correctly.

Change 3004286 on 2016/06/07 by Jamie.Dale

	Ensured that assignments that publish new names to the bucket are atomic

Change 3004310 on 2016/06/07 by Jamie.Dale

	Ensured FName internal hashes are returned as uint16

Change 3004381 on 2016/06/07 by Jamie.Dale

	FAsyncPackage now creates the meta-data before processing the remaining exports

	This matches the behavior of FLinkerLoad::LoadAllObjects, as other objects may depend on the meta-data being loaded before them.

Change 3004765 on 2016/06/07 by Alex.Delesky

	#jira UE-31498 - Material thumbnails will now render the full sphere rather than an extreme close-up of the material.

Change 3005754 on 2016/06/08 by Trung.Le

	Allow whitespace for meta class names
	#jira UE-31668

Change 3005755 on 2016/06/08 by Stephan.Jiang

	UMGSequencePlayer implements GetPlaybackContext() and return UserWidget->GetWorld() if it's valid

	#jira UE-31299

Change 3006512 on 2016/06/08 by Alex.Delesky

	#jira UE-31572 - The "All Classes" tab in the Modes panel will now refresh when a placeable asset is created, renamed, or deleted without needed to navigate away from the tab first.

Change 3006760 on 2016/06/08 by Jamie.Dale

	Added support for stable localization keys

	This feature adds support for preserving the existing key of an FText property when editing the source string, providing that it is the only reference to that string within the package. A side effect of this is that you're now able to specify custom keys for FText properties since we can now verify that the custom key won't cause an identity conflict.

	In order to limit the search domain for uniqueness to a single package, we've added the concept of a "localization namespace" to packages (stored in the meta-data). Each package is given a unique namespace, which is appended to the user-defined namespace of the text when it is modified, saved, or duplicated. This package namespace ensures that the same user-defined namespace and key may be used in different packages without causing an identity conflict.

	In order to access the package namespace within the Core code that hosts FText (which doesn't know about UPackage), FArchive now provides a GetLocalizationNamespace function to access the package namespace within the Core code, and a SetLocalizationNamespace function for CoreUObject and Engine code to pass down the package namespace from their packages.

	If you have an archive that handles duplicating objects into a different package, or duplicating packages themselves, then you'll want to make sure it's setting the package namespace correctly. FObjectReader and FObjectWriter have been updated to do this, and serve as a good example. FDuplicateDataReader (used by StaticDuplicateObject), and FCopyPropertiesArchiveObjectWriter (used when compiling Blueprints) have also been updated to set the package namespace, as they both handle copying objects between packages. TextNamespaceUtil provides a suite of functions for getting at (or setting) the namespace for a package.

	Keys will start to stabilize naturally over time once this feature is enabled, however the StabilizeLocalizationKeys commandlet may also be used to stabilize all the keys for a game at once. Running it for a game under source control would look something like this:
	  MyGame -run=StabilizeLocalizationKeys -IncludeGame -NativeCulture=en -EnableSCC

	This commandlet also updates your localization archives to use the new text identities, however you'll still need to run a localization gather and localization compile before the updated translations will be available for your game.

	Note: This feature is currently disabled via the USE_STABLE_LOCALIZATION_KEYS define. It will be enabled at a later date.

	#jira UETOOL-796

Change 3007501 on 2016/06/09 by Trung.Le

	#jira UE-31722
	Fix MaterialFunctions crash when editing text in Libraries Category Text field. Solution: Removed PredEdit and PostEdit from IEditableTextProperty, its derived types and other code that was calling them. The new SetText method already calls NotifyPreChange and NotifyPostChange to properly create/destroy ScopedTransaction.

Change 3007524 on 2016/06/09 by Jamie.Dale

	Added some additional checks to avoid re-keying text when duplicating for PIE

Change 3007564 on 2016/06/09 by Jamie.Dale

	PR #2401: DataTable import/export improvements (Contributed by bozaro)

Change 3007653 on 2016/06/09 by Jamie.Dale

	PR #2459: Generate JSON for nested structs in DataTable rows (Contributed by jorgenpt)

Change 3008019 on 2016/06/09 by Jamie.Dale

	Updated structs to export as JSON when displaying them in the Data Table editor

	This produces much cleaner results than using the text export method (which will use the internal names for user defined structs).

	This also cleans up the FDataTableExporterCSV and FDataTableExporterJSON APIs so that you don't need to pass in a UDataTable if you're not going to use it.

	#jira UE-29958

Change 3008052 on 2016/06/09 by Jamie.Dale

	Fixed bug importing an array inside a JSON Data Table

	This was noticed when testing a GitHub PR, but the JSON importer for a Data Table was appending the new data to the array rather than replacing it. It now clears the array prior to importing.

Change 3008875 on 2016/06/10 by Jamie.Dale

	PR #2406: Git plugin: Fix for Git diff not working in UE 4.12 (and master) (Contributed by SRombauts)

Change 3008879 on 2016/06/10 by Jamie.Dale

	PR #2484: Git Plugin: fix the Submit To Source Control menu broken by new "migrate" support in 4.12 (and master) (Contributed by SRombauts)

Change 3008990 on 2016/06/10 by Alex.Delesky

	#jira UE-15699 - Submitting to source control via the editor should now check for current asset status before prompting the user to submit their changes. This should prevent files that had been previously deleted from being readded to source.

Change 3008991 on 2016/06/10 by Alex.Delesky

	#jira UE-31688 - The Output Log will now automatically anchor to the bottom of the scroll bar when the user scrolls all the way down using the mouse wheel or clicking and dragging the content window.

Change 3010856 on 2016/06/13 by Alexis.Matte

	#jira UE-31713 Fix a serialize issue for skeletal mesh with apex cloth.

Change 3011736 on 2016/06/13 by Jamie.Dale

	Adding missing plurals.res file

	This is needed to get plural form information from ICU.

	#jira UETOOL-875

Change 3012387 on 2016/06/14 by Richard.TalbotWatkin

	Disabled the Paste context menu action if the property is marked as EditConst.
	#jira UE-27469 - User is able to paste values into a read-only setting

Change 3012971 on 2016/06/14 by Stephan.Jiang

	Editor Preferences->Widget Designer now have two options to toggle the visibilities of widgets created from Engine content folder and Developers folder.

	By default, visibility for engine content is off and developers is on

	#jira UE-31657

Change 3013111 on 2016/06/14 by Jamie.Dale

	Unified the number, percentage, and currency formatting between the ICU and Legacy text implementations

	Removed all the old legacy number formatting code, and removed the calls to the ICU specific number formatting. Everything is now using FastDecimalFormat as this will allow some optimizations later when formatting numbers in FText::Format.

Change 3015438 on 2016/06/15 by Cody.Albert

	Fixing ScrollBy function to calculate new scroll offset based on the current scroll offset and not the current desired scroll offset (which may not be the same during an animation)

	#jira UE-32082

Change 3016782 on 2016/06/16 by Richard.TalbotWatkin

	Corrected ConvexHull2D so that it returns an empty set of indices when passed an empty points array.

Change 3016949 on 2016/06/16 by Jamie.Dale

	Added FastDecimalFormat overloads to write into an existing string

	This helps avoid an extra allocation if you already have a pre-sized string that you're writing the number to (as is the case in FText::Format).

Change 3016952 on 2016/06/16 by Jamie.Dale

	Changed an Add for an Emplace to avoid moving a temporary

Change 3016954 on 2016/06/16 by Jamie.Dale

	Updated some FText code to avoid creating temporary objects just to move data through a hierarchy

	There was some code in FText and its internal types that were using pass-by-value as a marshaller to move data through a hierarchy. This resulted in temporary objects being created and destroyed to facilitate the movement of data.

	This change has all the internal FText code (private FText constructors, internal text data, and internal text history) take its movable types as an r-value reference. This avoids the temporary objects, but also makes it impossible to accidentally copy a construction argument when you meant to move it (you can still copy, but the copy must be explicit).

	In addition to this, FText::FromString and FText::AsCultureInvariant now have two overloads, const FString& and FString&&, to avoid them creating a temporary when you're invoking a move. FText::ChangeKey now takes its parameters by const& as their data wasn't being moved further down the chain, so the by-value copy was wasteful.

Change 3019021 on 2016/06/19 by Richard.TalbotWatkin

	When deleting a brush, ensure geometry is rebuilt before updating the details panel according to the selection change, so that the old Surface Properties don't continue to appear.
	#jira UE-8966 - Surface Properties of a BSP remain in the details panel after the BSP is deleted

Change 3019022 on 2016/06/19 by Richard.TalbotWatkin

	Fixed issue where the Surface Properties category in the Details panel doesn't appear after selecting a surface on a Brush which has just been placed.
	#jira UE-31916 - Selecting an edge of BSP geometry then a face does not show Surface Properties while in Place mode
	#jira UE-31915 - Selecting BSP face does not show Surface Properties in Details

Change 3019025 on 2016/06/19 by Richard.TalbotWatkin

	Fixed issue which was stopping 'Cancel' from correctly returning a 'Cancelled' result during P4 asynchronous ops.
	#jira UE-28595 - Submit to Source Control: "Checking for assets to check in..." cancel button does not cancel operation, editor becomes unresponsive

Change 3020050 on 2016/06/20 by Cody.Albert

	Changed window centering logic to correctly work when monitor 1 isn't set to primary monitor.

	#jira UE-32173

Change 3021145 on 2016/06/21 by Jamie.Dale

	Added support for text format argument modifiers

	These can be used to mutate a format argument before appending it to the resultant formatted string, and are applied to the preceding argument via a pipe, eg) "{Arg}|plural(one=is,other=are)".

	We provide a few of these by default:
	 - |plural(key=val,...)
	 - |ordinal(key=val,...)
	   Provides support for cardinal and ordinal plural forms, where key may be any of "one", "two", "few", "many", or "other", and val may be any optionally quoted string.
	 - |gender(masculine,feminine,[neuter])
	   Provides support for gender forms, where the 0th item is the masculine version, the 1st item is the feminine version, and the 2nd item is an optional neuter version. The values may be any optionally quoted string.
	 - |hpp(consonant,vowel)
	   Provides support for Hangul post-positions, where the 0th item is the consonant suffix, and the 1st item is the verb suffix. The values may be any optionally quoted string.

	Major changes:
	 - Exposed the ICU plural form handling via FCulture::GetPluralForm.
	 - Updated the FText formatting code to use an expression evaluator (to support the more complex expressions needed for the argument modifiers).
	 - Added FTextFormat to store a pre-compiled format expression. Re-using one of these if you're performing a lot of formats with the same FText will increase your performance (as around half of the FText::Format cost can be compilation, via an implicit construction of FTextFormat).
	 - Updated the FText::Format(...) family of functions to take their format string as FTextFormat, and take their arguments as FFormatArgumentValue. This allows us access to the real numeric types within the format code, but doesn't break the existing API as these types are implicitly constructible from the old parameters (FText).
	 - Converted text history to store their format string as an FTextFormat in-case they need to perform a re-format (this is still saved as an FText).

	Breaking changes:
	 - The rules for the escape token have been simplified, and there is an incredibly unlikely chance that this may affect some text:
	   - The ` character will now only escape a valid character (producing only the escaped character in the final string), or it will be ignored and inserted as a literal character, eg) "`{F" -> "{F", and "`F" -> "`F".
	   - Previously it would also remove the escape character when it followed { or }, eg) "{`" -> "{" and "}`" -> "}", rather than "{`" and "}`" like you might expect. It would also have previously removed a ` at the end of a string due to a parser bug.

Change 3021156 on 2016/06/21 by Jamie.Dale

	Updated LinuxToolChain to use the same output delegate for all of its actions when cross-compiling

	This avoids the compile and link actions being split into different batches.

Change 3021280 on 2016/06/21 by Richard.TalbotWatkin

	Fixed bug in parsing LOD in UStaticMeshComponent::ImportCustomProperties (thanks to Aurelien Cordonnier).
	#jira UE-31937 - UDN code submission for UStaticMeshComponent::ImportCustomProperties parsing bug

Change 3022949 on 2016/06/22 by Alex.Delesky

	#jira UE-31944 - Upgrading Subversion binaries to version 1.9.4.

Change 3023092 on 2016/06/22 by Jamie.Dale

	Downgraded some checks to ensures and added an early out

	#jira UE-32009

Change 3023154 on 2016/06/22 by Jamie.Dale

	Ported over CL# 3018771 to the UE automation

	This fixes an issue where a downloaded PO file smaller than the one already on disk leaving a mix of both files on disk (rather than the existing file on disk being truncated).

Change 3023579 on 2016/06/22 by Jamie.Dale

	Expanded the Blueprint FormatText node to support numeric and gender types

	These are needed to correctly support the new plural and gender forms that can be used in format strings, as these require actual numeric/enum data to be passed into the format arguments, rather than pre-formatted text.

	Major changes:
	 - The FormatText node for Blueprints now uses PC_Wildcard as its pin type for format arguments instead of PC_Text.
	   - Any existing literal text argument data in the pin is hoisted out into a "Make Literal Text" node which is then connected to the pin.
	 - FFormatArgumentData has been updated to be variant on the data needed by Blueprints. It's now a less comprehensive and non-unioned version of FFormatArgumentValue.
	 - The version of FText::Format taking FFormatArgumentData has been deprecated as its usage was internal to Blueprints and we have much better ways to format text in C++. Any existing C++ using that (of which we have none internally) should be updated to use FFormatArgumentValue instead.

Change 3023915 on 2016/06/22 by Jamie.Dale

	Cleaned up some of the UK2Node_FormatText expansion code to avoid unchecked literals

Change 3024813 on 2016/06/23 by Jamie.Dale

	Renamed FContext to FManifestContext to better reflect its purpose and avoid naming conflicts with other code

Change 3024852 on 2016/06/23 by Nick.Darnell

	FBX - Updating automation tests with the changes to chunk  and chunk index removal and them being merged with sections.

Change 3024994 on 2016/06/23 by Nick.Darnell

	UMG - Removing the DesignerWidgetTree, instead going to directly inject the widget tree into the partially constructed UUserWidget during design time, when refreshing the preview.  This avoids doing something a little dangerous and sketchy like updating the living class instance with a new designer tree that all new instances will begin biasing using.  Also making the preview widget explictly non-transactional as there's no reason to track changes to the preview, all the changes that need to be tracked should be on the template widget.  This should fix the crash in the widget designer when you Undo just after compiling the widget blueprint.

	#jira UE-31155

Change 3025194 on 2016/06/23 by Alex.Delesky

	#jira UE-31155 - Compilation error fix.

Change 3025255 on 2016/06/23 by Alex.Delesky

	#jira UE-21900 - Redoing changes done in CL 2994431 since it got stomped. Reinstates the grabber handles and ensures consistent scaling on the scale widget in orthographic viewports.

Change 3025460 on 2016/06/23 by Cody.Albert

	Fixed issue where widget components would misalign when aspect ratio was being constrained

	#jira UE-29637

Change 3025508 on 2016/06/23 by Cody.Albert

	Adding support for adjusting animation playback speed

	#jira UE-32222

Change 3026444 on 2016/06/24 by Jamie.Dale

	Fixed crash caused by bad access of shared this when closing an active IME context

	This was only needed to get the owner window, which we now cache when the IME context is created.

	#jira UE-32240

Change 3028358 on 2016/06/27 by Jamie.Dale

	Fixed IMEs not working due to no window being cached

	#jira UE-32240

Change 3028464 on 2016/06/27 by Alex.Delesky

	#jira UE-31873 - A single "Files need check-out" notification will now be shown instead of multiple notifications if multiple files need to be checked out, and updated as more files need to be checked out.

Change 3028524 on 2016/06/27 by Chris.Wood

	Switched off uploads to legacy Crash Report Receiver.
	[UE-31252] - Switch off deprecated CRR upload in Crash Report Client

	Also added CRC version string, added to crash context from CRC config

Change 3028840 on 2016/06/27 by Alexis.Matte

	#jira UE-32306 replace material bad name character by an underscore when doing a scen import.

Change 3028924 on 2016/06/27 by Alexis.Matte

	#jira UE-32125 Make sure we can add a plan when a fbx file is drop in the fbx automation test folder

Change 3029044 on 2016/06/27 by Alex.Delesky

	#jira UE-31944  - Updating SVN binaries for Mac to 1.9.4

Change 3029276 on 2016/06/27 by Alex.Delesky

	#jira UE-31531 - A user can now select the base class when creating a new physical material.

	PR #2462: added dialog, which enables picking base class for asset (Contributed by iniside)

Change 3029459 on 2016/06/27 by Alexis.Matte

	#jira UE-32354 Make sure we set all blueprint component to the correct mobility set in the scene import options.

Change 3030577 on 2016/06/28 by Nick.Darnell

	PR #2531: Git plugin: fix wrong status icons (Contributed by SRombauts)

Change 3030587 on 2016/06/28 by Alexis.Matte

	#jira UE-32251 add missing body setup variables when restoring the body setup value after a re-import of a staticmesh

Change 3030946 on 2016/06/28 by Alexis.Matte

	#jira UE-32515 prevent crash when re-import staticmesh userdata

Change 3031115 on 2016/06/28 by Jamie.Dale

	The DDC builder now gives the shader compile worker a chance to catch up when it pauses to run a GC pass

	This prevents an issue where the shader backlog could cause massive amounts of memory to be consumed.

Change 3031146 on 2016/06/28 by Jamie.Dale

	Fixed errors when building with USE_STABLE_LOCALIZATION_KEYS enabled caused by UEdGraphPin no longer being a UObject

Change 3031357 on 2016/06/28 by Nick.Darnell

	PR #2431: Add plugin support to the editor class wizard. (Contributed by Koderz)

Change 3031515 on 2016/06/28 by Jamie.Dale

	Fixed game targets not being able to depend on other game targets

Change 3031520 on 2016/06/28 by Jamie.Dale

	Localization compilation now specifies an ArchiveName to use

Change 3031671 on 2016/06/28 by Nick.Darnell

	Editor - Checking to see if a weak variable is valid before using it in the editor build window.

Change 3032013 on 2016/06/28 by Matt.Kuhlenschmidt

	Added ability to invert the Y axis in editor viewports for mouse look and orbit

Change 3032495 on 2016/06/29 by Jamie.Dale

	Fixed some measuring issues with bi-directional text within a right-flowed document

	There were three main issues:
	  1) Measuring blocks was measuring visual glyphs rather than logical glyphs (this caused bad measures/wrapping and overlapped rendering).
	  2) The text layout would consider blocks visually contiguous without making sure the block flow direction matched the line flow direction (this caused bad highlights).
	  3) The text layout would fail to compensate for a non-contiguous block that had a flow direction different to the line flow direction (it was hard-coded for RTL in LTR, so broke for LTR in RTL - this caused bad highlights).

	#jira UE-32526

Change 3032533 on 2016/06/29 by Nick.Darnell

	UMG - The widget component now extends from UMeshComponent, it can have a custom material applied to it, in order to achieve cooler effects - like ignoring the depth buffer.  Users who use this option are encouraged to start with the widget components default material and work from there.  The widget component now offers the ability to automatically size the render target to be the desired size of the widget - note that this can go real bad if your widget wants to be really big.

Change 3032855 on 2016/06/29 by Alexis.Matte

	#jira UE-32508 Remove the cachewindow from the FTextInputMethodContext constructor since it will be cache only when the IME is activated

	#test please re-test also UE-32240

Change 3033145 on 2016/06/29 by Alex.Delesky

	#jira UE-32239 - The PropertyEditorModule will no longer cause a crash on editor shutdown if a SDetailsView widget tries to force refresh itself when the Slate application is no longer initialized.

Change 3033147 on 2016/06/29 by Alex.Delesky

	#jira UE-32326 - Clicking on the "Install {compiler}" button when trying to create a new code class or code project will now not crash the engine if it fails to open the installation file for write, nor will it create multiple notifications if the button is pressed repeatedly.

	This also addresses a potential issue with static initialization order when it comes to adding TickableEditorObjects to its corresponding array, since it was wholly possible for a statically initialized TickableEditorObject to initialize itself and add itself to the tickable objects arra before the tickable objects array was initialized, causing that object to not get ticked at runtime and causing a crash when the editor was closed.

Change 3033162 on 2016/06/29 by Alex.Delesky

	#jira UE-31827 - Undo/redo now works in the Material function editor.

Change 3033391 on 2016/06/29 by Matt.Kuhlenschmidt

	Fix post process settings blendable picker not being readable in the details panel

Change 3033498 on 2016/06/29 by Matt.Kuhlenschmidt

	Fixed huge number of redundant calls to CanEditChange and
	DiffersFromDefault that were causing massive performance loss when
	thousands of objects are selected. CanEditChange and DiffersFromDefault
	are now cached each time a property value changes.

	Fixed redundant calls for getting visualizers for each selected
	object.  This is now cached on selection

Change 3033504 on 2016/06/29 by Matt.Kuhlenschmidt

	Fix Mass customization on the body instance not working with undo/redo or reset to default

Change 3034357 on 2016/06/30 by Alex.Delesky

	#jira UE-31184 - Renamed the multiple collision components in the cascade particle system to more accurately reflect what they represent.

Change 3035915 on 2016/07/01 by Richard.TalbotWatkin

	Fix to SListPanel so that those with horizontal arrangement (i.e. from STileView) use the number of desired items instead of the number of actual items in order to calculate the desired size of the geometry.  This fixes the case where an STileView is contained within an SScrollBox.
	#jira UE-32195 - STileView no longer works correctly when placed inside of a SScrollBox

Change 3035951 on 2016/07/01 by Richard.TalbotWatkin

	Fixed issue when importing a brush, so that the brush is always validated (relinked), whether it be a static or dynamic brush. This is because the process of rebuilding a dynamic brush sets the link indices to signify FBspSurf indices from the UModel instead of FPoly indices (the FPoly::iLink member is overloaded in its meaning). Always forcing a relink correctly sets the linked list of coplanars.
	#jira UE-32087 - Crash occurs when creating Static Mesh from Trigger Volume

Change 3036991 on 2016/07/04 by Alexis.Matte

	#jira UETOOL-901 Scene importer now support the rigid mesh animation

Change 3037037 on 2016/07/04 by Jamie.Dale

	Fixed regression in editable text box alignment

	Text was no longer vertically aligned center since SEditableText was converted to use a text layout. This vertical alignment is now handled by the outer SEditableTextBox instead.

Change 3037057 on 2016/07/04 by Richard.TalbotWatkin

	Fixed screenshots when running automation tests so that they are saved locally when a FAutomationWorkerScreenMessage is received.
	#jira UE-29815 - In-game screenshot isn't working under certain circumstances

Change 3037082 on 2016/07/04 by Chris.Wood

	Added detection of asserts and passing assert flag and crash type string to crash reports.
	[UE-30592] - Crash Reporter should determine crash type on client and pass string to server

	Reviewe by Steve with reservations about the static variable for setting asserted state. While not thread-aware, this is probably accurate enough for the purpose of crash reporting, certainly for now. I'm submitting it like this because the work required to add fully thread-aware fix is not necessary at this point.

Change 3037095 on 2016/07/04 by Alexis.Matte

	Fix the bone name when duplicating a socket.

Change 3037453 on 2016/07/05 by Stephan.Jiang

	Adding ability to animate the root wigdet #2
	FHierarchyRoot adds the preview widget instead of CDO to selectedobjects in widgetblueprint
	the properties are then migrated back to the CDO

	#UE 31810

Change 3037487 on 2016/07/05 by Jamie.Dale

	Fixed crash caused by stale BP pointer

	#jira UE-32325

Change 3037488 on 2016/07/05 by Jamie.Dale

	Fixed a crash that could occur when a class and a folder had the same name

Change 3037526 on 2016/07/05 by Jamie.Dale

	Speculative fix for a potential race condition when shutting down the editor while a "launch" was in progress

	The launch-thread could potentially queue up a request after the game-thread had requested it cancel, and cleared out any queued tasks. This change has the game-thread wait for the launch-thread to acknowledge its cancellation before continuing with editor shutdown.

	#jira UE-17688

Change 3037557 on 2016/07/05 by Alex.Delesky

	#jira UE-32424 - Added a safeguard to ensure that renaming a world that was duplicated from another world would not crash the editor if both worlds' lightmaps and shadowmaps were still active in memory, due to the editor attempting to rename identical textures from different packages to the same location.

	The actual fix to this issue was performed in an earlier CL, but this should prevent the editor from crashing if the issue returns.

Change 3037558 on 2016/07/05 by Alex.Delesky

	#jira UE-32285 - Importing assets to the Content Browser via drag and drop operations are no longer permitted while the UI file picker dialog is opened.

Change 3037559 on 2016/07/05 by Alex.Delesky

	#jira UE-32075 - The user can no longer attempt to import non-FBX and non-OBJ files when importing into a level.

Change 3037593 on 2016/07/05 by Stephan.Jiang

	GitHub #2549: Add function for setting the playback rate of UMG animations
	original code shelved in CL 3033449

	#UE-32653

Change 3037605 on 2016/07/05 by Jamie.Dale

	Fixed infinite recursion that could happen when gather loc from an object with a custom callback

	#jira UE-32670

Change 3037649 on 2016/07/05 by Nick.Darnell

	PR #2538: [WidgetBlueprintLibrary] GetAllWidgetsOfClass, Added META ~ DeterminesOutputType, DynamicOutputParam, removes the need for extra cast,   Rama (Contributed by EverNewJoy)

Change 3037652 on 2016/07/05 by Nick.Darnell

	Clean - Removing commented out code.

Change 3037658 on 2016/07/05 by Matt.Kuhlenschmidt

	Fix initial hitch when dragging around in a color picker opened from a material expression node.

Change 3037679 on 2016/07/05 by Nick.Darnell

	Engine - Texture2D no longer forces the MIP level to 0 for TextureGroup_UI textures.

Change 3037757 on 2016/07/05 by Nick.Darnell

	PR #2447: WebBrowser widget: Added GetUrl method and OnUrlChanged property (Contributed by nelbok)

Change 3037840 on 2016/07/05 by Nick.Darnell

	UMG - Now allowing for spirtes to be used just like textures and materials on UMG widgets anywhere that takes a brush, can now also take a Sprite.  There is now a ISlateTextureAtlasInterface interface that any UObject may now implement if it wishes to integrate with UMG to provide its atlas data in a form Slate can understand.

Change 3037924 on 2016/07/05 by Jamie.Dale

	Re-ordered variable initialization to appease a warning on Mac

Change 3037981 on 2016/07/05 by Jamie.Dale

	Fixed crash where FColorStructCustomization could call SetPerObjectValues with an empty array

	#jira UE-32639

Change 3038075 on 2016/07/05 by Cody.Albert

	Removed misleading error message in HandleCECommand

	#jira 28007

Change 3038231 on 2016/07/05 by Alexis.Matte

	#jira UE-30694 We set the section collision only if there is an imported collision or a generated one. If there is no collision we do not set the collision flag.

Change 3038275 on 2016/07/05 by Alex.Delesky

	#jira UE-32689 - "Game Gets Mouse Control" will now override the Capture Mouse on Launch setting when launching the game from within a Level Viewport (i.e., within the editor window itself).

Change 3039310 on 2016/07/06 by Trung.Le

	#jira UE-25005 Change PIE Key Bindings
	- Removed Shift+F1 and Esc from BaseInput.ini
	- Created new customizable key binding for
	   + Shift+F1: same functionality.
	   + Esc: now will pause the play session and bring back the mouse cursor. Clicking the mouse on the viewport should resume play session.
	   + Shift+Esc: now will stop the play session

Change 3039458 on 2016/07/06 by Trung.Le

	Removed unused code in StaticMeshLight.cpp

Change 3039827 on 2016/07/06 by Frank.Fella

	FString - Fix divide overload path concatenation for empty paths since there are several places in the engine that expect using that doing { path / "" } will append a / onto path.

	#jira UE-31959

Change 3041094 on 2016/07/07 by Nick.Darnell

	WebBrowser - Fixing an issue where the web browser widget plugin wasn't loading soon enough to be properly loaded in time if it was referenced by game nessesary content thatloads in the Default stage of the pipeline, so moving it to PreDefault.

	#jira UE-32694

Change 3041110 on 2016/07/07 by Matt.Kuhlenschmidt

	Fix visualizers on blueprint actors not working when the internal components are trashed and replaced

Change 3041302 on 2016/07/07 by Chris.Wood

	Increased buffer size for crash uploads.
	[UE-32151] - High number of crashes read from S3 by Crash Report Process are failing to unpack

	Trivial change in dev branch - no code review

Change 3041969 on 2016/07/07 by Nick.Darnell

	UMG - Input Key Selector now no longer adds a bogus Selected Key property to the details panel.

Change 3041971 on 2016/07/07 by Nick.Darnell

	UMG - Not using separate settings for the Engine/Developer folders visible in the UMG palette, now just using the same setting that powers the content browser.

Change 3042612 on 2016/07/08 by Trung.Le

	#jira UE-25005, set Shift+Esc defaults to toggle play/pause and Esc remains defaults to quit

Change 3042732 on 2016/07/08 by mitchell.wilson

	Adding test content for UMG Paper 2d Atlas test

Change 3042780 on 2016/07/08 by mitchell.wilson

	Updating UMG_Paper2d test content for UMG Paper 2d Atlas testing

Change 3042870 on 2016/07/08 by mitchell.wilson

	Renaming UMG_Paper2d to UMG_Sprite

Change 3044104 on 2016/07/10 by Nick.Darnell

	PR #2104: Improved widget input support (Contributed by projectgheist)

Change 3044107 on 2016/07/10 by Nick.Darnell

	Slate - Fixing the slider handle rendering to no longer run off the edge and get cut off.

	#jira UE-25750

Change 3044377 on 2016/07/11 by Chris.Wood

	Add Slack messaging module - Epic Friday

Change 3044536 on 2016/07/11 by Alex.Delesky

	#jira UE-7293 - Mouse locking to viewport is now determined off an enum instead of a boolean, to allow for more flexibility when upgrading with new features.

Change 3044922 on 2016/07/11 by Nick.Darnell

	Slate/UMG - Working on better support for VR interactions with Slate widgets.  This change fixes a lot of issues with the way interaction works with slate widgets rendered in the virtual world.  Breakages, direct mouse interaction with widgets in the virtual world is no longer supported.  Those kinds of interactions must all use the WidgetInteractionComponent now, which by default works similar to the lasers in VREditor for interaction.  However - you can disable automatic hittesting, and instead provide a custom hitresult instead if you want to use screen tracing and act like you're just a mouse cursor that is supported.  Menu anchors now properly function inside of widgets in the virtual world.  Performance improvements - the viewport no longer arranges all 3d widgets every frame.  Additionally, Widget Components now support a whole bunch of methods for reducing how often they redraw to help control performance, they also support manual refresh.  This automatically works in tandem with the widget interaction component to request refresh whenever the widget interaction component is interacting with the widget, thus giving you a simple way to only redraw widgets that the user is hovering on top of.  Unrelated - this change also fixes Stop navigation commands not working with Next/Prev navigation - Wrap is still unsupported.

Change 3045157 on 2016/07/11 by Nick.Darnell

	Slate - Always consume the bottom face button of the analog cursor, even if it's a repeat.

Change 3045355 on 2016/07/11 by Matt.Kuhlenschmidt

	Added logging for unreproducible top 10 crash in matinee when a track ends up not being able to add a keyframe

Change 3045358 on 2016/07/11 by Alex.Delesky

	#jira UE-31179 - The editor should now log additional information and hit an assertion if the editor tries to construct FObjectOrAssetData using invalid data. This doesn't stop the crash, but should help get some extra info when it does break.

Change 3045371 on 2016/07/11 by Matt.Kuhlenschmidt

	Enable the widget reflector from the editor console by typing "widgetreflector"

Change 3045387 on 2016/07/11 by Stephan.Jiang

	Stripping off 'b' in the propertyname so that "Is Enabled" is animated properly.

	#UE-31874

Change 3046093 on 2016/07/12 by Nick.Darnell

	UMG - The Slider now exposes the IsFocusable option from Slate.

	#jira UE-32960

Change 3046094 on 2016/07/12 by Alexis.Matte

	#jira UE-32807 scene re-import blueprint hierarchy kept some part of old blueprint component value.

Change 3046104 on 2016/07/12 by Stephan.Jiang

	typo "Syc" causing the "Sync" button doesn't show Slateicon

	#UE-31409

Change 3046142 on 2016/07/12 by Nick.Darnell

	Orion - Upgrading more code to use the new input mode functions and not the deprecated ones.

Change 3046165 on 2016/07/12 by Nick.Darnell

	UMG - Fixing a crash on the widget component if the render target is null when reapplied through widget component data.

	#jira UE-32844

Change 3046255 on 2016/07/12 by Nick.Darnell

	UT - More build warning fixes for the new Input Mode methods.

Change 3046604 on 2016/07/12 by Richard.Hinckley

	Adding a template file and code to support creating a UInterface directly from the New C++ Class wizard.

Change 3047071 on 2016/07/12 by Matt.Kuhlenschmidt

	Better way of summoning the widget reflector from the console

Change 3047842 on 2016/07/13 by Matt.Kuhlenschmidt

	Mark Subdivision surface setting as advanced since it is experimental and definitely for advanced users only

Change 3048754 on 2016/07/13 by Trung.Le

	#jira UE-32159 Automatically regain focus after user gets mouse control during PIE session so we can continue process PIE keybinding commands

Change 3048756 on 2016/07/13 by Trung.Le

	Removed default toggle pause/play keybinding from BaseInput.ini, instead we should use the action defined in DebuggerCommands that is customizable

Change 3048865 on 2016/07/13 by Trung.Le

	#jira UE-32159 SGlobalPlayWorldActions widget shouldn't clear out active widget pointer when it's being handled properly

Change 3048892 on 2016/07/13 by Nick.Darnell

	UMG - Fixing a problem with the interaction component, it now does some basic intelligent ignoring of anything it's attached to - excluding widget components.  So it's easier to attach it to things that might be inside of a say a player collision capsule.  Also removing the 'Max Interaction Distance' from the widget component as that is no longer the arbitor of interaction distance.

	#jira UE-33250

Change 3049096 on 2016/07/13 by Trung.Le

	Wrap SGlobalPlayActions around ViewportWidget instead of making it a child of ViewportWidget. This was causing PIE to stop working when there are other UMG in game.
	#jira UE-33259

Change 3049177 on 2016/07/13 by Stephan.Jiang

	Fixing the "No Animation Selected" tag shows up after switching back from Graph to Designer.

	#UE-33016

Change 3049726 on 2016/07/14 by Stephan.Jiang

	Adding icons for terrain mirror tool

	#UE-20588

Change 3049957 on 2016/07/14 by Nick.Darnell

	Slate - Fixing a small bug in the virtual user function - was preventing getting the same virtual user multiple times if it had already been created.  Adding an option to the widget component to control the focusabilty of the underlying slate window that's created to host the widget content.  Adding an option to the widget interaction component to control if it should be simulating mouse input at all - use this to effectively disable hit testing, and changing hover states and the like.

Change 3049994 on 2016/07/14 by Stephan.Jiang

	Set viewed animtion to current animtion after switching from Graph to Designer
	(This is for "No Animation Selected" showing up when switching)

	#UE-33016

Change 3050194 on 2016/07/14 by Stephan.Jiang

	Added ability to replace the widget the track is currently bound to
	Also includes changes in WidgetBlueprintEditor to send delegate to AnimationtabSummoner when switching from Graph to Designer

	#UE-31809

[CL 3050870 by Matt Kuhlenschmidt in Main branch]
2016-07-14 19:07:16 -04:00