diff --git a/azure-pipelines.yml b/azure-pipelines.yml index c3a113fd..46dee667 100644 --- a/azure-pipelines.yml +++ b/azure-pipelines.yml @@ -58,10 +58,10 @@ stages: displayName: Configure git commit author for testing - task: UseDotNet@2 - displayName: Install .NET Core SDK 5.0.100 + displayName: Install .NET Core SDK 5.0.202 inputs: packageType: sdk - version: 5.0.100 + version: 5.0.202 - task: UseDotNet@2 displayName: Install .NET Core 3.1 @@ -306,10 +306,10 @@ stages: packageType: sdk version: 3.1.100 - task: UseDotNet@2 - displayName: Install .NET Core SDK 5.0.100 + displayName: Install .NET Core SDK 5.0.202 inputs: packageType: sdk - version: 5.0.100 + version: 5.0.202 - script: dotnet --info displayName: Show dotnet SDK info - bash: | diff --git a/global.json b/global.json index ee8f712f..66a8a8b2 100644 --- a/global.json +++ b/global.json @@ -1,5 +1,5 @@ { "sdk": { - "version": "5.0.100" + "version": "5.0.202" } } diff --git a/src/Directory.Build.props b/src/Directory.Build.props index 4921af4e..0757e8d2 100644 --- a/src/Directory.Build.props +++ b/src/Directory.Build.props @@ -4,7 +4,7 @@ $(MSBuildThisFileDirectory)..\obj\$(MSBuildProjectName)\ $(MSBuildThisFileDirectory)..\bin\$(MSBuildProjectName)\$(Configuration)\ $(MSBuildThisFileDirectory)..\wiki\api - 8.0 + 9.0 true $(MSBuildThisFileDirectory)strongname.snk diff --git a/src/Nerdbank.GitVersioning.Tasks/AssemblyLoader.cs b/src/Nerdbank.GitVersioning.Tasks/AssemblyLoader.cs new file mode 100644 index 00000000..55da8b8b --- /dev/null +++ b/src/Nerdbank.GitVersioning.Tasks/AssemblyLoader.cs @@ -0,0 +1,48 @@ +#if NETFRAMEWORK + +using System; +using System.IO; +using System.Reflection; +using System.Runtime.CompilerServices; + +namespace System.Runtime.CompilerServices +{ + [AttributeUsage(AttributeTargets.Method, AllowMultiple = false)] + public sealed class ModuleInitializerAttribute : Attribute { } +} + +namespace Nerdbank.GitVersioning.Tasks +{ + internal static class AssemblyLoader + { + [ModuleInitializer] + internal static void LoaderInitializer() + { + AppDomain.CurrentDomain.AssemblyResolve += CurrentDomain_AssemblyResolve; + } + + private static Assembly CurrentDomain_AssemblyResolve(object sender, ResolveEventArgs args) + { + try + { + var required = new AssemblyName(args.Name); + string path = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), required.Name + ".dll"); + if (File.Exists(path)) + { + AssemblyName actual = AssemblyName.GetAssemblyName(path); + if (actual.Version >= required.Version) + { + return Assembly.LoadFile(path); + } + } + } + catch + { + } + + return null; + } + } +} + +#endif diff --git a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec index b260a210..30e035fc 100644 --- a/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec +++ b/src/Nerdbank.GitVersioning.Tasks/Nerdbank.GitVersioning.nuspec @@ -23,10 +23,13 @@ IMPORTANT: The 3.x release may produce a different version height than prior maj + + + + + - -