DisposableHelpers 1.2.153
dotnet add package DisposableHelpers --version 1.2.153
NuGet\Install-Package DisposableHelpers -Version 1.2.153
<PackageReference Include="DisposableHelpers" Version="1.2.153" />
<PackageVersion Include="DisposableHelpers" Version="1.2.153" />
<PackageReference Include="DisposableHelpers" />
paket add DisposableHelpers --version 1.2.153
#r "nuget: DisposableHelpers, 1.2.153"
#:package DisposableHelpers@1.2.153
#addin nuget:?package=DisposableHelpers&version=1.2.153
#tool nuget:?package=DisposableHelpers&version=1.2.153
DisposableHelpers
Disposable helpers for IDisposable and IAsyncDisposable with source generators. Also capable of both anonymous disposable and anonymous async disposable.
NuGets
| Name | Info |
|---|---|
| DisposableHelpers |
Installation
// Install release version
Install-Package DisposableHelpers
// Install pre-release version
Install-Package DisposableHelpers -pre
Supported frameworks
.NET Standard 2.0 and above - see https://github.com/dotnet/standard/blob/master/docs/versions.md for compatibility matrix
Usage
Disposable
using DisposableHelpers;
namespace YourNamespace
{
public class SampleDisposable : Disposable
{
private SampleUnmanagedResource resources;
protected override void Dispose(bool disposing)
{
if (disposing)
{
resources.Release();
}
base.Dispose(disposing);
}
}
}
Disposable Source Generator
using DisposableHelpers.Attributes;
namespace YourNamespace
{
[Disposable]
public partial class SampleDisposable
{
private SampleUnmanagedResource resources;
protected void Dispose(bool disposing)
{
if (disposing)
{
resources.Release();
}
base.Dispose(disposing);
}
}
}
Anonymous Disposable
using DisposableHelpers;
namespace YourNamespace
{
public static class Program
{
private static SampleUnmanagedResource resources;
public static void Main(string[] args)
{
Disposable disposable = new Disposable(disposing =>
{
if (disposing)
{
resources.Release();
}
});
disposable.Dispose();
}
}
}
AsyncDisposable
using DisposableHelpers;
namespace YourNamespace
{
public class SampleAsyncDisposable : AsyncDisposable
{
private SampleAsyncUnmanagedResource resources;
protected override async ValueTask Dispose(bool isDisposing)
{
if (isDisposing)
{
await resources.Release();
}
return base.Dispose(isDisposing);
}
}
}
AsyncDisposable Source Generator
using DisposableHelpers.Attributes;
namespace YourNamespace
{
[AsyncDisposable]
public partial class SampleAsyncDisposable
{
private SampleAsyncUnmanagedResource resources;
protected async ValueTask Dispose(bool isDisposing)
{
if (isDisposing)
{
await resources.Release();
}
return base.Dispose(isDisposing);
}
}
}
Anonymous AsyncDisposable
using DisposableHelpers;
namespace YourNamespace
{
public static class Program
{
private static SampleAsyncUnmanagedResource resources;
public static async void Main(string[] args)
{
AsyncDisposable disposable = new AsyncDisposable(async disposing =>
{
if (disposing)
{
await resources.Release();
}
});
await disposable.DisposeAsync();
}
}
}
Want To Support This Project?
All I have ever asked is to be active by submitting bugs, features, and sending those pull requests down!.
| Product | Versions Compatible and additional computed target framework versions. |
|---|---|
| .NET | net5.0 was computed. net5.0-windows was computed. net6.0 is compatible. 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 is compatible. 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 is compatible. 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 is compatible. |
| .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
- Microsoft.Bcl.AsyncInterfaces (>= 10.0.3)
-
net10.0
- No dependencies.
-
net6.0
- No dependencies.
-
net7.0
- No dependencies.
-
net8.0
- No dependencies.
-
net9.0
- No dependencies.
NuGet packages (2)
Showing the top 2 NuGet packages that depend on DisposableHelpers:
| Package | Downloads |
|---|---|
|
SingletonSessionHelpers
Provides a base API for singleton session design pattern. |
|
|
LockerHelpers
Provides helpers for execution locking mechanism. |
GitHub repositories
This package is not used by any popular GitHub repositories.
| Version | Downloads | Last Updated |
|---|---|---|
| 1.2.153 | 49 | 2/10/2026 |
| 1.2.152 | 111 | 1/13/2026 |
| 1.2.151 | 1,026 | 12/10/2025 |
| 1.2.150 | 11,587 | 12/2/2025 |
| 1.2.149 | 136 | 12/1/2025 |
| 1.2.148 | 106 | 11/28/2025 |
| 1.2.147 | 277 | 11/28/2025 |
| 1.2.146 | 90 | 11/27/2025 |
| 1.2.145 | 368 | 11/25/2025 |
| 1.2.144 | 225 | 11/25/2025 |
| 1.2.143 | 110 | 11/25/2025 |
| 1.2.142 | 292 | 11/11/2025 |
| 1.2.141 | 116 | 11/11/2025 |
| 1.2.140 | 7,244 | 11/6/2025 |
| 1.2.139 | 111 | 11/6/2025 |
| 1.2.138 | 751 | 11/4/2025 |
| 1.2.137 | 123 | 11/4/2025 |
| 1.2.136 | 760 | 11/2/2025 |
| 1.2.135 | 3,283 | 10/14/2025 |
| 1.2.134 | 142 | 10/9/2025 |
## New Version
* Bump `disposable_helpers` from `1.2.152` to `1.2.153`. See [changelog](https://github.com/Kiryuumaru/DisposableHelpers/compare/disposable_helpers/1.2.152...disposable_helpers/1.2.153)
## What's Changed
* Bump Microsoft.Bcl.AsyncInterfaces from 10.0.2 to 10.0.3 by @dependabot[bot] in https://github.com/Kiryuumaru/DisposableHelpers/pull/212
**Full Changelog**: https://github.com/Kiryuumaru/DisposableHelpers/compare/build.20260113193743.4e6f294...build.20260210193920.fe9c345