226 Commits

Author SHA1 Message Date
jason walter
08d2737b2f Only support UE_ADDITIONAL_PLUGIN_PATHS environment variable in editor builds.
#jira UE-189132
#rb Joe.Pribele

[CL 26126486 by jason walter in 5.3 branch]
2023-06-20 12:58:51 -04:00
will brown
60dfe2d53e Added a new DisallowedPlugins property to the PluginDescriptor that restricts which plugins can be used by this plugin.
[REVIEW] 25996005
[FYI] Eric.Carter

[CL 26054459 by will brown in 5.3 branch]
2023-06-16 11:45:34 -04:00
jared cotton
8134340e1b Correcting typo in PluginManager.cpp causing static analysis warning's as error
[FYI] will.brown

[CL 25983550 by jared cotton in ue5-main branch]
2023-06-14 12:44:43 -04:00
joe pribele
d2b78c257c Undo //Fortnite/Main/... changelist 25858318
[CL 25862359 by joe pribele in ue5-main branch]
2023-06-07 19:42:46 -04:00
will brown
7369241869 Fixing static analysis warning
#rnx

[CL 25860928 by will brown in ue5-main branch]
2023-06-07 18:32:11 -04:00
joe pribele
8543547111 moved leak detection and Garbage collection to Plugin Manager
Before unmounting the plugin path, GC is ran, leaked detection for any references objects under the plugin path

#rb Justin.Marcus, Markus.Breyer
https://p4-swarm.epicgames.net/reviews/25611054

[CL 25858446 by joe pribele in ue5-main branch]
2023-06-07 17:09:53 -04:00
kirill zorin
b6ee3a6c64 Fix UE_LOG callsites that have format string-related UB
#rb trivial
#preflight 647107780a6634dbb236a0a6

[CL 25651638 by kirill zorin in ue5-main branch]
2023-05-26 15:52:39 -04:00
will brown
ba92fb9214 Fixing conflicting loctext. Issue 306621
#rnx

[CL 25549085 by will brown in ue5-main branch]
2023-05-19 14:43:32 -04:00
will brown
95217d4836 Plugin Sealed load time validation - Prompt the user to disable the plugin or close the application if a plugin is found to have a dependency on a sealed plugin
#rb Eric.Knapik
[REVIEW] 25513696

[CL 25531741 by will brown in ue5-main branch]
2023-05-18 15:30:26 -04:00
Josh Adams
033a0261f8 - Allow for platform plugin extensions to have config files (PlatformMyPlugin.ini)
- Added -dumpiniloads commandline option to show what ini files are looked for, and what are found
#rb bryan.sefcik
#preflight 645d5ca95b775f11fb7060c4

[CL 25436677 by Josh Adams in ue5-main branch]
2023-05-11 17:31:43 -04:00
eric knapik
27ddbbdbde #jira: UE-177511
Make UEFN a modular build
Move UEFNEngine.ini under the UEFN plugin so it correctly is loaded

[REVIEW] [at]Chris.Varnsverry, [at]Henrik.Karlsson, [at]Josh.Adams
#preflight 644aeb72b208f61af8395b09
#preflight 644b517b9c50ddcc0b171ca8

[CL 25309650 by eric knapik in ue5-main branch]
2023-05-02 18:25:37 -04:00
jamie dale
933348f856 Use the FMessageDialog overloads that pass the optional title by-value
#jira
#rb none
#rnx

[CL 25062589 by jamie dale in ue5-main branch]
2023-04-15 19:49:32 -04:00
dave dixon
124480d2c4 Expose finding a plugin via the plugin descritptor. This allows you to find a particular version of a plugin.
#rb mike.beach francis.hurteau joe.pribele
#preflight 640157331d304a5471822b2b

[CL 24495590 by dave dixon in ue5-main branch]
2023-03-03 00:44:20 -05:00
jeff fisher
bb31c00d86 UE-177919 Quick Launch fails when CoTF is enabled due to plugin failing to load modules
-Reverting one part of the change to fix cook on the fly with plugin extensions that add supported target platforms.  The fact that the reference platform list is often empty, and that empty list = all platforms meant this was letting through incorrect plugins in some cases.  Further testing revealed that while the platform extension plugin is rejected here by the previous code it is picked up later on in cook-on-the-fly.
#jira UE-177919
[REVIEW]
#rb christopher.fiala
#preflight 63f7c4f7b879197e73e30c3a

[CL 24389879 by jeff fisher in ue5-main branch]
2023-02-23 16:38:07 -05:00
jeff fisher
eee97ca799 UE-176366 CookOnTheFly does not apply PluginExtensions.
-First problem: we were filtering out plugins based on the FPlugin, rather than the FPluginReference.  This meant that the platform extension platforms were not in the supported list.  Needed to use the FPluginReference in that one spot.
-Second problem: platform extension .uplugin files were not added to the file list for the NetworkFileServer because we find Plugins separately specifically looking for the basedir of each plugin.  In order to find these files I am caching the basedir of each child plugin in the FPlugin when we merge the children into it.  NetworkFileServer can then find these directores, examine them to see if they are not for the targeted platform, and make them available to the client.
#jira UE-176366 UE-137717
#rb Josh.Adams  Robert.Srinivasah
#preflight 63e2ce87cf24c08f2cb0e080

