Skip to content

Add timeout guards on transform/resolve callbacks across all platforms #28

@puckey

Description

@puckey

Context

User-provided transform and resolve callbacks in RequestConfigBuilder are awaited without any timeout. A misbehaving callback can hang indefinitely.

The HTTP client layer already has consistent 30-second timeouts across all platforms, but the callback layer has none:

Component Android iOS Web
HTTP client 30s 30s 30s
Transform/resolve callbacks None None None

Proposal

Add a 10-second timeout guard around transform and resolve callback invocations on all platforms:

  • Android RequestConfigBuilder.kt: wrap await() calls with withTimeout(10.seconds)
  • iOS: add equivalent timeout around transform/resolve callback invocations
  • Web RequestConfigBuilder.ts: add equivalent withTimeout wrapper

This ensures a misbehaving user callback fails with a clear timeout error rather than hanging silently.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions