Aspire 9 upcoming features 🧵:
First, you'll be able to use Aspire 9 with .NET 8 and .NET 9! It will no longer require a call to dotnet workload install, and instead uses an MSBuild SDK. This should simplify CI/CD integration and getting started immensely! All you need is NuGet!
#dotnet #aspire
Next is the first-class addition of "WaitFor". You can now wait for dependencies to start, be healthy or to be complete before running your resource.
This is much like "depends_on" in docker compose, but with the ability to write health checks in C#.
@JamesNK has been posting about the most requested feature being the ability to start and stop services. If you have the debugger attached it will re-attach on restart 🤯!
Adding start/stop wasn't enough, you can expose your own commands with a little bit of C#!
Another highly requested feature was to the ability to make containers persist beyond the lifetime of the app host project. Now you can make containers persist to improve those slow startup times!
Another ability aspire gained is the ability to use an existing container. This makes it easier to incrementally adopt and interact with existing containers. Just pick the right container name and it will automatically attach!
Another blocker people hit when migrating from docker compose was the inability to use simple host names when using container to container communication. We now create a default container network when using aspire with both podman and docker. This solves many of the networking issues from aspire 8.
Where code > YAML is built reusable patterns used by your projects (and others). We have a new eventing system that allows you to subscribe to various resource events and run C# logic. Want to run code after the resource spins up, easy!
Another highly requested feature was integration with Azure functions projects. This first-class integration will make development, testing and deployment of azure functions project a breeze. @captainsafia, @codesapien and crew have been working hard on this.
A highly requested deployment feature was the ability to modify the container app resource when deploying to Azure Container Apps without dropping to bicep. Now you can use the new Azure CDK, which is integrated into Aspire's Azure resources (the syntax is not final).
There are lots more improvements and small bug fixes, including lots of UX improvements in the dashboard.
- Responsive design, you can look at the dashboard on mobile devices
- Filtering added to distributed traces and improved for structured logs.
We're just getting started! If you haven't used aspire before 9, definitely check it out then! We ship Aspire 9 .NET 9 in November.
Share this Scrolly Tale with your friends.
A Scrolly Tale is a new way to read Twitter threads with a more visually immersive experience.
Discover more beautiful Scrolly Tales like this.