c9c6286571
Replace the 100s default HttpClient timeout (set Timeout=Infinite) with an idle/heartbeat deadline driven by a ProgressStreamContent wrapper that reports bytes-on-the-wire. Each tick resets the idle window and advances a MudProgressLinear per upload row. Idle window is configurable via Upload:IdleTimeoutSeconds (default 90s).
43 lines
1.9 KiB
XML
43 lines
1.9 KiB
XML
<Project Sdk="Microsoft.NET.Sdk">
|
|
|
|
<PropertyGroup>
|
|
<TargetFramework>net10.0</TargetFramework>
|
|
<LangVersion>latest</LangVersion>
|
|
<ImplicitUsings>enable</ImplicitUsings>
|
|
<Nullable>enable</Nullable>
|
|
<IsPackable>false</IsPackable>
|
|
</PropertyGroup>
|
|
|
|
<ItemGroup>
|
|
<PackageReference Include="coverlet.collector" Version="6.0.4">
|
|
<PrivateAssets>all</PrivateAssets>
|
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
|
</PackageReference>
|
|
<PackageReference Include="Microsoft.EntityFrameworkCore.InMemory" Version="10.0.7" />
|
|
<PackageReference Include="Microsoft.NET.Test.Sdk" Version="18.0.1" />
|
|
<PackageReference Include="NUnit" Version="4.4.0" />
|
|
<PackageReference Include="NUnit.Analyzers" Version="4.11.2">
|
|
<PrivateAssets>all</PrivateAssets>
|
|
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
|
</PackageReference>
|
|
<PackageReference Include="NUnit3TestAdapter" Version="6.0.0" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<Using Include="NUnit.Framework" />
|
|
</ItemGroup>
|
|
|
|
<ItemGroup>
|
|
<ProjectReference Include="..\DeepDrftContent\DeepDrftContent.csproj" />
|
|
<ProjectReference Include="..\DeepDrftData\DeepDrftData.csproj" />
|
|
<!-- Referenced for ProgressStreamContent (the upload progress/heartbeat HttpContent). It is plain
|
|
HttpContent with no browser/host dependency, unit-testable by serializing to a MemoryStream. -->
|
|
<ProjectReference Include="..\DeepDrftManager\DeepDrftManager.csproj" />
|
|
<!-- Referenced for the client-side queue orchestrator (QueueService / IQueueService).
|
|
The queue is pure domain logic, unit-testable against a fake IStreamingPlayerService
|
|
with no browser/JS. -->
|
|
<ProjectReference Include="..\DeepDrftPublic.Client\DeepDrftPublic.Client.csproj" />
|
|
</ItemGroup>
|
|
|
|
</Project>
|