v4.0.0a0
Pre-release
Pre-release
Breaking Changes
- Set ssl=True by default for AIOHTTPTransport (#538) (issue #529)
- New
TransportConnectionClosed
Exception replacingConnectionClosed
Exception (#536) websocket
attribute removed from transport, now using_connected
instead (#536)- Upgrade lastest websockets and Exceptions overhaul (#543)
Fixes
-
Fix httpx test deprecated warning (#542)
-
Refactor websockets transports (#536) :
Refactor WebSockets Transport with Dependency Injection Architecture
This major architectural improvement implements dependency injection patterns across the WebSockets transport layer, creating a more modular, testable, and extensible system:
- Created abstract AdapterConnection interface in common/adapters/connection.py
- Implemented concrete WebSocketsAdapter to wrap the websockets library
- Moved websockets_base.py to common/base.py maintaining better structure which is independant of the websockets library used
- Added new TransportConnectionClosed exception for clearer error handling
- Reorganized code with proper separation of concerns:
- Moved common functionality into dedicated adapters folder
- Isolated connection handling from transport business logic
- Separated ListenerQueue into its own file for better modularity