Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore(deps): update rust crate bindgen to 0.71 #15

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

renovate[bot]
Copy link
Contributor

@renovate renovate bot commented Nov 20, 2022

This PR contains the following updates:

Package Type Update Change
bindgen (source) build-dependencies minor 0.60 -> 0.71

Release Notes

rust-lang/rust-bindgen (bindgen)

v0.71.0

Compare Source

Added

  • Add the ParseCallbacks::new_item_found callback to expose the original and final name of structs, unions and enums (#​2658).
  • Add the field_type_name field to FieldInfo to expose the name of the type of a field (#​2863)
  • Add support for custom attributes with the --with-attribute-custom flag (#​2866)
  • Allow setting --rust-target to any Rust version supported by bindgen (#​2993)
  • Use c-string literals if the --generate-cstr flag is used for Rust targets after 1.77 under the 2021 edition (#​2996)
  • Add the --rust-edition flag which allows to select which Rust edition to target. (#​3002, #​3013)
  • Use unsafe extern instead of extern in blocks for any Rust target after 1.82. (#​3015)

Changed

  • The --wrap-static-fns related options no longer require the experimental feature or flag (#​2928)
  • Use the Display implementation instead of the Debug one for BindgenError in bindgen-cli (#​3005)

Removed

  • Dropped support for any Clang versions strictly lower than 9.0 (#​2932)
  • Dropped support for any Rust version strictly lower than 1.33 (#​2993)

Fixed

  • Represent opaque types in a FFI-safe way (#​2880)
  • Use the underlying type of any atomic type instead of panicking (#​2920)
  • Use the right characters for newlines on windows (#​2923)
  • Inlined namespaces are properly recognized now (#​2950)
  • Unsafe calls to libloading are now wrapped in unsafe blocks when using dynamic loading (#​2961)
  • The ParseCallbacks::field_visibility callback is now called for newtypes as well (#​2967)
  • Gate the use of the addr_of and addr_of_mut macros under the 1.51 rust version (#​2988)

v0.70.1

Compare Source

Added

Changed

Removed

Fixed

  • Fix regression where the const layout tests were triggering the unnecessary_operation and identity_op clippy warnings.

Security

v0.70.0

Compare Source

Added

  • Add target mappings for riscv64imac and riscv32imafc.
  • Add a complex macro fallback API (#​2779).
  • Add option to use DST structs for flexible arrays (--flexarray-dst, #​2772).
  • Add option to dynamically load variables (#​2812).
  • Add option in CLI to use rustified non-exhaustive enums (--rustified-non-exhaustive-enum, #​2847).
  • Add field_type_name to FieldInfo.

Changed

  • Remove which and lazy-static dependencies (#​2809, #​2817).
  • Generate compile-time layout tests (#​2787).
  • Print bindgen-cli errors to stderr instead of stdout (#​2840)

Removed

Fixed

  • Fix --formatter=prettyplease not working in bindgen-cli by adding prettyplease feature and
    enabling it by default for bindgen-cli (#​2789) .
  • Fix --allowlist-item so anonymous enums are no longer ignored (#​2827).
  • Use clang_getFileLocation instead of clang_getSpellingLocation to fix clang-trunk (#​2824).
  • Fix generated constants: f64::INFINITY, f64::NEG_ INFINITY, f64::NAN (#​2854).

Security

v0.69.5

Compare Source

Install bindgen-cli 0.69.5

Install prebuilt binaries via shell script
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/rust-lang/rust-bindgen/releases/download/v0.69.5/bindgen-cli-installer.sh | sh

Download bindgen-cli 0.69.5

File Platform Checksum
bindgen-cli-aarch64-apple-darwin.tar.xz Apple Silicon macOS checksum
bindgen-cli-x86_64-apple-darwin.tar.xz Intel macOS checksum
bindgen-cli-x86_64-unknown-linux-gnu.tar.xz x64 Linux checksum

v0.69.4

Compare Source

Added

Changed

Removed

Fixed

Security

v0.69.3

Compare Source

Added

Changed

  • Use CR consistently on windows (#​2698)
  • Replaced peeking_take_while by itertools (#​2724)

Removed

Fixed

  • Try to avoid repr(packed) for explicitly aligned types when not needed (#​2734)
  • Improved destructor handling on Windows (#​2663)
  • Support Float16 (#​2667)
  • Fix alignment contribution from bitfields (#​2680)
  • Fixed msrv build.

Security

  • Updated shlex dependency (RUSTSEC-2024-0006)

v0.69.2

Compare Source

Added

Changed

Removed

Fixed

  • Fixed generation of extern "C" blocks with llvm 18+. See #​2689.

Security

v0.69.1

Compare Source

Fixed

  • Allow to run bindgen -v without an input header argument.

v0.69.0

Compare Source

Added

  • Added the ParseCallbacks::header_file callback which runs on every filename passed to Builder::header.
  • Added the CargoCallbacks::new constructor which emits a cargo-rerun line
    for every input header file by default.
  • Added the CargoCallbacks::rerun_on_header_files method to configure whether
    a cargo-rerun line should be emitted for every input header file.

Changed

  • The --wrap-static-fns feature was updated so function types that has no
    argument use void as its sole argument.
  • CargoCallbacks is no longer a unit-like
    struct
    and the
    CargoCallbacks constant was added to mitigate the breaking nature of this
    change. This constant has been marked as deprecated and users will have to
    use the new CargoCallbacks::new method in the future.

Removed

Fixed

  • Allow compiling bindgen-cli with a static libclang.
  • Emit an opaque integer type for pointer types that don't have the same size
    as the target's pointer size.
  • Avoid escaping Objective-C method names unless they are Self, self,
    crate or super.

Security

v0.68.1

Compare Source

Fixed

  • Fixed errors on the windows artifact build process.

v0.68.0

Compare Source

Added

  • The system ABI is now supported as an option for the --override-abi flag.
  • The allowlist_item method and the --allowlist-item flag have been
    included to filter items regardless or their kind.
  • Include installers as release artifacts on Github.

Changed

  • The Clone implementation for _BindgenUnionField has been changed to pass
    the incorrect_clone_impl_on_copy_type Clippy lint.
  • The c_unwind ABI can be used without a feature gate for any Rust target version
    equal to or greater than 1.71.
    This comes as a result of the ABI being stabilised (in Rust 1.71).
  • Formatting changes when using prettyplease as a formatter due to a new
    prettyplease version.
  • Avoid generating invalid CStr constants when using the --generate-cstr
    option.

Removed

  • The extra_assert and extra_assert_eq macros are no longer exported.

Fixed

  • Bindgen no longer panics when parsing an objective-C header that includes a
    Rust keyword that cannot be a raw identifier, such as: self, crate,
    super or Self.

v0.66.1

Compare Source

Removed

  • Revert source order sorting (#​2543) due to correctness regressions #​2558.

v0.66.0

Compare Source

Added

  • Added the --generate-cstr CLI flag to generate string constants as &CStr
    instead of &[u8]. (Requires Rust 1.59 or higher.)
  • Added the --generate-shell-completions CLI flag to generate completions for
    different shells.
  • The --wrap-static-fns option can now wrap va_list functions as variadic functions
    with the experimental ParseCallbacks::wrap_as_variadic_fn method.
  • Add target mappings for riscv32imc and riscv32imac.
  • Add the ParseCallbacks::field_visibility method to modify field visibility.

Changed

  • Non-UTF-8 string constants are now generated as references (&[u8; SIZE])
    instead of arrays ([u8; SIZE]) to match UTF-8 strings.
  • Wrappers for static functions that return void no longer contain a return
    statement and only call the static function instead.
  • The --wrap-static-fns option no longer emits wrappers for static variadic
    functions.
  • Depfiles generated with --depfile or Builder::depfile will now properly
    generate module names and paths that include spaces by escaping them. To make
    the escaping clear and consistent, backslashes are also escaped.
  • Updated bitflags dependency to 2.2.1. This changes the API of CodegenConfig.
  • Prettyplease formatting is gated by an optional, enabled by default Cargo
    feature when depending on bindgen as a library.
  • Items are now parsed in the order they appear in source files. This may result in
    auto-generated _bindgen_* names having a different index.
  • Use default visibility for padding fields: Previously, padding fields were
    always public. Now, they follow the default visibility for the type they are
    in.
  • Compute visibility of bitfield unit based on actual field visibility: A
    bitfield unit field and its related functions now have their visibility
    determined based on the most private between the default visibility and the
    actual visibility of the bitfields within the unit.

Removed

  • Remove redundant Cargo features, which were all implicit:

    • bindgen-cli: env_logger and log removed in favor of logging
    • bindgen (lib):
      • log removed in favor of logging
      • which removed in favor of which-logging
      • annotate-snippets removed in favor of experimental
  • Prettyplease is available as a Formatter variant now.

v0.65.1

Compare Source

Fixed

  • The Builder::rustfmt_bindings method was added back and tagged as
    deprecated instead of being removed.
  • Broken documentation links were fixed.

v0.65.0

Compare Source

Added

  • Added the Builder::default_visibility method and the
    --default-visibility flag to set the default visibility of fields. (#​2338)
  • Added the --formatter CLI flag with the values none, rustfmt and
    prettyplease to select which tool will be used to format the bindings. The
    default value is rustfmt. (#​2453)
  • Added the Builder::formatter method and the Formatter type to select
    which tool will be used to format the bindings. (#​2453)
  • Added the Builder::emit_diagnostics method and the --emit-diagnostics
    flag to enable emission of diagnostic messages under the experimental
    feature. (#​2436)
  • Added support for the "efiapi" calling convention (#​2490).
  • Added the ParseCallbacks::read_env_var method which runs everytime
    bindgen reads and environment variable. (#​2400)
  • Added the ParseCallbacks::generated_link_name_override method which allow
    overriding the link name of items. (#​2425)
  • Add support for C enums when generating code while using the
    --wrap-static-fns feature. (#​2415)

Changed

  • Static functions with no arguments use void as their single argument
    instead of having no arguments when the --wrap-static-fns flag is used.
    (#​2443)
  • The source file generated when the --wrap-static-fns flag is enabled now
    contains #include directives with all the input headers and all the source
    code added with the header_contents method. (#​2447)
  • The source file generated when the --wrap-static-fns flag no longer uses
    asm labeling and the link name of static wrapper functions is allowed to
    be mangled. (#​2448)
  • The documentation of the generated type aliases now matches the comments
    of their typedef counterparts instead of using the comments of the aliased
    types. (#​2463)
  • The Builder::rustfmt_bindings methods and the --no-rustfmt-bindings flag
    are now deprecated in favor of the formatter API. (#​2453)

Removed

  • The following deprecated flags were removed: --use-msvc-mangling,
    --rustfmt-bindings and --size_t-is-usize. (#​2408)
  • The Bindings::emit_warnings and Bindings::warnings methods were removed
    in favor of --emit-diagnostics. (#​2436)
  • Bindgen no longer generates C string constants that cannot be represented as
    byte slices. (#​2487)

v0.64.0

Compare Source

Added

  • Added a new set of flags --with-derive-custom,
    --with-derive-custom-struct, --with-derive-custom-enum and
    --with-derive-custom-enum to add custom derives from the CLI.
  • Added the --experimental flag on bindgen-cli and the experimental
    feature on bindgen to gate experimental features whose implementation is
    incomplete or are prone to change in a non-backwards compatible manner.
  • Added a new set of flags and their equivalent builder methods
    --wrap-static-fns, --wrap-static-fns-suffix and --wrap-static-fns-path
    to generate C function wrappers for static or static inline functions.
    This feature is experimental.

Changed

  • Fixed name collisions when having a C enum and a typedef with the same
    name.
  • The ParseCallbacks::generated_name_override method now receives ItemInfo<'_> as
    argument instead of a &str.
  • Updated the clang-sys crate version to 1.4.0 to support clang 15.
  • The return type is now omitted in signatures of functions returning void.
  • Updated the clap dependency for bindgen-cli to 4.
  • Rewrote the bindgen-cli argument parser which could introduce unexpected
    behavior changes.
  • The ParseCallbacks::add_derives method now receives DeriveInfo<'_> as
    argument instead of a &str. This type also includes the kind of target type.

v0.63.0

Compare Source

Added

  • new feature: process_comments method to the ParseCallbacks trait to
    handle source code comments.

Changed

  • Only wrap unsafe operations in unsafe blocks if the --wrap_unsafe_ops
    option is enabled.
  • Replace the name: &str argument for ParseCallbacks::add_derives by
    info: DeriveInfo.
  • All the rust targets equal or lower than 1.30 are being deprecated and
    will be removed in the future. If you have a good reason to use any of these
    targets, please report it in the issue tracker.

Removed

  • The following deprecated methods and their equivalent CLI arguments were
    removed: whitelist_recursively, hide_type, blacklist_type,
    blacklist_function, blacklist_item, whitelisted_type,
    whitelist_type, whitelist_function, whitelisted_function,
    whitelist_var, whitelisted_var, unstable_rust.

v0.62.0

Compare Source

Added

  • new feature: --override-abi flag to override the ABI used by functions
    matching a regular expression.
  • new feature: allow using the C-unwind ABI in --override-abi on nightly
    rust.

Changed

  • Regex inputs are sanitized so alternation (a|b) is handled correctly but
    wildcard patterns (*) are now considered invalid. The .* pattern can be
    used as a replacement.
  • the ParseCallbackstrait does not require to implement UnwindSafe.
  • the Builder::parse_callbacks method no longer overwrites previously added
    callbacks and composes them in a last-to-first manner.
  • any generated rust code containing unsafe operations inside unsafe functions
    is wrapped in unsafe blocks now.

Fixed

  • Various issues with upcoming clang/libclang versions have been fixed.

v0.61.0

Compare Source

Released 2022/10/16

Added

  • new feature: --sort-semantically flag to sort the output in a predefined
    manner (#​1743).
  • new feature: Bindgen::emit_warnings method to emit warnings to stderr in
    build scripts.
  • new feature: --newtype-global-enum flag to generate enum variants as
    global constants.
  • new feature: --default-non-copy-union-style flag to set the default style
    of code used to generate unions with non-Copy members.
  • new feature: --bindgen-wrapper-union flag to mark any union that matches a
    regex and has a non-Copy member to use a bindgen-generated wrapper for its
    fields.
  • new feature: --manually-drop-union flag to mark any union that matches a
    regex and has a non-Copy member to use ManuallyDrop.
  • new feature: --merge-extern-blocks flag to merge several extern blocks
    that have the same ABI.
  • new feature: --no-size_t-is-usize flag to not bind size_t as usize.
  • new feature: Builder implements Clone.

Changed

  • clap and regex have been updated, new msrv is 1.57.
  • The --enable-function-attribute-detection flag is also used to detect
    diverging functions so the generated bindings use ! as the return type.
  • The --size_t-is-usize flag is enabled by default.
  • Unused type aliases for <stdint.h> types are no longer emitted.
  • The blocklist options now can be used to block objective-C methods.
  • The core::ffi module is used the sized raw integer types
    instead of std::os::raw if the Rust target version is 1.64 or higher and
    the --use-core flag is enabled.
  • The bindgen CLI utility must be installed using cargo install bindgen-cli now.
  • Using bindgen as a library no longer pulls clap and any other CLI
    related dependencies.

Fixed

  • Const correctness of incomplete arrays has been fixed. (#​2301)
  • C++ inline namespaces don't panic. (#​2294)

Configuration

📅 Schedule: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined).

🚦 Automerge: Enabled.

Rebasing: Whenever PR is behind base branch, or you tick the rebase/retry checkbox.

🔕 Ignore: Close this PR and you won't be reminded about this update again.


  • If you want to rebase/retry this PR, check this box

This PR was generated by Mend Renovate. View the repository job log.

@renovate renovate bot added the renovate label Nov 20, 2022
@renovate
Copy link
Contributor Author

renovate bot commented Nov 20, 2022

⚠ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: bindings/Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path bindings/Cargo.toml --workspace
error: current package believes it's in a workspace when it's not:
current:   /tmp/renovate/repos/github/SlashNephy/TVTestSDK-rs/bindings/Cargo.toml
workspace: /tmp/renovate/repos/github/SlashNephy/TVTestSDK-rs/Cargo.toml

this may be fixable by adding `bindings` to the `workspace.members` array of the manifest located at: /tmp/renovate/repos/github/SlashNephy/TVTestSDK-rs/Cargo.toml
Alternatively, to keep it out of the workspace, add the package to the `workspace.exclude` array, or add an empty `[workspace]` table to the package's manifest.

@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from 60e770a to 1d13502 Compare March 17, 2023 06:00
@renovate renovate bot changed the title Update Rust crate bindgen to 0.62 chore(deps): update rust crate bindgen to 0.64 Mar 17, 2023
@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from 1d13502 to 0f280d6 Compare April 17, 2023 13:55
@renovate renovate bot changed the title chore(deps): update rust crate bindgen to 0.64 chore(deps): update rust crate bindgen to 0.65 Apr 17, 2023
@renovate renovate bot changed the title chore(deps): update rust crate bindgen to 0.65 chore(deps): update rust crate bindgen to 0.66 Jun 14, 2023
@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from 0f280d6 to ab12935 Compare June 14, 2023 18:59
@renovate renovate bot changed the title chore(deps): update rust crate bindgen to 0.66 chore(deps): update rust crate bindgen to 0.68 Sep 6, 2023
@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from ab12935 to 6c90a2a Compare September 6, 2023 20:30
@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from 6c90a2a to 105ae8c Compare November 1, 2023 21:41
@renovate renovate bot changed the title chore(deps): update rust crate bindgen to 0.68 chore(deps): update rust crate bindgen to 0.69 Nov 1, 2023
@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from 105ae8c to 903b618 Compare May 1, 2024 09:50
@renovate renovate bot changed the title chore(deps): update rust crate bindgen to 0.69 chore(deps): update rust crate bindgen to 0.69.4 May 1, 2024
@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from 903b618 to fe53211 Compare May 5, 2024 10:22
@renovate renovate bot changed the title chore(deps): update rust crate bindgen to 0.69.4 chore(deps): update rust crate bindgen to 0.69 May 5, 2024
@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from fe53211 to 1619d0b Compare July 11, 2024 20:29
Copy link
Contributor Author

renovate bot commented Jul 11, 2024

⚠️ Artifact update problem

Renovate failed to update an artifact related to this branch. You probably do not want to merge this PR as-is.

♻ Renovate will retry this branch, including artifacts, only when one of the following happens:

  • any of the package files in this branch needs updating, or
  • the branch becomes conflicted, or
  • you click the rebase/retry checkbox if found above, or
  • you rename this PR's title to start with "rebase!" to trigger it manually

The artifact failure details are included below:

File name: bindings/Cargo.lock
Command failed: cargo update --config net.git-fetch-with-cli=true --manifest-path bindings/Cargo.toml --workspace
error: current package believes it's in a workspace when it's not:
current:   /tmp/renovate/repos/github/SlashNephy/TVTestSDK-rs/bindings/Cargo.toml
workspace: /tmp/renovate/repos/github/SlashNephy/TVTestSDK-rs/Cargo.toml

this may be fixable by adding `bindings` to the `workspace.members` array of the manifest located at: /tmp/renovate/repos/github/SlashNephy/TVTestSDK-rs/Cargo.toml
Alternatively, to keep it out of the workspace, add the package to the `workspace.exclude` array, or add an empty `[workspace]` table to the package's manifest.

@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from 1619d0b to a462b93 Compare August 17, 2024 00:51
@renovate renovate bot changed the title chore(deps): update rust crate bindgen to 0.69 chore(deps): update rust crate bindgen to 0.70 Aug 17, 2024
@renovate renovate bot force-pushed the renovate/bindgen-0.x branch from a462b93 to 7f7e899 Compare December 6, 2024 22:53
@renovate renovate bot changed the title chore(deps): update rust crate bindgen to 0.70 chore(deps): update rust crate bindgen to 0.71 Dec 6, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

0 participants