[CL 24074814 by jeff fisher in ue5-main branch]
2023-02-08 12:13:29 -05:00
joe pribele
f5b4ec5fca changed PluginManager logging to Display for when the same plugin is prioritized over another
#jira https://jira.it.epicgames.com/browse/UE-157144
https://p4-swarm.epicgames.net/reviews/23997521

#rb zousar.shaker
#preflight 63dd7e9b1b44ee7cb184c0ed

[CL 23998269 by joe pribele in ue5-main branch]
2023-02-03 16:55:44 -05:00
jamie dale
8cb2b15380 Don't trigger plugin module loading when querying which plugins have localization data
GetLocalizationPathsForEnabledPlugins will now avoid loading any plugin modules (from its previous call to ConfigureEnabledPlugins), and any plugins that become enabled between GetLocalizationPathsForEnabledPlugins calls will explicitly notify that their localization data is available (as already happens for explicitly loaded plugins).

#preflight 63da96dc7a39a18021762488
#rb Robert.Manuszewski, Rex.Hill
#rnx

[CL 23961030 by jamie dale in ue5-main branch]
2023-02-01 19:26:45 -05:00
david hibbitts
bc4371efef Added a function to the PluginManager to get dependencies for a given FPluginReferenceDescriptor
[CL 23922320 by david hibbitts in ue5-main branch]
2023-01-31 00:53:41 -05:00
jamie dale
67270eb0f6 Implemented async loading of localization data, and extended dynamic loading to handle explicitly loaded plugins
This change takes the existing async loading that was added for game localization data in CL# 14661627 and expands it to cover all localization data. Async localization tasks are chained together as dependencies to preserve the existing order of operations (plus going wide doesn't help due to contention on the live-table), and can be waited on at any point (eg, after a loading screen) by calling FTextLocalizationManager::WaitForAsyncTasks (though the engine init flow takes care of waiting for you unless you're loading additional plugin/chunked localization data).

This change takes the existing support for dynamically loading chunked localization data on PAK chunk load, and extends it to support dynamically loading any additional localization data. This is used by the engine to support dynamically loading the localization targets associated with explicitly loaded plugins. These loads are all async, so must be waited on if you need them to block.

Note: BeginInitGameTextLocalization and EndInitGameTextLocalization have been removed as part of this change. You would now just use InitGameTextLocalization (which is async) followed by FTextLocalizationManager::WaitForAsyncTasks.

#preflight 63d28b12a2003ee58af50146
#rb Leon.Huang, Rex.Hill

[CL 23888558 by jamie dale in ue5-main branch]
2023-01-27 14:20:09 -05:00
jason walter
fdf5a3e46d Add support for environment variables for Virtual Production customers using Unreal in film pipelines.
#rb Joe.Pribele
#jira UE-171212
#preflight 6390b9940d013d47ef28e4c8

#ushell-cherrypick of 23432102 by swarm

[CL 23482994 by jason walter in ue5-main branch]
2022-12-12 16:25:34 -05:00
pj kack
8ac046feca Add trace scopes related to GameFeaturePlugins
#rb carlmagnus.nordin
#rnx
#preflight 637f64be18176c67c2f734da

[CL 23259392 by pj kack in ue5-main branch]
2022-11-24 10:07:58 -05:00
mike beach
fedbefa6b4 Found another place where we're conflating enabled with mounted (for explicitly-loaded plugins, enabled does not equate to mounted).
When refershing the plugins list, we start by clearing unused plugin enteries. This change does this for unmounted (explicitly-loaded) plugins too.

#rb tim.smith
#preflight 6371e1ca232e3d12cb4752c5

[CL 23120194 by mike beach in ue5-main branch]
2022-11-14 12:09:25 -05:00
justin marcus
1dab6a3c2f Fix TArray::CheckAddress() error when removing plugin from array. This was caused by the reference to the plugin shared pointer pointing into the array of plugins.
Fix empty plugin list not being removed from the map.
[REVIEW] [at]Francis.Herteau [at]Mike.Beach
#preflight 636ebee20c74adb48b6e567e

[CL 23108139 by justin marcus in ue5-main branch]
2022-11-11 19:34:38 -05:00
justin marcus
c87ebcbdc7 Fix whitespace
#preflight

[CL 23105238 by justin marcus in ue5-main branch]
2022-11-11 16:19:22 -05:00
mike beach
d0fffd98bb CIS fixes.
[CL 22908405 by mike beach in ue5-main branch]
2022-11-02 06:20:54 -04:00