Skip to content

Commit 5b21bcc

Browse files
authored
Merge pull request #320 from image-rs/release-0.11
Release notes for 0.11
2 parents a3ab252 + fe305ec commit 5b21bcc

File tree

2 files changed

+41
-2
lines changed

2 files changed

+41
-2
lines changed

CHANGES.md

Lines changed: 40 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
# Version 0.10.4 (unreleased)
1+
# Version 0.11.0
22

33
- `Directory` now implements `FromIterator<(Tag, Value)>`.
44

@@ -10,6 +10,45 @@ Changes:
1010
as unspecified relation. Previously, these may have been interpreted as
1111
alpha by the total sample count (e.g. RgbA if 4 samples under a photometric
1212
interpretation of RGB).
13+
- The decoder handles planar data, current limited to non-subsampled channels.
14+
The `Decoder::read_image` method return planes one-after-another depending on
15+
the size of the buffer that was passed.
16+
- `Decoder::read_image_to_buffer` now takes `&mut DecodingResult` and resizes
17+
it according to the required layout. Previously, a borrowed `DecodingBuffer`
18+
was passed which can be replaced by calling `as_bytes_mut` and
19+
`read_image_bytes`.
20+
- Several methods of tags are now `const`. Note that does not guarantee any
21+
particular value when calling these methods.
22+
23+
Fixes:
24+
- Fix a bug in the uncompressed encoder that could lead to short writes, i.e.
25+
data silently dropped when the underlying writer did not accept all data in a
26+
single write call.
27+
- Encoding YCbCr data now writes the `ChromaSubsampling` tag as `(1, 1)` to
28+
indicate no subsampling, instead of leaving it at its default of `(2, 2)`.
29+
- The decoder will reject subsampled YCbCr data as there is no upsampling
30+
routine, except for JPEG compressed images where the JPEG decoders handles
31+
this. Since the buffer in that case indicates a full-sized plane for all
32+
color samples any future support for the tag will upsample all planes (at
33+
least within this major version).
34+
35+
Additions:
36+
- Added support for the `CieLab` color type.
37+
- Added `DecodingResult::resize_to` to create a buffer with a matching sample
38+
type and dimensions.
39+
- Added `ByteOrder::native` to access the platform's native endianness.
40+
- Added `ByteOrder::convert` to change the byte-order of values in a byte
41+
buffer, depending on their `Type` as described at runtime.
42+
- Added `DirectoryOffset::new` to encode a directory whose offset is known to
43+
the caller but that has not been written through the encoder itself.
44+
- Added `Encoder::extra_samples` to encode images with more samples than their
45+
color's trait implementation would otherwise suggest.
46+
- Added `DirectoryEncoder::extend_from` to encode multiple tag entries from a
47+
directory whose values were written to the file by means outside the
48+
encoder's control.
49+
- Added `Decoder::read_coding_unit_bytes` to retrieve data of corresponding
50+
coordinates from potentially planar data, which is encoded in multiple chunks
51+
of the file.
1352

1453
# Version 0.10.3
1554

Cargo.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[package]
22
name = "tiff"
3-
version = "0.10.3"
3+
version = "0.11.0"
44
edition = "2021"
55
resolver = "2"
66

0 commit comments

Comments
 (0)