Browse Source

Fix the Windows publish bundles for the Avalonia project layout

publish.ps1 is a WPF-era script that was never updated for the current
tree, and the "Publish x64/arm64" CI step aborted on two stale things:

- It published ./ILSpy.BamlDecompiler/ILSpy.BamlDecompiler.csproj, which
  does not exist here (the BAML library is ICSharpCode.BamlDecompiler and
  already ships transitively via the ILSpy dependency graph) -> MSB1009.

- It publishes the ReadyToRun plugin RID-specifically without restoring
  again, but the plugin declared no RuntimeIdentifiers, so the RID-less
  solution restore produced no win-x64/win-arm64 assets -> NETSDK1047.

Drop the dead BamlDecompiler lines and give the plugin RuntimeIdentifiers
mirroring ILSpy.csproj, so it restores and publishes for every platform
the host supports (the plugin is pure managed and RID-agnostic).

Assisted-by: Claude:claude-opus-4-8:Claude Code
pull/3755/head
Siegfried Pammer 4 weeks ago
parent
commit
7effa3084f
  1. 5
      ILSpy.ReadyToRun/ILSpy.ReadyToRun.csproj
  2. 5
      publish.ps1

5
ILSpy.ReadyToRun/ILSpy.ReadyToRun.csproj

@ -4,6 +4,11 @@ @@ -4,6 +4,11 @@
<PropertyGroup>
<AssemblyName>ILSpy.ReadyToRun.Plugin</AssemblyName>
<TargetFramework>net10.0</TargetFramework>
<!-- This plugin is published RID-specifically alongside the app (e.g. publish.ps1 does so
without restoring again), so the per-RID targets must already be in the restored assets.
Mirror ILSpy.csproj's RuntimeIdentifiers so the plugin can ship on every platform the host
supports, not just the Windows ones publish.ps1 currently exercises. -->
<RuntimeIdentifiers>win-x64;win-arm64;linux-x64;osx-arm64</RuntimeIdentifiers>
<GenerateAssemblyInfo>False</GenerateAssemblyInfo>
<NeutralResourcesLanguage>en-US</NeutralResourcesLanguage>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>

5
publish.ps1

@ -4,12 +4,9 @@ $output_x64_selfcontained = "./ILSpy/bin/Release/net10.0-windows/win-x64/publish @@ -4,12 +4,9 @@ $output_x64_selfcontained = "./ILSpy/bin/Release/net10.0-windows/win-x64/publish
dotnet publish ./ILSpy/ILSpy.csproj -c Release --no-restore --no-self-contained -r win-arm64 -o $output_arm64
dotnet publish ./ILSpy.ReadyToRun/ILSpy.ReadyToRun.csproj -c Release --no-restore --no-self-contained -r win-arm64 -o $output_arm64
dotnet publish ./ILSpy.BamlDecompiler/ILSpy.BamlDecompiler.csproj -c Release --no-restore --no-self-contained -r win-arm64 -o $output_arm64
dotnet publish ./ILSpy/ILSpy.csproj -c Release --no-restore --no-self-contained -r win-x64 -o $output_x64
dotnet publish ./ILSpy.ReadyToRun/ILSpy.ReadyToRun.csproj -c Release --no-restore --no-self-contained -r win-x64 -o $output_x64
dotnet publish ./ILSpy.BamlDecompiler/ILSpy.BamlDecompiler.csproj -c Release --no-restore --no-self-contained -r win-x64 -o $output_x64
dotnet publish ./ILSpy/ILSpy.csproj -c Release --no-restore --self-contained -r win-x64 -o $output_x64_selfcontained
dotnet publish ./ILSpy.ReadyToRun/ILSpy.ReadyToRun.csproj -c Release --no-restore --self-contained -r win-x64 -o $output_x64_selfcontained
dotnet publish ./ILSpy.BamlDecompiler/ILSpy.BamlDecompiler.csproj -c Release --no-restore --self-contained -r win-x64 -o $output_x64_selfcontained
dotnet publish ./ILSpy.ReadyToRun/ILSpy.ReadyToRun.csproj -c Release --no-restore --self-contained -r win-x64 -o $output_x64_selfcontained
Loading…
Cancel
Save