Skip to main content

taco

Read and write TACO datasets in Python.

pip install taco-eo
python examples/minimal.py

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 use separate profiles: Spatial for regular spatial grids, ISpatial for irregular footprints, and Temporal for time alone. STAC combines regular spatial + temporal metadata; ISTAC combines irregular spatial + temporal metadata.

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 extensions for regular raster chips, labels, bands, and scaling
oceantaco_istac.py OceanTACO-inspired ISTAC metadata for irregular SWOT swaths and Argo collocations
partitioned.py ZIP partitions and their TACOCAT catalog

Release files for taco-eo 0.10.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for taco-eo 0.10.3
File Size Uploaded
taco_eo-0.10.3.tar.gz 780.6 kB Details

Built distributions (wheels)

Table of built distributions (wheels) for taco-eo 0.10.3
File
taco_eo-0.10.3-py3-none-win_amd64.whl Python 3 none Windows x86-64 Details
taco_eo-0.10.3-py3-none-manylinux_2_28_x86_64.whl Python 3 none Linux glibc 2.28+ x86-64 Details
taco_eo-0.10.3-py3-none-manylinux_2_28_aarch64.whl Python 3 none Linux glibc 2.28+ ARM64 Details
taco_eo-0.10.3-py3-none-macosx_11_0_x86_64.whl Python 3 none macOS 11.0+ x86-64 Details
taco_eo-0.10.3-py3-none-macosx_11_0_arm64.whl Python 3 none macOS 11.0+ ARM64 Details

Total release size: 21.4 MB

Release files / taco_eo-0.10.3.tar.gz

Download URL taco_eo-0.10.3.tar.gz
Size 780.6 kB
Tags Source
SHA-256 checksum
How to use checksums
66f00861e170784d09bde762cef3163092e71e69d1589820215a39deca1919b9
BLAKE2b-256 checksum
How to use checksums
f38ef76e14670c1f428204805ceda67ed8cf227eb34d78ac76be2c2c82cc4961
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 24, 2026.

Transparency log

Release files / taco_eo-0.10.3-py3-none-win_amd64.whl

Download URL taco_eo-0.10.3-py3-none-win_amd64.whl
Size 2.9 MB
Tags Python 3 Windows x86-64
SHA-256 checksum
How to use checksums
77986185429862235e279b7e67cf892706e65a3444406ff26f09c93f2154dadf
BLAKE2b-256 checksum
How to use checksums
83603cab8cf3ceec0b245a5abb9f0e561d9dc53abd43ddde0072dc89ce84be7f
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 24, 2026.

Transparency log

Release files / taco_eo-0.10.3-py3-none-manylinux_2_28_x86_64.whl

Download URL taco_eo-0.10.3-py3-none-manylinux_2_28_x86_64.whl
Size 4.8 MB
Tags Linux glibc 2.28+ x86-64 Python 3
SHA-256 checksum
How to use checksums
3b714c4e60bece42f1f2ee6c18af9e47e49f90552b79c10cd1052b43507a3b5c
BLAKE2b-256 checksum
How to use checksums
94a5c4c8e9f92c865bb425780c8bfb6b129ae8906da669d4dafb89fd32450b1a
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 24, 2026.

Transparency log

Release files / taco_eo-0.10.3-py3-none-manylinux_2_28_aarch64.whl

Download URL taco_eo-0.10.3-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
e8b7acc9e6330bc60713ece4c4a353595286873eb8f62e57614274599aef448d
BLAKE2b-256 checksum
How to use checksums
b3402abf9f76ef5b77635e428197b9ba9c92fe43476464f7c0382b60d85c7dac
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 24, 2026.

Transparency log

Release files / taco_eo-0.10.3-py3-none-macosx_11_0_x86_64.whl

Download URL taco_eo-0.10.3-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
9a822555be96d992179b3882f36edc4e65a34960f90d3bb21ae01b0debd3ef00
BLAKE2b-256 checksum
How to use checksums
8190be300e25a7fffc5c75332d59be7e147bd237790577d87a4a7c81b7c15a14
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 24, 2026.

Transparency log

Release files / taco_eo-0.10.3-py3-none-macosx_11_0_arm64.whl

Download URL taco_eo-0.10.3-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
1db048e1b3956a831b21b0a6102d81215fc7ea6701693afb0491a57dbf0b8900
BLAKE2b-256 checksum
How to use checksums
4ab414401b335f0065dd23b79312b274fd63f27a8b7344d6d7191cbdbdd1f20e
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 24, 2026.

Transparency log

Release history Release notifications | RSS feed

This release

0.10.3 This release

6 release files

0.10.2

6 release files

0.10.1

6 release files

0.10.0

6 release files

0.9.1

6 release files

0.9.0

6 release files

0.8.2

6 release files

0.8.1

6 release files

0.8.0

6 release files

0.7.0

6 release files

0.6.3

2 release files

0.6.2

2 release files

0.6.1

2 release files

0.6.0

2 release files

0.5.1

2 release files

0.5.0

2 release files

0.3.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page