Awaiten 0.1.0
dotnet add package Awaiten --version 0.1.0
NuGet\Install-Package Awaiten -Version 0.1.0
<PackageReference Include="Awaiten" Version="0.1.0" />
<PackageVersion Include="Awaiten" Version="0.1.0" />
<PackageReference Include="Awaiten" />
paket add Awaiten --version 0.1.0
#r "nuget: Awaiten, 0.1.0"
#:package Awaiten@0.1.0
#addin nuget:?package=Awaiten&version=0.1.0
#tool nuget:?package=Awaiten&version=0.1.0
Awaiten
The async-first dependency injection container for .NET.
Awaiten is a Roslyn source generator that wires your object graph at build time. There is no runtime reflection, the configuration is verified by the compiler (missing, cyclic, ambiguous and lifetime-mismatched registrations are build errors), and the generated code is plain, readable C#.
Its headline differentiator is async initialization: services that need asynchronous setup after construction (opening a connection, handshaking with hardware) are tracked through the graph, and touching an uninitialized instance is a compile error.
[Container]
[Singleton<RealTimeSystem, ITimeSystem>]
[Scoped<StorageService, IStorageService>]
[Transient<OrderService, IOrderService>]
public static partial class AppContainer { }
await using var app = new AppContainer.Root();
await app.InitializeAsync(); // async-initialized services are warmed up
var service = app.Get<IOrderService>();
Packages
| Package | Description |
|---|---|
Awaiten |
Pure core: attributes, the source generator, and the runtime seams. No third-party dependencies. |
Awaiten.Extensions.DependencyInjection |
Microsoft.Extensions.DependencyInjection interop (ASP.NET Core, generic host, and other containers). |
Status
Early scaffolding. See the design documents for the full specification, the diagnostic catalogue, and integration recipes (ASP.NET Core, WPF, MS.DI, Autofac).
Building
./build.sh # or build.cmd / build.ps1 on Windows
The build uses NUKE. Targets include compile, unit tests, API checks, code analysis and packaging.
License
MIT © Valentin Breuß
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 is compatible. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 is compatible. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
| .NET Core | netcoreapp2.0 was computed. netcoreapp2.1 was computed. netcoreapp2.2 was computed. netcoreapp3.0 was computed. netcoreapp3.1 was computed. |
| .NET Standard | netstandard2.0 is compatible. netstandard2.1 was computed. |
| .NET Framework | net461 was computed. net462 was computed. net463 was computed. net47 was computed. net471 was computed. net472 was computed. net48 was computed. net481 was computed. |
| MonoAndroid | monoandroid was computed. |
| MonoMac | monomac was computed. |
| MonoTouch | monotouch was computed. |
| Tizen | tizen40 was computed. tizen60 was computed. |
| Xamarin.iOS | xamarinios was computed. |
| Xamarin.Mac | xamarinmac was computed. |
| Xamarin.TVOS | xamarintvos was computed. |
| Xamarin.WatchOS | xamarinwatchos was computed. |
-
.NETStandard 2.0
- No dependencies.
-
net10.0
- No dependencies.
-
net8.0
- No dependencies.
NuGet packages (1)
Showing the top 1 NuGet packages that depend on Awaiten:
| Package | Downloads |
|---|---|
|
Awaiten.Extensions.DependencyInjection
Microsoft.Extensions.DependencyInjection interop for Awaiten. |
GitHub repositories
This package is not used by any popular GitHub repositories.