From 1353a5733f7c0dd55f0576cc5044d7ba70e020f9 Mon Sep 17 00:00:00 2001 From: Emil Ernerfeldt Date: Sat, 4 Feb 2023 11:21:02 +0100 Subject: [PATCH] Deprecate `egui_glium` - looking for new maintainer (#2668) * Deprecate egui_glium - looking for new maintainer egui_glium was the first backend of egui, and it served us well for a long time, but we have long since moved on to glow and wgpu. Not egui_glium is holding back an update to latest winit. Since development on glium has long since been discontinued I will therefore deprecate egui_glium with this PR. The code is still there in the repository for a while longer, but is no longer compiled. If there is any interest in maintaining egui_glium, then fork it and make a PR to remove the last egui_glium from this repository. I will give you publish rights on crates.io. * update glutin 0.30.2 -> 0.30.3 * cargo update -p backtrace Updating crates.io index Updating addr2line v0.17.0 -> v0.19.0 Updating backtrace v0.3.66 -> v0.3.67 Updating gimli v0.26.2 -> v0.27.1 Removing miniz_oxide v0.5.4 Updating object v0.29.0 -> v0.30.3 * cargo deny: allow duplicates of windows-sys, wayland-sys, and nix * cargo-deny whitelist tiny-skia --- Cargo.lock | 175 ++++---------------------------- Cargo.toml | 1 - README.md | 6 +- crates/eframe/src/web/events.rs | 2 +- crates/egui_glium/README.md | 4 + deny.toml | 15 +-- sh/check.sh | 2 - sh/docs.sh | 2 +- 8 files changed, 36 insertions(+), 171 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 654b811b2..6a6ddc72d 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -99,9 +99,9 @@ dependencies = [ [[package]] name = "addr2line" -version = "0.17.0" +version = "0.19.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "b9ecd88a8c8378ca913a680cd98f0f13ac67383d35993f86c90a70e3f137816b" +checksum = "a76fd60b23679b7d19bd066031410fb7e458ccc5e958eb5c325888ce4baedc97" dependencies = [ "gimli", ] @@ -382,15 +382,15 @@ checksum = "d468802bab17cbc0cc575e9b053f41e72aa36bfa6b7f55e3529ffa43161b97fa" [[package]] name = "backtrace" -version = "0.3.66" +version = "0.3.67" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "cab84319d616cfb654d03394f38ab7e6f0919e181b1b57e1fd15e7fb4077d9a7" +checksum = "233d376d6d185f2a3093e58f283f60f880315b6c60075b01f36b3b85154564ca" dependencies = [ "addr2line", "cc", "cfg-if", "libc", - "miniz_oxide 0.5.4", + "miniz_oxide", "object", "rustc-demangle", ] @@ -1372,7 +1372,7 @@ dependencies = [ "egui-winit", "egui_glow", "glow 0.11.2", - "glutin 0.30.2", + "glutin", "image", "js-sys", "percent-encoding", @@ -1489,20 +1489,6 @@ dependencies = [ "usvg", ] -[[package]] -name = "egui_glium" -version = "0.20.1" -dependencies = [ - "ahash 0.8.2", - "bytemuck", - "document-features", - "egui", - "egui-winit", - "egui_demo_lib", - "glium", - "image", -] - [[package]] name = "egui_glow" version = "0.20.1" @@ -1512,7 +1498,7 @@ dependencies = [ "egui", "egui-winit", "glow 0.11.2", - "glutin 0.30.2", + "glutin", "memoffset", "puffin", "raw-window-handle 0.5.0", @@ -1692,7 +1678,7 @@ source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8a2db397cb1c8772f31494cb8917e48cd1e64f0fa7efac59fbd741a0a8ce841" dependencies = [ "crc32fast", - "miniz_oxide 0.6.2", + "miniz_oxide", ] [[package]] @@ -1936,9 +1922,9 @@ dependencies = [ [[package]] name = "gimli" -version = "0.26.2" +version = "0.27.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "22030e2c5a68ec659fde1e949a745124b48e6fa8b045b7ed5bd1fe4ccc5c4e5d" +checksum = "221996f774192f0f718773def8201c4ae31f02616a54ccfc2d358bb0e5cefdec" [[package]] name = "gio-sys" @@ -1974,22 +1960,6 @@ dependencies = [ "system-deps", ] -[[package]] -name = "glium" -version = "0.32.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d2766728ecb86014b91d3d687614b32d65aacbbdc887f424a7b03cba3ab593bf" -dependencies = [ - "backtrace", - "fnv", - "gl_generator", - "glutin 0.29.1", - "lazy_static", - "memoffset", - "smallvec", - "takeable-option", -] - [[package]] name = "glob" version = "0.3.0" @@ -2022,44 +1992,18 @@ dependencies = [ [[package]] name = "glutin" -version = "0.29.1" +version = "0.30.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "444c9ad294fdcaf20ccf6726b78f380b5450275540c9b68ab62f49726ad1c713" -dependencies = [ - "cgl", - "cocoa", - "core-foundation", - "glutin_egl_sys 0.1.6", - "glutin_gles2_sys", - "glutin_glx_sys 0.1.8", - "glutin_wgl_sys 0.1.5", - "libloading", - "log", - "objc", - "once_cell", - "osmesa-sys", - "parking_lot", - "raw-window-handle 0.5.0", - "wayland-client", - "wayland-egl", - "winapi", - "winit", -] - -[[package]] -name = "glutin" -version = "0.30.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0282c380a3adb52ae095e5847cc575c6bf79d296dcbf333e00be4a3fca07235e" +checksum = "524d807cd49a0c56a53ef9a6738cd15e7c8c4e9d37a3b7fdb3c250c1cd5bf7a3" dependencies = [ "bitflags", "cfg_aliases", "cgl", "cocoa", "core-foundation", - "glutin_egl_sys 0.3.1", - "glutin_glx_sys 0.3.0", - "glutin_wgl_sys 0.3.0", + "glutin_egl_sys", + "glutin_glx_sys", + "glutin_wgl_sys", "libloading", "objc", "once_cell", @@ -2069,16 +2013,6 @@ dependencies = [ "x11-dl", ] -[[package]] -name = "glutin_egl_sys" -version = "0.1.6" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "68900f84b471f31ea1d1355567eb865a2cf446294f06cef8d653ed7bcf5f013d" -dependencies = [ - "gl_generator", - "winapi", -] - [[package]] name = "glutin_egl_sys" version = "0.3.1" @@ -2089,26 +2023,6 @@ dependencies = [ "windows-sys 0.36.1", ] -[[package]] -name = "glutin_gles2_sys" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "e8094e708b730a7c8a1954f4f8a31880af00eb8a1c5b5bf85d28a0a3c6d69103" -dependencies = [ - "gl_generator", - "objc", -] - -[[package]] -name = "glutin_glx_sys" -version = "0.1.8" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d93d0575865098580c5b3a423188cd959419912ea60b1e48e8b3b526f6d02468" -dependencies = [ - "gl_generator", - "x11-dl", -] - [[package]] name = "glutin_glx_sys" version = "0.3.0" @@ -2119,15 +2033,6 @@ dependencies = [ "x11-dl", ] -[[package]] -name = "glutin_wgl_sys" -version = "0.1.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "3da5951a1569dbab865c6f2a863efafff193a93caf05538d193e9e3816d21696" -dependencies = [ - "gl_generator", -] - [[package]] name = "glutin_wgl_sys" version = "0.3.0" @@ -2621,15 +2526,6 @@ version = "0.2.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "68354c5c6bd36d73ff3feceb05efa59b6acb7626617f4962be322a825e61f79a" -[[package]] -name = "miniz_oxide" -version = "0.5.4" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "96590ba8f175222643a85693f33d26e9c8a015f599c216509b1a6894af675d34" -dependencies = [ - "adler", -] - [[package]] name = "miniz_oxide" version = "0.6.2" @@ -2943,9 +2839,9 @@ dependencies = [ [[package]] name = "object" -version = "0.29.0" +version = "0.30.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "21158b2c33aa6d4561f1c0a6ea283ca92bc54802a93b263e910746d679a7eb53" +checksum = "ea86265d3d3dcb6a27fc51bd29a4bf387fae9d2986b823079d4986af253eb439" dependencies = [ "memchr", ] @@ -2988,15 +2884,6 @@ version = "6.4.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "9b7820b9daea5457c9f21c69448905d723fbd21136ccf521748f23fd49e723ee" -[[package]] -name = "osmesa-sys" -version = "0.1.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "88cfece6e95d2e717e0872a7f53a8684712ad13822a7979bc760b9c77ec0013b" -dependencies = [ - "shared_library", -] - [[package]] name = "overload" version = "0.1.1" @@ -3118,7 +3005,7 @@ dependencies = [ "bitflags", "crc32fast", "flate2", - "miniz_oxide 0.6.2", + "miniz_oxide", ] [[package]] @@ -3676,16 +3563,6 @@ dependencies = [ "lazy_static", ] -[[package]] -name = "shared_library" -version = "0.1.9" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "5a9e7e0f2bfae24d8a5b5a66c5b257a83c7412304311512a0c054cd5e619da11" -dependencies = [ - "lazy_static", - "libc", -] - [[package]] name = "shlex" version = "1.1.0" @@ -3898,12 +3775,6 @@ dependencies = [ "version-compare", ] -[[package]] -name = "takeable-option" -version = "0.5.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "36ae8932fcfea38b7d3883ae2ab357b0d57a02caaa18ebb4f5ece08beaec4aa0" - [[package]] name = "tempfile" version = "3.3.0" @@ -4554,16 +4425,6 @@ dependencies = [ "xcursor", ] -[[package]] -name = "wayland-egl" -version = "0.29.5" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "402de949f81a012926d821a2d659f930694257e76dd92b6e0042ceb27be4107d" -dependencies = [ - "wayland-client", - "wayland-sys 0.29.5", -] - [[package]] name = "wayland-protocols" version = "0.29.5" diff --git a/Cargo.toml b/Cargo.toml index fb2ce97c9..89bf485fa 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,7 +5,6 @@ members = [ "crates/egui_demo_app", "crates/egui_demo_lib", "crates/egui_extras", - "crates/egui_glium", "crates/egui_glow", "crates/egui-wgpu", "crates/egui-winit", diff --git a/README.md b/README.md index 0173cce8d..810d06f9d 100644 --- a/README.md +++ b/README.md @@ -158,17 +158,17 @@ An integration needs to do the following each frame: * **Input**: Gather input (mouse, touches, keyboard, screen size, etc) and give it to egui * Run the application code * **Output**: Handle egui output (cursor changes, paste, texture allocations, …) -* **Painting**: Render the triangle mesh egui produces (see [OpenGL example](https://github.com/emilk/egui/blob/master/crates/egui_glium/src/painter.rs)) +* **Painting**: Render the triangle mesh egui produces (see [OpenGL example](https://github.com/emilk/egui/blob/master/crates/egui_glow/src/painter.rs)) ### Official integrations These are the official egui integrations: -* [`eframe`](https://github.com/emilk/egui/tree/master/crates/eframe) for compiling the same app to web/wasm and desktop/native. Uses `egui_glow` and `egui-winit`. -* [`egui_glium`](https://github.com/emilk/egui/tree/master/crates/egui_glium) for compiling native apps with [Glium](https://github.com/glium/glium). +* [`eframe`](https://github.com/emilk/egui/tree/master/crates/eframe) for compiling the same app to web/wasm and desktop/native. Uses `egui-winit` and `egui_glow` or `egui-wgpu`. * [`egui_glow`](https://github.com/emilk/egui/tree/master/crates/egui_glow) for rendering egui with [glow](https://github.com/grovesNL/glow) on native and web, and for making native apps. * [`egui-wgpu`](https://github.com/emilk/egui/tree/master/crates/egui-wgpu) for [wgpu](https://crates.io/crates/wgpu) (WebGPU API). * [`egui-winit`](https://github.com/emilk/egui/tree/master/crates/egui-winit) for integrating with [winit](https://github.com/rust-windowing/winit). +* [`egui_glium`](https://github.com/emilk/egui/tree/master/crates/egui_glium) for compiling native apps with [Glium](https://github.com/glium/glium) (DEPRECATED - looking for new maintainer). ### 3rd party integrations diff --git a/crates/eframe/src/web/events.rs b/crates/eframe/src/web/events.rs index dcca886ab..b8471be96 100644 --- a/crates/eframe/src/web/events.rs +++ b/crates/eframe/src/web/events.rs @@ -404,7 +404,7 @@ pub fn install_canvas_events(runner_container: &mut AppRunnerContainer) -> Resul } web_sys::WheelEvent::DOM_DELTA_LINE => { #[allow(clippy::let_and_return)] - let points_per_scroll_line = 8.0; // Note that this is intentionally different from what we use in egui_glium / winit. + let points_per_scroll_line = 8.0; // Note that this is intentionally different from what we use in winit. points_per_scroll_line } _ => 1.0, // DOM_DELTA_PIXEL diff --git a/crates/egui_glium/README.md b/crates/egui_glium/README.md index 909ce4b12..c9a379d3c 100644 --- a/crates/egui_glium/README.md +++ b/crates/egui_glium/README.md @@ -15,3 +15,7 @@ sudo apt-get install libxcb-render0-dev libxcb-shape0-dev libxcb-xfixes0-dev lib ``` This crate depends on [`egui-winit`](https://github.com/emilk/egui/tree/master/crates/egui-winit). + + +## DEPRECATED - Looking for new maintainer +This crate is no longer being updated. If you are interested in keeping `egui_glium` updated, then fork it to its own repository, make a PR to the egui repo removing it, and then I will give you access to it on crates.io so you can publish new `egui_glium` crates. diff --git a/deny.toml b/deny.toml index 8a0362ced..d0ca868b9 100644 --- a/deny.toml +++ b/deny.toml @@ -29,15 +29,18 @@ deny = [ ] skip = [ - { name = "ahash" }, # old version via dark-light - { name = "arrayvec" }, # old version via tiny-skiaz - { name = "hashbrown" }, # old version via dark-light - { name = "time" }, # old version pulled in by unmaintianed crate 'chrono' - { name = "ttf-parser" }, # different versions pulled in by ab_glyph and usvg + { name = "ahash" }, # old version via dark-light + { name = "arrayvec" }, # old version via tiny-skiaz + { name = "hashbrown" }, # old version via dark-light + { name = "nix" }, # old version via winit + { name = "time" }, # old version pulled in by unmaintianed crate 'chrono' + { name = "tiny-skia" }, # winit uses a different version from egui_extras (TODO(emilk): update egui_extras!) + { name = "ttf-parser" }, # different versions pulled in by ab_glyph and usvg + { name = "wayland-sys" }, # old version via winit + { name = "windows-sys" }, # old version via glutin ] skip-tree = [ { name = "criterion" }, # dev-dependency - { name = "glium" }, # legacy crate, lots of old dependencies { name = "rfd" }, # example dependency { name = "three-d" }, # example dependency { name = "tts" }, # we are migrating away from tts to accesskit diff --git a/sh/check.sh b/sh/check.sh index c0890fbfe..3d5a69a05 100755 --- a/sh/check.sh +++ b/sh/check.sh @@ -35,7 +35,6 @@ cargo doc --document-private-items --no-deps --all-features (cd crates/egui_demo_app && cargo check --no-default-features --features "wgpu") (cd crates/egui_demo_lib && cargo check --no-default-features) (cd crates/egui_extras && cargo check --no-default-features) -(cd crates/egui_glium && cargo check --no-default-features) (cd crates/egui_glow && cargo check --no-default-features) (cd crates/egui-winit && cargo check --no-default-features --features "wayland") (cd crates/egui-winit && cargo check --no-default-features --features "winit/x11") @@ -47,7 +46,6 @@ cargo doc --document-private-items --no-deps --all-features (cd crates/egui && cargo check --all-features) (cd crates/egui_demo_app && cargo check --all-features) (cd crates/egui_extras && cargo check --all-features) -(cd crates/egui_glium && cargo check --all-features) (cd crates/egui_glow && cargo check --all-features) (cd crates/egui-winit && cargo check --all-features) (cd crates/emath && cargo check --all-features) diff --git a/sh/docs.sh b/sh/docs.sh index 081eff39c..ee8f863fe 100755 --- a/sh/docs.sh +++ b/sh/docs.sh @@ -4,6 +4,6 @@ script_path=$( cd "$(dirname "${BASH_SOURCE[0]}")" ; pwd -P ) cd "$script_path/.." cargo doc -p eframe --target wasm32-unknown-unknown --lib --no-deps -cargo doc -p emath -p epaint -p egui -p eframe -p egui-winit -p egui_extras -p egui_glium -p egui_glow --lib --no-deps --all-features --open +cargo doc -p emath -p epaint -p egui -p eframe -p egui-winit -p egui_extras -p egui_glow --lib --no-deps --all-features --open # cargo watch -c -x 'doc -p emath -p epaint -p egui --lib --no-deps --all-features'