-
Notifications
You must be signed in to change notification settings - Fork 34
Description
I am not sure this is a bug, but I would like to report it anyway.
We recently upgraded from version 2.0.34.2 to 2.0.40 and experienced a signification degradation in performance in Azure Devops builds. The time needed for the ILRepack task increased from about 4 seconds to more than 7 minutes. Curiously, the performance degradation is only observed in builds on the Azure Devops platform. I do not see it when I build my project locally.
Running in verbose mode, it seems that the build hangs on warnings of unresolved dependency references in the step "Processing module initializers" ("Warning: Could not find <asssembly_name>"). The warnings are also displayed in my local builds, but do not slow down the build. On Azure Devops, the build hangs for several minutes on the first warning. I notice that this step ("Processing module initializers") was not present in builds done with ILRepack version 2.0.34.2.
See below for the configration in ILRepack.targets that I am using.
<?xml version="1.0" encoding="utf-8" ?>
<Project xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
<Target Name="Repack" AfterTargets="Build" Condition="'$(Configuration)' == 'Release'">
<ItemGroup>
<InputAssemblies Include="$(OutputPath)\$(AssemblyName).dll" />
<InputAssemblies Include="$(OutputPath)\library1.dll" />
<InputAssemblies Include="$(OutputPath)\library2.dll" />
<InputAssemblies Include="$(OutputPath)\library3.dll" />
<InputAssemblies Include="$(OutputPath)\library4.dll" />
<InputAssemblies Include="$(OutputPath)\library5.dll" />
<InputAssemblies Include="$(OutputPath)\library6.dll" />
<InputAssemblies Include="$(OutputPath)\library7.dll" />
</ItemGroup>
<ILRepack
Parallel="true"
Internalize="false"
InputAssemblies="@(InputAssemblies)"
LibraryPath="$(OutputPath)"
TargetKind="Dll"
OutputFile="$(OutputPath)\$(AssemblyName).dll"
/>
</Target>
</Project>