From e1895ea3d7102ebde3612e3cc3dda42f0d013c52 Mon Sep 17 00:00:00 2001 From: Ian Douglas Scott Date: Mon, 13 Jan 2025 10:42:44 -0800 Subject: [PATCH] Update dependencies --- Cargo.lock | 167 ++++++++++++++++++---------------- Cargo.toml | 16 ++-- src/backend/wayland/buffer.rs | 8 +- src/desktop_info.rs | 12 +-- 4 files changed, 105 insertions(+), 98 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index 6827816..dd9cca4 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -777,7 +777,6 @@ version = "0.13.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "b99da2f8558ca23c71f4fd15dc57c906239752dd27ff3c00a1d56b685b7cbfec" dependencies = [ - "async-task", "bitflags 2.7.0", "log", "polling 3.7.4", @@ -786,13 +785,39 @@ dependencies = [ "thiserror", ] +[[package]] +name = "calloop" +version = "0.14.2" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "10929724661d1c43856fd87c7a127ae944ec55579134fb485e4136fb6a46fdcb" +dependencies = [ + "async-task", + "bitflags 2.7.0", + "polling 3.7.4", + "rustix 0.38.43", + "slab", + "tracing", +] + [[package]] name = "calloop-wayland-source" version = "0.3.0" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "95a66a987056935f7efce4ab5668920b5d0dac4a7c99991a67395f13702ddd20" dependencies = [ - "calloop", + "calloop 0.13.0", + "rustix 0.38.43", + "wayland-backend", + "wayland-client", +] + +[[package]] +name = "calloop-wayland-source" +version = "0.4.0" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "876a7a1dbbe026a55ef47a500b123af5a9a0914520f061d467914cf21be95daf" +dependencies = [ + "calloop 0.14.2", "rustix 0.38.43", "wayland-backend", "wayland-client", @@ -866,7 +891,7 @@ dependencies = [ "anstream", "anstyle", "clap_lex", - "strsim 0.11.1", + "strsim", ] [[package]] @@ -1139,7 +1164,7 @@ source = "git+https://github.com/pop-os/libcosmic#af9e353f5003cb323a46340acf1939 dependencies = [ "atomicwrites", "cosmic-config-derive", - "dirs 5.0.1", + "dirs", "iced_futures", "known-folders", "notify", @@ -1165,7 +1190,7 @@ name = "cosmic-freedesktop-icons" version = "0.2.6" source = "git+https://github.com/pop-os/freedesktop-icons#27aa0e5a3cf2db20cef7b60d3f68b0628929293f" dependencies = [ - "dirs 5.0.1", + "dirs", "ini_core", "once_cell", "thiserror", @@ -1217,7 +1242,7 @@ dependencies = [ "almost", "cosmic-config", "csscolorparser", - "dirs 5.0.1", + "dirs", "lazy_static", "palette", "ron", @@ -1231,8 +1256,8 @@ name = "cosmic-workspaces" version = "0.1.0" dependencies = [ "anyhow", - "calloop", - "calloop-wayland-source", + "calloop 0.14.2", + "calloop-wayland-source 0.4.0", "clap", "cosmic-bg-config", "cosmic-comp-config", @@ -1384,7 +1409,7 @@ dependencies = [ "ident_case", "proc-macro2", "quote", - "strsim 0.11.1", + "strsim", "syn 2.0.96", ] @@ -1401,11 +1426,12 @@ dependencies = [ [[package]] name = "dashmap" -version = "5.5.3" +version = "6.1.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "978747c1d849a7d2ee5e8adc0159961c48fb7e5db2f06af6723b80123bb53856" +checksum = "5041cc499144891f3790297212f32a74fb938e5136a14943f338ef9e0ae276cf" dependencies = [ "cfg-if", + "crossbeam-utils", "hashbrown 0.14.5", "lock_api", "once_cell", @@ -1420,9 +1446,9 @@ checksum = "5c297a1c74b71ae29df00c3e22dd9534821d60eb9af5a0192823fa2acea70c2a" [[package]] name = "delegate" -version = "0.12.0" +version = "0.13.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "4e018fccbeeb50ff26562ece792ed06659b9c2dae79ece77c4456bb10d9bf79b" +checksum = "bc2323e10c92e1cf4d86e11538512e6dc03ceb586842970b6332af3d4046a046" dependencies = [ "proc-macro2", "quote", @@ -1462,33 +1488,13 @@ dependencies = [ "crypto-common", ] -[[package]] -name = "dirs" -version = "3.0.2" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "30baa043103c9d0c2a57cf537cc2f35623889dc0d405e6c3cccfadbc81c71309" -dependencies = [ - "dirs-sys 0.3.7", -] - [[package]] name = "dirs" version = "5.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "44c45a9d03d6676652bcb5e724c7e988de1acad23a711b5217ab9cbecbec2225" dependencies = [ - "dirs-sys 0.4.1", -] - -[[package]] -name = "dirs-sys" -version = "0.3.7" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "1b1d1d91c932ef41c0f2663aa8b0ca0342d444d842c06914aa0a7e352d0bada6" -dependencies = [ - "libc", - "redox_users", - "winapi", + "dirs-sys", ] [[package]] @@ -1585,14 +1591,15 @@ dependencies = [ [[package]] name = "drm" -version = "0.12.0" +version = "0.14.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "98888c4bbd601524c11a7ed63f814b8825f420514f78e96f752c437ae9cbb5d1" +checksum = "80bc8c5c6c2941f70a55c15f8d9f00f9710ebda3ffda98075f996a0e6c92756f" dependencies = [ "bitflags 2.7.0", "bytemuck", - "drm-ffi 0.8.0", + "drm-ffi 0.9.0", "drm-fourcc", + "libc", "rustix 0.38.43", ] @@ -1608,11 +1615,11 @@ dependencies = [ [[package]] name = "drm-ffi" -version = "0.8.0" +version = "0.9.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "97c98727e48b7ccb4f4aea8cfe881e5b07f702d17b7875991881b41af7278d53" +checksum = "d8e41459d99a9b529845f6d2c909eb9adf3b6d2f82635ae40be8de0601726e8b" dependencies = [ - "drm-sys 0.7.0", + "drm-sys 0.8.0", "rustix 0.38.43", ] @@ -1634,9 +1641,9 @@ dependencies = [ [[package]] name = "drm-sys" -version = "0.7.0" +version = "0.8.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "fd39dde40b6e196c2e8763f23d119ddb1a8714534bf7d77fa97a65b0feda3986" +checksum = "bafb66c8dbc944d69e15cfcc661df7e703beffbaec8bd63151368b06c5f9858c" dependencies = [ "libc", "linux-raw-sys 0.6.5", @@ -2005,13 +2012,16 @@ dependencies = [ [[package]] name = "freedesktop-desktop-entry" -version = "0.5.2" +version = "0.7.5" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "c201444ddafb5506fe85265b48421664ff4617e3b7090ef99e42a0070c1aead0" +checksum = "d83c9c25bc7e0ff18c6fee324db310497622be235fd45c0f7347ab81981a941e" dependencies = [ - "dirs 3.0.2", + "dirs", "gettext-rs", + "log", "memchr", + "strsim", + "textdistance", "thiserror", "xdg", ] @@ -2022,7 +2032,7 @@ version = "0.2.6" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "a8ef34245e0540c9a3ce7a28340b98d2c12b75da0d446da4e8224923fcaa0c16" dependencies = [ - "dirs 5.0.1", + "dirs", "once_cell", "rust-ini", "thiserror", @@ -2158,12 +2168,12 @@ dependencies = [ [[package]] name = "gbm" -version = "0.15.0" +version = "0.18.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "45bf55ba6dd53ad0ac115046ff999c5324c283444ee6e0be82454c4e8eb2f36a" +checksum = "ce852e998d3ca5e4a97014fb31c940dc5ef344ec7d364984525fd11e8a547e6a" dependencies = [ "bitflags 2.7.0", - "drm 0.12.0", + "drm 0.14.1", "drm-fourcc", "gbm-sys", "libc", @@ -2173,9 +2183,9 @@ dependencies = [ [[package]] name = "gbm-sys" -version = "0.3.1" +version = "0.4.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a9cc2f64de9fa707b5c6b2d2f10d7a7e49e845018a9f5685891eb40d3bab2538" +checksum = "c13a5f2acc785d8fb6bf6b7ab6bfb0ef5dad4f4d97e8e70bb8e470722312f76f" dependencies = [ "libc", ] @@ -2451,9 +2461,9 @@ dependencies = [ [[package]] name = "i18n-embed" -version = "0.14.1" +version = "0.15.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "94205d95764f5bb9db9ea98fa77f89653365ca748e27161f5bbea2ffd50e459c" +checksum = "d0454970a5853f498e686cbd7bf9391aac2244928194780cb7a0af0f41937db6" dependencies = [ "arc-swap", "fluent", @@ -2461,7 +2471,6 @@ dependencies = [ "fluent-syntax", "i18n-embed-impl", "intl-memoizer", - "lazy_static", "locale_config", "log", "parking_lot 0.12.3", @@ -2473,9 +2482,9 @@ dependencies = [ [[package]] name = "i18n-embed-fl" -version = "0.8.0" +version = "0.9.3" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "8241a781f49e923415e106fcd1f89c3fab92cc9f699a521c56e95dee273903d3" +checksum = "0b7578cee2940492a648bd60fb49ca85ee8c821a63790e0ef5b604cfed353b2a" dependencies = [ "dashmap", "find-crate", @@ -2483,11 +2492,10 @@ dependencies = [ "fluent-syntax", "i18n-config", "i18n-embed", - "lazy_static", - "proc-macro-error", + "proc-macro-error2", "proc-macro2", "quote", - "strsim 0.10.0", + "strsim", "syn 2.0.96", "unic-langid", ] @@ -3048,9 +3056,9 @@ checksum = "7943c866cc5cd64cbc25b2e01621d07fa8eb2a1a23160ee81ce38704e97b8ecf" [[package]] name = "itertools" -version = "0.12.1" +version = "0.14.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "ba291022dbbd398a455acf126c1e341954079855bc60dfdda641363bd6922569" +checksum = "2b192c782037fadd9cfa75548310488aabdbf3d2da73885b31bd0abd03351285" dependencies = [ "either", ] @@ -4242,27 +4250,25 @@ dependencies = [ ] [[package]] -name = "proc-macro-error" -version = "1.0.4" +name = "proc-macro-error-attr2" +version = "2.0.0" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "da25490ff9892aab3fcf7c36f08cfb902dd3e71ca0f9f9517bea02a73a5ce38c" +checksum = "96de42df36bb9bba5542fe9f1a054b8cc87e172759a1868aa05c1f3acc89dfc5" dependencies = [ - "proc-macro-error-attr", "proc-macro2", "quote", - "syn 1.0.109", - "version_check", ] [[package]] -name = "proc-macro-error-attr" -version = "1.0.4" +name = "proc-macro-error2" +version = "2.0.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "a1be40180e52ecc98ad80b184934baf3d0d29f979574e439af5a55274b35f869" +checksum = "11ec05c52be0a07b08061f7dd003e7d7092e0472bc731b4af7bb1ef876109802" dependencies = [ + "proc-macro-error-attr2", "proc-macro2", "quote", - "version_check", + "syn 2.0.96", ] [[package]] @@ -4848,8 +4854,8 @@ checksum = "3457dea1f0eb631b4034d61d4d8c32074caa6cd1ab2d59f2327bd8461e2c0016" dependencies = [ "bitflags 2.7.0", "bytemuck", - "calloop", - "calloop-wayland-source", + "calloop 0.13.0", + "calloop-wayland-source 0.3.0", "cursor-icon", "libc", "log", @@ -4968,12 +4974,6 @@ dependencies = [ "float-cmp", ] -[[package]] -name = "strsim" -version = "0.10.0" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "73473c0e59e6d5812c5dfe2a064a6444949f089e20eec9a2e5506596494e4623" - [[package]] name = "strsim" version = "0.11.1" @@ -5089,6 +5089,12 @@ dependencies = [ "winapi-util", ] +[[package]] +name = "textdistance" +version = "1.1.1" +source = "registry+https://github.com/rust-lang/crates.io-index" +checksum = "aa672c55ab69f787dbc9126cc387dbe57fdd595f585e4524cf89018fa44ab819" + [[package]] name = "thiserror" version = "1.0.69" @@ -5276,6 +5282,7 @@ version = "0.1.41" source = "registry+https://github.com/rust-lang/crates.io-index" checksum = "784e0ac535deb450455cbfa28a6f0df145ea1bb7ae51b821cf5e7927fdcfbdd0" dependencies = [ + "log", "pin-project-lite", "tracing-attributes", "tracing-core", @@ -6227,7 +6234,7 @@ dependencies = [ "bitflags 2.7.0", "block2", "bytemuck", - "calloop", + "calloop 0.13.0", "cfg_aliases 0.2.1", "concurrent-queue", "core-foundation", diff --git a/Cargo.toml b/Cargo.toml index cb169b2..57224a8 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -5,16 +5,16 @@ edition = "2021" [dependencies] anyhow = "1.0.75" -calloop = { version = "0.13.0", features = ["executor"] } +calloop = { version = "0.14.2", features = ["executor"] } clap = { version = "4", features = ["derive"] } cosmic-bg-config = { git = "https://github.com/pop-os/cosmic-bg" } cosmic-comp-config = { git = "https://github.com/pop-os/cosmic-comp" } env_logger = "0.11.0" futures-channel = "0.3.25" -gbm = "0.15.0" +gbm = "0.18.0" libcosmic = { git = "https://github.com/pop-os/libcosmic", default-features = false, features = ["tokio", "wayland", "single-instance", "multi-window", "winit"] } cosmic-config = { git = "https://github.com/pop-os/libcosmic" } -freedesktop-desktop-entry = "0.5.0" +freedesktop-desktop-entry = "0.7.0" freedesktop-icons = "0.2.4" memmap2 = "0.9.0" @@ -22,16 +22,16 @@ tokio = "1.23.0" wayland-protocols = "0.32.1" zbus = { version = "4.0.0", default-features = false, features = ["tokio"] } once_cell = "1.18.0" -delegate = "0.12.0" -itertools = "0.12.0" +delegate = "0.13.0" +itertools = "0.14.0" log = "0.4.20" -i18n-embed-fl = "0.8.0" +i18n-embed-fl = "0.9.0" rust-embed = "8.1.0" rustix = { version = "0.38.30", features = ["fs"] } -calloop-wayland-source = "0.3.0" +calloop-wayland-source = "0.4.0" [dependencies.i18n-embed] -version = "0.14.1" +version = "0.15.3" features = ["fluent-system", "desktop-requester"] [features] diff --git a/src/backend/wayland/buffer.rs b/src/backend/wayland/buffer.rs index 1698765..0d30274 100644 --- a/src/backend/wayland/buffer.rs +++ b/src/backend/wayland/buffer.rs @@ -131,11 +131,11 @@ impl AppData { let mut planes = Vec::new(); let params = self.dmabuf_state.create_params(&self.qh)?; - let modifier = bo.modifier()?; - for i in 0..bo.plane_count()? as i32 { + let modifier = bo.modifier(); + for i in 0..bo.plane_count() as i32 { let plane_fd = bo.fd_for_plane(i)?; - let plane_offset = bo.offset(i)?; - let plane_stride = bo.stride_for_plane(i)?; + let plane_offset = bo.offset(i); + let plane_stride = bo.stride_for_plane(i); params.add( plane_fd.as_fd(), i as u32, diff --git a/src/desktop_info.rs b/src/desktop_info.rs index 02add6f..382cc0f 100644 --- a/src/desktop_info.rs +++ b/src/desktop_info.rs @@ -45,12 +45,13 @@ fn desktop_info_for_app_ids(mut app_ids: Vec) -> Vec { let app_ids_clone = app_ids.clone(); let mut ret = freedesktop_desktop_entry::Iter::new(freedesktop_desktop_entry::default_paths()) .filter_map(|path| { - std::fs::read_to_string(&path).ok().and_then(|input| { - DesktopEntry::decode(&path, &input).ok().and_then(|de| { + DesktopEntry::from_path::(path.clone(), None) + .ok() + .and_then(|de| { if let Some(i) = app_ids.iter().position(|s| { - s == de.appid || s.eq(&de.startup_wm_class().unwrap_or_default()) + *s == de.appid || s.eq(&de.startup_wm_class().unwrap_or_default()) }) { - let icon = freedesktop_icons::lookup(de.icon().unwrap_or(de.appid)) + let icon = freedesktop_icons::lookup(de.icon().unwrap_or(&de.appid)) .with_size(128) .with_cache() .find() @@ -62,14 +63,13 @@ fn desktop_info_for_app_ids(mut app_ids: Vec) -> Vec { wm_class: de.startup_wm_class().map(ToString::to_string), icon, exec: de.exec().unwrap_or_default().to_string(), - name: de.name(None).unwrap_or_default().to_string(), + name: de.name::(&[]).unwrap_or_default().to_string(), path: path.clone(), }) } else { None } }) - }) }) .collect_vec(); ret.append(