Skip to content

refactor(internal): lift panic-safe fan-out waking - #260

Merged
tisonkun merged 1 commit into
apache:mainfrom
tisonkun:codex/lift-internal-wake-all
Aug 31, 2026
Merged

refactor(internal): lift panic-safe fan-out waking#260
tisonkun merged 1 commit into
apache:mainfrom
tisonkun:codex/lift-internal-wake-all

Conversation

@tisonkun

Copy link
Copy Markdown
Member

Summary

  • move the generic panic-safe wake_all helper from internal::waitset to the internal module boundary
  • make all fan-out callers depend directly on crate::internal::wake_all
  • compile waitset only for features that use WaitSet or WakerToken

Design Notes

wake_all is shared by wait sets, wait lists, countdown state, and semaphore-backed primitives. Keeping it under waitset made unrelated feature builds compile the waiter arena solely to access the helper. This change restores the module boundary without changing behavior or public API.

Validation

  • cargo x check
  • cargo x test
  • cargo x lint

wake_all is shared by WaitSet, WaitList, countdown, and semaphore-backed primitives, so keeping it inside waitset couples unrelated feature builds to the waiter arena. Move the helper to the internal module boundary and restrict waitset compilation to features that actually use WaitSet or WakerToken.

Signed-off-by: tison <wander4096@gmail.com>
@tisonkun
tisonkun enabled auto-merge (squash) August 31, 2026 17:32
@tisonkun
tisonkun merged commit fba31fd into apache:main Aug 31, 2026
10 checks passed
@tisonkun
tisonkun deleted the codex/lift-internal-wake-all branch September 2, 2026 11:30
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