Skip to content

geotiff: categorical PAM sidecar round-trip tested only on the eager numpy write path #3518

Description

@brendancol

The #3483 categorical PAM sidecar feature wires _write_category_sidecar() into every to_geotiff write path. The eager numpy writer, the dask streaming writer, and the GPU (nvCOMP) writer each call it after writing pixels (_writers/eager.py lines 831, 880, 1063, 1159).

The feature's tests (xrspatial/tests/test_rasterize_categorical_3482.py) only round-trip the eager numpy path. The dask and GPU branches each have their own emit call that no test touches, so dropping the sidecar emit on one of those branches in a refactor would lose category labels and colors with no failing test.

I probed both on a CUDA host: a categorical int32 raster written through the dask streaming writer and through the GPU writer both emit the sidecar and read back the names and RGBA colors correctly today. So this is a backend coverage gap, not a source bug.

Also untested: the category_colors=None branch of build_pam_xml (no Red/Green/Blue/Alpha columns) and the names-only read path. The existing suite always supplies colors.

Plan, test-only, in xrspatial/geotiff/tests/write/: dask write round-trip of names + colors; GPU write round-trip (requires_gpu); names-only round-trip.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions