Skip to content

Commit 83a5383

Browse files
V5 2 (#284)
* Remove Ply and update to FSharp 6 (#248) * remove Ply and update to FSharp 6 * Cleanup dependencies * Fix fsharp.core warning * Don't build so much * Asyncinterfaces (#250) * use Microsoft.Bcl.AsyncInterfaces * Updated IcedTasks to 0.11.0 * Fix for fable * Net8 (#251) * net8 tfm * Update README * Fix CI cancellation issues * Build on macos-14 * 205 overload resolution (#252) * Missed this in net8 additions * Fix overload resolution issues in Core * Fix overload resolution issues in Tasks/Hopac * Fix overload resolution issues in CancellableTaskResult * WIP: TaskValidtionCE * Wip merge sources * Fix MergeSources for CTValidation * cleanup * Ensure IAsyncDisposable tests * ignore nuget stuff * feat(Seq)!: Add sequenceResultA, align sequenceResultM (#255) * Roll on '24 * refactor(Seq.sequenceResultM)!: Change Ok to Array * docs: sequenceResultM * feat(Seq): sequenceResultA * f sequenceResultM docs * Supress compile error * Fix proposed version * Cleanup build * 209 remove MergeSources (and!) from some implementations (#261) * Remove MergeSources from resultCE * Remove MergeSources from AsyncResult * Remove MergeSources from ResultOption * Fixup resultOption docs * Remove MergeSources from OptionCE * Remove MergeSources from ValueOptionCE * remove MergeSources Option/ValueOption * MSBuild.StructuredLogger update * disable binlog for fake * Many updates * fix residual rebase artifacts * Merge TaskResult into Core lib (#285) * silence FS3511 --------- Co-authored-by: Ruben Bartelink <[email protected]>
1 parent d011683 commit 83a5383

File tree

96 files changed

+4785
-4914
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+4785
-4914
lines changed

.config/dotnet-tools.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@
33
"isRoot": true,
44
"tools": {
55
"paket": {
6-
"version": "8.0.0",
6+
"version": "8.0.3",
77
"commands": [
88
"paket"
99
]

.devcontainer/devcontainer.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,8 @@
2323
"ghcr.io/devcontainers-contrib/features/starship:1": {},
2424
// https://github.com/devcontainers/features/blob/main/src/dotnet/README.md
2525
"ghcr.io/devcontainers/features/dotnet:2": {
26-
"version": "7.0",
27-
"additionalVersions": "6.0"
26+
"version": "8.0",
27+
"additionalVersions": "7.0,6.0"
2828
},
2929
"ghcr.io/devcontainers/features/node:1": {
3030
"version": "18"

.github/workflows/build.yml

Lines changed: 18 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,14 @@
11
name: Build master
22

3-
on: [push, pull_request]
3+
on:
4+
# Runs only on pushes to the default branch or pull requests to the default branch
5+
push:
6+
branches:
7+
- master
8+
pull_request:
9+
branches:
10+
- master
11+
workflow_dispatch:
412

513
jobs:
614

@@ -12,7 +20,7 @@ jobs:
1220
# Builds for Debug and Release configurations
1321
configuration: [Debug, Release]
1422
# Builds for Ubuntu, Windows, and macOS
15-
os: [ubuntu-latest, windows-latest, macOS-latest]
23+
os: [ubuntu-latest, windows-latest, macOS-latest, macos-14]
1624
runs-on: ${{ matrix.os }}
1725

1826
steps:
@@ -22,6 +30,8 @@ jobs:
2230
with:
2331
global-json-file: global.json
2432
dotnet-version: |
33+
8.x
34+
7.x
2535
6.x
2636
2737
- name: Build via Bash
@@ -44,7 +54,7 @@ jobs:
4454
strategy:
4555
fail-fast: false
4656
matrix:
47-
os: [ubuntu-latest, windows-latest, macOS-latest]
57+
os: [ubuntu-latest, windows-latest, macOS-latest, macos-14]
4858
node-version: ['18', '20', 'latest' ]
4959
runs-on: ${{ matrix.os }}
5060

@@ -61,6 +71,8 @@ jobs:
6171
with:
6272
global-json-file: global.json
6373
dotnet-version: |
74+
8.x
75+
7.x
6476
6.x
6577
6678
- name: Build via Bash
@@ -82,7 +94,7 @@ jobs:
8294
strategy:
8395
fail-fast: false
8496
matrix:
85-
os: [ubuntu-latest, windows-latest, macOS-latest]
97+
os: [ubuntu-latest, windows-latest, macOS-latest, macos-14]
8698
python-version: ['3.10', '3.11', '3.12']
8799
runs-on: ${{ matrix.os }}
88100

@@ -99,8 +111,9 @@ jobs:
99111
with:
100112
global-json-file: global.json
101113
dotnet-version: |
114+
8.x
115+
7.x
102116
6.x
103-
104117
- name: Build via Bash
105118
if: runner.os != 'Windows'
106119
run: |

.paket/Paket.Restore.targets

Lines changed: 500 additions & 497 deletions
Large diffs are not rendered by default.

Directory.Build.props

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
<Project>
2-
<PropertyGroup>
3-
<DisableCheckingDuplicateNuGetItems>true</DisableCheckingDuplicateNuGetItems>
4-
<NoWarn>$(NoWarn);FS2003</NoWarn>
5-
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
6-
<WarningsAsErrors />
7-
</PropertyGroup>
2+
<PropertyGroup>
3+
<DisableCheckingDuplicateNuGetItems>true</DisableCheckingDuplicateNuGetItems>
4+
<NoWarn>$(NoWarn);FS2003; NU1903; NU1904</NoWarn>
5+
<TreatWarningsAsErrors>true</TreatWarningsAsErrors>
6+
<WarningsAsErrors />
7+
</PropertyGroup>
88
</Project>

FsToolkit.ErrorHandling.sln

Lines changed: 0 additions & 15 deletions
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,6 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "tests", "tests", "{D8B86171
1111
EndProject
1212
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FsToolkit.ErrorHandling.Tests", "tests\FsToolkit.ErrorHandling.Tests\FsToolkit.ErrorHandling.Tests.fsproj", "{F646F4E8-EA06-4EA8-9CD3-79778B264320}"
1313
EndProject
14-
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FsToolkit.ErrorHandling.TaskResult", "src\FsToolkit.ErrorHandling.TaskResult\FsToolkit.ErrorHandling.TaskResult.fsproj", "{EA9FB942-F6A4-4539-9377-A2DBE73861FC}"
15-
EndProject
1614
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FsToolkit.ErrorHandling.TaskResult.Tests", "tests\FsToolkit.ErrorHandling.TaskResult.Tests\FsToolkit.ErrorHandling.TaskResult.Tests.fsproj", "{868CA980-5903-480E-8360-C51F5EC83275}"
1715
EndProject
1816
Project("{F2A71F9B-5D33-465A-A702-920D77279786}") = "FsToolkit.ErrorHandling.JobResult", "src\FsToolkit.ErrorHandling.JobResult\FsToolkit.ErrorHandling.JobResult.fsproj", "{5B1EA296-538E-40E5-BF1D-6CB0F20BB52E}"
@@ -72,18 +70,6 @@ Global
7270
{F646F4E8-EA06-4EA8-9CD3-79778B264320}.Release|x64.Build.0 = Release|Any CPU
7371
{F646F4E8-EA06-4EA8-9CD3-79778B264320}.Release|x86.ActiveCfg = Release|Any CPU
7472
{F646F4E8-EA06-4EA8-9CD3-79778B264320}.Release|x86.Build.0 = Release|Any CPU
75-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
76-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Debug|Any CPU.Build.0 = Debug|Any CPU
77-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Debug|x64.ActiveCfg = Debug|Any CPU
78-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Debug|x64.Build.0 = Debug|Any CPU
79-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Debug|x86.ActiveCfg = Debug|Any CPU
80-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Debug|x86.Build.0 = Debug|Any CPU
81-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Release|Any CPU.ActiveCfg = Release|Any CPU
82-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Release|Any CPU.Build.0 = Release|Any CPU
83-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Release|x64.ActiveCfg = Release|Any CPU
84-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Release|x64.Build.0 = Release|Any CPU
85-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Release|x86.ActiveCfg = Release|Any CPU
86-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC}.Release|x86.Build.0 = Release|Any CPU
8773
{868CA980-5903-480E-8360-C51F5EC83275}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
8874
{868CA980-5903-480E-8360-C51F5EC83275}.Debug|Any CPU.Build.0 = Debug|Any CPU
8975
{868CA980-5903-480E-8360-C51F5EC83275}.Debug|x64.ActiveCfg = Debug|Any CPU
@@ -220,7 +206,6 @@ Global
220206
GlobalSection(NestedProjects) = preSolution
221207
{E0466000-F8E4-416B-B605-C65F7602367A} = {E28025A7-EF6A-45BF-8FA0-75E394D3D42B}
222208
{F646F4E8-EA06-4EA8-9CD3-79778B264320} = {D8B86171-2147-49EF-8ADA-1CF8B0A20D40}
223-
{EA9FB942-F6A4-4539-9377-A2DBE73861FC} = {E28025A7-EF6A-45BF-8FA0-75E394D3D42B}
224209
{868CA980-5903-480E-8360-C51F5EC83275} = {D8B86171-2147-49EF-8ADA-1CF8B0A20D40}
225210
{5B1EA296-538E-40E5-BF1D-6CB0F20BB52E} = {E28025A7-EF6A-45BF-8FA0-75E394D3D42B}
226211
{7DABAB8F-4A02-4992-A3A2-6C550F98C13B} = {D8B86171-2147-49EF-8ADA-1CF8B0A20D40}

README.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ The library provides utility functions like `map`, `bind`, `apply`, `traverse`,
66

77
It was inspired by [Chessie](https://github.com/fsprojects/Chessie) and Cvdm.ErrorHandling (the latter has now been merged into FsToolkit.ErrorHandling).
88

9-
FsToolkit.ErrorHandling targets .NET Standard 2.0 and .NET Framework 4.6.1 and supports Fable.
9+
FsToolkit.ErrorHandling targets .NET Standard 2.0, .NET Standard2.1 and supports Fable.
1010

1111
## Documentation
1212

@@ -47,6 +47,7 @@ This repository has a devcontainer setup for VSCode. For more infomation see:
4747
* [.NET Core SDK](https://www.microsoft.com/net/download/)
4848
* [v6.x](https://dotnet.microsoft.com/en-us/download/dotnet/6.0)
4949
* [v7.x](https://dotnet.microsoft.com/en-us/download/dotnet/7.0)
50+
* [v8.x](https://dotnet.microsoft.com/en-us/download/dotnet/8.0)
5051

5152
#### Optional
5253

RELEASE_NOTES.md

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,13 @@
1+
### 5.0.0-beta001
2+
- BREAKING: [Remove Ply and update to FSharp 6](https://github.com/demystifyfp/FsToolkit.ErrorHandling/pull/248) Credits @TheAngryByrd
3+
- BREAKING: [Remove MergeSources (and!) from some implementations](https://github.com/demystifyfp/FsToolkit.ErrorHandling/pull/261) Credits @TheAngryByrd
4+
- [Use Microsoft.Bcl.AsyncInterfaces in netstandard2.0 (Allows IAsyncDisposable and IAsyncEnumerable)](https://github.com/demystifyfp/FsToolkit.ErrorHandling/pull/250) Credits @TheAngryByrd
5+
- [Build against Net8](https://github.com/demystifyfp/FsToolkit.ErrorHandling/pull/251) Credits @TheAngryByrd
6+
- [Fix Overload Resolution to Align to Computation Expression used](https://github.com/demystifyfp/FsToolkit.ErrorHandling/pull/252) Credits @TheAngryByrd
7+
- [refactor!: Seq.sequenceResultM returns Array instead of seq](https://github.com/demystifyfp/FsToolkit.ErrorHandling/pull/255) Credits @bartelink
8+
- [feat(Seq): sequenceResultA](https://github.com/demystifyfp/FsToolkit.ErrorHandling/pull/255) Credits @bartelink
9+
10+
111
### 4.18.0 - October 23, 2024
212
- [Add Array errorhandling](https://github.com/demystifyfp/FsToolkit.ErrorHandling/pull/279) Credits @DashieTM
313

benchmarks/ApplicativeTests.fs

Lines changed: 0 additions & 55 deletions
Original file line numberDiff line numberDiff line change
@@ -41,19 +41,6 @@ type Result_BindvsAndCEBenchmarks() =
4141
}
4242
|> ignore
4343

44-
[<Benchmark>]
45-
member this.All_Success_And() =
46-
result {
47-
let! r1 = successSlowSync this.delay
48-
and! r2 = successSlowSync this.delay
49-
and! r3 = successSlowSync this.delay
50-
51-
return
52-
r1
53-
+ r2
54-
+ r3
55-
}
56-
|> ignore
5744

5845
[<Benchmark>]
5946
member this.Fail_First_Bind() =
@@ -69,20 +56,6 @@ type Result_BindvsAndCEBenchmarks() =
6956
}
7057
|> ignore
7158

72-
[<Benchmark>]
73-
member this.Fail_First_And() =
74-
result {
75-
let! r1 = errorSlowSync this.delay
76-
and! r2 = successSlowSync this.delay
77-
and! r3 = successSlowSync this.delay
78-
79-
return
80-
r1
81-
+ r2
82-
+ r3
83-
}
84-
|> ignore
85-
8659
[<Benchmark>]
8760
member this.Fail_Mid_Bind() =
8861
result {
@@ -97,20 +70,6 @@ type Result_BindvsAndCEBenchmarks() =
9770
}
9871
|> ignore
9972

100-
[<Benchmark>]
101-
member this.Fail_Mid_And() =
102-
result {
103-
let! r1 = successSlowSync this.delay
104-
and! r2 = errorSlowSync this.delay
105-
and! r3 = successSlowSync this.delay
106-
107-
return
108-
r1
109-
+ r2
110-
+ r3
111-
}
112-
|> ignore
113-
11473
[<Benchmark>]
11574
member this.Fail_Last_Bind() =
11675
result {
@@ -124,17 +83,3 @@ type Result_BindvsAndCEBenchmarks() =
12483
+ r3
12584
}
12685
|> ignore
127-
128-
[<Benchmark>]
129-
member this.Fail_Last_And() =
130-
result {
131-
let! r1 = successSlowSync this.delay
132-
and! r2 = successSlowSync this.delay
133-
and! r3 = errorSlowSync this.delay
134-
135-
return
136-
r1
137-
+ r2
138-
+ r3
139-
}
140-
|> ignore

benchmarks/benchmarks.fsproj

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
<?xml version="1.0" encoding="utf-8"?>
22
<Project Sdk="Microsoft.NET.Sdk">
33
<PropertyGroup>
4-
<TargetFramework>net7.0</TargetFramework>
4+
<TargetFramework>net8.0</TargetFramework>
55
<OutputType>Exe</OutputType>
66
<LangVersion>preview</LangVersion>
77
</PropertyGroup>
@@ -31,4 +31,4 @@
3131
<ProjectReference Include="..\src\FsToolkit.ErrorHandling.JobResult\FsToolkit.ErrorHandling.JobResult.fsproj" />
3232
</ItemGroup>
3333
<Import Project="..\.paket\Paket.Restore.targets" />
34-
</Project>
34+
</Project>

0 commit comments

Comments
 (0)