Skip to content

v2.1.0: bug fixes, new features, tests, and CI — no API/ABI breaks#46

Merged
Katze719 merged 8 commits into
mainfrom
feat/v2.1-improvements
May 28, 2026
Merged

v2.1.0: bug fixes, new features, tests, and CI — no API/ABI breaks#46
Katze719 merged 8 commits into
mainfrom
feat/v2.1-improvements

Conversation

@Katze719
Copy link
Copy Markdown
Owner

@Katze719 Katze719 commented Apr 9, 2026

Bug fixes:

  • when_all no longer requires default-constructible T
  • when_any: exponential backoff, randomized start, empty-input guard
  • ScheduledThreadPoolT::insert_task rejects tasks after shutdown
  • ChaosController reads actual thread priority instead of hardcoded normal()
  • ErrorHandler releases lock before invoking callbacks
  • PoolWithErrors doc comment corrected (implicitly movable)

Performance:

  • distribute_affinities_by_numa calls read_topology() once (was O(n))
  • New overloads accepting pre-read CpuTopology

New features:

  • InlinePool: deterministic single-threaded pool for unit tests
  • task_group: structured concurrency with scoped wait
  • PoolWithErrors forwarding constructor for pool-specific args
  • apply_profile_detailed() with per-step error codes
  • Expanded C++20 module exports (futures, pools, coroutine helpers)

Tests: 65 new test cases (pool v2 APIs, futures, registry queries, coroutines)
CI: ASan, TSan, UBSan, coverage, and clang-tidy workflows

Katze719 added 8 commits April 9, 2026 22:52
Bug fixes:
- when_all<T> no longer requires default-constructible T
- when_any: exponential backoff, randomized start, empty-input guard
- ScheduledThreadPoolT::insert_task rejects tasks after shutdown
- ChaosController reads actual thread priority instead of hardcoded normal()
- ErrorHandler releases lock before invoking callbacks
- PoolWithErrors doc comment corrected (implicitly movable)

Performance:
- distribute_affinities_by_numa calls read_topology() once (was O(n))
- New overloads accepting pre-read CpuTopology

New features:
- InlinePool: deterministic single-threaded pool for unit tests
- task_group<Pool>: structured concurrency with scoped wait
- PoolWithErrors forwarding constructor for pool-specific args
- apply_profile_detailed() with per-step error codes
- Expanded C++20 module exports (futures, pools, coroutine helpers)

Tests: 65 new test cases (pool v2 APIs, futures, registry queries, coroutines)
CI: ASan, TSan, UBSan, coverage, and clang-tidy workflows
@Katze719 Katze719 marked this pull request as ready for review May 28, 2026 19:03
@Katze719 Katze719 merged commit 398896a into main May 28, 2026
74 checks passed
@Katze719 Katze719 deleted the feat/v2.1-improvements branch May 28, 2026 19:03
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.

1 participant