taco
Read and write TACO datasets in Python.
pip install taco-eo # read
pip install 'taco-eo[writer]' # read and write
python examples/minimal.py
taco-eo alone reads datasets with the native core, DuckDB and Arrow, like
the R and Julia readers. Writing, taco.validate, taco.export,
taco.consolidate and the built-in metadata models need the [writer] extra,
which adds cozip, NumPy, Pydantic, pyproj and Shapely. Without it,
taco.open_writer raises an ImportError that names the extra.
Published wheels include the native TACO reader. Building from the source distribution requires a C++23 compiler, CMake, Ninja, pkg-config, libcurl 7.83 or newer, and OpenSSL 3 or newer.
import taco
samples = taco.read("dataset.zip")
parts = taco.read(["part-0.zip", "part-1.zip"])
dataset = taco.open_dataset("dataset.zip")
targets = dataset.read(files="target.tif")
train = dataset.sql("SELECT * FROM dataset WHERE \"ml:split\" = 'train'")
export() writes the complete samples selected by a SQL query. The query may
use dataset, sample, or any declared metadata level. A match at a lower
level still copies the whole sample. Collection fields are inherited unless
they are replaced. For a remote source, only payloads from matching samples
are downloaded. Pass overwrite=True to replace an existing TACO output.
source = "https://data.source.coop/major-tom/core-dem/"
taco.export(
source,
"core-dem-sample.zip",
sql='SELECT * FROM sample ORDER BY id LIMIT 10',
)
Remote reads and exports show download progress in interactive terminals.
Writers show their build progress when opened with progress=True.
GeoEnrich
GeoEnrich uses the public 10 km MajorTOM index on Source Cooperative by
default, so it needs no Earth Engine account. Place MajorTOM(dist_km=10) in
the same metadata level before using it:
taco.Level(
"sample",
stac=taco.extensions.STAC(),
majortom=taco.extensions.MajorTOM(dist_km=10),
geoenrich=taco.extensions.GeoEnrich(
["elevation", "temperature", "admin_countries"],
),
)
Set backend="earthengine" explicitly to retain centroid-based Earth Engine
sampling. That backend requires taco-eo[geoenrich] and an authenticated Earth
Engine installation.
Examples
Every example is self-contained, uses synthetic data, and writes its output in the current directory.
Spatial and temporal metadata follow the fields of a STAC Item. Temporal
stores datetime or a start_datetime/end_datetime range, Spatial stores
location, and STAC stores both. Supply a grid or geometry; the writer adds a
float32 centroid. Grid footprints are computed on demand.
| Example | What it demonstrates |
|---|---|
minimal.py |
Smallest possible single-file dataset |
numpy_minimal.py |
NumPy image and mask assets with a train/test split |
change_detection.py |
Metadata on before/ and after/ folders |
sequence.py |
Variable-length asset sequences |
time_series.py |
Per-observation time and cloud metadata |
geospatial.py |
Compact STAC metadata and derived MajorTOM cells |
stac_segmentation.py |
STAC metadata from UTM grids, with labels, bands, and scaling |
oceantaco.py |
OceanTACO-inspired STAC footprints for irregular SWOT swaths and Argo collocations |
partitioned.py |
ZIP partitions and their TACOCAT catalog |
Metadata
Release files for taco-eo 0.12.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| taco_eo-0.12.1.tar.gz | 802.5 kB | With provenance | Details for taco_eo-0.12.1.tar.gz |
Built distributions (wheels)
| File | Actions Reset | |||
|---|---|---|---|---|
| taco_eo-0.12.1-py3-none-win_amd64.whl | Python 3 | none | Windows x86-64 | Details for taco_eo-0.12.1-py3-none-win_amd64.whl |
| taco_eo-0.12.1-py3-none-manylinux_2_28_x86_64.whl | Python 3 | none | Linux glibc 2.28+ x86-64 | Details for taco_eo-0.12.1-py3-none-manylinux_2_28_x86_64.whl |
| taco_eo-0.12.1-py3-none-manylinux_2_28_aarch64.whl | Python 3 | none | Linux glibc 2.28+ ARM64 | Details for taco_eo-0.12.1-py3-none-manylinux_2_28_aarch64.whl |
| taco_eo-0.12.1-py3-none-macosx_11_0_x86_64.whl | Python 3 | none | macOS 11.0+ x86-64 | Details for taco_eo-0.12.1-py3-none-macosx_11_0_x86_64.whl |
| taco_eo-0.12.1-py3-none-macosx_11_0_arm64.whl | Python 3 | none | macOS 11.0+ ARM64 | Details for taco_eo-0.12.1-py3-none-macosx_11_0_arm64.whl |
Total release size: 21.5 MB
Release files / taco_eo-0.12.1.tar.gz
| Download URL | taco_eo-0.12.1.tar.gz |
|---|---|
| Size | 802.5 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
91876cc431fece555a5455f2205f12f3c2cb17f6a01840c56cd437200047950c
|
|
BLAKE2b-256 checksum How to use checksums |
af6d5a469e869c81decc06c1c8504a8e808c2d91f49a807801490dab18a606d7
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / taco_eo-0.12.1-py3-none-win_amd64.whl
| Download URL | taco_eo-0.12.1-py3-none-win_amd64.whl |
|---|---|
| Size | 2.9 MB |
| Tags | Python 3 Windows x86-64 |
|
SHA-256 checksum How to use checksums |
abfbe784bf925279c6da4608bd02bb610d06dba0f4e9814d46816c95fac47a19
|
|
BLAKE2b-256 checksum How to use checksums |
8c9516d8cce14903c969e2692e891bc360ce3b1dc87f871ae4ef977cee666d45
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / taco_eo-0.12.1-py3-none-manylinux_2_28_x86_64.whl
| Download URL | taco_eo-0.12.1-py3-none-manylinux_2_28_x86_64.whl |
|---|---|
| Size | 4.9 MB |
| Tags | Linux glibc 2.28+ x86-64 Python 3 |
|
SHA-256 checksum How to use checksums |
ee7358ac8c0fa82ddb37674af4be56e336765e164de81985ae3ae52c9e5057f8
|
|
BLAKE2b-256 checksum How to use checksums |
6c37bf35fb637e7e4a4d1f96b383f29f3d0d683ba3b3c13b57b6b1d2bfea8c5d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / taco_eo-0.12.1-py3-none-manylinux_2_28_aarch64.whl
| Download URL | taco_eo-0.12.1-py3-none-manylinux_2_28_aarch64.whl |
|---|---|
| Size | 5.0 MB |
| Tags | Linux glibc 2.28+ ARM64 Python 3 |
|
SHA-256 checksum How to use checksums |
2727624bf19a96adc0dc68b4d778383623b87859e101ee6047ea3fe5e7ff7eba
|
|
BLAKE2b-256 checksum How to use checksums |
7d0a872a06288100f96858baf09d68e90085a97fe5a8cf4af0b521eba89c7980
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / taco_eo-0.12.1-py3-none-macosx_11_0_x86_64.whl
| Download URL | taco_eo-0.12.1-py3-none-macosx_11_0_x86_64.whl |
|---|---|
| Size | 3.9 MB |
| Tags | Python 3 macOS 11.0+ x86-64 |
|
SHA-256 checksum How to use checksums |
8a87c83c2e2a9e2529efd673fe720e2df3c69af27f92a813ff73adce0da5c5c7
|
|
BLAKE2b-256 checksum How to use checksums |
3358c19ca6583c7ff603693513cec5dc174d6c03ac005fd045bb01b4d0abeef6
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logRelease files / taco_eo-0.12.1-py3-none-macosx_11_0_arm64.whl
| Download URL | taco_eo-0.12.1-py3-none-macosx_11_0_arm64.whl |
|---|---|
| Size | 4.0 MB |
| Tags | Python 3 macOS 11.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
70e0df5bc73d138ff010ad2866043e39fa40e87477e0aa145d7ee93a910de9de
|
|
BLAKE2b-256 checksum How to use checksums |
dd0c6da6a3405db187cf774aa37e99d00f9ad6d7a5d03a03834a5c955309a831
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logSecurity for taco-eo 0.12.1
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
Full provenance
All 6 files in this release have been uploaded with provenance metadata.
Attestation for taco_eo-0.12.1.tar.gz
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 27, 2026.
Transparency logA note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.