|
| 1 | +# Changes |
| 2 | + |
| 3 | +## Version 0.2.0 (2025-11-10) |
| 4 | + |
| 5 | +Breaking: |
| 6 | + |
| 7 | +- Mipmap generation in `Encoder` is now controlled via the `mipmaps: MipmapOptions` field instead of a `WriteOptions` parameter. The parameter on `Encoder::write_surface_with` and `WriteOptions` have been removed. |
| 8 | +- Renamed `Encoder::options` to `Encoder::encoding`. |
| 9 | +- `decode_rect` and `Decoder::read_surface_rect` now take an `ImageViewMut` instead of a bare `&mut [u8]` + row pitch. |
| 10 | +- Removed `DecodeError::RowPitchTooSmall` and `DecodeError::RectBufferTooSmall` errors. |
| 11 | +- `ImageView` and `ImageViewMut` now support non-contiguous views. Consumers of those types need to adapt too. |
| 12 | +- Renamed `SplitSurface` to `SplitView`. `SplitView` also lazily computes fragments on the fly instead of precomputing them. ([#69](https://github.com/image-rs/image-dds/pull/69)) |
| 13 | +- `Progress` tokens now support cancellation via the new `CancellationToken`s. ([#83](https://github.com/image-rs/image-dds/pull/83)) |
| 14 | + |
| 15 | +Added: |
| 16 | + |
| 17 | +- Added BC7 encoding. ([#86](https://github.com/image-rs/image-dds/pull/86)) |
| 18 | +- Added `DataLayout::is_{texture,texture_array,volume}()` methods to check the kind of resource a layout holds. |
| 19 | +- Added `new_with`, `cropped`, and `is_contiguous` methods to `ImageView{,Mut}` for handling and using non-contiguous views. |
| 20 | +- Added `DecodeError::UnexpectedRectSize` error for when the decoded rectangle size does not match the expected size. |
| 21 | +- `R1_UNROM` now supports dithering. ([#63](https://github.com/image-rs/image-dds/pull/63)) |
| 22 | +- All uncompressed formats (expect float32 formats) now support dithering. ([#63](https://github.com/image-rs/image-dds/pull/63)) |
| 23 | +- Fuzz untrusted inputs. ([#60](https://github.com/image-rs/image-dds/pull/60)) |
| 24 | +- Faster and higher quality BC1-5 encoding. ([#72](https://github.com/image-rs/image-dds/pull/72), [#73](https://github.com/image-rs/image-dds/pull/73), [#75](https://github.com/image-rs/image-dds/pull/75), [#76](https://github.com/image-rs/image-dds/pull/76), [#78](https://github.com/image-rs/image-dds/pull/78), [#80](https://github.com/image-rs/image-dds/pull/80), [#84](https://github.com/image-rs/image-dds/pull/84), [#90](https://github.com/image-rs/image-dds/pull/90)) |
| 25 | + |
| 26 | +Fixed: |
| 27 | + |
| 28 | +- Minimum supported version of `resize` now compiles with MSRV. |
| 29 | +- Handle allocation failures and fixed numeric overflow in decoders. ([#68](https://github.com/image-rs/image-dds/pull/68)) |
| 30 | + |
| 31 | +## Version 0.1.0 (2025-04-30) |
| 32 | + |
| 33 | +Initial release of the project. |
0 commit comments