diff --git a/.github/workflows/continuous_integration.yml b/.github/workflows/continuous_integration.yml index 44a8f0bc..971cd029 100644 --- a/.github/workflows/continuous_integration.yml +++ b/.github/workflows/continuous_integration.yml @@ -13,15 +13,12 @@ jobs: - uses: actions/checkout@v2 - - name: Install .NET SDK 3.1.x + - name: Install .NET SDKs uses: actions/setup-dotnet@v1 with: - dotnet-version: 3.1.x - - - name: Install .NET SDK 5.0.103 - uses: actions/setup-dotnet@v1 - with: - dotnet-version: 5.0.103 + dotnet-version: | + 3.1.x + 6.0.x - name: Restore run: dotnet restore src/Elmish.WPF.sln diff --git a/.github/workflows/pull_request.yml b/.github/workflows/pull_request.yml index 456ec9f3..13a7370c 100644 --- a/.github/workflows/pull_request.yml +++ b/.github/workflows/pull_request.yml @@ -15,15 +15,12 @@ jobs: - uses: actions/checkout@v2 - - name: Install .NET SDK 3.1.x + - name: Install .NET SDKs uses: actions/setup-dotnet@v1 with: - dotnet-version: 3.1.x - - - name: Install .NET SDK 5.0.103 - uses: actions/setup-dotnet@v1 - with: - dotnet-version: 5.0.103 + dotnet-version: | + 3.1.x + 6.0.x - name: Restore run: dotnet restore src/Elmish.WPF.sln diff --git a/RELEASE_NOTES.md b/RELEASE_NOTES.md index f163504d..dc4aa873 100644 --- a/RELEASE_NOTES.md +++ b/RELEASE_NOTES.md @@ -5,6 +5,9 @@ * Improved caching effect to not invalidating the cache too early (an issue introduced in version `3.5.3 `via PR 181) * Renamed `Binding.SetMsgWithModel` to `Binding.setMsgWithModel` (breaking public API added in `4.0.0-beta-42`) * Fixed bug with `mapMsgWithModel` and `setMsgWithModel` where the original model was sometimes given (an issue introduced in `4.0.0-beta-42`) +* Replaced framework targets `net461` and `net5.0-windows` with `net480` and `net6.0-windows` respectively. +* Updated minimum `FSharp.Core` version to `6.0.5`. +* Updated minimum `Microsoft.Extensions.Logging.Abstractions` version to `6.0.1`. #### 4.0.0-beta-43 * Added `WpfProgram.withElmishErrorHandler` diff --git a/src/Elmish.WPF.Tests/Elmish.WPF.Tests.fsproj b/src/Elmish.WPF.Tests/Elmish.WPF.Tests.fsproj index f99365e4..60a4a9c6 100644 --- a/src/Elmish.WPF.Tests/Elmish.WPF.Tests.fsproj +++ b/src/Elmish.WPF.Tests/Elmish.WPF.Tests.fsproj @@ -5,7 +5,7 @@ - net5.0-windows;netcoreapp3.1;net461 + net6.0-windows;netcoreapp3.1;net480 true $(OtherFlags) --warnon:1182 @@ -22,13 +22,13 @@ - - - - - + + + + + - + all runtime; build; native; contentfiles; analyzers; buildtransitive diff --git a/src/Elmish.WPF.Tests/MergeTests.fs b/src/Elmish.WPF.Tests/MergeTests.fs index 0e773a64..3ab11048 100644 --- a/src/Elmish.WPF.Tests/MergeTests.fs +++ b/src/Elmish.WPF.Tests/MergeTests.fs @@ -120,8 +120,8 @@ let ``starting with random items, when merging after a move, should contain the let! list = GenX.auto let! movedItem = Gen.guid let! additionalItem = Gen.guid - let! i1 = (0, list.Length + 1) ||> Range.constant |> Gen.int - let! i2 = (0, list.Length + 1) ||> Range.constant |> Gen.int |> GenX.notEqualTo i1 + let! i1 = (0, list.Length + 1) ||> Range.constant |> Gen.int32 + let! i2 = (0, list.Length + 1) ||> Range.constant |> Gen.int32 |> GenX.notEqualTo i1 let list = additionalItem :: list let list1 = list |> List.insert i1 movedItem @@ -143,7 +143,7 @@ let ``starting with random items, when merging after a replacement, should conta let! list1Head = Gen.guid let! list1Tail = GenX.auto let! list2Replacement = Gen.guid - let! replcementIndex = (0, list1Tail.Length) ||> Range.constant |> Gen.int + let! replcementIndex = (0, list1Tail.Length) ||> Range.constant |> Gen.int32 let list1 = list1Head :: list1Tail let observableCollection = ObservableCollection<_> list1 @@ -165,7 +165,7 @@ let ``starting with random items, when merging after a replacement, should conta let ``starting with random items, when merging after swapping two adjacent items, should contain the merged items and never call create and call update exactly once for each item`` () = Property.check <| property { let! list1 = Gen.guid |> Gen.list (Range.constant 2 50) - let! firstSwapIndex = (0, list1.Length - 2) ||> Range.constant |> Gen.int + let! firstSwapIndex = (0, list1.Length - 2) ||> Range.constant |> Gen.int32 let observableCollection = ObservableCollection<_> list1 let array2 = @@ -186,8 +186,8 @@ let ``starting with random items, when merging after swapping two adjacent items let ``starting with random items, when merging after swapping two items, should contain the merged items and never call create and call update exactly once for each item`` () = Property.check <| property { let! list1 = Gen.guid |> Gen.list (Range.constant 2 50) - let! i = (0, list1.Length - 1) ||> Range.constant |> Gen.int - let! j = (0, list1.Length - 1) ||> Range.constant |> Gen.int |> GenX.notEqualTo i + let! i = (0, list1.Length - 1) ||> Range.constant |> Gen.int32 + let! j = (0, list1.Length - 1) ||> Range.constant |> Gen.int32 |> GenX.notEqualTo i let observableCollection = ObservableCollection<_> list1 let array2 = diff --git a/src/Elmish.WPF/Elmish.WPF.fsproj b/src/Elmish.WPF/Elmish.WPF.fsproj index a508cb0d..2c86640f 100644 --- a/src/Elmish.WPF/Elmish.WPF.fsproj +++ b/src/Elmish.WPF/Elmish.WPF.fsproj @@ -5,7 +5,7 @@ - net5.0-windows;netcoreapp3.1;net461 + net6.0-windows;netcoreapp3.1;net480 true true true @@ -52,11 +52,11 @@ - + - + diff --git a/src/Samples/Capabilities.Core/Capabilities.Core.fsproj b/src/Samples/Capabilities.Core/Capabilities.Core.fsproj index eba74c2c..e32b940a 100644 --- a/src/Samples/Capabilities.Core/Capabilities.Core.fsproj +++ b/src/Samples/Capabilities.Core/Capabilities.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -15,9 +15,9 @@ - - - + + + diff --git a/src/Samples/Capabilities/Capabilities.csproj b/src/Samples/Capabilities/Capabilities.csproj index c6bf28ea..4ebb9ae4 100644 --- a/src/Samples/Capabilities/Capabilities.csproj +++ b/src/Samples/Capabilities/Capabilities.csproj @@ -1,14 +1,14 @@  - net5.0-windows + net6.0-windows true Exe true - + diff --git a/src/Samples/EventBindingsAndBehaviors.Core/EventBindingsAndBehaviors.Core.fsproj b/src/Samples/EventBindingsAndBehaviors.Core/EventBindingsAndBehaviors.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/EventBindingsAndBehaviors.Core/EventBindingsAndBehaviors.Core.fsproj +++ b/src/Samples/EventBindingsAndBehaviors.Core/EventBindingsAndBehaviors.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/EventBindingsAndBehaviors/EventBindingsAndBehaviors.csproj b/src/Samples/EventBindingsAndBehaviors/EventBindingsAndBehaviors.csproj index 3a3a839e..1ae620a7 100644 --- a/src/Samples/EventBindingsAndBehaviors/EventBindingsAndBehaviors.csproj +++ b/src/Samples/EventBindingsAndBehaviors/EventBindingsAndBehaviors.csproj @@ -1,14 +1,14 @@  - net5.0-windows + net6.0-windows true Exe true - + diff --git a/src/Samples/FileDialogs.Core/FileDialogs.Core.fsproj b/src/Samples/FileDialogs.Core/FileDialogs.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/FileDialogs.Core/FileDialogs.Core.fsproj +++ b/src/Samples/FileDialogs.Core/FileDialogs.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/FileDialogs/FileDialogs.csproj b/src/Samples/FileDialogs/FileDialogs.csproj index 901d1c76..a35f1ff9 100644 --- a/src/Samples/FileDialogs/FileDialogs.csproj +++ b/src/Samples/FileDialogs/FileDialogs.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/FileDialogsCmdMsg.Core/FileDialogsCmdMsg.Core.fsproj b/src/Samples/FileDialogsCmdMsg.Core/FileDialogsCmdMsg.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/FileDialogsCmdMsg.Core/FileDialogsCmdMsg.Core.fsproj +++ b/src/Samples/FileDialogsCmdMsg.Core/FileDialogsCmdMsg.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/FileDialogsCmdMsg/FileDialogsCmdMsg.csproj b/src/Samples/FileDialogsCmdMsg/FileDialogsCmdMsg.csproj index 35250b66..491126c0 100644 --- a/src/Samples/FileDialogsCmdMsg/FileDialogsCmdMsg.csproj +++ b/src/Samples/FileDialogsCmdMsg/FileDialogsCmdMsg.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/Multiselect.Core/Multiselect.Core.fsproj b/src/Samples/Multiselect.Core/Multiselect.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/Multiselect.Core/Multiselect.Core.fsproj +++ b/src/Samples/Multiselect.Core/Multiselect.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/Multiselect/Multiselect.csproj b/src/Samples/Multiselect/Multiselect.csproj index 1f6add9b..4277feb5 100644 --- a/src/Samples/Multiselect/Multiselect.csproj +++ b/src/Samples/Multiselect/Multiselect.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/NewWindow.Core/NewWindow.Core.fsproj b/src/Samples/NewWindow.Core/NewWindow.Core.fsproj index 11a05895..e1b8e0cb 100644 --- a/src/Samples/NewWindow.Core/NewWindow.Core.fsproj +++ b/src/Samples/NewWindow.Core/NewWindow.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -17,9 +17,9 @@ - - - + + + diff --git a/src/Samples/NewWindow/NewWindow.csproj b/src/Samples/NewWindow/NewWindow.csproj index d13621d4..f3c231ff 100644 --- a/src/Samples/NewWindow/NewWindow.csproj +++ b/src/Samples/NewWindow/NewWindow.csproj @@ -1,14 +1,14 @@  - net5.0-windows + net6.0-windows true Exe true - + diff --git a/src/Samples/OneWaySeq.Core/OneWaySeq.Core.fsproj b/src/Samples/OneWaySeq.Core/OneWaySeq.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/OneWaySeq.Core/OneWaySeq.Core.fsproj +++ b/src/Samples/OneWaySeq.Core/OneWaySeq.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/OneWaySeq/OneWaySeq.csproj b/src/Samples/OneWaySeq/OneWaySeq.csproj index 991c14de..a2f0ecfe 100644 --- a/src/Samples/OneWaySeq/OneWaySeq.csproj +++ b/src/Samples/OneWaySeq/OneWaySeq.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/SingleCounter.Core/SingleCounter.Core.fsproj b/src/Samples/SingleCounter.Core/SingleCounter.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/SingleCounter.Core/SingleCounter.Core.fsproj +++ b/src/Samples/SingleCounter.Core/SingleCounter.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/SingleCounter/SingleCounter.csproj b/src/Samples/SingleCounter/SingleCounter.csproj index ea698201..f17d11b3 100644 --- a/src/Samples/SingleCounter/SingleCounter.csproj +++ b/src/Samples/SingleCounter/SingleCounter.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/Sticky.Core/Sticky.Core.fsproj b/src/Samples/Sticky.Core/Sticky.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/Sticky.Core/Sticky.Core.fsproj +++ b/src/Samples/Sticky.Core/Sticky.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/Sticky/Sticky.csproj b/src/Samples/Sticky/Sticky.csproj index 11f4afbb..b63a0068 100644 --- a/src/Samples/Sticky/Sticky.csproj +++ b/src/Samples/Sticky/Sticky.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/SubModel.Core/SubModel.Core.fsproj b/src/Samples/SubModel.Core/SubModel.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/SubModel.Core/SubModel.Core.fsproj +++ b/src/Samples/SubModel.Core/SubModel.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/SubModel/SubModel.csproj b/src/Samples/SubModel/SubModel.csproj index 2eb3e4ca..893c73cd 100644 --- a/src/Samples/SubModel/SubModel.csproj +++ b/src/Samples/SubModel/SubModel.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/SubModelOpt.Core/SubModelOpt.Core.fsproj b/src/Samples/SubModelOpt.Core/SubModelOpt.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/SubModelOpt.Core/SubModelOpt.Core.fsproj +++ b/src/Samples/SubModelOpt.Core/SubModelOpt.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/SubModelOpt/SubModelOpt.csproj b/src/Samples/SubModelOpt/SubModelOpt.csproj index 371a821e..6f2fce0e 100644 --- a/src/Samples/SubModelOpt/SubModelOpt.csproj +++ b/src/Samples/SubModelOpt/SubModelOpt.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/SubModelSelectedItem.Core/SubModelSelectedItem.Core.fsproj b/src/Samples/SubModelSelectedItem.Core/SubModelSelectedItem.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/SubModelSelectedItem.Core/SubModelSelectedItem.Core.fsproj +++ b/src/Samples/SubModelSelectedItem.Core/SubModelSelectedItem.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/SubModelSelectedItem/SubModelSelectedItem.csproj b/src/Samples/SubModelSelectedItem/SubModelSelectedItem.csproj index 8abce211..4f651110 100644 --- a/src/Samples/SubModelSelectedItem/SubModelSelectedItem.csproj +++ b/src/Samples/SubModelSelectedItem/SubModelSelectedItem.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/SubModelSeq.Core/SubModelSeq.Core.fsproj b/src/Samples/SubModelSeq.Core/SubModelSeq.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/SubModelSeq.Core/SubModelSeq.Core.fsproj +++ b/src/Samples/SubModelSeq.Core/SubModelSeq.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/SubModelSeq/SubModelSeq.csproj b/src/Samples/SubModelSeq/SubModelSeq.csproj index 05be2f49..bdd7e9fd 100644 --- a/src/Samples/SubModelSeq/SubModelSeq.csproj +++ b/src/Samples/SubModelSeq/SubModelSeq.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/UiBoundCmdParam.Core/UiBoundCmdParam.Core.fsproj b/src/Samples/UiBoundCmdParam.Core/UiBoundCmdParam.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/UiBoundCmdParam.Core/UiBoundCmdParam.Core.fsproj +++ b/src/Samples/UiBoundCmdParam.Core/UiBoundCmdParam.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/UiBoundCmdParam/UiBoundCmdParam.csproj b/src/Samples/UiBoundCmdParam/UiBoundCmdParam.csproj index cd649f17..958979ee 100644 --- a/src/Samples/UiBoundCmdParam/UiBoundCmdParam.csproj +++ b/src/Samples/UiBoundCmdParam/UiBoundCmdParam.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true diff --git a/src/Samples/Validation.Core/Validation.Core.fsproj b/src/Samples/Validation.Core/Validation.Core.fsproj index 61e18368..d8c8341f 100644 --- a/src/Samples/Validation.Core/Validation.Core.fsproj +++ b/src/Samples/Validation.Core/Validation.Core.fsproj @@ -5,7 +5,7 @@ - net5.0-windows + net6.0-windows @@ -13,9 +13,9 @@ - - - + + + diff --git a/src/Samples/Validation/Validation.csproj b/src/Samples/Validation/Validation.csproj index d73d4dcb..6efa77e6 100644 --- a/src/Samples/Validation/Validation.csproj +++ b/src/Samples/Validation/Validation.csproj @@ -1,7 +1,7 @@  - net5.0-windows + net6.0-windows true Exe true