DisposableHelpers 1.2.80
dotnet add package DisposableHelpers --version 1.2.80
NuGet\Install-Package DisposableHelpers -Version 1.2.80
<PackageReference Include="DisposableHelpers" Version="1.2.80" />
paket add DisposableHelpers --version 1.2.80
#r "nuget: DisposableHelpers, 1.2.80"
// Install DisposableHelpers as a Cake Addin #addin nuget:?package=DisposableHelpers&version=1.2.80 // Install DisposableHelpers as a Cake Tool #tool nuget:?package=DisposableHelpers&version=1.2.80
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. |
.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 (>= 9.0.0)
-
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.80 | 133 | 12/18/2024 |
1.2.79 | 202 | 12/17/2024 |
1.2.78 | 254 | 12/6/2024 |
1.2.77 | 277 | 12/5/2024 |
1.2.76 | 198 | 12/5/2024 |
1.2.75 | 165 | 12/3/2024 |
1.2.74 | 106 | 12/3/2024 |
1.2.73 | 185 | 12/3/2024 |
1.2.71 | 108 | 12/3/2024 |
1.2.70 | 226 | 11/25/2024 |
1.2.69 | 97 | 11/25/2024 |
1.2.68 | 98 | 11/22/2024 |
1.2.67 | 126 | 11/22/2024 |
1.2.64 | 301 | 11/20/2024 |
1.2.63 | 48 | 11/19/2024 |
1.2.62 | 223 | 11/14/2024 |
1.2.60 | 164 | 11/13/2024 |
1.2.59 | 194 | 11/12/2024 |
1.2.58 | 184 | 11/8/2024 |
1.2.57 | 38 | 11/8/2024 |
1.2.56 | 38 | 11/8/2024 |
1.2.55 | 40 | 11/8/2024 |
1.2.54 | 47 | 11/7/2024 |
1.2.53 | 175 | 11/6/2024 |
1.2.52 | 38 | 11/6/2024 |
1.2.51 | 171 | 11/5/2024 |
1.2.50 | 282 | 10/30/2024 |
1.2.49 | 141 | 10/30/2024 |
1.2.48 | 170 | 10/29/2024 |
1.2.47 | 250 | 10/28/2024 |
1.2.46 | 57 | 10/25/2024 |
1.2.45 | 324 | 10/23/2024 |
1.2.44 | 231 | 10/22/2024 |
1.2.43 | 316 | 10/17/2024 |
1.2.42 | 321 | 10/14/2024 |
1.2.41 | 265 | 10/11/2024 |
1.2.40 | 500 | 10/7/2024 |
1.2.39 | 272 | 10/4/2024 |
1.2.38 | 252 | 10/2/2024 |
1.2.37 | 257 | 9/27/2024 |
1.2.36 | 43 | 9/27/2024 |
1.2.35 | 59 | 9/27/2024 |
1.2.34 | 349 | 9/25/2024 |
1.2.33 | 141 | 9/25/2024 |
1.2.32 | 244 | 9/23/2024 |
1.2.31 | 47 | 9/23/2024 |
1.2.30 | 239 | 9/20/2024 |
1.2.29 | 119 | 9/20/2024 |
1.2.28 | 276 | 9/18/2024 |
1.2.27 | 155 | 9/16/2024 |
1.2.26 | 284 | 9/10/2024 |
1.2.24 | 352 | 9/5/2024 |
1.2.23 | 364 | 8/29/2024 |
1.2.22 | 260 | 8/26/2024 |
1.2.21 | 226 | 8/22/2024 |
1.2.20 | 55 | 8/22/2024 |
1.2.19 | 52 | 8/22/2024 |
1.2.18 | 165 | 8/20/2024 |
1.2.17 | 363 | 8/14/2024 |
1.2.16 | 146 | 8/13/2024 |
1.2.15 | 386 | 7/31/2024 |
1.2.14 | 69 | 7/31/2024 |
1.2.13 | 123 | 7/26/2024 |
1.2.12 | 476 | 7/16/2024 |
1.2.11 | 100 | 7/15/2024 |
1.2.10 | 90 | 7/13/2024 |
1.2.9 | 110 | 7/12/2024 |
1.2.8 | 129 | 7/9/2024 |
1.2.7 | 113 | 7/8/2024 |
1.2.6 | 50 | 7/8/2024 |
1.2.5 | 52 | 7/8/2024 |
1.2.4 | 140 | 7/7/2024 |
1.2.3 | 204 | 7/1/2024 |
1.2.2 | 98 | 6/30/2024 |
1.2.1 | 111 | 6/28/2024 |
1.2.0 | 202 | 5/3/2024 |
1.1.16 | 1,379 | 10/3/2023 |
1.1.15 | 317 | 8/30/2023 |
1.1.14 | 252 | 8/28/2023 |
1.1.13 | 279 | 8/8/2023 |
1.1.12 | 274 | 7/11/2023 |
1.1.11 | 164 | 7/9/2023 |
1.1.10 | 240 | 6/20/2023 |
1.1.9 | 1,752 | 9/8/2022 |
1.1.8 | 392 | 9/4/2022 |
1.1.7 | 405 | 9/4/2022 |
1.1.6 | 2,690 | 7/20/2022 |
1.1.5 | 427 | 7/20/2022 |
1.1.4 | 458 | 7/17/2022 |
1.1.3 | 403 | 7/17/2022 |
1.1.2 | 467 | 7/17/2022 |
1.1.1 | 427 | 7/17/2022 |
1.1.0 | 471 | 7/17/2022 |
1.0.2 | 4,046 | 3/7/2022 |
1.0.1 | 3,288 | 2/21/2022 |
1.0.0 | 1,202 | 2/17/2022 |
## New Version
* Bump `disposable_helpers` from `1.2.79` to `1.2.80`. See [changelog](https://github.com/Kiryuumaru/DisposableHelpers/compare/disposable_helpers/1.2.79...disposable_helpers/1.2.80)
## What's Changed
* Bump Nuke.Common and NukeBuildHelpers by @dependabot in https://github.com/Kiryuumaru/DisposableHelpers/pull/127
**Full Changelog**: https://github.com/Kiryuumaru/DisposableHelpers/compare/build.87...build.88