Skip to content

chore: fix regressions in the release#4398

Merged
jamesarich merged 5 commits into
mainfrom
fix/release-fixes
Feb 1, 2026
Merged

chore: fix regressions in the release#4398
jamesarich merged 5 commits into
mainfrom
fix/release-fixes

Conversation

@jamesarich

Copy link
Copy Markdown
Collaborator

This pull request focuses on two main areas: improving the robustness of metrics charting by filtering out invalid (NaN) data points, and removing the use of the dataSync foreground service type and associated permission from the Android app. Additionally, there are minor improvements to BLE connection handling for increased reliability.

Metrics Charting Improvements:

  • All charting functions in the feature/node module now filter out NaN or invalid values before plotting, ensuring that charts display only valid data and preventing potential rendering issues. This affects device metrics, environment metrics, power metrics, and signal metrics charts. [1] [2] [3] [4]

Foreground Service and Permissions Cleanup:

  • Removed the android.permission.FOREGROUND_SERVICE_DATA_SYNC permission and the dataSync foreground service type from both the manifest and service declarations, simplifying the app's permissions and foreground service requirements. [1] [2] [3]

BLE Connection Handling:

  • Improved BLE characteristic cleanup by explicitly nulling characteristic references on disconnect, helping to prevent issues with stale references.
  • Enhanced error handling in BLE packet reading by catching exceptions and logging warnings, which increases reliability when devices disconnect unexpectedly.

Removes the `FOREGROUND_SERVICE_DATA_SYNC` permission and its corresponding `foregroundServiceType` from the `AndroidManifest.xml`.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
This commit introduces two key improvements to the Nordic BLE interface:

- Wraps the `fromRadioCharacteristic` read operation in a `try-catch` block. This prevents crashes by gracefully handling exceptions that can occur during disconnection, logging a warning instead.
- Clears all BLE characteristics (`toRadioCharacteristic`, `fromNumCharacteristic`, `fromRadioCharacteristic`, `logRadioCharacteristic`) to null when a `Disconnected` state is observed. This ensures a clean state and prevents the use of stale characteristic references upon reconnection.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
Filters out `NaN` (Not a Number) values from various telemetry and metrics data points before they are rendered in the device, environment, power, and signal charts. This prevents potential crashes or rendering issues in the charting library when encountering invalid data.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
- Refactored the `fromRadioPacketFlow` in `NordicBleInterface.kt` to use a `try-catch` block around the characteristic read operation, simplifying error handling and improving the flow's readability.
- Applied minor code reformatting in `EnvironmentCharts.kt` for better style consistency.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
@jamesarich jamesarich enabled auto-merge February 1, 2026 22:42
@github-actions github-actions Bot added the bugfix PR tag label Feb 1, 2026
@codecov

codecov Bot commented Feb 1, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 0% with 10 lines in your changes missing coverage. Please review.
✅ Project coverage is 8.35%. Comparing base (6eb42cc) to head (7026ae6).
⚠️ Report is 1 commits behind head on main.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...sville/mesh/repository/radio/NordicBleInterface.kt 0.00% 10 Missing ⚠️
Additional details and impacted files
@@           Coverage Diff            @@
##            main   #4398      +/-   ##
========================================
- Coverage   8.35%   8.35%   -0.01%     
========================================
  Files        418     418              
  Lines      14304   14311       +7     
  Branches    2075    2076       +1     
========================================
  Hits        1195    1195              
- Misses     12878   12885       +7     
  Partials     231     231              

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

To improve build performance and security, this change configures Gradle to only resolve dependencies with the group ID matching `com.github.*` from the JitPack repository.

This is applied to the dependency resolution management in both the root `settings.gradle.kts` and the `build-logic/settings.gradle.kts` files.

Signed-off-by: James Rich <2199651+jamesarich@users.noreply.github.com>
@jamesarich jamesarich disabled auto-merge February 1, 2026 23:00
@jamesarich jamesarich enabled auto-merge February 1, 2026 23:00
@jamesarich jamesarich added this pull request to the merge queue Feb 1, 2026
Merged via the queue into main with commit 221e774 Feb 1, 2026
10 of 11 checks passed
@jamesarich jamesarich deleted the fix/release-fixes branch February 1, 2026 23:40
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bugfix PR tag

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant