Prepare next version

Update dependencies
Increase minimum supported Rust version to 1.82
Add script to check on msrv including aarch64 and FreeBSD targets
Fix incompatibilities with Rust 1.82, aarch64 and FreeBSD
This commit is contained in:
Gergő Sályi 2025-04-25 15:15:55 +02:00
parent 947e0ad057
commit bf8b8df4e1
6 changed files with 43 additions and 35 deletions

38
Cargo.lock generated
View file

@ -81,9 +81,9 @@ dependencies = [
[[package]]
name = "anyhow"
version = "1.0.97"
version = "1.0.98"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "dcfed56ad506cb2c684a14971b8861fdc3baaaae314b9e5f9bb532cbe3ba7a4f"
checksum = "e16d2d3311acee920a9eb8d33b8cbc1787ce4a264e85f964c2404b969bdcd487"
[[package]]
name = "ash"
@ -172,9 +172,9 @@ checksum = "d71b6127be86fdcfddb610f7182ac57211d4b18a3e9c82eb2d17662f2227ad6a"
[[package]]
name = "cc"
version = "1.2.18"
version = "1.2.20"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "525046617d8376e3db1deffb079e91cef90a89fc3ca5c185bbf8c9ecdd15cd5c"
checksum = "04da6a0d40b948dfc4fa8f5bbf402b0fc1a64a28dbf7d12ffd683550f2c1b63a"
dependencies = [
"shlex",
]
@ -197,9 +197,9 @@ checksum = "baf1de4339761588bc0619e3cbc0120ee582ebb74b53b4efbf79117bd2da40fd"
[[package]]
name = "clap"
version = "4.5.35"
version = "4.5.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "d8aa86934b44c19c50f87cc2790e19f54f7a67aedb64101c2e1a2e5ecfb73944"
checksum = "eccb054f56cbd38340b380d4a8e69ef1f02f1af43db2f0cc817a4774d80ae071"
dependencies = [
"clap_builder",
"clap_derive",
@ -207,9 +207,9 @@ dependencies = [
[[package]]
name = "clap_builder"
version = "4.5.35"
version = "4.5.37"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "2414dbb2dd0695280da6ea9261e327479e9d37b0630f6b53ba2a11c60c679fd9"
checksum = "efd9466fac8543255d3b1fcad4762c5e116ffe808c8a3043d4263cd4fd4862a2"
dependencies = [
"anstream",
"anstyle",
@ -521,9 +521,9 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c"
[[package]]
name = "jiff"
version = "0.2.6"
version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "1f33145a5cbea837164362c7bd596106eb7c5198f97d1ba6f6ebb3223952e488"
checksum = "5a064218214dc6a10fbae5ec5fa888d80c45d611aba169222fc272072bf7aef6"
dependencies = [
"jiff-static",
"log",
@ -534,9 +534,9 @@ dependencies = [
[[package]]
name = "jiff-static"
version = "0.2.6"
version = "0.2.10"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "43ce13c40ec6956157a3635d97a1ee2df323b263f09ea14165131289cb0f5c19"
checksum = "199b7932d97e325aff3a7030e141eafe7f2c6268e1d1b24859b753a627f45254"
dependencies = [
"proc-macro2",
"quote",
@ -557,9 +557,9 @@ checksum = "03087c2bad5e1034e8cace5926dec053fb3790248370865f5117a7d0213354c8"
[[package]]
name = "libc"
version = "0.2.171"
version = "0.2.172"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "c19937216e9d3aa9956d9bb8dfc0b0c8beb6058fc4f7a4dc4d850edf86a237d6"
checksum = "d750af042f7ef4f724306de029d18836c26c1765a54a6a3f094cbd23a7267ffa"
[[package]]
name = "libloading"
@ -630,7 +630,7 @@ dependencies = [
[[package]]
name = "multibg-sway"
version = "0.1.10"
version = "0.2.0"
dependencies = [
"anyhow",
"ash",
@ -751,9 +751,9 @@ dependencies = [
[[package]]
name = "proc-macro2"
version = "1.0.94"
version = "1.0.95"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "a31971752e70b8b2686d7e46ec17fb38dad4051d94024c88df49b667caea9c84"
checksum = "02b3e5e68a3a1a02aad3ec490a98007cbc13c37cbe84a3cd7b8e406d76e7f778"
dependencies = [
"unicode-ident",
]
@ -1263,9 +1263,9 @@ checksum = "589f6da84c646204747d1270a2a5661ea66ed1cced2631d546fdfb155959f9ec"
[[package]]
name = "winnow"
version = "0.7.6"
version = "0.7.7"
source = "registry+https://github.com/rust-lang/crates.io-index"
checksum = "63d3fcd9bba44b03821e7d699eeee959f3126dcc4aa8e4ae18ec617c2a5cea10"
checksum = "6cb8234a863ea0e8cd7284fcdd4f145233eb00fee02bbdd9861aec44e6477bc5"
dependencies = [
"memchr",
]

View file

@ -1,9 +1,9 @@
[package]
name = "multibg-sway"
version = "0.1.10"
version = "0.2.0"
authors = ["Gergő Sályi <salyigergo94@gmail.com>"]
edition = "2021"
rust-version = "1.80"
rust-version = "1.81"
description = "Set a different wallpaper for the background of each Sway workspace"
readme = "README.md"
homepage = "https://github.com/gergo-salyi/multibg-sway"
@ -35,5 +35,5 @@ default-features = false
features = ["bmp", "dds", "exr", "ff", "gif", "hdr", "ico", "jpeg", "png", "pnm", "qoi", "tga", "tiff", "webp"]
[features]
default = ["avif"]
default = []
avif = ["image/avif-native"]

8
scripts/msrvcheck.sh Executable file
View file

@ -0,0 +1,8 @@
#!/bin/bash
# rustup toolchain uninstall 1.80-x86_64-unknown-linux-gnu
# rustup toolchain install 1.82-x86_64-unknown-linux-gnu
# rustup +1.82-x86_64-unknown-linux-gnu target add aarch64-unknown-linux-gnu x86_64-unknown-freebsd
set -euxo pipefail
cargo +1.82-x86_64-unknown-linux-gnu check --target=x86_64-unknown-linux-gnu --features=avif
cargo +1.82-x86_64-unknown-linux-gnu check --target=aarch64-unknown-linux-gnu
cargo +1.82-x86_64-unknown-linux-gnu check --target=x86_64-unknown-freebsd

View file

@ -1,7 +1,7 @@
use std::{
backtrace::Backtrace,
borrow::Cow,
ffi::{c_void, CStr},
ffi::{c_char, c_void, CStr},
ptr,
};
@ -206,8 +206,8 @@ unsafe extern "system" fn debug_report_callback(
_object: u64,
_location: usize,
_message_code: i32,
_p_layer_prefix: *const i8,
p_message: *const i8,
_p_layer_prefix: *const c_char,
p_message: *const c_char,
_p_user_data: *mut c_void
) -> u32 {
let message = if p_message.is_null() {

View file

@ -138,14 +138,13 @@ unsafe fn sigaction_set_handler(
flags: c_int,
) -> io::Result<()> {
unsafe {
let mut act: sigaction = MaybeUninit::zeroed().assume_init();
act.sa_sigaction = handler as _;
act.sa_mask = mask;
act.sa_flags = flags;
if sigaction(
signum,
&sigaction {
sa_sigaction: handler as _,
sa_mask: mask,
sa_flags: flags,
sa_restorer: None,
},
&act,
ptr::null_mut(),
) < 0 {
return Err(io::Error::last_os_error())
@ -221,7 +220,8 @@ impl Drop for ErrnoGuard {
// https://github.com/lambda-fairy/rust-errno/blob/main/src/unix.rs
// under licence MIT OR Apache-2.0
unsafe extern "C" {
#[allow(unexpected_cfgs)]
extern "C" {
#[cfg_attr(
any(
target_os = "linux",

View file

@ -1113,7 +1113,7 @@ fn handle_dmabuf_feedback(
bg_layer_pos: usize,
) -> anyhow::Result<()> {
let bg_layer = &mut state.background_layers[bg_layer_pos];
let main_dev = feedback.main_device();
let main_dev = feedback.main_device() as Dev;
let format_table = feedback.format_table();
let tranches = feedback.tranches();
debug!("Linux DMA-BUF feedback for output {}, main device {}:{}, \
@ -1125,7 +1125,7 @@ fn handle_dmabuf_feedback(
}
let mut selected = None;
for (index, tranche) in tranches.iter().enumerate() {
let target_dev = tranche.device;
let target_dev = tranche.device as Dev;
debug!("Tranche {index} target device {}:{}",
major(target_dev), minor(target_dev));
if selected.is_none() && target_dev == main_dev {
@ -1158,7 +1158,7 @@ fn handle_dmabuf_feedback(
drm_format_modifiers.iter()
.map(|&modifier| fmt_modifier(modifier))
.collect::<Vec<_>>().join(", "));
let dmabuf_drm_dev = Some(main_dev as Dev);
let dmabuf_drm_dev = Some(main_dev);
if !bg_layer.workspace_backgrounds.is_empty()
&& bg_layer.workspace_backgrounds.iter().all(|bg| {
let memory = &bg.wallpaper.borrow().memory;