[PATCH] rust: document `bindgen` 0.71.0 regression

Miguel Ojeda posted 1 patch 2 weeks, 2 days ago
init/Kconfig                 | 6 ++++--
scripts/rust_is_available.sh | 6 ++++--
2 files changed, 8 insertions(+), 4 deletions(-)
[PATCH] rust: document `bindgen` 0.71.0 regression
Posted by Miguel Ojeda 2 weeks, 2 days ago
`bindgen` 0.71.0 regressed [1] on the "`--version` requires header"
issue which appared in 0.69.0 first [2] and was fixed in 0.69.1. It has
been fixed again in 0.71.1 [3].

Thus document it so that, when we upgrade the minimum past 0.69.0 in the
future, we do not forget that we cannot remove the workaround until we
arrive at 0.71.1 at least.

Link: https://github.com/rust-lang/rust-bindgen/issues/3039 [1]
Link: https://github.com/rust-lang/rust-bindgen/issues/2677 [2]
Link: https://github.com/rust-lang/rust-bindgen/blob/main/CHANGELOG.md#v0711-2024-12-09 [3]
Signed-off-by: Miguel Ojeda <ojeda@kernel.org>
---
 init/Kconfig                 | 6 ++++--
 scripts/rust_is_available.sh | 6 ++++--
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/init/Kconfig b/init/Kconfig
index a20e6efd3f0f..e8d2b5128f87 100644
--- a/init/Kconfig
+++ b/init/Kconfig
@@ -1989,8 +1989,10 @@ config BINDGEN_VERSION_TEXT
 	string
 	depends on RUST
 	# The dummy parameter `workaround-for-0.69.0` is required to support 0.69.0
-	# (https://github.com/rust-lang/rust-bindgen/pull/2678). It can be removed when
-	# the minimum version is upgraded past that (0.69.1 already fixed the issue).
+	# (https://github.com/rust-lang/rust-bindgen/pull/2678) and 0.71.0
+	# (https://github.com/rust-lang/rust-bindgen/pull/3040). It can be removed
+	# when the minimum version is upgraded past the latter (0.69.1 and 0.71.1
+	# both fixed the issue).
 	default "$(shell,$(BINDGEN) --version workaround-for-0.69.0 2>/dev/null)"
 
 #
diff --git a/scripts/rust_is_available.sh b/scripts/rust_is_available.sh
index 93c0ef7fb3fb..d2323de0692c 100755
--- a/scripts/rust_is_available.sh
+++ b/scripts/rust_is_available.sh
@@ -123,8 +123,10 @@ fi
 # Non-stable and distributions' versions may have a version suffix, e.g. `-dev`.
 #
 # The dummy parameter `workaround-for-0.69.0` is required to support 0.69.0
-# (https://github.com/rust-lang/rust-bindgen/pull/2678). It can be removed when
-# the minimum version is upgraded past that (0.69.1 already fixed the issue).
+# (https://github.com/rust-lang/rust-bindgen/pull/2678) and 0.71.0
+# (https://github.com/rust-lang/rust-bindgen/pull/3040). It can be removed when
+# the minimum version is upgraded past the latter (0.69.1 and 0.71.1 both fixed
+# the issue).
 rust_bindings_generator_output=$( \
 	LC_ALL=C "$BINDGEN" --version workaround-for-0.69.0 2>/dev/null
 ) || rust_bindings_generator_code=$?

base-commit: fac04efc5c793dccbd07e2d59af9f90b7fc0dca4
-- 
2.47.1
Re: [PATCH] rust: document `bindgen` 0.71.0 regression
Posted by Fiona Behrens 2 weeks, 2 days ago

On 9 Dec 2024, at 22:25, Miguel Ojeda wrote:

> `bindgen` 0.71.0 regressed [1] on the "`--version` requires header"
> issue which appared in 0.69.0 first [2] and was fixed in 0.69.1. It has
> been fixed again in 0.71.1 [3].
>
> Thus document it so that, when we upgrade the minimum past 0.69.0 in the
> future, we do not forget that we cannot remove the workaround until we
> arrive at 0.71.1 at least.
>
> Link: https://github.com/rust-lang/rust-bindgen/issues/3039 [1]
> Link: https://github.com/rust-lang/rust-bindgen/issues/2677 [2]
> Link: https://github.com/rust-lang/rust-bindgen/blob/main/CHANGELOG.md#v0711-2024-12-09 [3]
> Signed-off-by: Miguel Ojeda <ojeda@kernel.org>

Reviewed-by: Fiona Behrens <me@kloenk.dev>

> ---
>  init/Kconfig                 | 6 ++++--
>  scripts/rust_is_available.sh | 6 ++++--
>  2 files changed, 8 insertions(+), 4 deletions(-)
>
> diff --git a/init/Kconfig b/init/Kconfig
> index a20e6efd3f0f..e8d2b5128f87 100644
> --- a/init/Kconfig
> +++ b/init/Kconfig
> @@ -1989,8 +1989,10 @@ config BINDGEN_VERSION_TEXT
>  	string
>  	depends on RUST
>  	# The dummy parameter `workaround-for-0.69.0` is required to support 0.69.0
> -	# (https://github.com/rust-lang/rust-bindgen/pull/2678). It can be removed when
> -	# the minimum version is upgraded past that (0.69.1 already fixed the issue).
> +	# (https://github.com/rust-lang/rust-bindgen/pull/2678) and 0.71.0
> +	# (https://github.com/rust-lang/rust-bindgen/pull/3040). It can be removed
> +	# when the minimum version is upgraded past the latter (0.69.1 and 0.71.1
> +	# both fixed the issue).
>  	default "$(shell,$(BINDGEN) --version workaround-for-0.69.0 2>/dev/null)"
>
>  #
> diff --git a/scripts/rust_is_available.sh b/scripts/rust_is_available.sh
> index 93c0ef7fb3fb..d2323de0692c 100755
> --- a/scripts/rust_is_available.sh
> +++ b/scripts/rust_is_available.sh
> @@ -123,8 +123,10 @@ fi
>  # Non-stable and distributions' versions may have a version suffix, e.g. `-dev`.
>  #
>  # The dummy parameter `workaround-for-0.69.0` is required to support 0.69.0
> -# (https://github.com/rust-lang/rust-bindgen/pull/2678). It can be removed when
> -# the minimum version is upgraded past that (0.69.1 already fixed the issue).
> +# (https://github.com/rust-lang/rust-bindgen/pull/2678) and 0.71.0
> +# (https://github.com/rust-lang/rust-bindgen/pull/3040). It can be removed when
> +# the minimum version is upgraded past the latter (0.69.1 and 0.71.1 both fixed
> +# the issue).
>  rust_bindings_generator_output=$( \
>  	LC_ALL=C "$BINDGEN" --version workaround-for-0.69.0 2>/dev/null
>  ) || rust_bindings_generator_code=$?
>
> base-commit: fac04efc5c793dccbd07e2d59af9f90b7fc0dca4
> -- 
> 2.47.1