Skip to content

Chore/presign urls - #20

Merged
Rhaqim merged 5 commits into
mainfrom
chore/presign_urls
Sep 3, 2026
Merged

Rhaqim merged 5 commits into
mainfrom
chore/presign_urls

Conversation

@Rhaqim

@Rhaqim Rhaqim commented Aug 31, 2026

Copy link
Copy Markdown
Owner

[1.9.2] — unreleased

A backward-compatible minor release adding presigned (direct-download) URLs.
Additive; no API removals.

✨ Added

  • Presigned URLs (Client.PresignedURL / PresignedURLContext,
    PresignedDerivativeURL / …Context, and the domain.PresignBackend
    capability). Mint a time-limited URL that downloads a file (or an image
    derivative) directly from the storage backend, so reads bypass the
    application process entirely — hand the URL to a browser or CDN instead of
    streaming bytes through your server. Implemented for the S3/R2 backend
    (cloud/aws), designed as an optional capability so Azure/GCS can follow;
    backends that can't presign (the local filesystem, or during a migration)
    return the new ErrUnsupported. For an S3/R2 object the correct key form is
    resolved first, so a URL for a migrated object doesn't 404. The web client
    adds GET /presign/:file_id?ttl=15m (501 when unsupported). Presigned URLs
    bypass buckt's auth for their lifetime — keep the TTL short.

@github-actions github-actions Bot added the chore label Aug 31, 2026
@Rhaqim
Rhaqim merged commit b20b944 into main Sep 3, 2026
4 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant