Skip to content

Commit ef8e2b1

Browse files
author
Buildvana
committed
Prepare release 1.3.4 [skip ci]
1 parent c1e4eaa commit ef8e2b1

File tree

4 files changed

+20
-16
lines changed

4 files changed

+20
-16
lines changed

CHANGELOG.md

Lines changed: 8 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -9,16 +9,20 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0
99

1010
### New features
1111

12-
- Class `Louis.ActionDisposable` implements [`IDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable) by invoking an [`Action`](https://learn.microsoft.com/en-us/dotnet/api/system.action) passed to its constructor. This can be useful, combined with C#'s [`using` statement](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/statements/using), to ensure a piece of code gets executed at the end of a block or method, regardless of its result or outcome.
13-
- `Louis.LocalActionDisposable` has the same purpose and API of `ActionDisposable` but, being a [`ref struct`](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/ref-struct), it cannot be passed outside the method it is created in. On the other hand, it doesn't allocate space on the heap, taking just the size of a pointer on the stack, so it is preferrable to `ActionDisposable` in most cases, from both a performance and memory pressure point of view.
14-
- Class `Louis.AsyncActionDisposable` is similar to `ActionDisposable`, but it takes a possibly asynchronous delegate and uses it to implement [`IAsyncDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.iasyncdisposable) as well as [`IDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable).
15-
1612
### Changes to existing features
1713

1814
### Bugs fixed in this release
1915

2016
### Known problems introduced by this release
2117

18+
## [1.3.4](https://github.com/Tenacom/Louis/releases/tag/1.3.4) (2023-11-26)
19+
20+
### New features
21+
22+
- Class `Louis.ActionDisposable` implements [`IDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable) by invoking an [`Action`](https://learn.microsoft.com/en-us/dotnet/api/system.action) passed to its constructor. This can be useful, combined with C#'s [`using` statement](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/statements/using), to ensure a piece of code gets executed at the end of a block or method, regardless of its result or outcome.
23+
- `Louis.LocalActionDisposable` has the same purpose and API of `ActionDisposable` but, being a [`ref struct`](https://learn.microsoft.com/en-us/dotnet/csharp/language-reference/builtin-types/ref-struct), it cannot be passed outside the method it is created in. On the other hand, it doesn't allocate space on the heap, taking just the size of a pointer on the stack, so it is preferrable to `ActionDisposable` in most cases, from both a performance and memory pressure point of view.
24+
- Class `Louis.AsyncActionDisposable` is similar to `ActionDisposable`, but it takes a possibly asynchronous delegate and uses it to implement [`IAsyncDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.iasyncdisposable) as well as [`IDisposable`](https://learn.microsoft.com/en-us/dotnet/api/system.idisposable).
25+
2226
## [1.2.3](https://github.com/Tenacom/Louis/releases/tag/1.2.3) (2023-11-20)
2327

2428
### New features

src/Louis/PublicAPI.Shipped.txt

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,11 @@
11
#nullable enable
2+
Louis.ActionAsyncDisposable
3+
Louis.ActionAsyncDisposable.ActionAsyncDisposable(System.Func<System.Threading.Tasks.ValueTask>! onDisposeAsync) -> void
4+
Louis.ActionAsyncDisposable.Dispose() -> void
5+
Louis.ActionAsyncDisposable.DisposeAsync() -> System.Threading.Tasks.ValueTask
6+
Louis.ActionDisposable
7+
Louis.ActionDisposable.ActionDisposable(System.Action! onDispose) -> void
8+
Louis.ActionDisposable.Dispose() -> void
29
Louis.AsyncDisposableExtensions
310
Louis.Collections.EnumerableExtensions
411
Louis.ComponentModel.MailAddressCollectionConverter
@@ -34,6 +41,10 @@ Louis.Fluency.FluentAction<T, TArg1, TArg2>
3441
Louis.Fluency.FluentAction<T, TArg>
3542
Louis.Fluency.FluentAction<T>
3643
Louis.Fluency.FluentExtensions
44+
Louis.LocalActionDisposable
45+
Louis.LocalActionDisposable.Dispose() -> void
46+
Louis.LocalActionDisposable.LocalActionDisposable() -> void
47+
Louis.LocalActionDisposable.LocalActionDisposable(System.Action! onDispose) -> void
3748
Louis.RangeCheck
3849
Louis.ReadOnlySpanFunc<T>
3950
Louis.Text.CharReadOnlySpanExtensions

src/Louis/PublicAPI.Unshipped.txt

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,12 +1 @@
11
#nullable enable
2-
Louis.ActionAsyncDisposable
3-
Louis.ActionAsyncDisposable.ActionAsyncDisposable(System.Func<System.Threading.Tasks.ValueTask>! onDisposeAsync) -> void
4-
Louis.ActionAsyncDisposable.Dispose() -> void
5-
Louis.ActionAsyncDisposable.DisposeAsync() -> System.Threading.Tasks.ValueTask
6-
Louis.ActionDisposable
7-
Louis.ActionDisposable.ActionDisposable(System.Action! onDispose) -> void
8-
Louis.ActionDisposable.Dispose() -> void
9-
Louis.LocalActionDisposable
10-
Louis.LocalActionDisposable.Dispose() -> void
11-
Louis.LocalActionDisposable.LocalActionDisposable() -> void
12-
Louis.LocalActionDisposable.LocalActionDisposable(System.Action! onDispose) -> void

version.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"$schema": "https://raw.githubusercontent.com/dotnet/Nerdbank.GitVersioning/master/src/NerdBank.GitVersioning/version.schema.json",
3-
"version": "1.3-preview",
3+
"version": "1.3",
44
"assemblyVersion": {
55
"precision": "major"
66
},

0 commit comments

Comments
 (0)