Skip to content

Releases

v2.0.0

Choose a tag to compare

@github-actions github-actions released this 12 Nov 22:36
840b691

2.0.0 (2026-11-12)

Highlights

A ground-up rewrite for .NET 11 and C# 15 unions. The 1.x line is retired.

  • Maybe<T> is a C# 15 union with exactly two cases, T and None: values convert implicitly, a switch over
    both is exhaustive, and pattern matching works in generic code too.
  • No invalid states: default(Maybe<T>) is None, a null never becomes a value, and there is no .Value or
    any other throwing accessor.
  • Functional API: Match, OrDefault, Map, Bind, Filter, OrElse, Zip, Fold, Iter, Tap,
    Flatten, and query syntax (from, where, let, select).
  • Collections and interop: Choose, Traverse, Sequence, FirstOrNone, SingleOrNone, GetValueOrNone,
    FromNullable, ToNullable and Maybe.Parse<T>.
  • Ordering like Option in F# (None first), with no </> operators on purpose.
  • System.Text.Json without configuration: a value is written as itself and None as null. Works with
    source-generated contexts.
  • Async: *Async counterparts returning ValueTask, plus pipelines and query syntax over Task<Maybe<T>> and
    ValueTask<Maybe<T>> with a single await.
  • Zero allocations for value-type T (checked on every build); trimming and Native AOT compatible.
  • Requires .NET 11.

Performance Improvements

  • allocate nothing in async queries with two from clauses (590045a)

v2.0.0-beta.2

v2.0.0-beta.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 07 Oct 19:52
5f1df90

2.0.0-beta.2 (2026-10-07)

Performance Improvements

  • allocate nothing for value-type maybes and add quality checks (#28) (dbc61bf)

v2.0.0-beta.1

v2.0.0-beta.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 29 Sep 07:56
2c42171

2.0.0-beta.1 (2026-09-29)

Features

  • add JSON support for Maybe<T> with System.Text.Json (#22) (37d8fe0)

v2.0.0-alpha.9

v2.0.0-alpha.9 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 29 Sep 06:59
15d8428

2.0.0-alpha.9 (2026-09-29)

Features

  • add sequence, traverse, interop, and collection helpers (#18) (7eb72c5)

v2.0.0-alpha.10

v2.0.0-alpha.10 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 29 Sep 07:33
e4ed9fb

2.0.0-alpha.10 (2026-09-29)

Features

  • implement ordering for Maybe values and update tests (#20) (94c75f6)

v2.0.0-alpha.8

v2.0.0-alpha.8 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 28 Sep 19:44
080331f

2.0.0-alpha.8 (2026-09-28)

Features

  • add combinators (OrElse, Zip, Fold, Iter, Tap, Flatten) and the… (#16) (1664cb8)

v2.0.0-alpha.7

v2.0.0-alpha.7 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 28 Sep 19:19
170493c

2.0.0-alpha.7 (2026-09-28)

Features

  • add async query syntax support for maybes (#14) (2e296b3)

v2.0.0-alpha.6

v2.0.0-alpha.6 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 28 Sep 18:52
4adcd35

2.0.0-alpha.6 (2026-09-28)

Features

  • add async pipeline support for Task<Maybe<T>> and ValueTask<May… (#12) (807b0dd)

v2.0.0-alpha.5

v2.0.0-alpha.5 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 28 Sep 18:39
4027294

2.0.0-alpha.5 (2026-09-28)

Features

  • add asynchronous API for Maybe operations (#10) (143833a)

v2.0.0-alpha.4

v2.0.0-alpha.4 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 28 Sep 18:17
20cf5dd

2.0.0-alpha.4 (2026-09-28)

Features

  • add LINQ query syntax for Maybe types (#8) (249a5ab)