astral-sh/uv · error · reqwest_middleware::Error::Middleware

Server returned redirect (HTTP {status}) without destination

Error message

Server returned redirect (HTTP {status}) without destination URL. This may indicate a server configuration issue

What it means

Error "Server returned redirect (HTTP {status}) without destination URL. This may indicate a server configuration issue" thrown in astral-sh/uv.

Source

Thrown at crates/uv-client/src/base_client.rs:993

            match *req.method() {
                Method::GET | Method::HEAD => {}
                _ => {
                    *req.method_mut() = Method::GET;
                }
            }
            true
        }
        _ => false,
    };
    if !should_redirect {
        return Ok(None);
    }

    let location = res
        .headers()
        .get(LOCATION)
        .ok_or(reqwest_middleware::Error::Middleware(anyhow!(
            "Server returned redirect (HTTP {status}) without destination URL. This may indicate a server configuration issue"
        )))?
        .to_str()
        .map_err(|_| {
            reqwest_middleware::Error::Middleware(anyhow!(
                "Invalid HTTP {status} 'Location' value: must only contain visible ascii characters"
            ))
        })?;

    let mut redirect_url = match DisplaySafeUrl::parse(location) {
        Ok(url) => url,
        // Per RFC 7231, URLs should be resolved against the request URL.
        Err(DisplaySafeUrlError::Url(ParseError::RelativeUrlWithoutBase)) => original_req_url.join(location).map_err(|err| {
            reqwest_middleware::Error::Middleware(anyhow!(
                "Invalid HTTP {status} 'Location' value `{location}` relative to `{original_req_url}`: {err}"
            ))
        })?,
        Err(err) => {

View on GitHub (pinned to f1a42680ff)

When it happens

Trigger: Thrown at crates/uv-client/src/base_client.rs:993 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of astral-sh/uv@f1a42680ff (2026-08-16). Data as JSON: /api/errors/5505d18950bfa21f. Report an issue: GitHub.