Re: [PATCH RESEND libgpiod] bindings: rust: bump MSRV to 1.60

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, Jun 16, 2023 at 10:38 AM Erik Schilling
<erik.schilling@xxxxxxxxxx> wrote:
>
> Specifying MSRV (minimum supported rust version) was introduced with
> Rust 1.56. So old versions of libraries do not have this restriction
> spelled out in their Cargo.toml.
>
> This means that even if we claimed a MSRV of 1.56 until now, that did
> not mean that things were actually buildable with 1.56 practically
> (without manually researching compatible versions and pinning them
> down).
>
> `bindgen` started listing a MSRV from v0.61 (requiring Rust 1.57) [1].
> So that may seem like an obvious choice. But if one attempts to build
> it with such an old version one will realize that `log` only started
> requesting a MSRV with 0.4.19 (requesting Rust 1.60) [2]. Hence, we
> would either need to manually restrict log to an old, but compatible
> release (which would unnecessarily restrict everyone on newer Rust
> versions) or just also bump our MSRV to 1.60.
>
> Rust 1.60 was released on 2022-04-07 [3] and seems like an acceptable
> choice if core components such as `log` started their MSRV tracking with
> that version. If someone is determined wanting to use this with an older
> version of Rust, thats still possible. If one has done the necessary
> manual research and pinned their versions down, one can use
> --ignore-rust-version (or a < 1.56 version of Rust that does not check
> the MSRV yet).
>
> Thanks to Manos Pitsidianakis <manos.pitsidianakis@xxxxxxxxxx> for
> helping me out when I successfully confused myself somewhere.
>
> [1] https://github.com/rust-lang/rust-bindgen/blob/v0.61.0/bindgen/Cargo.toml
> [2] https://github.com/rust-lang/log/blob/0.4.19/Cargo.toml
> [3] https://blog.rust-lang.org/2022/04/07/Rust-1.60.0.html
>
> Signed-off-by: Erik Schilling <erik.schilling@xxxxxxxxxx>
> ---
> While looking at the clippy fixes [1], I realized that things do not
> actually build with the minimum supported Rust version that we claim.
> The simplest way forward seems to be just bumping that version.
>
> [1] https://lore.kernel.org/r/20230612154055.56556-1-warthog618@xxxxxxxxx/
>
> To: Linux-GPIO <linux-gpio@xxxxxxxxxxxxxxx>
> Cc: Kent Gibson <warthog618@xxxxxxxxx>
> Cc: Bartosz Golaszewski <bartosz.golaszewski@xxxxxxxxxx>
> Cc: Viresh Kumar <viresh.kumar@xxxxxxxxxx>
> Cc: Manos Pitsidianakis <manos.pitsidianakis@xxxxxxxxxx>
> Cc: Alex Bennée <alex.bennee@xxxxxxxxxx>
> ---
>  bindings/rust/gpiosim-sys/Cargo.toml  | 2 +-
>  bindings/rust/libgpiod-sys/Cargo.toml | 2 +-
>  bindings/rust/libgpiod/Cargo.toml     | 2 +-
>  3 files changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/bindings/rust/gpiosim-sys/Cargo.toml b/bindings/rust/gpiosim-sys/Cargo.toml
> index af30748..1f44a31 100644
> --- a/bindings/rust/gpiosim-sys/Cargo.toml
> +++ b/bindings/rust/gpiosim-sys/Cargo.toml
> @@ -9,7 +9,7 @@ authors = ["Viresh Kumar <viresh.kumar@xxxxxxxxxx>"]
>  description = "gpiosim header bindings"
>  repository = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git";
>  categories = ["external-ffi-bindings", "os::linux-apis"]
> -rust-version = "1.56"
> +rust-version = "1.60"
>  keywords = ["libgpiod", "gpio", "gpiosim"]
>  license = "Apache-2.0 OR BSD-3-Clause"
>  edition = "2021"
> diff --git a/bindings/rust/libgpiod-sys/Cargo.toml b/bindings/rust/libgpiod-sys/Cargo.toml
> index 0c814ee..b4d26e9 100644
> --- a/bindings/rust/libgpiod-sys/Cargo.toml
> +++ b/bindings/rust/libgpiod-sys/Cargo.toml
> @@ -9,7 +9,7 @@ authors = ["Viresh Kumar <viresh.kumar@xxxxxxxxxx>"]
>  description = "libgpiod public header bindings"
>  repository = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git";
>  categories = ["external-ffi-bindings", "os::linux-apis"]
> -rust-version = "1.56"
> +rust-version = "1.60"
>  keywords = ["libgpiod", "gpio"]
>  license = "Apache-2.0 OR BSD-3-Clause"
>  edition = "2021"
> diff --git a/bindings/rust/libgpiod/Cargo.toml b/bindings/rust/libgpiod/Cargo.toml
> index d6758be..518e5e5 100644
> --- a/bindings/rust/libgpiod/Cargo.toml
> +++ b/bindings/rust/libgpiod/Cargo.toml
> @@ -9,7 +9,7 @@ authors = ["Viresh Kumar <viresh.kumar@xxxxxxxxxx>"]
>  description = "libgpiod wrappers"
>  repository = "https://git.kernel.org/pub/scm/libs/libgpiod/libgpiod.git";
>  categories = ["api-bindings", "hardware-support", "embedded", "os::linux-apis"]
> -rust-version = "1.56"
> +rust-version = "1.60"
>  keywords = ["libgpiod", "gpio"]
>  license = "Apache-2.0 OR BSD-3-Clause"
>  edition = "2021"
>
> ---
> base-commit: 9a80247cf4a70c837055271c978afda7ef107338
> change-id: 20230616-msrv-0f1d20f5bd09
>
> Best regards,
> --
> Erik Schilling <erik.schilling@xxxxxxxxxx>
>

Applied, thanks!

Bart




[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux