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

(feat) Enhanced orientation breadcrumbs with explicit "from" and "to" #486

Merged

Conversation

robinmacharg
Copy link
Contributor

Goal

Report both the old and new orientation values as metadata. Match the casing for the breadcrumb message.

Design

On device orientation change notification, record the current device orientation to be used the next time orientation changes. When both current and previous orientations are non-nil and differ record an appropriate breadcrumb.

Changeset

The change is located in BugsnagClient.

Tests

This is difficult to test. For Unit testing mocking would allow the UIDevice to be stubbed out and simulate a rotation. For CI/e2e tests the possibility exists (but has not been proven to work) of sending a rotation keypress (Cmd-Left) to the simulator.

The implementation is simple and in the interests of time this feature is left as a manual test until mocking libraries have been added.

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
  • The correct target branch has been selected (master for fixes, next for
    features)
  • 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 force-pushed the robin/Enhance-automatic-breadcrumbs-for-orientation-change branch from 109acd2 to 5625833 Compare March 18, 2020 12:00
@robinmacharg robinmacharg marked this pull request as ready for review March 18, 2020 12:13
Copy link
Contributor

@fractalwrench fractalwrench left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

A few minor comments, otherwise this looks like a good implementation 👍

Source/BugsnagClient.m Outdated Show resolved Hide resolved
Source/BugsnagClient.m Outdated Show resolved Hide resolved
Source/BugsnagClient.m Outdated Show resolved Hide resolved
@robinmacharg robinmacharg force-pushed the robin/Enhance-automatic-breadcrumbs-for-orientation-change branch from 04c3285 to 5dffde0 Compare March 20, 2020 18:57
@robinmacharg robinmacharg force-pushed the robin/Enhance-automatic-breadcrumbs-for-orientation-change branch from 5dffde0 to 7133d6f Compare March 23, 2020 10:52
Source/BugsnagKeys.h Outdated Show resolved Hide resolved
Source/BugsnagClient.m Outdated Show resolved Hide resolved
Source/BugsnagClient.m Outdated Show resolved Hide resolved
Source/BugsnagClient.m Outdated Show resolved Hide resolved
@robinmacharg robinmacharg force-pushed the robin/Enhance-automatic-breadcrumbs-for-orientation-change branch from 032e861 to 9b4b54a Compare March 24, 2020 18:42
…hance-automatic-breadcrumbs-for-orientation-change

# Conflicts:
#	Source/BugsnagClient.m
Copy link
Contributor

@fractalwrench fractalwrench left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM ✅

@robinmacharg robinmacharg merged commit 2526dbb into v6 Mar 27, 2020
@robinmacharg robinmacharg deleted the robin/Enhance-automatic-breadcrumbs-for-orientation-change branch March 27, 2020 17:28
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.

4 participants