-
Notifications
You must be signed in to change notification settings - Fork 100
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: enhance non-fatals support #1194
Conversation
android/src/main/java/com/instabug/reactlibrary/RNInstabugCrashReportingModule.java
Outdated
Show resolved
Hide resolved
const styles = StyleSheet.create({ | ||
inputWrapper: { | ||
padding: 4, | ||
flex: 1, | ||
}, | ||
|
||
formContainer: { | ||
flexDirection: 'row', | ||
alignItems: 'stretch', | ||
}, | ||
}); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We should move these styles
outside the component function to not get recreated with each render. We usually define it under the component function.
|
||
function sendCrash() { | ||
try { | ||
const error = Error(crashNameValue); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This should be new Error
I think.
const error = Error(crashNameValue); | |
const error = new Error(crashNameValue); |
if (!error.message) { | ||
const appName = 'Instabug Test App'; | ||
error.message = `Handled ${crashNameValue} From ${appName}`; | ||
} | ||
throw error; | ||
} catch (err) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We are already passing crashNameValue
to new Error
as a message (the first argument to the Error
constructor is the message), so error.message
will be empty only when crashNameValue
is empty. I think we can just put the message we want to put in the constructor, no need for this check in my opinion.
const attrMap: { [k: string]: string } = {}; | ||
attrMap[userAttributeKey] = userAttributeValue; | ||
|
||
CrashReporting.reportError( | ||
err, | ||
userAttributeValue.length === 0 || userAttributeKey.length === 0 ? null : attrMap, | ||
crashFingerprint.length === 0 ? null : crashFingerprint, | ||
crashLevelValue, | ||
).then(() => Alert.alert(`Crash report for ${crashNameValue} is Sent!`)); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I think it'd be more readable to use Record<string, string>
for userAttributes
and simplify the conditions a bit.
I feel like the API signature is a bit verbose, so hopefully it gets better after the proposed change.
const attrMap: { [k: string]: string } = {}; | |
attrMap[userAttributeKey] = userAttributeValue; | |
CrashReporting.reportError( | |
err, | |
userAttributeValue.length === 0 || userAttributeKey.length === 0 ? null : attrMap, | |
crashFingerprint.length === 0 ? null : crashFingerprint, | |
crashLevelValue, | |
).then(() => Alert.alert(`Crash report for ${crashNameValue} is Sent!`)); | |
const userAttributes: Record<string, string> = {}; | |
if (userAttributesKey && userAttributesValue) { | |
userAttributes[userAttributesKey] = userAttributesValue; | |
} | |
CrashReporting.reportError( | |
err, | |
userAttributes, | |
crashFingerprint || undefined, | |
crashLevelValue, | |
).then(() => Alert.alert(`Crash report for ${crashNameValue} is Sent!`)); |
test/modules/CrashReporting.spec.ts
Outdated
@@ -15,11 +16,17 @@ describe('CrashReporting Module', () => { | |||
|
|||
it('should call the native method sendCrashReporting with JSON object and sendHandledJsCrash as a callback', () => { | |||
const error = new TypeError('Invalid type'); | |||
CrashReporting.reportError(error); | |||
const userAttribute: Map<string, string> | null = null; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Map<string, string>
is different from object literals (and Record<string, string>
which is an object literal with a string
key and string
value), so the type of userAttributes
here doesn't match what it is intended to be.
We can't pass JavaScript Maps to native methods, but we can pass object literals, so if we actually use Map
in a real app it'd cause a crash.
…non-fatal-api # Conflicts: # CHANGELOG.md
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good job @ahmedAlaaInstabug! 👏🏼 Just a couple of little comments and we should be good to go!
android/src/main/java/com/instabug/reactlibrary/RNInstabugCrashReportingModule.java
Outdated
Show resolved
Hide resolved
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perfect! Let's gooo! 🚀🚀
# Conflicts: # CHANGELOG.md # examples/default/ios/Podfile.lock # ios/native.rb
* add non fatal api --------- Co-authored-by: Ahmed Mahmoud <[email protected]>
sss chore(ios): bump sdk to v13.1.0 (#1227) * chore(ios): bump ios sdk v13.1.0 * chore(ios): bump ios sdk v13.1.0 * chore(ios): bump ios sdk v13.1.0 chore(android): bump sdk to v13.1.1 (#1228) * chore(android): bump android sdk v13.1.1 feat: enhance non-fatals support (#1194) * add non fatal api --------- Co-authored-by: Ahmed Mahmoud <[email protected]> fix: read env variable in sourcemap (#1232) * fix sourcemap issue * fix sourcemap issue * fix sourcemap issue * Update typo in CHANGELOG.md --------- Co-authored-by: Andrew Amin <[email protected]> Release:v13.1.1 (#1231) * release/v13.1.1 * Update CHANGELOG.md Update CHANGELOG.md chore(deps): bump @babel/traverse in /examples/default Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.22.8 to 7.24.6. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.6/packages/babel-traverse) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> chore(deps): bump follow-redirects from 1.15.2 to 1.15.6 Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.6. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](follow-redirects/follow-redirects@v1.15.2...v1.15.6) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> fix: cont work after logging fix(android): change parameters used in inner class to final (#1239) chore(android): bump sdk to v13.2.0 (#1245) * chore(android): bump sdk to v13.2.0 * chore: update changelog chore(ios): bump sdk to v13.2.0 (#1246) release: v13.2.0 (#1247) chore: resolve issues in changelog (#1249) feat(example): add apm screen (#1141) fix(android): resolve an OOM in network logs (#1244) fix(android): APM network logging(#1253) * fix(android): add W3C External Trace Attributes placeholder * chore: add CHANGLOG * chore: add CHANGLOG * fix: remove ios sub module feat: export upload utils (#1252) chore(example): remove flipper (#1259) fix(android): pass network start time in microseconds (#1260) * fix: network timestamp in android side * fix: PR comments Co-authored-by: Ahmed Elrefaey <[email protected]> --------- Co-authored-by: Ahmed Elrefaey <[email protected]> feat: support feature flags with variants (#1230) Jira ID: MOB-14684 --------- Co-authored-by: Ahmed Elrefaey <[email protected]> chore(android): bump android sdk to v13.3.0 (#1261) chore(ios): bump sdk to v13.3.0 (#1262) release: v13.3.0 (#1263) chore: remove duplicate app flows entries in changelog (#1264) chore: remove duplicate execution traces deprecation in changelog (#1265) feat: navigation tracking support with expo router (#1270) * feat: add screen tracker on screen change listener and tests * feat (example): add screen change listener chore: enhance expo router tracking support (#1272) ci: generalize enterprise releases (#1275) ci: run tests before enterprise releases (#1271) ci: publish snapshots to npm (#1274) fix: PR comments fix(ios): network log empty response body (#1273) fix: drop non-error objects when reporting errors (#1279) * Fix: omitted non-error objects when logging errors * ci: publish snapshots to npm (#1274) * Fix: omitted non-error objects when logging errors * fix: use warn instead of logs Co-authored-by: Ahmed Elrefaey <[email protected]> * Update CHANGELOG.md Co-authored-by: Ahmed Elrefaey <[email protected]> * fix: merge issues --------- Co-authored-by: Ahmed Elrefaey <[email protected]> feat: capture client error in the network interceptor (#1257) * feat/support-capture-client-error-in-xhr-requests --------- Co-authored-by: Abdelhamid Nasser <[email protected]> Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: kholood <[email protected]> fix: APM test cases
* fix: Replace Thrown Errors with Logs sss chore(ios): bump sdk to v13.1.0 (#1227) * chore(ios): bump ios sdk v13.1.0 * chore(ios): bump ios sdk v13.1.0 * chore(ios): bump ios sdk v13.1.0 chore(android): bump sdk to v13.1.1 (#1228) * chore(android): bump android sdk v13.1.1 feat: enhance non-fatals support (#1194) * add non fatal api --------- Co-authored-by: Ahmed Mahmoud <[email protected]> fix: read env variable in sourcemap (#1232) * fix sourcemap issue * fix sourcemap issue * fix sourcemap issue * Update typo in CHANGELOG.md --------- Co-authored-by: Andrew Amin <[email protected]> Release:v13.1.1 (#1231) * release/v13.1.1 * Update CHANGELOG.md Update CHANGELOG.md chore(deps): bump @babel/traverse in /examples/default Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.22.8 to 7.24.6. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.6/packages/babel-traverse) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> chore(deps): bump follow-redirects from 1.15.2 to 1.15.6 Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.6. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](follow-redirects/follow-redirects@v1.15.2...v1.15.6) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> fix: cont work after logging fix(android): change parameters used in inner class to final (#1239) chore(android): bump sdk to v13.2.0 (#1245) * chore(android): bump sdk to v13.2.0 * chore: update changelog chore(ios): bump sdk to v13.2.0 (#1246) release: v13.2.0 (#1247) chore: resolve issues in changelog (#1249) feat(example): add apm screen (#1141) fix(android): resolve an OOM in network logs (#1244) fix(android): APM network logging(#1253) * fix(android): add W3C External Trace Attributes placeholder * chore: add CHANGLOG * chore: add CHANGLOG * fix: remove ios sub module feat: export upload utils (#1252) chore(example): remove flipper (#1259) fix(android): pass network start time in microseconds (#1260) * fix: network timestamp in android side * fix: PR comments Co-authored-by: Ahmed Elrefaey <[email protected]> --------- Co-authored-by: Ahmed Elrefaey <[email protected]> feat: support feature flags with variants (#1230) Jira ID: MOB-14684 --------- Co-authored-by: Ahmed Elrefaey <[email protected]> chore(android): bump android sdk to v13.3.0 (#1261) chore(ios): bump sdk to v13.3.0 (#1262) release: v13.3.0 (#1263) chore: remove duplicate app flows entries in changelog (#1264) chore: remove duplicate execution traces deprecation in changelog (#1265) feat: navigation tracking support with expo router (#1270) * feat: add screen tracker on screen change listener and tests * feat (example): add screen change listener chore: enhance expo router tracking support (#1272) ci: generalize enterprise releases (#1275) ci: run tests before enterprise releases (#1271) ci: publish snapshots to npm (#1274) fix: PR comments fix(ios): network log empty response body (#1273) fix: drop non-error objects when reporting errors (#1279) * Fix: omitted non-error objects when logging errors * ci: publish snapshots to npm (#1274) * Fix: omitted non-error objects when logging errors * fix: use warn instead of logs Co-authored-by: Ahmed Elrefaey <[email protected]> * Update CHANGELOG.md Co-authored-by: Ahmed Elrefaey <[email protected]> * fix: merge issues --------- Co-authored-by: Ahmed Elrefaey <[email protected]> feat: capture client error in the network interceptor (#1257) * feat/support-capture-client-error-in-xhr-requests --------- Co-authored-by: Abdelhamid Nasser <[email protected]> Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: kholood <[email protected]> fix: APM test cases * fix: APM test cases * fix test cases * fix: PR comments * fix: PR comments * fix: PR comments
* feat(example): add features and buttons implementation (#1280) Jira ID: RL-224 * fix: replace thrown errors with logs (#1220) * fix: Replace Thrown Errors with Logs sss chore(ios): bump sdk to v13.1.0 (#1227) * chore(ios): bump ios sdk v13.1.0 * chore(ios): bump ios sdk v13.1.0 * chore(ios): bump ios sdk v13.1.0 chore(android): bump sdk to v13.1.1 (#1228) * chore(android): bump android sdk v13.1.1 feat: enhance non-fatals support (#1194) * add non fatal api --------- Co-authored-by: Ahmed Mahmoud <[email protected]> fix: read env variable in sourcemap (#1232) * fix sourcemap issue * fix sourcemap issue * fix sourcemap issue * Update typo in CHANGELOG.md --------- Co-authored-by: Andrew Amin <[email protected]> Release:v13.1.1 (#1231) * release/v13.1.1 * Update CHANGELOG.md Update CHANGELOG.md chore(deps): bump @babel/traverse in /examples/default Bumps [@babel/traverse](https://github.com/babel/babel/tree/HEAD/packages/babel-traverse) from 7.22.8 to 7.24.6. - [Release notes](https://github.com/babel/babel/releases) - [Changelog](https://github.com/babel/babel/blob/main/CHANGELOG.md) - [Commits](https://github.com/babel/babel/commits/v7.24.6/packages/babel-traverse) --- updated-dependencies: - dependency-name: "@babel/traverse" dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> chore(deps): bump follow-redirects from 1.15.2 to 1.15.6 Bumps [follow-redirects](https://github.com/follow-redirects/follow-redirects) from 1.15.2 to 1.15.6. - [Release notes](https://github.com/follow-redirects/follow-redirects/releases) - [Commits](follow-redirects/follow-redirects@v1.15.2...v1.15.6) --- updated-dependencies: - dependency-name: follow-redirects dependency-type: indirect ... Signed-off-by: dependabot[bot] <[email protected]> fix: cont work after logging fix(android): change parameters used in inner class to final (#1239) chore(android): bump sdk to v13.2.0 (#1245) * chore(android): bump sdk to v13.2.0 * chore: update changelog chore(ios): bump sdk to v13.2.0 (#1246) release: v13.2.0 (#1247) chore: resolve issues in changelog (#1249) feat(example): add apm screen (#1141) fix(android): resolve an OOM in network logs (#1244) fix(android): APM network logging(#1253) * fix(android): add W3C External Trace Attributes placeholder * chore: add CHANGLOG * chore: add CHANGLOG * fix: remove ios sub module feat: export upload utils (#1252) chore(example): remove flipper (#1259) fix(android): pass network start time in microseconds (#1260) * fix: network timestamp in android side * fix: PR comments Co-authored-by: Ahmed Elrefaey <[email protected]> --------- Co-authored-by: Ahmed Elrefaey <[email protected]> feat: support feature flags with variants (#1230) Jira ID: MOB-14684 --------- Co-authored-by: Ahmed Elrefaey <[email protected]> chore(android): bump android sdk to v13.3.0 (#1261) chore(ios): bump sdk to v13.3.0 (#1262) release: v13.3.0 (#1263) chore: remove duplicate app flows entries in changelog (#1264) chore: remove duplicate execution traces deprecation in changelog (#1265) feat: navigation tracking support with expo router (#1270) * feat: add screen tracker on screen change listener and tests * feat (example): add screen change listener chore: enhance expo router tracking support (#1272) ci: generalize enterprise releases (#1275) ci: run tests before enterprise releases (#1271) ci: publish snapshots to npm (#1274) fix: PR comments fix(ios): network log empty response body (#1273) fix: drop non-error objects when reporting errors (#1279) * Fix: omitted non-error objects when logging errors * ci: publish snapshots to npm (#1274) * Fix: omitted non-error objects when logging errors * fix: use warn instead of logs Co-authored-by: Ahmed Elrefaey <[email protected]> * Update CHANGELOG.md Co-authored-by: Ahmed Elrefaey <[email protected]> * fix: merge issues --------- Co-authored-by: Ahmed Elrefaey <[email protected]> feat: capture client error in the network interceptor (#1257) * feat/support-capture-client-error-in-xhr-requests --------- Co-authored-by: Abdelhamid Nasser <[email protected]> Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: kholood <[email protected]> fix: APM test cases * fix: APM test cases * fix test cases * fix: PR comments * fix: PR comments * fix: PR comments * refactor(example): upgrade to react native 0.75.4 (#1302) * chore: upgrade dependencies * refactor(example): upgrade to react native 0.75.4 * chore: integrate android sdk v14 snapshot * ci: install cocoapods 1.14 * ci: upgrade xcode to 15.4 * chore: remove .xcode.env.local * ci: install cocoapods into usr/local/bin * ci: fix empty jacoco report issue * Release: v14.0.0 (#1312) * Release : v14.0.0 * Release : v14.0.0 * Release : v14.0.0 * feat: add session sync callback (#1292) * feat(android): add session sync callback (#1281) * feat(android): add SRSyncCallback * feat: implement and test syncCallback CP side * feat(example): use SRSyncCallback in example app * ci: fix tests * fix: export session data type * fix(example): use session data type * fix(android):remove data modifier * fix(android): add property modifiers * fix(android): update test case * fix: enhance test case * fix: update session data type * fix: add more session metadata to setSyncCallback * fix: update syncCallback test * feat: add launchType to session metadata for setSyncCallback * fix: import type * fix: assert evaluate sync returns correct value * fix: import type * fix: cleanup * chore: update js doc * fix: typo * fix: follow interface naming convention * fix: update type * fix: refactor syncCallback * fix: default syncing session to true * fix: convert network logs to readable array * chore: add discriptive comment * chore: use readable map for session metadata * fix: setSyncCallback should sync in case of exception * fix: move SessionMetadata to models * fix: update SessionMetadata type import * fix: report bug e2e test --------- Co-authored-by: Ahmed Elrefaey <[email protected]> * feat(ios): add session sync callback (#1282) * feat(android): add SRSyncCallback * feat: implement and test syncCallback CP side * feat(example): use SRSyncCallback in example app * ci: fix tests * fix: export session data type * fix(example): use session data type * fix(android):remove data modifier * fix(android): add property modifiers * fix(android): update test case * fix: enhance test case * fix(ios): update network log signature * chore(ios): integrate dynamic sampling snapshot * fix:update IOS network log unit test * fix: update session metadata * feat(ios): add setSyncCallback * fix: pod.lock file * fix: update session data type * fix: add more session metadata to setSyncCallback * fix: update syncCallback test * feat: add launchType to session metadata for setSyncCallback * fix: import type * fix: enhance test case * fix: add more session metadata to setSyncCallback * fix: update syncCallback test * feat: add launchType to session metadata for setSyncCallback * fix: import type * feat(ios): add launchType metadata to session syncCallback * fix: add unknown type to launch types * fix: assert evaluate sync returns correct value * fix: import type * fix: cleanup * chore: update js doc * fix: typo * fix: follow interface naming convention * fix: update type * fix: refactor syncCallback * fix: default syncing session to true * fix: convert network logs to readable array * chore: add discriptive comment * chore: use readable map for session metadata * fix: setSyncCallback should sync in case of exception * fix: move SessionMetadata to models * fix: update SessionMetadata type import * fix: report bug e2e test * chore (ios): update snapshot * chore (ios): refactor callback * fix: return network logs * chore: update podfile.lock * chore: fix formatting * chore: revert Podfile.lock * chore: fix ci * fix: launchType typo * fix: update class sessionEvaluationCompletion atomicity * chore: enhance syncCallback formatting * chore: update evaluateSync formatting * fix: fix test SetSyncCallback * fix: update getNetworkLogsArray return value --------- Co-authored-by: Ahmed Elrefaey <[email protected]> * Revert "fix(ios): update network log signature" This reverts commit 8d9036e. * chore(ios): update snapshot * fix: ios network logging test after reverting * fix: convert sendEvent arg from writable to readable map * chore(android): update snapshot * fix(android): refactor getSessionMetadataMap to tolerate null values * fix(ios): update fulfill exception wait time in test * fix(android): convert session metadat map to readable map * chore: update docs * fix: remove hot launch type * fix: increase timeout expectation in test case * Revert "fix: increase timeout expectation in test case" This reverts commit be32acd. * feat(example): add features and buttons implementation (#1280) Jira ID: RL-224 * fix(android): add unknown launch type * chore: update documentation * feat: upgrade to 14.0.0 * feat: upgrade to 14.0.0 * feat: upgrade to 14.0.0 * merge dev * merge dev * merge dev * fix: test case --------- Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: YoussefFouadd <[email protected]> Co-authored-by: Ahmed alaa <[email protected]> * master-on-dev (#1316) Co-authored-by: Mohamed Zakaria El-Zoghbi <[email protected]> * chore: update release date (#1320) * feat: add w3c traceparent header injection (#1288) * feat(example): add apm screen (#1141) * fix(android): resolve an OOM in network logs (#1244) * fix(android): APM network logging(#1253) * fix(android): add W3C External Trace Attributes placeholder * chore: add CHANGLOG * chore: add CHANGLOG * fix: remove ios sub module * fix: use correct diff link for v13.0.0, v12.9.0 releases (#1198) * feat(ios): read env vars from .xcode.env in sourcemaps script (#1200) * feat(ios): read env vars from .xcode.env in sourcemaps script * chore: update xcode project * chore: update changelog * chore/update-podfile.lock * feat: add w3c header generator * ci:fix lint * ci:fix ios tests * feat:update header format * feat:update header format test case title * feat:Inject the W3C Header to Network Requests * ci:fix lint * feat:remove tracestate * feat: get feature flags from IOS * ci: fix ios test * fix: modify function naming * fix: update APM test cases * fix: update native test cases naming * feat(ios): w3c logs mapping * fix: export number partial id * fix: modify partial id generator function * fix: modify partial id generator test cases * feat(example): add network request generators buttons * ci: fix lint * ci(example): add missing import * feat(android): map apm network logs * feat(android): add W3C native modules & tests * feat: map w3c android native modules and test * feat: register w3c feature change listener * feat: add feature flags * feat: call updated feature flags * fix: update object assigning * fix: remove comment * fix: modify test cases naming * fix: generated header injection * fix: fix variable neames * fix: update test cases * fix(android): caught header null string * fix: update network log interface * fix (example): remove redundant button * feat (example): add Enable/Disable APM buttons * fix: add w3c Attributes to network logs tests * fix: fix imports * feat(android) : add w3c attributes to APM network Logs * chore: remove flipper * fix: adjust spacing * fix: update test case * feat: migrate-Feature-Flag-APM-method-to-Core * fix: js testcases * fix: js testcases * fix: js testcases * feat: add migrate APM into core in ios section * fix: js testcases * feat: add migrate APM into core in ios section * feat: add migrate APM into core in ios section * fix: Pr comments * fix: PR comment * fix: Pr comments * fix: added changelog item * fix: feature flag listener * fix: feature flag listener * feat: migrate w3c flags to APM core * feat(example): add apm screen (#1141) * fix(android): resolve an OOM in network logs (#1244) * fix(android): APM network logging(#1253) * fix(android): add W3C External Trace Attributes placeholder * chore: add CHANGLOG * chore: add CHANGLOG * fix: remove ios sub module * feat: export upload utils (#1252) * chore(example): remove flipper (#1259) * fix(android): pass network start time in microseconds (#1260) * fix: network timestamp in android side * fix: PR comments Co-authored-by: Ahmed Elrefaey <[email protected]> --------- Co-authored-by: Ahmed Elrefaey <[email protected]> * feat: support feature flags with variants (#1230) Jira ID: MOB-14684 --------- Co-authored-by: Ahmed Elrefaey <[email protected]> * chore(android): bump android sdk to v13.3.0 (#1261) * chore(ios): bump sdk to v13.3.0 (#1262) * release: v13.3.0 (#1263) * chore: remove duplicate app flows entries in changelog (#1264) * chore: remove duplicate execution traces deprecation in changelog (#1265) * feat: navigation tracking support with expo router (#1270) * feat: add screen tracker on screen change listener and tests * feat (example): add screen change listener * chore: enhance expo router tracking support (#1272) * ci: generalize enterprise releases (#1275) * ci: run tests before enterprise releases (#1271) * ci: publish snapshots to npm (#1274) * fix(ios): network log empty response body (#1273) * fix: drop non-error objects when reporting errors (#1279) * Fix: omitted non-error objects when logging errors * ci: publish snapshots to npm (#1274) * Fix: omitted non-error objects when logging errors * fix: use warn instead of logs Co-authored-by: Ahmed Elrefaey <[email protected]> * Update CHANGELOG.md Co-authored-by: Ahmed Elrefaey <[email protected]> * fix: merge issues --------- Co-authored-by: Ahmed Elrefaey <[email protected]> * feat: capture client error in the network interceptor (#1257) * feat/support-capture-client-error-in-xhr-requests --------- Co-authored-by: Abdelhamid Nasser <[email protected]> Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: kholood <[email protected]> * fix: merge issues * fix: networkLogIOS test case * fix: merge issues * fix: merge issues * fix: merge issues * fix: merge issues * fix: merge issues * fix: remove logs * fix: refactore networkLogAndroid arguments * fix: merge issues * fix: merge issues * fix: move W3cExternalTraceAttributes to models * fix: return expected value type from bridge * fix: refactor method call * fix: refactor method name * fix: return expected value types of w3c flags * chore: refactor constant names * fix: pod file * fix(android): fix w3c caught header * fix (android): reporting network logs upon disabling w3c main feature flag * chore: add changelog --------- Co-authored-by: Abdelhamid Nasser <[email protected]> Co-authored-by: kholood <[email protected]> Co-authored-by: Ahmed alaa <[email protected]> Co-authored-by: ahmed alaa <[email protected]> * Adding buttons to the sample app (#1311) * feat(example): add webviews to the sample app (#1310) * Adding WebViews to sample app * Fixing Pods issue * Fixing CI * feat: exclude DEV server from network logs (#1307) * feat: exclude dev server * feat: exclude DEV server url from network logs * feat: exclude DEV server url from network logs * feat: exclude DEV server url from network logs * feat: exclude DEV server url from network logs * feat: exclude DEV server url from network logs * feat: exclude DEV server url from network logs * feat: exclude DEV server url from network logs * feat: exclude DEV server url from network logs * feat: exclude DEV server url from network logs * merge dev * fix: Adjust logging behavior based on the debugLogLevel. (#1319) * refactor(example): upgrade to react native 0.75.4 (#1302) * chore: upgrade dependencies * refactor(example): upgrade to react native 0.75.4 * chore: integrate android sdk v14 snapshot * ci: install cocoapods 1.14 * ci: upgrade xcode to 15.4 * chore: remove .xcode.env.local * ci: install cocoapods into usr/local/bin * ci: fix empty jacoco report issue * Release: v14.0.0 (#1312) * Release : v14.0.0 * Release : v14.0.0 * Release : v14.0.0 * feat: add session sync callback (#1292) * feat(android): add session sync callback (#1281) * feat(android): add SRSyncCallback * feat: implement and test syncCallback CP side * feat(example): use SRSyncCallback in example app * ci: fix tests * fix: export session data type * fix(example): use session data type * fix(android):remove data modifier * fix(android): add property modifiers * fix(android): update test case * fix: enhance test case * fix: update session data type * fix: add more session metadata to setSyncCallback * fix: update syncCallback test * feat: add launchType to session metadata for setSyncCallback * fix: import type * fix: assert evaluate sync returns correct value * fix: import type * fix: cleanup * chore: update js doc * fix: typo * fix: follow interface naming convention * fix: update type * fix: refactor syncCallback * fix: default syncing session to true * fix: convert network logs to readable array * chore: add discriptive comment * chore: use readable map for session metadata * fix: setSyncCallback should sync in case of exception * fix: move SessionMetadata to models * fix: update SessionMetadata type import * fix: report bug e2e test --------- Co-authored-by: Ahmed Elrefaey <[email protected]> * feat(ios): add session sync callback (#1282) * feat(android): add SRSyncCallback * feat: implement and test syncCallback CP side * feat(example): use SRSyncCallback in example app * ci: fix tests * fix: export session data type * fix(example): use session data type * fix(android):remove data modifier * fix(android): add property modifiers * fix(android): update test case * fix: enhance test case * fix(ios): update network log signature * chore(ios): integrate dynamic sampling snapshot * fix:update IOS network log unit test * fix: update session metadata * feat(ios): add setSyncCallback * fix: pod.lock file * fix: update session data type * fix: add more session metadata to setSyncCallback * fix: update syncCallback test * feat: add launchType to session metadata for setSyncCallback * fix: import type * fix: enhance test case * fix: add more session metadata to setSyncCallback * fix: update syncCallback test * feat: add launchType to session metadata for setSyncCallback * fix: import type * feat(ios): add launchType metadata to session syncCallback * fix: add unknown type to launch types * fix: assert evaluate sync returns correct value * fix: import type * fix: cleanup * chore: update js doc * fix: typo * fix: follow interface naming convention * fix: update type * fix: refactor syncCallback * fix: default syncing session to true * fix: convert network logs to readable array * chore: add discriptive comment * chore: use readable map for session metadata * fix: setSyncCallback should sync in case of exception * fix: move SessionMetadata to models * fix: update SessionMetadata type import * fix: report bug e2e test * chore (ios): update snapshot * chore (ios): refactor callback * fix: return network logs * chore: update podfile.lock * chore: fix formatting * chore: revert Podfile.lock * chore: fix ci * fix: launchType typo * fix: update class sessionEvaluationCompletion atomicity * chore: enhance syncCallback formatting * chore: update evaluateSync formatting * fix: fix test SetSyncCallback * fix: update getNetworkLogsArray return value --------- Co-authored-by: Ahmed Elrefaey <[email protected]> * Revert "fix(ios): update network log signature" This reverts commit 8d9036e. * chore(ios): update snapshot * fix: ios network logging test after reverting * fix: convert sendEvent arg from writable to readable map * chore(android): update snapshot * fix(android): refactor getSessionMetadataMap to tolerate null values * fix(ios): update fulfill exception wait time in test * fix(android): convert session metadat map to readable map * chore: update docs * fix: remove hot launch type * fix: increase timeout expectation in test case * Revert "fix: increase timeout expectation in test case" This reverts commit be32acd. * feat(example): add features and buttons implementation (#1280) Jira ID: RL-224 * fix(android): add unknown launch type * chore: update documentation * feat: upgrade to 14.0.0 * feat: upgrade to 14.0.0 * feat: upgrade to 14.0.0 * merge dev * merge dev * merge dev * fix: test case --------- Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: YoussefFouadd <[email protected]> Co-authored-by: Ahmed alaa <[email protected]> * master-on-dev (#1316) Co-authored-by: Mohamed Zakaria El-Zoghbi <[email protected]> * fix: adjust logging with debuglogLevel * chore: update release date (#1320) --------- Co-authored-by: Mohamed Zakaria El-Zoghbi <[email protected]> Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: kholood <[email protected]> Co-authored-by: YoussefFouadd <[email protected]> --------- Co-authored-by: Mohamed Zakaria El-Zoghbi <[email protected]> Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: kholood <[email protected]> Co-authored-by: YoussefFouadd <[email protected]> * Release:14.1.0 (#1335) * release: 14.1.0 * release: 14.1.0 * release: v14.1.0 * release: v14.1.0 * release: v14.1.0 --------- Co-authored-by: YoussefFouadd <[email protected]> Co-authored-by: Ahmed Elrefaey <[email protected]> Co-authored-by: kholood <[email protected]> Co-authored-by: Mohamed Zakaria El-Zoghbi <[email protected]> Co-authored-by: Abdelhamid Nasser <[email protected]>
Description of the change
Type of change
Related issues
JIRA ID :
Checklists
Development
Code review