Skip to content

Commit c1e9af2

Browse files
authored
Merge pull request #577 from polyadic/release-2.7.0
Prepare 2.7 Release
2 parents 589ab13 + 0cf8063 commit c1e9af2

File tree

15 files changed

+271
-196
lines changed

15 files changed

+271
-196
lines changed

Funcky.Analyzers/Funcky.Analyzers.Package/Funcky.Analyzers.Package.csproj

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,7 @@
1212
</PropertyGroup>
1313
<PropertyGroup Label="NuGet Metadata">
1414
<PackageId>Funcky.Analyzers</PackageId>
15-
<PackageVersion>1.0.0</PackageVersion>
15+
<PackageVersion>1.1.0</PackageVersion>
1616
<Description>Analyzers to guide to the correct usage of Funcky.</Description>
1717
<PackageTags>funcky, analyzers, roslyn</PackageTags>
1818
<DevelopmentDependency>true</DevelopmentDependency>
Lines changed: 14 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,16 @@
1-
; Shipped analyzer releases
1+
; Shipped analyzer releases
22
; https://github.com/dotnet/roslyn-analyzers/blob/main/src/Microsoft.CodeAnalysis.Analyzers/ReleaseTrackingAnalyzers.Help.md
33

4+
## Release 1.0
5+
### New Rules
6+
Rule ID | Category | Severity | Notes
7+
--------|----------|----------|-------
8+
λ1001 | Funcky | Warning | EnumerableRepeatOnceAnalyzer
9+
λ1002 | Funcky | Warning | EnumerableRepeatNeverAnalyzer
10+
11+
## Release 1.1
12+
### New Rules
13+
Rule ID | Category | Severity | Notes
14+
--------|----------|----------|-------
15+
λ1003 | Funcky | Warning | UseWithArgumentNamesAnalyzer
16+
λ1004 | Funcky | Warning | JoinToStringEmptyAnalyzer

Funcky.Analyzers/Funcky.Analyzers/AnalyzerReleases.Unshipped.md

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,10 +2,3 @@
22
; https://github.com/dotnet/roslyn-analyzers/blob/main/src/Microsoft.CodeAnalysis.Analyzers/ReleaseTrackingAnalyzers.Help.md
33

44
### New Rules
5-
6-
Rule ID | Category | Severity | Notes
7-
--------|----------|----------|-------
8-
λ1001 | Funcky | Warning | EnumerableRepeatOnceAnalyzer
9-
λ1002 | Funcky | Warning | EnumerableRepeatNeverAnalyzer
10-
λ1003 | Funcky | Warning | UseWithArgumentNamesAnalyzer
11-
λ1004 | Funcky | Warning | JoinToStringEmptyAnalyzer
Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,9 @@
1-
; Shipped analyzer releases
1+
; Shipped analyzer releases
22
; https://github.com/dotnet/roslyn-analyzers/blob/main/src/Microsoft.CodeAnalysis.Analyzers/ReleaseTrackingAnalyzers.Help.md
3+
4+
## Release 2.7
5+
### New Rules
6+
Rule ID | Category | Severity | Notes
7+
--------|----------|----------|-------
8+
λ0001 | Funcky | Error | TryGetValueAnalyzer
9+
λ0002 | Funcky.Deprecation | Warning | OptionNoneMethodGroupAnalyzer

Funcky.Analyzers/Funcky.BuiltinAnalyzers/AnalyzerReleases.Unshipped.md

Lines changed: 0 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -2,8 +2,3 @@
22
; https://github.com/dotnet/roslyn-analyzers/blob/main/src/Microsoft.CodeAnalysis.Analyzers/ReleaseTrackingAnalyzers.Help.md
33

44
### New Rules
5-
6-
Rule ID | Category | Severity | Notes
7-
--------|----------|----------|-------
8-
λ0001 | Funcky | Error | TryGetValueAnalyzer
9-
λ0002 | Funcky.Deprecation | Warning | OptionNoneMethodGroupAnalyzer

Funcky.Test/Extensions/EnumerableExtensions/PartitionResultTest.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -5,9 +5,9 @@ public sealed class PartitionResultTest
55
[Fact]
66
public void ReturnsTwoEmptyEnumerablesWhenSourceIsEmpty()
77
{
8-
var (left, right) = Enumerable.Empty<Either<int, string>>().Partition();
9-
Assert.Empty(left);
10-
Assert.Empty(right);
8+
var (error, ok) = Enumerable.Empty<Either<int, string>>().Partition();
9+
Assert.Empty(error);
10+
Assert.Empty(ok);
1111
}
1212

