Context
PR # (test/io-viz-coverage) fixed a data-corruption bug in
dissmodel/io/raster.py::_write_geotiff: the GeoTIFF was created with
a single dtype taken from the first band (arrays[0].dtype). With
mixed-dtype band_specs (e.g. uso int32 + alt float32), float bands
were silently truncated to int. The fix promotes all bands to
np.result_type(*dtypes) when dtypes are mixed. A regression test
(tests/io/test_raster_io.py::test_mixed_dtype_bands_are_not_truncated)
covers it. Test coverage rose from 55% to 79% (319 → 441 tests).
A data-loss fix in I/O warrants an immediate patch release.
Tasks
Acceptance criteria
pip install dissmodel==0.6.1 available on PyPI
- CHANGELOG renders correctly on GitHub
- Full suite green: 441 passed, coverage ≥ 79%
Context
PR # (test/io-viz-coverage) fixed a data-corruption bug in
dissmodel/io/raster.py::_write_geotiff: the GeoTIFF was created witha single dtype taken from the first band (
arrays[0].dtype). Withmixed-dtype band_specs (e.g.
usoint32 +altfloat32), float bandswere silently truncated to int. The fix promotes all bands to
np.result_type(*dtypes)when dtypes are mixed. A regression test(
tests/io/test_raster_io.py::test_mixed_dtype_bands_are_not_truncated)covers it. Test coverage rose from 55% to 79% (319 → 441 tests).
A data-loss fix in I/O warrants an immediate patch release.
Tasks
0.6.1inpyproject.toml## [0.6.1](Fixed: mixed-dtypeGeoTIFF truncation; Added: io/visualization test suites,
coverage 55% → 79%)
v0.6.0 may have truncated float bands — re-export recommended
save_geotiffdocstring(GeoTIFF format limitation: single dtype per file)
v0.6.1and push (Trusted Publishing handles PyPI)Acceptance criteria
pip install dissmodel==0.6.1available on PyPI