Join GitHub today
Fixes to GeoTiff writing with original LZW compression. #2180
This PR fixes several issues with GeoTiff writing, in the case where you write a GeoTiff tile that has LZW compression with a predictor. We don't have support for writing LZW from uncompressed values, but we allow LZW to be used if the original compressed GeoTiff segments exist. This case had several issues:
Writing bytes from a streaming source (using LazySegmentBytes) was also broken, because changes were made to not guarantee the ordering of the sequence of segments, which the writer relied on. A docstring mentions not to assume that the segments are iterated over in segment index order, and the writer code changed to gather segment byte counts in a way that provides the correct order.