Hi 1.5 RFC: https://wiki.php.net/rfc/true_async
Here’s the fifth version of the RFC with the updates made after the 1.4 discussion. Starting from 2025-11-03, there will be a two-week discussion period. **Changelog:** * Added FutureLike interface methods: cancel(), isCompleted(), isCancelled() * Renamed Coroutine::isFinished() to Coroutine::isCompleted() * Clarified exit/die behavior: always triggers Graceful Shutdown mode regardless of where called * Added rationale for “Cancellable by design” policy: explains why default cancellability reduces code complexity for read-heavy PHP workloads * RFC structure improvements: reorganized Cancellation section with proper subsections hierarchy * Moved “Coroutine lifetime” as subsection under Coroutine section * Extended glossary with Awaitable, Suspension, Graceful Shutdown, and Deadlock terms * Introduced FutureLike interface with single-assignment semantics and changed await() signature to accept FutureLike instead of Awaitable for type safety * Split RFC: Moved Scope and structured concurrency functionality to separate Scope RFC. Base RFC now focuses on core async primitives (coroutines, await, cancellation) I decided not to wait until Monday and made the changes today. If anyone has read version 1.4 and has comments on it, they’re still relevant. The Scope API has been moved to a separate RFC: https://wiki.php.net/rfc/true_async_scope ---- Best Regards, Ed
