diff --git a/release-notes.txt b/release-notes.txt index 4bbad5a..4927a8a 100644 --- a/release-notes.txt +++ b/release-notes.txt @@ -2,6 +2,7 @@ Release notes: Unreleased + - test: rename `SideEffect` module to `SideEffects` in TaskSeq.Concat.Tests.fs, TaskSeq.Delay.Tests.fs, and TaskSeq.Item.Tests.fs for consistency with the rest of the test suite (50+ files already use the plural form) - test: add SideEffects module to TaskSeq.Using.Tests.fs; 7 new tests verify Dispose/DisposeAsync call counts, re-iteration semantics, and early-termination disposal for use and use! CE bindings - perf: pairwise, distinctUntilChanged, distinctUntilChangedWith, distinctUntilChangedWithAsync now use explicit enumerator + while! instead of ValueOption tracking + for-in loop, eliminating per-element struct match overhead - test: add SideEffects module to TaskSeq.Unfold.Tests.fs, verifying generator call counts, re-iteration behaviour, early-termination via take, and exception propagation diff --git a/src/FSharp.Control.TaskSeq.Test/TaskSeq.Concat.Tests.fs b/src/FSharp.Control.TaskSeq.Test/TaskSeq.Concat.Tests.fs index 5dd8e34..5ae04b9 100644 --- a/src/FSharp.Control.TaskSeq.Test/TaskSeq.Concat.Tests.fs +++ b/src/FSharp.Control.TaskSeq.Test/TaskSeq.Concat.Tests.fs @@ -181,7 +181,7 @@ module Immutable = |> consumeTaskSeq |> should throwAsyncExact typeof -module SideEffect = +module SideEffects = [] let ``TaskSeq-concat executes side effects of nested (taskseq)`` () = let mutable i = 0 diff --git a/src/FSharp.Control.TaskSeq.Test/TaskSeq.Delay.Tests.fs b/src/FSharp.Control.TaskSeq.Test/TaskSeq.Delay.Tests.fs index c437beb..0f9e458 100644 --- a/src/FSharp.Control.TaskSeq.Test/TaskSeq.Delay.Tests.fs +++ b/src/FSharp.Control.TaskSeq.Test/TaskSeq.Delay.Tests.fs @@ -30,7 +30,7 @@ module Immutable = |> TaskSeq.delay |> validateSequence -module SideEffect = +module SideEffects = [] let ``TaskSeq-delay executes side effects`` () = task { let mutable i = 0 diff --git a/src/FSharp.Control.TaskSeq.Test/TaskSeq.Item.Tests.fs b/src/FSharp.Control.TaskSeq.Test/TaskSeq.Item.Tests.fs index d2fb270..376b748 100644 --- a/src/FSharp.Control.TaskSeq.Test/TaskSeq.Item.Tests.fs +++ b/src/FSharp.Control.TaskSeq.Test/TaskSeq.Item.Tests.fs @@ -105,7 +105,7 @@ module Immutable = tail |> should equal (Some 10) } -module SideEffect = +module SideEffects = [)>] let ``TaskSeq-item prove it searches the whole sequence`` variant = task { let ts = Gen.getSeqWithSideEffect variant