supermercado extends the functionality of mercantile with additional commands
pip install supermercadoUsage: supermercado [OPTIONS] COMMAND [ARGS]...
Options:
--help Show this message and exit.
Commands:
burn Burn a stream of GeoJSON into a output...
edges For a stream of [<x>, <y>, <z>] tiles, return...
union Returns the unioned shape of a stream of...<{geojson} stream> | supermercado burn <zoom> | <[x, y, z] stream>
Takes an input stream of GeoJSON and returns a stream of intersecting [x, y, z]s for a given zoom.
cat data/ellada.geojson | supermercado burn 10 | mercantile shapes | fio collect<[x, y, z] stream> | supermercado edges | <[x, y, z] stream>
Outputs a stream of [x, y, z]s representing the edge tiles of an input stream of [x, y, z]s. Edge tile = any tile that is either directly adjacent to a tile that does not exist, or diagonal to an empty tile.
cat data/ellada.geojson | supermercado burn 10 | supermercado edges | mercantile shapes | fio collect | geojsonio
<[x, y, z] stream> | supermercado union | <{geojson} stream>
Outputs a stream of unioned GeoJSON from an input stream of [x, y, z]s. Like mercantile shapes but as an overall footprint instead of individual shapes for each tile.
cat data/ellada.geojson | supermercado burn 10 | supermercado union | fio collect | geojsonio
cat data/ellada.geojson | supermercado burn 12 | supermercado edges | supermercado union | fio collect | geojsonio
git clone git@github.com:mapbox/supermercado.git
cd supermercado
uv venv
source .venv/bin/activate
uv sync --all-groups- Within your PR, update
pyproject.tomlwith the new version number - Once the PR is merged, pull
mainand verify the tests
uv run pytest
uv run ruff check .
uv run ruff format --check .- Tag with the new version number and push
# ie
$ git checkout main
$ git pull
$ git tag 1.2.3
$ git push origin main 1.2.3- GitHub Actions builds the release, runs
uvx twine check, and publishes to PyPI using thepypienvironment token




