Skip to content

refactor: replace ValueCell and standardize first-party API docs - #424

Merged
tisonkun merged 4 commits into
apache:mainfrom
tisonkun:refactor/third-party-text-and-value-cell
Nov 13, 2026
Merged

tisonkun merged 4 commits into
apache:mainfrom
tisonkun:refactor/third-party-text-and-value-cell

Conversation

@tisonkun

@tisonkun tisonkun commented Nov 13, 2026 •

Copy link
Copy Markdown
Member

Summary

Several primitives retained verbatim or lightly adapted third-party documentation, examples, comments, and tests alongside Asyncband's own contracts, and internal::ValueCell still carried a Tokio-derived SetOnce wrapper.

  • Replace asyncband/src/internal/value_cell.rs with a first-party ValueCell<T> built on AtomicBool publication and UnsafeCell<MaybeUninit<T>>, update LazyCell and OnceCell call sites, and remove value_cell.rs from third-party LICENSE notices.
  • Clarify in LICENSE that the standard ASF header on asyncband/src/once/once_cell/mod.rs covers Asyncband's modifications while retained Tokio-derived portions remain under the MIT License, matching the existing Mutex, RwLock, and Semaphore entries.
  • Standardize public API contract documentation (Returns, Errors, Cancellation, Panics, Deadlocks, and Examples) across all primitives and codify these documentation guidelines in AGENTS.md.
  • Rewrite remaining upstream-derived doc comments, doctests, inline comments, and semaphore integration tests from Asyncband's observable contracts while preserving provenance headers where implementation code derives from upstream sources.

Replace the Cargo/Tokio-style '# Cancel safety' heading with '# Cancellation' across AGENTS.md and crate docs, rewrite remaining verbatim or closely adapted upstream comments and examples in singleflight, once_map, once, barrier, broadcast, mutex, semaphore, and oneshot, fix misleading/second-person phrasing and US spelling inconsistencies, and drop unqualified cancellation-safety claims.
@tisonkun tisonkun changed the title refactor: replace ValueCell and rewrite remaining third-party text refactor: replace ValueCell and standardize first-party API docs Nov 13, 2026
@tisonkun
tisonkun enabled auto-merge (squash) November 13, 2026 08:34
@tisonkun
tisonkun merged commit 8ee2520 into apache:main Nov 13, 2026
9 checks passed
@tisonkun
tisonkun deleted the refactor/third-party-text-and-value-cell branch November 13, 2026 08:42
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