-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathSwarmUI-AudioLab.csproj
More file actions
78 lines (73 loc) · 6.06 KB
/
Copy pathSwarmUI-AudioLab.csproj
File metadata and controls
78 lines (73 loc) · 6.06 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
<Project Sdk="Microsoft.NET.Sdk.Web">
<PropertyGroup>
<AssemblyName>SwarmExtensionSwarmUI-AudioLab</AssemblyName>
<AllowUnsafeBlocks>true</AllowUnsafeBlocks>
<!-- Force the floating HartsyInference 'alpha.*' ref to resolve to the latest published version. -->
<RestoreNoHttpCache>true</RestoreNoHttpCache>
<!-- Engine source toggle (same pattern as SwarmUI-LLMAssistant): false = published NuGet;
true = prebuilt local HartsyInference engine DLLs (local engine dev only — the HartsyRepo
sibling checkout below doesn't exist for end users, so this MUST default false or every
install without a local engine checkout fails with "no reference to HartsyInference"). -->
<UseLocalHartsy Condition="'$(UseLocalHartsy)' == ''">false</UseLocalHartsy>
<HartsyRepo Condition="'$(HartsyRepo)' == ''">$(MSBuildThisFileDirectory)../../../../HartsyInference</HartsyRepo>
</PropertyGroup>
<Import Project="../../SwarmUI.extension.props" />
<!-- After the import (which sets it false): copy the engine's private DLLs into our output so the
per-extension AssemblyLoadContext can resolve them. -->
<PropertyGroup>
<CopyLocalLockFileAssemblies>true</CopyLocalLockFileAssemblies>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="FFMpegCore" Version="5.4.0" />
</ItemGroup>
<!-- RELEASE: the published meta-package. Was temporarily split into 10 direct sub-package
references (alpha.45) because the meta-package's own publish step didn't exist yet — it was
a manual, easily-forgotten `dotnet pack`+push that had been stuck at alpha.44 for weeks. Fixed
2026-07-09: "HartsyInference" is now packed via a real project (src/HartsyInference.Meta in
the engine repo) wired into publish-nuget.yml, so it publishes automatically on every push
like every other package. Verified via a from-scratch restore against nuget.org only
(cleared sources, fresh package cache) — not just checking the version index. -->
<ItemGroup Condition="'$(UseLocalHartsy)' != 'true'">
<!-- 2026-07-12: bumped to alpha.48 (ACE-Step DiT GPU-residency rewrite + prior work); the engine
repo publishes it on push. If a build hits NU1603 / can't restore, alpha.48 has not indexed on
nuget.org yet — wait for the flat-container index, then rebuild with a cleared package cache. -->
<PackageReference Include="HartsyInference" Version="1.0.0-alpha.48" />
</ItemGroup>
<!-- LOCAL ENGINE DEBUGGING: prebuilt engine DLLs (NOT ProjectReferences — see SwarmUI-LLMAssistant.csproj
for why). FIRST build the engine: dotnet build src/HartsyInference.{Audio,Cpu,Cuda,Vulkan}/*.csproj
-c Release -f net8.0 (in HartsyInference). -->
<PropertyGroup Condition="'$(UseLocalHartsy)' == 'true'">
<HartsyAudioBin>$(HartsyRepo)/src/HartsyInference.Audio/bin/Release/net8.0</HartsyAudioBin>
<HartsyCpuBin>$(HartsyRepo)/src/HartsyInference.Cpu/bin/Release/net8.0</HartsyCpuBin>
<HartsyCudaBin>$(HartsyRepo)/src/HartsyInference.Cuda/bin/Release/net8.0</HartsyCudaBin>
<HartsyVulkanBin>$(HartsyRepo)/src/HartsyInference.Vulkan/bin/Release/net8.0</HartsyVulkanBin>
</PropertyGroup>
<ItemGroup Condition="'$(UseLocalHartsy)' == 'true'">
<Reference Include="HartsyInference.Audio"><HintPath>$(HartsyAudioBin)/HartsyInference.Audio.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.Core"><HintPath>$(HartsyAudioBin)/HartsyInference.Core.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.ModelHandler"><HintPath>$(HartsyAudioBin)/HartsyInference.ModelHandler.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.Tokenizers"><HintPath>$(HartsyAudioBin)/HartsyInference.Tokenizers.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.LLM"><HintPath>$(HartsyAudioBin)/HartsyInference.LLM.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.Phonemizer"><HintPath>$(HartsyAudioBin)/HartsyInference.Phonemizer.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.Diffusion"><HintPath>$(HartsyRepo)/src/HartsyInference.Diffusion/bin/Release/net8.0/HartsyInference.Diffusion.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.Cpu"><HintPath>$(HartsyCpuBin)/HartsyInference.Cpu.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.Cuda"><HintPath>$(HartsyCudaBin)/HartsyInference.Cuda.dll</HintPath><Private>true</Private></Reference>
<Reference Include="HartsyInference.Vulkan"><HintPath>$(HartsyVulkanBin)/HartsyInference.Vulkan.dll</HintPath><Private>true</Private></Reference>
<!-- CUDA PTX kernels + Vulkan SPIR-V from engine source (the NuGet copies these via its targets). -->
<Content Include="$(HartsyRepo)/src/HartsyInference.Cuda/Ptx/*.ptx" Link="Ptx/%(Filename)%(Extension)" CopyToOutputDirectory="PreserveNewest" />
<Content Include="$(HartsyRepo)/src/HartsyInference.Vulkan/Spv/*.spv" Link="Spv/%(Filename)%(Extension)" CopyToOutputDirectory="PreserveNewest" Condition="Exists('$(HartsyRepo)/src/HartsyInference.Vulkan/Spv')" />
</ItemGroup>
<!-- Host-provided packages: compile against them but don't copy their DLLs (avoids duplicate/version-skew).
Keep in sync with SwarmUI.deps.props. -->
<ItemGroup>
<PackageReference Update="FreneticLLC.FreneticUtilities" ExcludeAssets="runtime" />
<PackageReference Update="Hardware.Info" ExcludeAssets="runtime" />
<PackageReference Update="LiteDB" ExcludeAssets="runtime" />
<PackageReference Update="LLamaSharp" ExcludeAssets="runtime" />
<PackageReference Update="LLamaSharp.Backend.Cpu" ExcludeAssets="runtime" />
<PackageReference Update="LLamaSharp.Backend.Cuda12" ExcludeAssets="runtime" />
<PackageReference Update="Newtonsoft.Json" ExcludeAssets="runtime" />
<PackageReference Update="SixLabors.ImageSharp" ExcludeAssets="runtime" />
<PackageReference Update="SixLabors.ImageSharp.Drawing" ExcludeAssets="runtime" />
</ItemGroup>
</Project>