rp-supabase-http 0.1.0

Bounded rate-limit retry policy for Supabase HTTP clients
Documentation

rp-supabase-http

Bounded retries for explicit HTTP 429 responses. Shared by the Supabase client crates.

RetryPolicy::default() permits two additional attempts for GET, HEAD and OPTIONS. The exponential delay starts at 200 ms and stops at 30 seconds. Retry-After accepts seconds or an HTTP date. A server delay above the configured maximum returns the 429 unchanged. The client never shortens that delay.

RetryPolicy::none() disables retries. retry_non_idempotent(true) permits replayable mutation bodies. Enable it only when the endpoint rejects a rate-limited request before performing any side effect.

Transport failures, other status codes, and non-cloneable streaming bodies are never replayed. The final response keeps its status, headers and body. Dropping the request future cancels a pending request or backoff. Retries do not provide exactly-once execution.

Requires Rust 1.88. Default TLS is rustls. For native TLS, disable default features and enable native-tls. A supplied reqwest client keeps its own TLS policy.