Skip to content

build: Add Android CI and fix jni/jni_utils version #431

build: Add Android CI and fix jni/jni_utils version

build: Add Android CI and fix jni/jni_utils version #431

Triggered via push October 3, 2024 19:36
Status Success
Total duration 3m 58s
Artifacts

rust.yml

on: push
Matrix: build
Fit to window
Zoom out
Zoom in

Annotations

36 warnings
format
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
format
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v2. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
usage of `contains_key` followed by `insert` on a `HashMap`: src/corebluetooth/internal.rs#L556
warning: usage of `contains_key` followed by `insert` on a `HashMap` --> src/corebluetooth/internal.rs:556:9 | 556 | / if self.peripherals.contains_key(&uuid) { 557 | | if let Some(name) = name { 558 | | self.dispatch_event(CoreBluetoothEvent::DeviceUpdated { 559 | | uuid, ... | 574 | | .await; 575 | | } | |_________^ | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#map_entry = note: `#[warn(clippy::map_entry)]` on by default help: try | 556 ~ if let std::collections::hash_map::Entry::Vacant(e) = self.peripherals.entry(uuid) { 557 + // Create our channels 558 + let (event_sender, event_receiver) = mpsc::channel(256); 559 + e.insert(PeripheralInternal::new(peripheral, event_sender)); 560 + self.dispatch_event(CoreBluetoothEvent::DeviceDiscovered { 561 + uuid, 562 + name: name.map(|name| name.to_string()), 563 + event_receiver, 564 + }) 565 + .await; 566 + } else { 567 + if let Some(name) = name { 568 + self.dispatch_event(CoreBluetoothEvent::DeviceUpdated { 569 + uuid, 570 + name: name.to_string(), 571 + }) 572 + .await; 573 + } 574 + } |
deref which would be done by auto-deref: src/corebluetooth/internal.rs#L92
warning: deref which would be done by auto-deref --> src/corebluetooth/internal.rs:92:61 | 92 | let properties = CharacteristicInternal::form_flags(&*characteristic); | ^^^^^^^^^^^^^^^^ help: try: `&characteristic` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#explicit_auto_deref = note: `#[warn(clippy::explicit_auto_deref)]` on by default
doc list item without indentation: src/corebluetooth/future.rs#L39
warning: doc list item without indentation --> src/corebluetooth/future.rs:39:9 | 39 | /// corresponding future. | ^ | = help: if this is supposed to be its own paragraph, add a blank line = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#doc_lazy_continuation = note: `#[warn(clippy::doc_lazy_continuation)]` on by default help: indent this line | 39 | /// corresponding future. | ++
this expression creates a reference which is immediately dereferenced by the compiler: src/corebluetooth/central_delegate.rs#L694
warning: this expression creates a reference which is immediately dereferenced by the compiler --> src/corebluetooth/central_delegate.rs:694:48 | 694 | data: get_descriptor_value(&descriptor), | ^^^^^^^^^^^ help: change this to: `descriptor` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
redundant field names in struct initialization: src/corebluetooth/peripheral.rs#L171
warning: redundant field names in struct initialization --> src/corebluetooth/peripheral.rs:171:16 | 171 | Self { shared: shared } | ^^^^^^^^^^^^^^ help: replace it with: `shared` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names = note: `#[warn(clippy::redundant_field_names)]` on by default
build (macos)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
build (macos)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v2, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
this `match` can be collapsed into the outer `match`: src/bluez/adapter.rs#L183
warning: this `match` can be collapsed into the outer `match` --> src/bluez/adapter.rs:183:34 | 183 | } if id == adapter_id => match adapter_event { | __________________________________^ 184 | | AdapterEvent::Powered { powered } => { 185 | | let state = get_central_state(powered); 186 | | Some(CentralEvent::StateUpdate(state)) 187 | | } 188 | | _ => None, 189 | | }, | |_________^ | help: the outer pattern can be modified to include the inner pattern --> src/bluez/adapter.rs:182:20 | 182 | event: adapter_event, | ^^^^^^^^^^^^^ replace this binding 183 | } if id == adapter_id => match adapter_event { 184 | AdapterEvent::Powered { powered } => { | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ with this pattern, prefixed by adapter_event: = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#collapsible_match = note: `#[warn(clippy::collapsible_match)]` on by default
build (linux)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
build (linux)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v2, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
build (windows)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
build (windows)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v2, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
redundant closure: src/droidplug/mod.rs#L14
warning: redundant closure --> src/droidplug/mod.rs:14:36 | 14 | GLOBAL_ADAPTER.get_or_try_init(|| adapter::Adapter::new())?; | ^^^^^^^^^^^^^^^^^^^^^^^^^^ help: replace the closure with the function itself: `adapter::Adapter::new` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_closure = note: `#[warn(clippy::redundant_closure)]` on by default
using `clone` on type `JObject<'_>` which implements the `Copy` trait: src/droidplug/jni/objects.rs#L722
warning: using `clone` on type `JObject<'_>` which implements the `Copy` trait --> src/droidplug/jni/objects.rs:722:33 | 722 | .is_same_object(services_obj.clone(), JObject::null())? | ^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*services_obj` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
using `clone` on type `JObject<'_>` which implements the `Copy` trait: src/droidplug/jni/objects.rs#L705
warning: using `clone` on type `JObject<'_>` which implements the `Copy` trait --> src/droidplug/jni/objects.rs:705:33 | 705 | .is_same_object(service_data_obj.clone(), JObject::null())? | ^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*service_data_obj` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
using `clone` on type `JObject<'_>` which implements the `Copy` trait: src/droidplug/jni/objects.rs#L689
warning: using `clone` on type `JObject<'_>` which implements the `Copy` trait --> src/droidplug/jni/objects.rs:689:33 | 689 | .is_same_object(manufacturer_specific_data_obj.clone(), JObject::null())? | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*manufacturer_specific_data_obj` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy
using `clone` on type `JObject<'_>` which implements the `Copy` trait: src/droidplug/jni/objects.rs#L649
warning: using `clone` on type `JObject<'_>` which implements the `Copy` trait --> src/droidplug/jni/objects.rs:649:29 | 649 | .is_same_object(record_obj.clone(), JObject::null())? | ^^^^^^^^^^^^^^^^^^ help: try dereferencing it: `*record_obj` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#clone_on_copy = note: `#[warn(clippy::clone_on_copy)]` on by default
question mark operator is useless here: src/droidplug/jni/objects.rs#L475
warning: question mark operator is useless here --> src/droidplug/jni/objects.rs:475:9 | 475 | Ok(uuid_obj.as_uuid()?) | ^^^^^^^^^^^^^^^^^^^^^^^ help: try removing question mark and `Ok()`: `uuid_obj.as_uuid()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark
question mark operator is useless here: src/droidplug/jni/objects.rs#L398
warning: question mark operator is useless here --> src/droidplug/jni/objects.rs:398:9 | 398 | Ok(uuid_obj.as_uuid()?) | ^^^^^^^^^^^^^^^^^^^^^^^ help: try removing question mark and `Ok()`: `uuid_obj.as_uuid()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark
question mark operator is useless here: src/droidplug/jni/objects.rs#L337
warning: question mark operator is useless here --> src/droidplug/jni/objects.rs:337:9 | 337 | Ok(uuid_obj.as_uuid()?) | ^^^^^^^^^^^^^^^^^^^^^^^ help: try removing question mark and `Ok()`: `uuid_obj.as_uuid()` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_question_mark = note: `#[warn(clippy::needless_question_mark)]` on by default
this expression borrows a value the compiler would automatically borrow: src/droidplug/peripheral.rs#L256
warning: this expression borrows a value the compiler would automatically borrow --> src/droidplug/peripheral.rs:256:9 | 256 | (&guard.services).clone() | ^^^^^^^^^^^^^^^^^ help: change this to: `guard.services` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
this expression borrows a value the compiler would automatically borrow: src/droidplug/peripheral.rs#L227
warning: this expression borrows a value the compiler would automatically borrow --> src/droidplug/peripheral.rs:227:9 | 227 | (&guard.characteristics).clone() | ^^^^^^^^^^^^^^^^^^^^^^^^ help: change this to: `guard.characteristics` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow
this expression borrows a value the compiler would automatically borrow: src/droidplug/peripheral.rs#L222
warning: this expression borrows a value the compiler would automatically borrow --> src/droidplug/peripheral.rs:222:12 | 222 | Ok((&guard.properties).clone()) | ^^^^^^^^^^^^^^^^^^^ help: change this to: `guard.properties` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#needless_borrow = note: `#[warn(clippy::needless_borrow)]` on by default
function `notifications_stream_from_broadcast_receiver` is never used: src/common/util.rs#L14
warning: function `notifications_stream_from_broadcast_receiver` is never used --> src/common/util.rs:14:8 | 14 | pub fn notifications_stream_from_broadcast_receiver( | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
method `peripheral_mut` is never used: src/common/adapter_manager.rs#L76
warning: method `peripheral_mut` is never used --> src/common/adapter_manager.rs:76:12 | 42 | / impl<PeripheralType> AdapterManager<PeripheralType> 43 | | where 44 | | PeripheralType: Peripheral + 'static, | |_________________________________________- method in this implementation ... 76 | pub fn peripheral_mut( | ^^^^^^^^^^^^^^ | = note: `#[warn(dead_code)]` on by default
variable does not need to be mutable: src/droidplug/peripheral.rs#L168
warning: variable does not need to be mutable --> src/droidplug/peripheral.rs:168:44 | 168 | pub(crate) fn report_properties(&self, mut properties: PeripheralProperties) { | ----^^^^^^^^^^ | | | help: remove this `mut` | = note: `#[warn(unused_mut)]` on by default
redundant field names in struct initialization: src/droidplug/peripheral.rs#L293
warning: redundant field names in struct initialization --> src/droidplug/peripheral.rs:293:25 | 293 | descriptors: descriptors, | ^^^^^^^^^^^^^^^^^^^^^^^^ help: replace it with: `descriptors` | = help: for further information visit https://rust-lang.github.io/rust-clippy/master/index.html#redundant_field_names = note: `#[warn(clippy::redundant_field_names)]` on by default
unused import: `descriptors`: src/droidplug/peripheral.rs#L11
warning: unused import: `descriptors` --> src/droidplug/peripheral.rs:11:5 | 11 | descriptors, | ^^^^^^^^^^^ | = note: `#[warn(unused_imports)]` on by default
build (android)
The following actions uses node12 which is deprecated and will be forced to run on node16: actions/checkout@v2, actions/setup-java@v2, actions-rs/toolchain@v1, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2023-06-13-github-actions-all-actions-will-run-on-node16-instead-of-node12-by-default/
build (android)
The following actions use a deprecated Node.js version and will be forced to run on node20: actions/checkout@v2, actions/setup-java@v2, actions-rs/toolchain@v1, actions-rs/clippy-check@v1. For more info: https://github.blog/changelog/2024-03-07-github-actions-all-actions-will-run-on-node20-instead-of-node16-by-default/
build (android)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
build (android)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
build (android)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/
build (android)
The `set-output` command is deprecated and will be disabled soon. Please upgrade to using Environment Files. For more information see: https://github.blog/changelog/2022-10-11-github-actions-deprecating-save-state-and-set-output-commands/