You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Use Revolt as the base namespace instead of EventLoop so end users can reuse existing components (like amphp) that depend on the Revolt PHP ecosystem. End users only need to replace revolt/event-loop with ext-eventloop in their composer.json to make this extension a drop-in replacement.
In end user composer.json end user just need to replace implementation since the requirement already fulfilled with this extension
The implementation can be replaced, but it should be done intentionally and manually.
This library is not a polyfill like the ones Symfony provides. It is a native implementation that exposes an EventLoop API without relying on PHP userland code for the event loop itself. It is a very low-level implementation, intended to help build asynchronous applications without having to implement the event loop in PHP.
Because of that, I do not see a reason to use replace here. In Symfony’s case, polyfills are written in PHP to make migration to newer PHP versions easier while waiting for new features to become available.
Here, the correct approach is simply to migrate to this package directly, without replace.
Activity
axcherednikov commentedon Jun 4, 2026
Hello!)
The implementation can be replaced, but it should be done intentionally and manually.
This library is not a polyfill like the ones Symfony provides. It is a native implementation that exposes an EventLoop API without relying on PHP userland code for the event loop itself. It is a very low-level implementation, intended to help build asynchronous applications without having to implement the event loop in PHP.
Because of that, I do not see a reason to use
replacehere. In Symfony’s case, polyfills are written in PHP to make migration to newer PHP versions easier while waiting for new features to become available.Here, the correct approach is simply to migrate to this package directly, without
replace.