HTTP Client Migration to httpx2 - Parsian and Saman async/sync adapters now use httpx2 for client construction
and httpx2.RequestError handling in place of httpx.
AsyncParsianShaparakPaymentAdapter builds its Zeep async transport with httpx2.AsyncClient.
SamanShaparakPaymentAdapter, SamanNeoPgShaparakPaymentAdapter, AsyncSamanShaparakPaymentAdapter, and
AsyncSamanNeoPgShaparakPaymentAdapter use httpx2.Client / httpx2.AsyncClient and catch
httpx2.RequestError for token, verify, and reverse flows.
Type-Hint Cleanup in Session Managers - StarRocks SQLAlchemy patch helpers in session_managers.py now type
**kw: Any (with ANN401 noqa) instead of object, and monkeypatch assignments use combined
# type: ignore[invalid-assignment] # ty: ignore[invalid-assignment] comments.
Optional Handler Return Types - BaseAsyncGrpcServerInterceptor.intercept_service and
AsyncGrpcServerTraceInterceptor.intercept_service now declare grpc.RpcMethodHandler | None return and
continuation types and early-return None when the continuation yields no handler, removing the prior
cast(..., None) workaround.
Defensive Route Tag Access - FastAPIUtils.generate_unique_id_function reads route.tags via
getattr(route, "tags", []) to tolerate routes without a tags attribute.