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(crashlytics, native): add non-fatal exception logger for 3rd party native code use #5015

Merged
merged 4 commits into from
Mar 13, 2021

Conversation

powerserg17-bunch
Copy link
Contributor

Description

This change allows to log non-fatal exception in Firebase Crashlytics, handled on the native side.

Related issues

Discussion

Release Summary

Checklist

  • I read the Contributor Guide and followed the process outlined there for submitting PRs.
    • Yes
  • My change supports the following platforms;
    • Android
    • iOS
  • My change includes tests;
    • e2e tests added or updated in packages/\*\*/e2e
    • jest tests added or updated in packages/\*\*/__tests__
  • I have updated TypeScript types that are affected by my change.
  • This is a breaking change;
    • Yes
    • No

🔥

Test Plan


Think react-native-firebase is great? Please consider supporting the project with any of the below:

@vercel
Copy link

vercel bot commented Mar 11, 2021

This pull request is being automatically deployed with Vercel (learn more).
To see the status of your deployment, click below or on the icon next to each commit.

🔍 Inspect: https://vercel.com/invertase/react-native-firebase/6wnkKf3G7mAA6BQULf7pmxDmJ1iT
✅ Preview: https://react-native-f-git-fork-powerserg17-bunch-nonfatalerrors-b5f4f2.vercel.app

@CLAassistant
Copy link

CLAassistant commented Mar 11, 2021

CLA assistant check
All committers have signed the CLA.

@codecov
Copy link

codecov bot commented Mar 11, 2021

Codecov Report

Merging #5015 (b8a99b8) into master (5ba603c) will not change coverage.
The diff coverage is n/a.

@@           Coverage Diff           @@
##           master    #5015   +/-   ##
=======================================
  Coverage   89.09%   89.09%           
=======================================
  Files         109      109           
  Lines        3728     3728           
  Branches      350      350           
=======================================
  Hits         3321     3321           
  Misses        365      365           
  Partials       42       42           

@mikehardy mikehardy added the Workflow: Waiting for User Response Blocked waiting for user response. label Mar 11, 2021
mikehardy
mikehardy previously approved these changes Mar 11, 2021
Copy link
Collaborator

@mikehardy mikehardy left a comment

Choose a reason for hiding this comment

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

I am not sure why iOS E2E CI is failing, but it can't be related to this, as the compile works and there are no E2E tests that use this. It failed for an unrelated PR as well. I will work to resolve that

This PR in itself looks good to go though

@mikehardy
Copy link
Collaborator

@powerserg17-bunch I think we just need the CLA signed then I can merge this! https://cla-assistant.io/invertase/react-native-firebase?pullRequest=5015

@mikehardy mikehardy added Blocked: Missing CLA Workflow: Pending Merge Waiting on CI or similar and removed Workflow: Waiting for User Response Blocked waiting for user response. labels Mar 11, 2021
@powerserg17-bunch
Copy link
Contributor Author

Signed the CLA, thank you Mike!

@mikehardy mikehardy changed the title feat(crashlytics,native): exposing non-fatal exception log on the native side feat(crashlytics, native): add non-fatal exception logger for 3rd party native code use Mar 12, 2021
@mikehardy
Copy link
Collaborator

It turns out there was a valid iOS build problem. And our CI setup was hiding them - this bit another PR just now as well.

❌  /Users/runner/work/react-native-firebase/react-native-firebase/packages/crashlytics/ios/RNFBCrashlytics/RNFBCrashlyticsNativeHelper.h:21:52: no type or protocol named 'FIRLibrary'

@interface RNFBCrashlyticsNativeHelper : NSObject <FIRLibrary>
                                                   ^

I have fixed the thing that causes iOS build failures in CI to silently fail so this won't happen for future PRs, but you'll have to fix this one manually and check visually with yarn tests:ios:pod:install (first), then yarn tests:ios:build until it is working

@powerserg17-bunch
Copy link
Contributor Author

@mikehardy thanks for the information. Seems like it builds now.

@mikehardy mikehardy added Workflow: Pending Merge Waiting on CI or similar and removed Workflow: Waiting for User Response Blocked waiting for user response. labels Mar 13, 2021
@mikehardy
Copy link
Collaborator

I rebased it over master to pull in the already-merged CI pipefail fixes, if/when CI finishes chewing on it, it should be good to merge...

@mikehardy mikehardy removed the Workflow: Pending Merge Waiting on CI or similar label Mar 13, 2021
Copy link
Collaborator

@mikehardy mikehardy left a comment

Choose a reason for hiding this comment

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

LGTM and passes CI (finally! it was a little flaky), ready for merge

@mikehardy mikehardy merged commit b3e6810 into invertase:master Mar 13, 2021
@mikehardy
Copy link
Collaborator

This is out as of v11.1.0 - please test and if there's anything wrong let us know - cheers!

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.

3 participants