Skip to content

Support None as timeout to disable timeout entirely #401

@vdusek

Description

@vdusek

Currently, passing timeout=None to Client.request() / AsyncClient.request() falls back to the client-level default (30s) because the Rust side skips client_request.timeout() when the value is None:

// impit.rs:443-444
if let Some(timeout) = timeout {
    client_request = client_request.timeout(timeout);
}

HTTPX treats timeout=None as "no timeout" (wait indefinitely). Since impit's Python API aims to follow HTTPX conventions, it would be good to match this behavior.

Proposed: When timeout=None is passed per-request, actively disable the timeout instead of falling back to the client default.

Metadata

Metadata

Assignees

Labels

t-toolingIssues with this label are in the ownership of the tooling team.

Type

No type
No fields configured for issues without a type.

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions