Skip to content

backends

Concrete :class:~MEDS_extract.download.source.Source backends.

Each submodule implements one transport type:

  • :mod:.http — explicit URL list (no crawling), optional per-URL SHA-256.
  • :mod:.fsspec — any protocol :mod:fsspec supports via :mod:universal_pathlib (local filesystem, file://, s3://, gs://, …). Used for re-runs against a pre-downloaded local / cloud mirror.
  • :mod:.physionetSHA256SUMS.txt-manifest-driven. PhysioNet specifically; the manifest file is published by every dataset release and is the authoritative file list + hash index.

All backends return :class:~MEDS_extract.download.source.RemoteFile instances and follow the :class:~MEDS_extract.download.source.Source protocol invariants.

Backend classes are resolved lazily (PEP 562) so that importing this package — or the always-usable :class:.fsspec.FsspecSource — does not require the HTTP stack. The download extra (httpx/tenacity) is only needed the moment :class:.http.HTTPSource or :class:.physionet.PhysioNetSource is actually accessed.