1313
[Fact]
@@ -17,7 +17,7 @@ public void PartitionsItemsIntoOkAndError()
1717
var exceptions = Sequence.Return(new Exception("foo"), new InvalidOperationException("bar"));
1818
var input = values.Select(Result.Ok).Interleave(exceptions.Select(Result<int>.Error));
1919

20-
var (ok, error) = input.Partition();
20+
var (error, ok) = input.Partition();
2121

2222
Assert.Equal(values, ok);
2323
Assert.Equal(exceptions, error);

Funcky.Xunit/Funcky.Xunit.csproj

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55
<Nullable>enable</Nullable>
66
<Description>Package to use Funcky with xUnit</Description>
77
<PackageTags>Functional Monad xUnit</PackageTags>
8-
<Version>0.1.3</Version>
8+
<Version>1.0.0</Version>
99
<IncludeSymbols>true</IncludeSymbols>
1010
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
1111
<RootNamespace>Funcky</RootNamespace>
@@ -22,6 +22,7 @@
2222
<ItemGroup>
2323
<PackageReference Include="xunit.assert" />
2424
<PackageReference Include="xunit.extensibility.core" />
25+
<PackageReference Include="Microsoft.CodeAnalysis.PublicApiAnalyzers" PrivateAssets="all" Condition="'$(TargetFramework)' == 'net6.0'" />
2526
</ItemGroup>
2627
<ItemGroup>
2728
<ProjectReference Include="../Funcky/Funcky.csproj" />

Funcky.Xunit/PublicAPI.Shipped.txt

Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
#nullable enable
2+
Funcky.Extensions.ToTheoryDataExtension
3+
Funcky.FunctionalAssert
4+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2, T3 Item3, T4 Item4, T5 Item5, T6 Item6, T7 Item7, T8 Item8, T9 Item9, T10 Item10)>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>!
5+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2, T3, T4, T5, T6, T7, System.Tuple<T8, T9, T10>!>!>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6, T7, T8, T9, T10>!
6+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6, T7, T8, T9>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2, T3 Item3, T4 Item4, T5 Item5, T6 Item6, T7 Item7, T8 Item8, T9 Item9)>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6, T7, T8, T9>!
7+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6, T7, T8, T9>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2, T3, T4, T5, T6, T7, System.Tuple<T8, T9>!>!>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6, T7, T8, T9>!
8+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6, T7, T8>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2, T3 Item3, T4 Item4, T5 Item5, T6 Item6, T7 Item7, T8 Item8)>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6, T7, T8>!
9+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6, T7, T8>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2, T3, T4, T5, T6, T7, T8>!>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6, T7, T8>!
10+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6, T7>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2, T3 Item3, T4 Item4, T5 Item5, T6 Item6, T7 Item7)>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6, T7>!
11+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6, T7>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2, T3, T4, T5, T6, T7>!>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6, T7>!
12+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2, T3 Item3, T4 Item4, T5 Item5, T6 Item6)>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6>!
13+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5, T6>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2, T3, T4, T5, T6>!>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5, T6>!
14+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2, T3 Item3, T4 Item4, T5 Item5)>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5>!
15+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4, T5>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2, T3, T4, T5>!>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4, T5>!
16+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2, T3 Item3, T4 Item4)>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4>!
17+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3, T4>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2, T3, T4>!>! enumerable) -> Xunit.TheoryData<T1, T2, T3, T4>!
18+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2, T3 Item3)>! enumerable) -> Xunit.TheoryData<T1, T2, T3>!
19+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2, T3>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2, T3>!>! enumerable) -> Xunit.TheoryData<T1, T2, T3>!
20+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2>(this System.Collections.Generic.IEnumerable<(T1 Item1, T2 Item2)>! enumerable) -> Xunit.TheoryData<T1, T2>!
21+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1, T2>(this System.Collections.Generic.IEnumerable<System.Tuple<T1, T2>!>! enumerable) -> Xunit.TheoryData<T1, T2>!
22+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1>(this System.Collections.Generic.IEnumerable<System.Tuple<T1>!>! enumerable) -> Xunit.TheoryData<T1>!
23+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1>(this System.Collections.Generic.IEnumerable<System.ValueTuple<T1>>! enumerable) -> Xunit.TheoryData<T1>!
24+
static Funcky.Extensions.ToTheoryDataExtension.ToTheoryData<T1>(this System.Collections.Generic.IEnumerable<T1>! enumerable) -> Xunit.TheoryData<T1>!
25+
static Funcky.FunctionalAssert.IsError<TResult>(Funcky.Monads.Result<TResult> result) -> System.Exception!
26+
static Funcky.FunctionalAssert.IsLeft<TLeft, TRight>(Funcky.Monads.Either<TLeft, TRight> either) -> TLeft
27+
static Funcky.FunctionalAssert.IsLeft<TLeft, TRight>(TLeft expectedLeft, Funcky.Monads.Either<TLeft, TRight> either) -> void
28+
static Funcky.FunctionalAssert.IsNone<TItem>(Funcky.Monads.Option<TItem> option) -> void
29+
static Funcky.FunctionalAssert.IsOk<TResult>(Funcky.Monads.Result<TResult> result) -> TResult
30+
static Funcky.FunctionalAssert.IsOk<TResult>(TResult expectedResult, Funcky.Monads.Result<TResult> result) -> void
31+
static Funcky.FunctionalAssert.IsRight<TLeft, TRight>(Funcky.Monads.Either<TLeft, TRight> either) -> TRight
32+
static Funcky.FunctionalAssert.IsRight<TLeft, TRight>(TRight expectedRight, Funcky.Monads.Either<TLeft, TRight> either) -> void
33+
static Funcky.FunctionalAssert.IsSome<TItem>(Funcky.Monads.Option<TItem> option) -> TItem
34+
static Funcky.FunctionalAssert.IsSome<TItem>(TItem expectedValue, Funcky.Monads.Option<TItem> option) -> void
Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
#nullable enable

