Skip to content

lib-v1.0.0-preview.5

Pre-release
Pre-release

Choose a tag to compare

1.0.0-preview.5 — August 25, 2026

A guard against blank strings, and four chain-ordering fixes so a specification reads the same regardless of the order it was written in.

✨ New

  • New NotBlank() on Any.String() — requires at least one non-whitespace character, the guard NonEmpty() alone never covered since an entirely-whitespace string is not empty (ADR-0088).

🐛 Bug Fixes

  • JD015 now measures a string's length budget the way the generator actually lays it out, so a re-declared prefix or a NotBlank() filler position is no longer double-counted or missed.
  • An Any.Enum<T>() pool emptied by Except(...) now honours AllowingCombinations() regardless of which call was written first.
  • A flag combination named in OneOf is now accepted wherever it is written, with no need for AllowingCombinations() at all.
  • A distinct collection (Any.SetOf(...) and similar) is now judged on the whole finished chain, so Containing, ContainingAny and a finer Distinct(comparer) are honoured regardless of where WithCount sits in the chain.
  • JD030 now counts every anchored literal (StartingWith, EndingWith, Containing) when it reports the interval a chain draws.