-
-
Notifications
You must be signed in to change notification settings - Fork 103
Closed
obi1kenobi/trustfall-rustdoc-adapter
#808Labels
A-lintArea: new or existing lintArea: new or existing lintC-bugCategory: doesn't meet expectationsCategory: doesn't meet expectations
Description
Which lint or lints are the issue
function_export_name_changed
Known issues that might be causing this
- Is the flagged item defined in another crate, or a re-export of such an item? (#638)
Steps to reproduce the bug with the above code
Remove the no_mangle
attribute from a function that has export_name
set as recommended by a new lint: rust-lang/rust#131558
Actual Behaviour
cargo semver-checks complains despite no_mangle
on an item with export_name
being a no-op.
Expected Behaviour
Applying the lint suggestion should not cause an error.
Verbose Lint Output
Updating crates.io index
Locking 102 packages to latest compatible versions
Building boringtun v0.6.0 (current)
Compiling libc v0.2.171
Checking cfg-if v1.0.0
Compiling proc-macro2 v1.0.94
Compiling unicode-ident v1.0.18
Compiling typenum v1.18.0
Compiling version_check v0.9.5
Checking subtle v2.6.1
Compiling semver v1.0.26
Compiling zerocopy v0.8.23
Checking cpufeatures v0.2.17
Checking once_cell v1.21.1
Compiling same-file v1.0.6
Compiling autocfg v1.4.0
Compiling shlex v1.3.0
Compiling cfg_aliases v0.2.1
Compiling thiserror v1.0.69
Checking smallvec v1.14.0
Compiling parking_lot_core v0.9.10
Checking log v0.4.26
Compiling walkdir v2.5.0
Compiling nix v0.29.0
Compiling cc v1.2.16
Checking tracing-core v0.1.33
Checking opaque-debug v0.3.1
Checking bytes v1.10.1
Checking memchr v2.7.4
Checking scopeguard v1.2.0
Checking overload v0.1.1
Checking lazy_static v1.5.0
Compiling generic-array v0.14.7
Checking sharded-slab v0.1.7
Compiling jni v0.19.0
Checking nu-ansi-term v0.46.0
Compiling lock_api v0.4.12
Checking thread_local v1.1.8
Checking tracing-log v0.2.0
Checking pin-project-lite v0.2.16
Checking bitflags v2.9.0
Checking cesu8 v1.1.0
Checking ip_network v0.4.1
Compiling rustc_version v0.4.1
Checking jni-sys v0.3.0
Checking untrusted v0.9.0
Checking ip_network_table-deps-treebitmap v0.5.0
Checking base64 v0.22.1
Checking hex v0.4.3
Compiling curve25519-dalek v4.1.3
Checking combine v4.6.7
Checking ip_network_table v0.2.0
Compiling quote v1.0.40
Checking tracing-subscriber v0.3.19
Compiling syn v2.0.100
Compiling ring v0.17.14
Checking block-buffer v0.10.4
Checking inout v0.1.4
Checking ppv-lite86 v0.2.21
Checking getrandom v0.2.15
Checking socket2 v0.5.8
Checking rand_core v0.6.4
Checking parking_lot v0.12.3
Checking crypto-common v0.1.6
Checking rand_chacha v0.3.1
Checking digest v0.10.7
Checking universal-hash v0.5.1
Checking aead v0.5.2
Checking poly1305 v0.8.0
Checking hmac v0.12.1
Checking blake2 v0.10.6
Checking rand v0.8.5
Compiling zeroize_derive v1.4.2
Compiling curve25519-dalek-derive v0.1.1
Compiling thiserror-impl v1.0.69
Compiling tracing-attributes v0.1.28
Checking zeroize v1.8.1
Checking cipher v0.4.4
Checking chacha20 v0.9.1
Checking chacha20poly1305 v0.10.1
Checking tracing v0.1.41
Checking x25519-dalek v2.0.1
Documenting boringtun v0.6.0 (/home/thomas/src/github.com/cloudflare/boringtun/boringtun)
Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.91s
Built [ 10.068s] (current)
Parsing boringtun v0.6.0 (current)
Parsed [ 0.021s] (current)
Building boringtun v0.6.0 (baseline)
Compiling libc v0.2.171
Checking cfg-if v1.0.0
Compiling proc-macro2 v1.0.94
Compiling unicode-ident v1.0.18
Compiling version_check v0.9.5
Compiling typenum v1.18.0
Checking subtle v2.6.1
Compiling semver v1.0.26
Checking once_cell v1.21.1
Checking cpufeatures v0.2.17
Compiling platforms v3.5.0
Compiling same-file v1.0.6
Compiling shlex v1.3.0
Compiling autocfg v1.4.0
Compiling thiserror v1.0.69
Checking smallvec v1.14.0
Compiling parking_lot_core v0.9.10
Checking log v0.4.26
Compiling walkdir v2.5.0
Checking lazy_static v1.5.0
Compiling cc v1.2.16
Checking overload v0.1.1
Checking scopeguard v1.2.0
Checking tracing-core v0.1.33
Checking memchr v2.7.4
Checking bytes v1.10.1
Checking opaque-debug v0.3.1
Checking nu-ansi-term v0.46.0
Checking thread_local v1.1.8
Checking sharded-slab v0.1.7
Compiling generic-array v0.14.7
Checking pin-project-lite v0.2.16
Checking spin v0.5.2
Checking ip_network_table-deps-treebitmap v0.5.0
Checking jni-sys v0.3.0
Compiling jni v0.19.0
Compiling lock_api v0.4.12
Checking bitflags v1.3.2
Checking cesu8 v1.1.0
Checking ip_network v0.4.1
Checking untrusted v0.7.1
Checking untrusted v0.9.0
Checking tracing-log v0.2.0
Checking mock_instant v0.2.1
Checking base64 v0.13.1
Checking hex v0.4.3
Compiling rustc_version v0.4.1
Checking ip_network_table v0.2.0
Checking combine v4.6.7
Compiling curve25519-dalek v4.0.0-rc.3
Checking tracing-subscriber v0.3.19
Compiling quote v1.0.40
Compiling syn v2.0.100
Compiling ring v0.16.20
Checking inout v0.1.4
Checking block-buffer v0.10.4
Checking getrandom v0.2.15
Checking nix v0.25.1
Checking socket2 v0.4.10
Checking rand_core v0.6.4
Checking parking_lot v0.12.3
Checking crypto-common v0.1.6
Checking universal-hash v0.5.1
Checking digest v0.10.7
Checking aead v0.5.2
Checking poly1305 v0.8.0
Checking blake2 v0.10.6
Checking hmac v0.12.1
Compiling zeroize_derive v1.4.2
Compiling thiserror-impl v1.0.69
Compiling curve25519-dalek-derive v0.1.1
Compiling tracing-attributes v0.1.28
Checking zeroize v1.8.1
Checking cipher v0.4.4
Checking chacha20 v0.9.1
Checking chacha20poly1305 v0.10.1
Checking tracing v0.1.41
Checking x25519-dalek v2.0.0-rc.3
Documenting boringtun v0.6.0
Finished `dev` profile [unoptimized + debuginfo] target(s) in 9.69s
Built [ 9.860s] (baseline)
Parsing boringtun v0.6.0 (baseline)
Parsed [ 0.017s] (baseline)
Checking boringtun v0.6.0 -> v0.6.0 (no change)
Starting 107 checks, 0 unnecessary on 16 threads
PASS [ 0.001s] major attribute_proc_macro_missing
PASS [ 0.009s] major auto_trait_impl_removed
PASS [ 0.001s] major constructible_struct_adds_field
PASS [ 0.003s] major constructible_struct_adds_private_field
PASS [ 0.001s] major constructible_struct_changed_type
PASS [ 0.001s] major declarative_macro_missing
PASS [ 0.001s] major derive_helper_attr_removed
PASS [ 0.001s] major derive_proc_macro_missing
PASS [ 0.006s] major derive_trait_impl_removed
PASS [ 0.002s] major enum_discriminants_undefined_non_exhaustive_variant
PASS [ 0.001s] major enum_discriminants_undefined_non_unit_variant
PASS [ 0.001s] major enum_marked_non_exhaustive
PASS [ 0.001s] major enum_missing
PASS [ 0.001s] minor enum_must_use_added
PASS [ 0.002s] major enum_no_repr_variant_discriminant_changed
PASS [ 0.001s] major enum_now_doc_hidden
PASS [ 0.004s] major enum_repr_int_changed
PASS [ 0.002s] major enum_repr_int_removed
PASS [ 0.001s] major enum_repr_transparent_removed
PASS [ 0.002s] major enum_repr_variant_discriminant_changed
PASS [ 0.002s] major enum_struct_variant_field_added
PASS [ 0.002s] major enum_struct_variant_field_missing
PASS [ 0.001s] major enum_struct_variant_field_now_doc_hidden
PASS [ 0.003s] major enum_tuple_variant_changed_kind
PASS [ 0.002s] major enum_tuple_variant_field_added
PASS [ 0.003s] major enum_tuple_variant_field_missing
PASS [ 0.002s] major enum_tuple_variant_field_now_doc_hidden
PASS [ 0.005s] major enum_unit_variant_changed_kind
PASS [ 0.002s] major enum_variant_added
PASS [ 0.002s] major enum_variant_marked_non_exhaustive
PASS [ 0.002s] major enum_variant_missing
PASS [ 0.001s] major exported_function_changed_abi
PASS [ 0.001s] major feature_missing
PASS [ 0.012s] major function_abi_no_longer_unwind
PASS [ 0.001s] major function_changed_abi
PASS [ 0.001s] major function_const_removed
FAIL [ 0.001s] major function_export_name_changed
PASS [ 0.001s] major function_like_proc_macro_missing
PASS [ 0.001s] major function_missing
PASS [ 0.001s] minor function_must_use_added
PASS [ 0.001s] major function_now_doc_hidden
PASS [ 0.001s] major function_parameter_count_changed
PASS [ 0.003s] major function_unsafe_added
PASS [ 0.001s] major inherent_associated_const_now_doc_hidden
PASS [ 0.001s] major inherent_associated_pub_const_missing
PASS [ 0.001s] major inherent_method_const_removed
PASS [ 0.002s] major inherent_method_missing
PASS [ 0.001s] minor inherent_method_must_use_added
PASS [ 0.002s] major inherent_method_now_doc_hidden
PASS [ 0.003s] major inherent_method_unsafe_added
PASS [ 0.001s] major macro_no_longer_exported
PASS [ 0.001s] major macro_now_doc_hidden
PASS [ 0.003s] major method_parameter_count_changed
PASS [ 0.001s] major module_missing
PASS [ 0.001s] major non_exhaustive_struct_changed_type
PASS [ 0.001s] major pub_module_level_const_missing
PASS [ 0.001s] major pub_module_level_const_now_doc_hidden
PASS [ 0.001s] major pub_static_missing
PASS [ 0.001s] major pub_static_mut_now_immutable
PASS [ 0.001s] major pub_static_now_doc_hidden
PASS [ 0.005s] major pub_static_now_mutable
PASS [ 0.001s] major repr_c_removed
PASS [ 0.001s] major repr_packed_added
PASS [ 0.001s] major repr_packed_removed
PASS [ 0.004s] major sized_impl_removed
PASS [ 0.001s] major struct_marked_non_exhaustive
PASS [ 0.007s] major struct_missing
PASS [ 0.001s] minor struct_must_use_added
PASS [ 0.003s] major struct_now_doc_hidden
PASS [ 0.001s] major struct_pub_field_missing
PASS [ 0.003s] major struct_pub_field_now_doc_hidden
PASS [ 0.001s] major struct_repr_transparent_removed
PASS [ 0.001s] major struct_with_no_pub_fields_changed_type
PASS [ 0.001s] major struct_with_pub_fields_changed_type
PASS [ 0.001s] major trait_added_supertrait
PASS [ 0.001s] major trait_associated_const_added
PASS [ 0.001s] major trait_associated_const_default_removed
PASS [ 0.001s] major trait_associated_const_now_doc_hidden
PASS [ 0.001s] major trait_associated_type_added
PASS [ 0.001s] major trait_associated_type_default_removed
PASS [ 0.001s] major trait_associated_type_now_doc_hidden
PASS [ 0.001s] major trait_method_added
PASS [ 0.001s] major trait_method_default_impl_removed
PASS [ 0.001s] major trait_method_missing
PASS [ 0.004s] major trait_method_now_doc_hidden
PASS [ 0.001s] major trait_method_unsafe_added
PASS [ 0.001s] major trait_method_unsafe_removed
PASS [ 0.001s] major trait_mismatched_generic_lifetimes
PASS [ 0.001s] major trait_missing
PASS [ 0.001s] minor trait_must_use_added
PASS [ 0.001s] major trait_newly_sealed
PASS [ 0.001s] major trait_no_longer_object_safe
PASS [ 0.001s] major trait_now_doc_hidden
PASS [ 0.004s] major trait_removed_associated_constant
PASS [ 0.003s] major trait_removed_associated_type
PASS [ 0.001s] major trait_removed_supertrait
PASS [ 0.002s] major trait_unsafe_added
PASS [ 0.001s] major trait_unsafe_removed
PASS [ 0.001s] major tuple_struct_to_plain_struct
PASS [ 0.001s] minor type_marked_deprecated
PASS [ 0.004s] major type_mismatched_generic_lifetimes
PASS [ 0.001s] major union_field_missing
PASS [ 0.001s] major union_missing
PASS [ 0.001s] minor union_must_use_added
PASS [ 0.001s] major union_now_doc_hidden
PASS [ 0.001s] major union_pub_field_now_doc_hidden
PASS [ 0.001s] major unit_struct_changed_kind
Checked [ 0.027s] 107 checks: 106 pass, 1 fail, 0 warn, 0 skip
--- failure function_export_name_changed: function's export name has changed or been removed ---
Description:
The ABI export name of a function has been changed or removed through the #[no_mangle] or #[export_name] attributes.
ref: https://doc.rust-lang.org/reference/abi.html#the-no_mangle-attribute
impl: https://github.com/obi1kenobi/cargo-semver-checks/tree/v0.38.0/src/lints/function_export_name_changed.ron
Failed in:
function boringtun::jni::convert_x25519_key_to_hex no longer has ABI name convert_x25519_key_to_hex in /home/thomas/src/github.com/cloudflare/boringtun/boringtun/src/jni.rs:74
function boringtun::jni::generate_public_key1 no longer has ABI name generate_public_key1 in /home/thomas/src/github.com/cloudflare/boringtun/boringtun/src/jni.rs:48
function boringtun::jni::create_new_tunnel no longer has ABI name create_new_tunnel in /home/thomas/src/github.com/cloudflare/boringtun/boringtun/src/jni.rs:125
function boringtun::jni::encrypt_raw_packet no longer has ABI name encrypt_raw_packet in /home/thomas/src/github.com/cloudflare/boringtun/boringtun/src/jni.rs:170
function boringtun::jni::decrypt_to_raw_packet no longer has ABI name decrypt_to_raw_packet in /home/thomas/src/github.com/cloudflare/boringtun/boringtun/src/jni.rs:204
function boringtun::jni::convert_x25519_key_to_base64 no longer has ABI name convert_x25519_key_to_base64 in /home/thomas/src/github.com/cloudflare/boringtun/boringtun/src/jni.rs:99
function boringtun::jni::run_periodic_task no longer has ABI name run_periodic_task in /home/thomas/src/github.com/cloudflare/boringtun/boringtun/src/jni.rs:239
function boringtun::jni::generate_secret_key no longer has ABI name generate_secret_key in /home/thomas/src/github.com/cloudflare/boringtun/boringtun/src/jni.rs:39
Summary semver requires new major version: 1 major and 0 minor checks failed
Finished [ 38.813s] boringtun
Generated System Information
System information:
Software version
cargo-semver-checks 0.38.0
Operating system
Linux 6.13.6
Command-line
/nix/store/50cbkpvmbzscxjrmm3qwfydns97xsvfd-cargo-semver-checks-0.38.0/bin/cargo-semver-checks semver-checks --bugreport
cargo version
> cargo -V
cargo 1.85.0 (d73d2caf9 2024-12-31)
Compile time information
- Profile: release
- Target triple: x86_64-unknown-linux-gnu
- Family: unix
- OS: linux
- Architecture: x86_64
- Pointer width: 64
- Endian: little
- CPU features: fxsr,sse,sse2
- Host: x86_64-unknown-linux-gnu
Cargo build configuration:
Build Configuration
No response
Additional Context
No response
Metadata
Metadata
Assignees
Labels
A-lintArea: new or existing lintArea: new or existing lintC-bugCategory: doesn't meet expectationsCategory: doesn't meet expectations