Funcky/Extensions/EnumerableExtensions/PartitionResult.cs

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -2,16 +2,16 @@ namespace Funcky.Extensions;
22

33
public static partial class EnumerableExtensions
44
{
5-
/// <summary>Partitions the result values in an <see cref="IEnumerable{T}"/> into an ok and an error partition.</summary>
5+
/// <summary>Partitions the result values in an <see cref="IEnumerable{T}"/> into an error and ok partition.</summary>
66
public static ResultPartitions<TValidResult> Partition<TValidResult>(this IEnumerable<Result<TValidResult>> source)
7-
=> source.Partition((left, right) => new ResultPartitions<TValidResult>(left, right));
7+
=> source.Partition((error, ok) => new ResultPartitions<TValidResult>(error, ok));
88

9-
/// <summary>Partitions the either values in an <see cref="IEnumerable{T}"/> into an ok and an error partition.</summary>
10-
public static TResult Partition<TValidResult, TResult>(this IEnumerable<Result<TValidResult>> source, Func<IReadOnlyCollection<TValidResult>, IReadOnlyCollection<Exception>, TResult> resultSelector)
9+
/// <summary>Partitions the either values in an <see cref="IEnumerable{T}"/> into an error and ok partition.</summary>
10+
public static TResult Partition<TValidResult, TResult>(this IEnumerable<Result<TValidResult>> source, Func<IReadOnlyCollection<Exception>, IReadOnlyCollection<TValidResult>, TResult> resultSelector)
1111
=> source
12-
.Aggregate(PartitionBuilder<TValidResult, Exception>.Default, Add)
12+
.Aggregate(PartitionBuilder<Exception, TValidResult>.Default, Add)
1313
.Build(resultSelector);
1414

15-
private static PartitionBuilder<TValidResult, Exception> Add<TValidResult>(PartitionBuilder<TValidResult, Exception> builder, Result<TValidResult> result)
16-
=> result.Match(ok: builder.AddLeft, error: builder.AddRight);
15+
private static PartitionBuilder<Exception, TValidResult> Add<TValidResult>(PartitionBuilder<Exception, TValidResult> builder, Result<TValidResult> result)
16+
=> result.Match(error: builder.AddLeft, ok: builder.AddRight);
1717
}

0 commit comments

Comments
 (0)