CI now runs cargo-deny, checking dependent crates to an OSS license list
and against RUSTSEC advisories.
New Features:
The WebP decoder recognizes and decodes images with VP8X header.
The DDS decoder recognizes and decodes images with DX10 headers.
Bug fixes:
Calling DynamicImage/ImageBuffer's methods write_to and save will now
work properly even if the backing container is larger than the image layout
requires. Only the relevant slice of pixel data is passed to the encoder.
Fixed a OOM-panic caused by malformed images in the gif decoder.
Version 0.24.1
Bug Fixes:
ImageBuffer::get_pixel_checked would sometimes return the incorrect pixel.
PNG encoding would sometimes not recognize unsupported color.
Version 0.24.0
Breaking changes
Structural changes:
Minimum Rust version is now 1.56 and may change in minor versions until
further notice. It is now tracked in the library's Cargo.toml, instead, by
the standard [package.rust-version] field. Note: this applies to the
library itself. You may need different version resolutions for dependencies
when using a non-stable version of Rust.
The math::utils::{nq, utils} modules have been removed. These are better
served through the color_quant crate and the standard library respectively.
All codecs are now available through image::codecs, no longer top-level.
ExtendedColorType and DynamicImage have been made #[non_exhaustive],
providing more methods instead of exhaustive matching.
Reading images through the generic io::Reader, as well as generic
convenience interfaces, now requires the underlying reader to be BufRead + Seek. This allows more efficient support more formats. Similarly, writing
now requires writers to be Write + Seek.
The Bgra* variants of buffers, which were only half-supported, have been
removed. The owning buffer types ImageBuffer and DynamicImage
fundamentally already make a choice in supported pixel representations. This
allows for more consistent internal behavior. Callers are expected to convert
formats when using those buffers, which they are required to do in any case
already, and which is routinely performed by decoders.
Trait reworks:
The Pixel trait is no longer implemented quite as liberally for structs
Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting @dependabot rebase.
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually
- `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)
Bumps image from 0.23.14 to 0.24.2.
Changelog
Sourced from image's changelog.
... (truncated)
Commits
e42b402
Change notes and metadata for 0.24.2f2855f1
Merge pull request #1696 from 5225225/fix-gif-oom95b53b9
Use free_usize instead of a u64::try_from in gif.rsb41b4bb
Fix OOM when decoding gif with very large bufferae1e661
Merge pull request #1703 from johannesvollmer/update-exrs-license035778d
update openexr (exr crate license was updated)2f6d97a
Merge pull request #1702 from gents83/mastera7f080b
Fixing clippy warnings5fe5764
Merge pull request #1700 from linkmauve/direct-rgba3862f76
avif-decoder: Convert directly to RGBADependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting
@dependabot rebase
.Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself)