Replaces deprecated get_event_loop() with proper running loop detection and fallback to new loop creation for better asyncio compatibility.
Fixes test suite by replacing manual Client instantiation with proper constructor calls, ensuring all internal caches and attributes are correctly initialized.
Updates cache access patterns to use new cache API methods consistently across the codebase.
Lowers minimum Python requirement from 3.11 to 3.10 to increase compatibility while updating CI to use Python 3.13 for testing.
Extracts hybrid command functionality into a separate module to improve code organization and reduce complexity in the main commands module.
Updates test timeouts and dependency versions to ensure reliable test execution and modern package compatibility.
The _compute_permissions helper function has been simplified by delegating the complex permission calculation logic to a new channel.permissions_for(member) method.
This refactoring encapsulates the permission logic within the Channel model, where it belongs. It removes duplicate and complex code from the command decorator, improving maintainability and separation of concerns.
The tests for requires_permissions have been updated to mock the new permissions_for method, resulting in cleaner tests that are no longer concerned with the internal implementation details of how permissions are calculated.
* Add reload_extension helper
* Removes unused message reaction event handling
Eliminates dead code for message reaction events that were not being processed or utilized by the application.
Cleans up the event dispatcher by removing the unused parser method and event mappings for reaction add/remove events.