- Add PostGC callback to rebuild list (make sure tracker stops tracking GCed packages)
- Tracker rebuild list delayed while in PIE
#jira UE-186475
#rb richard.malo
#preflight 646ca4601417daba1e3e1302
#rnx
[CL 25581294 by patrick enfedaque in ue5-main branch]
Fixed issue that prevented deleted objects from being restored on Revert All
As a collateral, fixed issue that caused not saving deleted files during Delete workflow to result in errors after sync
As a collateral, fixed issue that caused added and saved files to disappear after Sync Latest
#rb wouter.burgers, stuart.hill
[FYI] brooke.hubert, manuel.lang
#preflight 63ed15e5c9692d7c04ea4188
[CL 24251962 by marco anastasi in ue5-main branch]
Currently, if Skein is enabled but unavailable (for example: the user is disconnected from the internet), any action performed by the user will be Auto-Undo'd because the UnsavedAssetsAutoCheckout instance will trigger FCheckOut operations that will all fail.
This can be fixed in the Skein code as well but it probably makes sense to detect this on the UnsavedAssetsAutoCheckout level already.
#preflight none
[CL 24118960 by wouter burgers in ue5-main branch]
During world destruction, which is triggered in UEFN through 'Close Project' some assets are being dirtied by the world destruction code (see: UEditorEngine::NewMap), which triggers an unintended FCheckOut operation. As a result, after loading the project, you'll have a number of files checked out that you're unaware of.
This changelist is very similar in intent/behavior to #23794793 which covered world recreation as opposed to world destruction.
#preflight none
[CL 24100387 by wouter burgers in ue5-main branch]
The batching of files into a single FCheckOut operation in #23509995 introduced a subtle bug if a user action resulted in two separate transactions within a single tick. An example of this is adding a component to an actor, which results in 'Add Component' and 'Clicking on Component (tree view)' transactions. Because the PreUnsavedAssetAutoCheckout notification got postponed to the Tick() because of the batching, only the 'Clicking on Component (tree view)' transaction ended up being undone. This fix restores the timing of the PreUnsavedAssetAutoCheckout to its original location and adds a PostUnsavedAssetAutoCheckoutCancel delegate which will be called for assets that do not end up being part of the CheckOutOperation (because they do not exist on disk, or are no longer dirty).
#preflight none
[CL 24066981 by wouter burgers in ue5-main branch]
During world recreation, which is triggered by REVERT ALL and SYNC ALL, some assets are temporarily dirty'd by the reload world code because it destroys the old world instance and recreates a new world instance (see: UEditorEngine::NewMap). By the time this code block finishes, the assets are no longer dirty but the events will have been broadcasted by the UnsavedAssetsTracker, resulting in UnsavedAssetsAutoCheckout checking out assets that aren't dirty (anymore).
[REVIEW]
#preflight none
[CL 23797456 by wouter burgers in ue5-main branch]
If the prefab consisted of 6000 files, then the UnsavedAssetsAutoCheckout would schedule 6000 FCheckOut operations, so it batches everything together for a single Tick.
It also scheduled the operation, regardless of whether the file is already saved to disk or not (which in case of dragging a prefab into the scene is not the case), so it checks for file existance now too.
Ideally, we would not batch per tick, but per 'user action'. However I'm not sure if we can actually use TransactionFinalized for that?
#preflight 63988b1243330e63e57cec7a
[CL 23514312 by wouter burgers in ue5-main branch]
- Fixed cases when working on an /Temp map package, typically an 'Untitled' map.
- Fixed cases when adding/deleting an actor from the map.
#jira UE-169302 - The Unsaved Assets Tracker counter get out of sync when working on a /Temp OFPA map
#rb Brooke.Hubert
#preflight 636bf8ae843e6ac7942d6dc0
[CL 23071815 by patrick laflamme in ue5-main branch]
Add a filter and column to show Unsaved Assets.
Add a filter and modify the source control column to show uncontrolled assets
#jira UE-168231
#rb patrick.laflamme
#preflight 6361417a397c7af8966cec38
[CL 22890180 by aditya ravichandran in ue5-main branch]
#jira UE-166080 - Large frame rate hit when recording a CineCameraActor
#rb Patrick.Enfedaque
#preflight 63403ee9587d6afac85a7b4d
[CL 22406976 by patrick laflamme in ue5-main branch]