- Generic HTTP(S) fallback: any
http://orhttps://URL is now accepted, with size and mtime read fromContent-LengthandLast-Modifiedresponse headers. Servers that do not supportHEADrequests are handled gracefully (size and mtime default to 0). No checksum is available for generic URLs. Ifsnakemake-storage-plugin-httpis installed alongside, aFutureWarningis emitted and it is patched to refuse all URLs for the session. You should uninstallsnakemake-storage-plugin-httpafter upgrading (shim removed in v0.5). - Resumable downloads: interrupted transfers are continued from where they left off using
HTTP
Rangerequests (206 Partial Content). Servers that do not support range requests fall back to a full re-download. Partial files are preserved across retries for connection/timeout errors, and discarded on checksum mismatches or other errors.
- Support for
storage.googleapis.comURLs with checksum verification via the GCS JSON API (md5Hashfield) and mtime from GCS object metadata.
zstandarddependency for decompressing Cloudflare-compressed responses.
- Support for
data.pypsa.orgURLs with checksum verification viamanifest.yamlfiles discovered by searching up the directory tree. - Redirect support: manifest entries can specify a
redirectfield to point to another path.
- Snakemake storage plugin for Zenodo URLs (
zenodo.org,sandbox.zenodo.org) with:- Local filesystem caching via
Cacheclass - Checksum verification from Zenodo API
- Adaptive rate limiting using
X-RateLimit-*headers with exponential backoff retry - Concurrent download limiting via semaphore
- Progress bars with
tqdm-loggable
- Local filesystem caching via