Laravel Version
11.31
PHP Version
8.2
Database Driver & Version
Mysql
Description
Problem Description
Laravel's auto-discovery for events and listeners, along with its automatic linking, is a fantastic feature. However, there is no way to disable this functionality.
When you manually specify listeners for each event in the AppServiceProvider and then run php artisan event:list, the listeners are listed twice—once from auto-discovery and once from manual registration.
This creates a conflict, especially when you want to control the order of execution. Currently:
- The execution order of listeners is unclear.
- There is no documented way to define or enforce the order of execution.
Suggested Improvement
Laravel should provide a method to disable the auto-linking of events and listeners. This would allow developers to manually specify listeners and their order, ensuring a predictable and controlled execution flow.
Related Issues I found reporting similar concerns, such as this one: #52714
Steps To Reproduce
Follow steps into this issue: #52714