Files
galaxy/client/src
Nuwan Goonasekera 8324eb268f Serve download redirects from a dedicated /download route
Redirecting /display to a presigned object-store URL was a non-obvious
breaking change: curl does not follow redirects by default and requests
does not follow them for HEAD, and it only happened for certain object
stores. Instead, leave /display untouched (it always streams through
Galaxy) and add an explicit /download route whose contract is that
clients must follow a 302.

- New GET/HEAD /api/datasets/{id}/download and
  /api/histories/{history_id}/contents/{id}/download. GET redirects (302)
  to a presigned URL when the backend supports it, otherwise streams the
  whole file (zipping composite datatypes) exactly as before. HEAD answers
  from object-store metadata (size, filename) without redirecting or
  pulling into cache, so HEAD clients still get the size.
- Revert the redirect from /display; drop the DirectDownloadUrl sentinel.
- Point the web UI download actions and the HDA download_url field at the
  new route. (bioblend will move to it in a follow-up in its own repo.)

Refs galaxyproject/galaxy#19255
2026-07-07 23:11:02 +05:30
..
2026-06-20 22:49:25 +02:00
…