aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--VNLib.Plugins.Extensions.Loading/AssemblyLoader.cs8
-rw-r--r--VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs2
-rw-r--r--VNLib.Plugins.Extensions.VNCache/VNCacheExtensions.cs3
3 files changed, 5 insertions, 8 deletions
diff --git a/VNLib.Plugins.Extensions.Loading/AssemblyLoader.cs b/VNLib.Plugins.Extensions.Loading/AssemblyLoader.cs
index a53bb0a..5baf123 100644
--- a/VNLib.Plugins.Extensions.Loading/AssemblyLoader.cs
+++ b/VNLib.Plugins.Extensions.Loading/AssemblyLoader.cs
@@ -134,11 +134,11 @@ namespace VNLib.Plugins.Extensions.Loading
typeof(PluginBase),
};
- //Add all types that have already been loaded
- shared.AddRange(currentCtx.Assemblies.SelectMany(s => s.GetExportedTypes()));
+ //Share all VNLib internal libraries
+ shared.AddRange(currentCtx.Assemblies.Where(static s => s.FullName.Contains("VNLib", StringComparison.OrdinalIgnoreCase)).SelectMany(static s => s.GetExportedTypes()));
PluginLoader loader = PluginLoader.CreateFromAssemblyFile(assemblyName,
- currentCtx.IsCollectible,
+ currentCtx.IsCollectible,
shared.ToArray(),
conf =>
{
@@ -149,7 +149,7 @@ namespace VNLib.Plugins.Extensions.Loading
* a "child" collection of assemblies
*/
conf.DefaultContext = currentCtx;
-
+
conf.PreferSharedTypes = true;
//Share utils asm
diff --git a/VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs b/VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs
index 7e86900..c23f5e2 100644
--- a/VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs
+++ b/VNLib.Plugins.Extensions.Loading/LoadingExtensions.cs
@@ -178,7 +178,7 @@ namespace VNLib.Plugins.Extensions.Loading
_ = pluginsBaseDir ?? throw new ArgumentNullException("path", "No plugin path is defined for the current host configuration, this is likely a bug");
//Get the first file that matches the search file
- string? asmFile = Directory.EnumerateFiles(pluginsBaseDir, assemblyName, dirSearchOption).FirstOrDefault();
+ string? asmFile = Directory.EnumerateFiles(pluginsBaseDir, assemblyName, dirSearchOption).FirstOrDefault();
_ = asmFile ?? throw new FileNotFoundException($"Failed to load custom assembly {assemblyName} from plugin directory");
//Load the assembly
diff --git a/VNLib.Plugins.Extensions.VNCache/VNCacheExtensions.cs b/VNLib.Plugins.Extensions.VNCache/VNCacheExtensions.cs
index 98898ef..ec342ba 100644
--- a/VNLib.Plugins.Extensions.VNCache/VNCacheExtensions.cs
+++ b/VNLib.Plugins.Extensions.VNCache/VNCacheExtensions.cs
@@ -37,7 +37,6 @@ namespace VNLib.Plugins.Extensions.VNCache
/// </summary>
public static class VNCacheExtensions
{
-
/// <summary>
/// Loads the shared cache provider for the current plugin
/// </summary>
@@ -54,8 +53,6 @@ namespace VNLib.Plugins.Extensions.VNCache
private static IGlobalCacheProvider LoadCacheClient(PluginBase pbase)
{
- //pbase.Log.Verbose("Loading global cache provider for {pc}, with {hc}", pbase.GetHashCode(), LoadingExtensions.HashCode);
-
//Get config for client
IReadOnlyDictionary<string, JsonElement> config = pbase.GetConfigForType<VnCacheClient>();