Browse Source

Update `image` crate to 0.25 (#4160)

To not produce duplicating deps in Rerun
(https://github.com/rerun-io/rerun/pull/5280) I suggest we wait with
merging this until these crates have updated to `image` 0.25:
* [x] [`arboard`](https://crates.io/crates/arboard)
* [x] [`gltf`](https://crates.io/crates/gltf)
pull/3879/merge
Emil Ernerfeldt 6 months ago
committed by GitHub
parent
commit
44d65f41ac
No known key found for this signature in database GPG Key ID: B5690EEEBB952194
  1. 57
      Cargo.lock
  2. 1
      Cargo.toml
  3. 4
      crates/eframe/Cargo.toml
  4. 2
      crates/eframe/src/icon_data.rs
  5. 2
      crates/eframe/src/native/app_icon.rs
  6. 5
      crates/egui_demo_app/Cargo.toml
  7. 5
      crates/egui_extras/Cargo.toml
  8. 2
      crates/egui_extras/README.md
  9. 4
      crates/egui_extras/src/image.rs
  10. 2
      crates/egui_extras/src/loaders.rs
  11. 5
      examples/images/Cargo.toml
  12. 2
      examples/save_plot/Cargo.toml
  13. 2
      examples/screenshot/Cargo.toml

57
Cargo.lock

@ -819,12 +819,6 @@ version = "0.2.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ecdffb913a326b6c642290a0d0ec8e8d6597291acdc07cc4c9cb4b3635d44cf9"
[[package]]
name = "color_quant"
version = "1.1.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3d7b894f5411737b7867f4827955924d7c254fc9f4d91a6aad6b097804b1018b"
[[package]]
name = "com"
version = "0.6.0"
@ -2072,17 +2066,16 @@ dependencies = [
[[package]]
name = "image"
version = "0.24.7"
version = "0.25.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "6f3dfdbdd72063086ff443e297b61695500514b1e41095b6fb9a5ab48a70a711"
checksum = "a9b4f005360d32e9325029b38ba47ebd7a56f3316df09249368939562d518645"
dependencies = [
"bytemuck",
"byteorder",
"color_quant",
"jpeg-decoder",
"num-rational",
"num-traits",
"png",
"zune-core",
"zune-jpeg",
]
[[package]]
@ -2188,12 +2181,6 @@ dependencies = [
"libc",
]
[[package]]
name = "jpeg-decoder"
version = "0.3.0"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "bc0000e42512c92e31c2252315bda326620a4e034105e900c98ec492fa077b3e"
[[package]]
name = "js-sys"
version = "0.3.69"
@ -2498,27 +2485,6 @@ dependencies = [
"minimal-lexical",
]
[[package]]
name = "num-integer"
version = "0.1.45"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "225d3389fb3509a24c93f5c29eb6bde2586b98d9f016636dff58d7c6f7569cd9"
dependencies = [
"autocfg",
"num-traits",
]
[[package]]
name = "num-rational"
version = "0.4.1"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "0638a1c9d0a3c0914158145bc76cff373a75a627e6ecbfb71cbe6f453a5a19b0"
dependencies = [
"autocfg",
"num-integer",
"num-traits",
]
[[package]]
name = "num-traits"
version = "0.2.16"
@ -4883,6 +4849,21 @@ dependencies = [
"syn 2.0.48",
]
[[package]]
name = "zune-core"
version = "0.4.12"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "3f423a2c17029964870cfaabb1f13dfab7d092a62a29a89264f4d36990ca414a"
[[package]]
name = "zune-jpeg"
version = "0.4.11"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "ec866b44a2a1fd6133d363f073ca1b179f438f99e7e5bfb1e33f7181facfe448"
dependencies = [
"zune-core",
]
[[package]]
name = "zvariant"
version = "3.15.0"

1
Cargo.toml

@ -71,6 +71,7 @@ backtrace = "0.3"
criterion = { version = "0.5.1", default-features = false }
document-features = " 0.2.8"
glow = "0.13"
image = { version = "0.25", default-features = false }
log = { version = "0.4", features = ["std"] }
nohash-hasher = "0.2"
parking_lot = "0.12"

4
crates/eframe/Cargo.toml

@ -154,9 +154,7 @@ egui-winit = { workspace = true, default-features = false, features = [
"clipboard",
"links",
] }
image = { version = "0.24", default-features = false, features = [
"png",
] } # Needed for app icon
image = { workspace = true, features = ["png"] } # Needed for app icon
winit = { workspace = true, default-features = false, features = ["rwh_06"] }
# optional native:

2
crates/eframe/src/icon_data.rs

@ -54,7 +54,7 @@ impl IconDataExt for IconData {
image
.write_to(
&mut std::io::Cursor::new(&mut png_bytes),
image::ImageOutputFormat::Png,
image::ImageFormat::Png,
)
.map_err(|err| err.to_string())?;
Ok(png_bytes)

2
crates/eframe/src/native/app_icon.rs

@ -118,7 +118,7 @@ fn set_app_icon_windows(icon_data: &IconData) -> AppIconStatus {
if image_scaled
.write_to(
&mut std::io::Cursor::new(&mut image_scaled_bytes),
image::ImageOutputFormat::Png,
image::ImageFormat::Png,
)
.is_err()
{

5
crates/egui_demo_app/Cargo.toml

@ -60,10 +60,7 @@ wgpu = { workspace = true, features = ["webgpu", "webgl"], optional = true }
# feature "http":
ehttp = { version = "0.5", optional = true }
image = { version = "0.24", optional = true, default-features = false, features = [
"jpeg",
"png",
] }
image = { workspace = true, optional = true, features = ["jpeg", "png"] }
poll-promise = { version = "0.3", optional = true, default-features = false }
# feature "persistence":

5
crates/egui_extras/Cargo.toml

@ -45,8 +45,7 @@ http = ["dep:ehttp"]
##
## You also need to ALSO opt-in to the image formats you want to support, like so:
## ```toml
## image = { version = "0.24", features = ["jpeg", "png"] } # Add the types you want support for
## image = { version = "0.25", features = ["jpeg", "png"] } # Add the types you want support for
## ```
image = ["dep:image"]
@ -82,7 +81,7 @@ chrono = { version = "0.4", optional = true, default-features = false, features
## Enable this when generating docs.
document-features = { workspace = true, optional = true }
image = { version = "0.24", optional = true, default-features = false }
image = { workspace = true, optional = true }
# file feature
mime_guess2 = { version = "2", optional = true, default-features = false }

2
crates/egui_extras/README.md

@ -13,7 +13,7 @@ One thing `egui_extras` is commonly used for is to install image loaders for `eg
```toml
egui_extras = { version = "*", features = ["all_loaders"] }
image = { version = "0.24", features = ["jpeg", "png"] } # Add the types you want support for
image = { version = "0.25", features = ["jpeg", "png"] } # Add the types you want support for
```
```rs

4
crates/egui_extras/src/image.rs

@ -43,7 +43,7 @@ impl RetainedImage {
/// `image_bytes` should be the raw contents of an image file (`.png`, `.jpg`, …).
///
/// Requires the "image" feature. You must also opt-in to the image formats you need
/// with e.g. `image = { version = "0.24", features = ["jpeg", "png"] }`.
/// with e.g. `image = { version = "0.25", features = ["jpeg", "png"] }`.
///
/// # Errors
/// On invalid image or unsupported image format.
@ -195,7 +195,7 @@ use egui::ColorImage;
/// Load a (non-svg) image.
///
/// Requires the "image" feature. You must also opt-in to the image formats you need
/// with e.g. `image = { version = "0.24", features = ["jpeg", "png"] }`.
/// with e.g. `image = { version = "0.25", features = ["jpeg", "png"] }`.
///
/// # Errors
/// On invalid image or unsupported image format.

2
crates/egui_extras/src/loaders.rs

@ -20,7 +20,7 @@
///
/// ```toml,ignore
/// egui_extras = { version = "*", features = ["all_loaders"] }
/// image = { version = "0.24", features = ["jpeg", "png"] } # Add the types you want support for
/// image = { version = "0.25", features = ["jpeg", "png"] } # Add the types you want support for
/// ```
///
/// ⚠ You have to configure both the supported loaders in `egui_extras` _and_ the supported image formats

5
examples/images/Cargo.toml

@ -21,7 +21,4 @@ env_logger = { version = "0.10", default-features = false, features = [
"auto-color",
"humantime",
] }
image = { version = "0.24", default-features = false, features = [
"jpeg",
"png",
] }
image = { workspace = true, features = ["jpeg", "png"] }

2
examples/save_plot/Cargo.toml

@ -16,7 +16,7 @@ eframe = { workspace = true, features = [
"__screenshot", # __screenshot is so we can dump a screenshot using EFRAME_SCREENSHOT_TO
] }
egui_plot.workspace = true
image = { version = "0.24", default-features = false, features = ["png"] }
image = { workspace = true, features = ["png"] }
rfd = "0.13.0"
env_logger = { version = "0.10", default-features = false, features = [
"auto-color",

2
examples/screenshot/Cargo.toml

@ -24,4 +24,4 @@ env_logger = { version = "0.10", default-features = false, features = [
"auto-color",
"humantime",
] }
image = { version = "0.24", default-features = false, features = ["png"] }
image = { workspace = true, features = ["png"] }

Loading…
Cancel
Save