-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Bump to v1 * v1 release notes
- Loading branch information
Showing
2 changed files
with
26 additions
and
3 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,23 @@ | ||
# v1.0.0 | ||
|
||
First major release! This release is considered production-ready, and subsequent breaking changes will require bumping the major version. | ||
|
||
Also, v0 is now frozen and will not be receiving any more updates. | ||
|
||
This changelog lists the changes relative to v0.11.0. | ||
|
||
## Breaking changes | ||
|
||
- Return `(TSource Argmax, TResult Max)` from `Argmax()` instead of `(TResult Max, TSource Argmax)`; likewise for `Argmin()` | ||
- Capitalize property names in the returned tuple for `Enumerate()` | ||
- Change the behavior of `Argmin()` and `Argmax()` to match `Min()` and `Max()`. Specifically: | ||
- `null` is never returned as the min or max unless all values in the input enumerable are `null` or the input enumerable's elements are of a nullable type and the enumerable is empty. | ||
- If either `TSource` or `TResult` is non-nullable, the `Argmin()` and `Argmax()` of an empty enumerable will throw `InvalidArgumentException`. | ||
|
||
## New features | ||
|
||
- New `Optional.Of()` and `Optional.Flatten()` overloads for `Nullable<T>`. These both work to prevent ending up with an `Optional<Nullable<T>>`. | ||
- Add a `Collapse()` extension method for `Either<T, T>.` and `Result<T, T>` | ||
- `InvalidOperationException`s thrown from calling `Argmin()` or `Argmax()` on an empty enumerable now contain an error message. | ||
- Add a set of `Argmin()` and `Argmax()` overloads for numeric types and the nullable versions of those types. This parallels `Min()` and `Max()` and is needed for the null-handling behavior mentioned above. Specifically, `null` is normally considered less than any number, but we want to avoid returning it as the minimum. | ||
- Add a set of `Argmin()` and `Argmax()` overloads that do not take a selector function and simply return the index of the minimizing or maximizing element along with that element. |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters