build: repair net40 Tray build and test-host binding redirects
Environment drift since ~7/26 broke a pristine checkout: (1) the SDK's AutoGenerateBindingRedirects made RAR drop RioJoy.Core.dll for the net40 Tray exe (Bcl facade 1.5.11.0 vs 2.6.8.0 mismatch) - disabled for net40 with a hand-authored app.net40.config carrying the 2.6.8.0 redirects, which XP's CLR 4.0 does not unify on its own; (2) 25 serial-link tests failed on System.Runtime.CompilerServices.Unsafe load - Channels 8.0's net462 binary references Unsafe 6.0.0.0 without declaring the dependency; pinned the package and added the redirect app.config the earlier good builds had auto-generated. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
@@ -15,6 +15,12 @@
|
||||
<PackageReference Include="xunit" Version="2.9.2" />
|
||||
<PackageReference Include="xunit.runner.visualstudio" Version="2.8.2" />
|
||||
<PackageReference Include="System.Threading.Channels" Version="8.0.0" />
|
||||
<!-- Channels 8.0's net462 binary references Unsafe 6.0.0.0 but doesn't
|
||||
declare it, so the graph would otherwise resolve 4.5.3 (assembly
|
||||
4.0.4.1) and the test host dies with FileLoadException. Pin the
|
||||
assembly Channels was built against; app.config redirects the older
|
||||
requests (System.Memory / Tasks.Extensions) up to it. -->
|
||||
<PackageReference Include="System.Runtime.CompilerServices.Unsafe" Version="6.0.0" />
|
||||
<PackageReference Include="PolySharp" Version="1.14.1">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<!-- Copied to RioJoy.Core.Tests.dll.config so the VSTest host binds the single
|
||||
deployed System.Runtime.CompilerServices.Unsafe 6.0.0.0 (pinned in the
|
||||
csproj — System.Threading.Channels 8.0's net462 binary requires it) for
|
||||
the older versions System.Memory / System.Threading.Tasks.Extensions
|
||||
request. Static rather than auto-generated so the suite doesn't depend on
|
||||
RAR's redirect suggestions, which vary with the installed SDK/reference
|
||||
assemblies. -->
|
||||
<configuration>
|
||||
<runtime>
|
||||
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
|
||||
<dependentAssembly>
|
||||
<assemblyIdentity name="System.Runtime.CompilerServices.Unsafe" publicKeyToken="b03f5f7f11d50a3a" culture="neutral" />
|
||||
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
|
||||
</dependentAssembly>
|
||||
</assemblyBinding>
|
||||
</runtime>
|
||||
</configuration>
|
||||
Reference in New Issue
Block a user