Implements specific exception classes for all Discord API error codes to provide more granular error handling and better debugging experience.
Creates individual exception classes for each Discord error code (10001-520006) with descriptive names and documentation strings that include the official error messages and codes.
Updates HTTP client to automatically map Discord error codes to their corresponding exception classes, allowing developers to catch specific error types rather than generic HTTP exceptions.
Includes comprehensive test coverage for the new error code mapping functionality to ensure correct exception raising based on API responses.
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.
Introduces a flexible caching infrastructure with time-to-live support and configurable member caching based on status, voice state, and join events.
Adds AudioSink abstract base class to support audio output handling in voice connections.
Replaces direct dictionary access with cache objects throughout the client, enabling automatic expiration and intelligent member filtering based on user-defined flags.
Updates guild parsing to incorporate presence and voice state data for more accurate member caching decisions.
Introduces comprehensive invite handling capabilities including creation, deletion, and retrieval operations.
Implements invite data model with proper parsing and representation methods to handle Discord invite objects and their metadata.
Provides HTTP client methods for all invite-related API endpoints with appropriate error handling and response processing.
Includes documentation with practical examples for common invite operations.