sizeof is correctly returning 20 for this case.
#rnx
#rb matt.peters
#rbself Trivial, reported issue on slack
[CL 31177260 by matt peters in ue5-main branch]
API: Change UObject::GetAssetRegistryTags to take a Context object that reports whether the call is coming from SavePackage (and should calculate everything) or load (and should skip expensive tags).
Cook Behavior: AssetDatas are now included in the development AssetRegistry generated by a cook if they were included in a referenced package. Tags are updated during save rather than during load. For now, AssetDatas are added for non-referenced packages in non-dlc cooks, but this addition will eventually be removed, and their tags are stale (have the values saved from the last editor save of the package).
[RN] Miinor, Cooking
#rb Francis.Hurteau, JeanFrancois.Dube
[CL 30168192 by matt peters in ue5-main branch]
Cleanup Log capture function.
Move all tests under Engine.AssetRegistry into System.AssetRegistry
#jira UE-199002
#rnx
#rb Rob.Huyett
[CL 29186092 by jerome delattre in ue5-main branch]
* Move the FArchiveCookContext enums into a namespace so they can be included from other types that need them without using FArchiveCookContext.
* Make construction of CookContext a TOptional to avoid constructing it when not cooking; the new constructor will be more difficult to call.
* Technically enforce the lifetime of ArchiveCookContext during SaveCookedPackage by making it a TOptional.
* Add a default constructor for FArchiveTag
* Remove a deprecated UObject virtual function that will be changing again in the upcoming change.
* Move AssetRegistry's bUpdateDiskCacheAfterLoad into a variable outside the critical section to make it cheaper to read; it is immutable after AssetRegistry is constructed.
* Remove use of the soft-deprecated FAssetData constructor that takes a bool rather than ECreationFlags.
* Reduce some duplication in FAssetRegistryState::FilterTags
* FAssetBundleData: use the native exporter in the case when defaults are provided but are pointing to the object itself; this combination of parameters means that no defaults are available and the entire struct should be exported. Use of the native exporter is necessary for correctness; the generic exporter incorrectly writes both the deprecated and the new variables.
ExportToText is used with defaults == object when called from GetAssetRegistryTagFromProperty called from GetAssetRegistryTags in obj.cpp.
* UObjectRedirector::GetAssetRegistryTags by contract should call the Super's version of the function.
* UBlueprintGeneratedClass::GetAssetRegistryTags does not need to append actor tags when saving in the cookcommandlet since GetAssetRegistryTags is not called when saving cooked packages and no other saves are executed in the cook commandlet.
* NiagaraEditorSettings GetAssetRegistryTags: sort the ClassPaths in the ClassUsageList to remove indeterminism.
* Whitespace fixes
#rnx
#rb Zousar.Shaker, Dan.Thompson, Robert.Millar, Frank.Fella
[CL 28209382 by matt peters in ue5-main branch]
Implement click callback to handle assets or loaded/unloaded actors.
Use asset data token in content validation logs.
Get full asset data (including actor metadata) for actor validation context menu entry.
#rb JeanFrancois.Dube
[CL 28042921 by robert millar in ue5-main branch]
The first time this occurred the callstack was during receive replication on the CookDirector from AssetDatas created on the CookWorker.
#rnx
#rb Zousar.Shaker
#preflight 644ff0ff401d328ad9b9f325
[CL 25289056 by matt peters in ue5-main branch]
This was not possible on C++14 and is possible now due to guaranteed copy elision in C++17.
This will break backward compatibility when WriteToString was used as a type or in a context where it would be copied.
#preflight 640a0460af3fc3529234c216
#rb Matt.Peters
[CL 24583299 by devin doucette in ue5-main branch]
*) Store the declared dependencies for each generated package in the AssetRegistry. Use these dependencies to detect when a generated package is invalidated.
*) Store a a dependency from the generator package to each generated package in the AssetRegistry. Use thise dependency to trigger the Generator to reexecute generation when a generated file is invalidated.
*) Update FAssetRegistryGenerator::ComputePackageDifferences to not mark generated packages as removed due to being missing from disk. Use the package flags to identify them as generated and not mark them as removed.
*) Improve some generated packages and iterative cook output messages to provide more feedback and more accurate feedback.
*) Fix queuing of generated packages to not assume the packages have not already been cooked.
*) Update UpdateAssetRegistryData to find AssetDatas for generated packages, and to store the new dependencies we create for them.
*) Fix PopulateCookedPackages to find generated packagedatas that don't exist on disk, and to pass the list of generated packages to the generator packagedata for removal if the generated packages have changed.
#rnx
#preflight 63eac958cb4948d2b379a96b
[CL 24202351 by matt peters in ue5-main branch]