platformplatform / PlatformPlatform

Alpha state. A platform designed for building enterprise-grade, multi-tenant products using Azure, .NET, React, TypeScript, Infrastructure as Code, etc.
https://platformplatform.github.io
MIT License
253 stars 26 forks source link

Upgrade to .NET Aspire 9 with updated dependencies and streamlined setup #625

Closed tjementum closed 4 days ago

tjementum commented 4 days ago

Summary & Motivation

Upgrade to .NET Aspire 9 while continuing to target .NET 8, bringing several enhancements and simplifying the developer experience.

Aspire 9 introduces the ability to await the readiness of services like SQL Server. This enabled the removal of custom retry logic in database migrations. The AppHost has been restructured to configure dependencies using the new WaitFor() feature. Additionally, the WithDataVolume extension is now utilized for cleaner syntax when configuring persistent Docker volumes.

Single Page App (SPA) generation timings have been adjusted to align with updated startup behavior. While the SPA timing logic is theoretically unnecessary (as the SPA is always ready before SQL Server), it has been retained for future compatibility with .NET 9, which will support keeping services like SQL Server running between debug sessions.

The pp dev Developer CLI command has been removed, as Aspire now starts the dashboard immediately, even before Docker images are downloaded. The README has been updated to instruct users to run dotnet run apphost instead. Aspire is now distributed as a NuGet package, removing the need for the .NET Aspire workload prerequisite.

All NuGet packages have been updated to their latest versions, except Entity Framework, which was excluded due to test failures caused by multiple service registrations.

Finally, the README has been refreshed to reflect the latest project status. Windows installation instructions now use WinGet instead of Chocolatey, and a new demo video has been added.

Checklist

linear[bot] commented 4 days ago

PP-247 Upgrade to Aspire 9

sonarcloud[bot] commented 4 days ago

Quality Gate Passed Quality Gate passed

Issues
0 New issues
0 Accepted issues

Measures
0 Security Hotspots
0.0% Coverage on New Code
0.0% Duplication on New Code

See analysis details on SonarQube Cloud