logger = get_logger(__name__)
-KEEPALIVE_EXPIRY = 5.0
USER_AGENT = f"python-httpx/{__version__}"
ACCEPT_ENCODING = ", ".join(
[key for key in SUPPORTED_DECODERS.keys() if key != "identity"]
ssl_context=ssl_context,
max_connections=limits.max_connections,
max_keepalive_connections=limits.max_keepalive_connections,
- keepalive_expiry=KEEPALIVE_EXPIRY,
+ keepalive_expiry=limits.keepalive_expiry,
http2=http2,
)
ssl_context=ssl_context,
max_connections=limits.max_connections,
max_keepalive_connections=limits.max_keepalive_connections,
- keepalive_expiry=KEEPALIVE_EXPIRY,
+ keepalive_expiry=limits.keepalive_expiry,
http2=http2,
)
ssl_context=ssl_context,
max_connections=limits.max_connections,
max_keepalive_connections=limits.max_keepalive_connections,
- keepalive_expiry=KEEPALIVE_EXPIRY,
+ keepalive_expiry=limits.keepalive_expiry,
http2=http2,
)
ssl_context=ssl_context,
max_connections=limits.max_connections,
max_keepalive_connections=limits.max_keepalive_connections,
- keepalive_expiry=KEEPALIVE_EXPIRY,
+ keepalive_expiry=limits.keepalive_expiry,
http2=http2,
)
*,
max_connections: int = None,
max_keepalive_connections: int = None,
+ keepalive_expiry: typing.Optional[float] = 5.0,
):
self.max_connections = max_connections
self.max_keepalive_connections = max_keepalive_connections
+ self.keepalive_expiry = keepalive_expiry
def __eq__(self, other: typing.Any) -> bool:
return (
isinstance(other, self.__class__)
and self.max_connections == other.max_connections
and self.max_keepalive_connections == other.max_keepalive_connections
+ and self.keepalive_expiry == other.keepalive_expiry
)
def __repr__(self) -> str:
class_name = self.__class__.__name__
return (
f"{class_name}(max_connections={self.max_connections}, "
- f"max_keepalive_connections={self.max_keepalive_connections})"
+ f"max_keepalive_connections={self.max_keepalive_connections}, "
+ f"keepalive_expiry={self.keepalive_expiry})"
)
def test_limits_repr():
limits = httpx.Limits(max_connections=100)
- assert repr(limits) == "Limits(max_connections=100, max_keepalive_connections=None)"
+ expected = "Limits(max_connections=100, max_keepalive_connections=None, keepalive_expiry=5.0)"
+ assert repr(limits) == expected
def test_limits_eq():