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

fix: device charging status is now reported as a boolean #551

Merged
merged 1 commit into from
Apr 21, 2020

Conversation

robinmacharg
Copy link
Contributor

@robinmacharg robinmacharg commented Apr 21, 2020

Goal

Device charging status was incorrectly being reported as a number, rather than a boolean. This change corrects that.

Design

Four values are possible for a device charging status:

typedef NS_ENUM(NSInteger, UIDeviceBatteryState) {
    UIDeviceBatteryStateUnknown,
    UIDeviceBatteryStateUnplugged,   // on battery, discharging
    UIDeviceBatteryStateCharging,    // plugged in, less than 100%
    UIDeviceBatteryStateFull,        // plugged in, at 100%
} API_UNAVAILABLE(tvos);              // available in iPhone 3.0

This change assumes that plugged-in == charging (true) and vice-versa.

Changeset

Simple change to BugsnagClient.

Tests

Since this is a hardware-specific property it was tested manually, and in the simulator, corroborated appropriately with the Bugsnag dashboard.

Review

Outstanding Questions

  • This pull request is ready for:
    • Initial review of the intended approach, not yet feature complete
    • Structural review of the classes, functions, and properties modified
    • Final review
    • Release
  • The correct target branch has been selected (master for fixes, next for
    features)
  • If this is intended for release have all of the pre-release checks been considered?
  • Consistency across platforms for structures or concepts added or modified
  • Consistency between the changeset and the goal stated above
  • Internal consistency with the rest of the library - is there any overlap between existing interfaces and any which have been added?
  • Usage friction - is the proposed change in usage cumbersome or complicated?
  • Performance and complexity - are there any cases of unexpected O(n^3) when iterating, recursing, flat mapping, etc?
  • Concurrency concerns - if components are accessed asynchronously, what issues will arise
  • Thoroughness of added tests and any missing edge cases
  • Idiomatic use of the language

@robinmacharg robinmacharg marked this pull request as ready for review April 21, 2020 11:09
@robinmacharg robinmacharg merged commit 97f0323 into v6 Apr 21, 2020
@robinmacharg robinmacharg deleted the v6-charging-nsnumber branch April 21, 2020 12:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants