You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix: removeAt and updateAt now raise ArgumentException for out-of-range index
AsyncSeq.removeAt and AsyncSeq.updateAt previously silently returned the
source sequence unchanged when the index was >= the sequence length, which
is inconsistent with List.removeAt, Array.removeAt, and AsyncSeq.insertAt.
After the enumeration loop, check that the index was actually reached; if
not (i.e. i <= index at end), raise ArgumentException matching the message
used by AsyncSeq.insertAt.
Adds 6 new tests covering out-of-range and boundary indices.
Co-authored-by: Copilot <[email protected]>
Copy file name to clipboardExpand all lines: RELEASE_NOTES.md
+4Lines changed: 4 additions & 0 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -1,3 +1,7 @@
1
+
### 4.15.0
2
+
3
+
* Bug fix: `AsyncSeq.removeAt` and `AsyncSeq.updateAt` now raise `ArgumentException` when the index is greater than or equal to the sequence length, consistent with `List.removeAt`, `Array.removeAt`, and `AsyncSeq.insertAt`. Previously they silently returned the sequence unchanged.
4
+
1
5
### 4.14.0
2
6
3
7
* Added `AsyncSeq.mapAsyncParallelThrottled` — ordered, bounded-concurrency parallel map. Like `mapAsyncParallel` but limits the number of in-flight operations to `parallelism`, preventing unbounded resource use on large or infinite sequences.
0 commit comments