Skip to content

Bump version 0.3.1 → 0.3.2#119

Merged
Chris-Wolfgang merged 1 commit into
mainfrom
release/0.3.2
May 19, 2026
Merged

Bump version 0.3.1 → 0.3.2#119
Chris-Wolfgang merged 1 commit into
mainfrom
release/0.3.2

Conversation

@Chris-Wolfgang
Copy link
Copy Markdown
Owner

@Chris-Wolfgang Chris-Wolfgang commented May 18, 2026

Summary

Version bump for the v0.3.2 release. PATCH bump per Conventional Commits — one fix, two perf, one refactor, two chore since v0.3.1. No breaking changes.

⚠️ Prerequisite: merge #118 first

This branch only bumps the csproj version. The Meziantou.Analyzer bump (#118) is a separate PR that must land on main before the v0.3.2 tag is pushed, otherwise the analyzer bump won't make it into the release.

Required merge order:

  1. Merge Bump Meziantou.Analyzer from 3.0.77 to 3.0.85 #118 (Meziantou.Analyzer 3.0.77 → 3.0.85)
  2. Merge this PR (Bump version 0.3.1 → 0.3.2 #119, version bump)
  3. Push v0.3.2 tag to trigger release.yaml (NuGet publish + GitHub Release + docfx deploy)

Already-merged PRs included in v0.3.2 (since v0.3.1)

Pending PRs to merge before tagging

Behavior changes worth noting in release notes

  • Result.Success() now returns a shared singleton. Callers must not rely on reference identity to distinguish results — documented in the XML <remarks> and locked in by a test.
  • Result.AllSucceeded / AnyFailed now short-circuit on first failure and do not validate elements past the decisive index (previous up-front pre-scan always validated every element). A trailing null element after the deciding failure is no longer caught. Documented in <exception> XML and locked in by two new tests.
  • New runtime guard: passing a null element to any of Flatten / AllSucceeded / AnyFailed now throws ArgumentException with the index, instead of NullReferenceException.

Test plan

🤖 Generated with Claude Code

Changes since v0.3.1:

- fix: null-element validation in Result.Flatten / AllSucceeded /
  AnyFailed (#113) — previously calling `.Failed` on a null element
  threw NullReferenceException; now throws ArgumentException with the
  index of the offending element. Adds [NotNull] post-condition
  attribute to all three methods plus all Try.Run/RunAsync overloads.
  Polyfills NotNullAttribute for net462 / netstandard2.0.
- perf: Result.Success() now returns a cached singleton instead of
  allocating per call (#114). Behavior is locked in by a test using
  Assert.Same; XML docs warn callers not to rely on reference identity.
- perf: replace LINQ in Flatten / AllSucceeded / AnyFailed with index-
  based for-loops (#116). Flatten is now single-pass with a lazy
  StringBuilder so the common single-failure case has zero extra
  allocation. AllSucceeded / AnyFailed short-circuit on first
  failure, so a trailing null past the decisive element no longer
  throws (documented in <exception> XML and locked in by tests).
- refactor: simplify Result ctor validation (#115) — switch-when
  replaced with two guard-clause ifs. No behavior change; exception
  messages and ParamName preserved.
- chore: test cleanup (#117) — remove redundant inheritance-
  verification tests, fix tabs vs spaces, drop unused pragma.
- chore(deps): Bump Meziantou.Analyzer 3.0.77 → 3.0.85 (#118).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Copilot AI review requested due to automatic review settings May 18, 2026 16:44
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR prepares the library for the v0.3.2 release by updating the package version metadata in the core project file.

Changes:

  • Bumps Wolfgang.TryPattern package version from 0.3.1 to 0.3.2.

Comment thread src/Wolfgang.TryPattern/Wolfgang.TryPattern.csproj
@Chris-Wolfgang Chris-Wolfgang merged commit a95e4d5 into main May 19, 2026
12 checks passed
@Chris-Wolfgang Chris-Wolfgang deleted the release/0.3.2 branch May 19, 2026 00:56
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants