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

Chore: Migrate to sentry cocoa v8 #1197

Merged
merged 27 commits into from
Jan 16, 2023
Merged
Show file tree
Hide file tree
Changes from 10 commits
Commits
Show all changes
27 commits
Select commit Hold shift + click to select a range
4610655
bump to 8.0.0 beta 4
denrase Dec 19, 2022
0c80668
Rename SentryOptions.enableAutoPerformanceTracking to SentryOptions.e…
denrase Dec 19, 2022
6cf9a4a
set name and version of hybrid sdk to native sdks
denrase Dec 19, 2022
98c2f38
add changelog entry
denrase Dec 19, 2022
10a5b3f
update native sdk integration test to match flutter sdk
denrase Dec 20, 2022
0b3bf2f
revert renaming to enableAutoPerformanceTracing because its out of sc…
denrase Dec 20, 2022
ef3d20a
Merge branch 'v7.0.0' into chore/migrate-to-sentry-cocoa-v8
denrase Jan 9, 2023
b1ce30e
revert key rename
denrase Jan 9, 2023
d8b82b1
Merge branch 'v7.0.0' into chore/migrate-to-sentry-cocoa-v8
marandaneto Jan 10, 2023
3b5d22e
Merge branch 'v7.0.0' into chore/migrate-to-sentry-cocoa-v8
marandaneto Jan 12, 2023
fae536b
fix api call
denrase Jan 16, 2023
7b5c0e2
remove duplicate dependency declaration
denrase Jan 16, 2023
e05af94
Merge branch 'v7.0.0' into chore/migrate-to-sentry-cocoa-v8
marandaneto Jan 16, 2023
ef980f3
fix compile issues
denrase Jan 16, 2023
4865774
Merge branch 'chore/migrate-to-sentry-cocoa-v8' of github.com:getsent…
denrase Jan 16, 2023
e177c32
remvoe comment
denrase Jan 16, 2023
a98ed79
bump depolyment targets
denrase Jan 16, 2023
e558a86
fix sdkversion call
denrase Jan 16, 2023
eb2f1ff
bump deployment target for min version test
denrase Jan 16, 2023
ea6679c
Rename APM tracking feature flags to tracing and enable features by d…
marandaneto Jan 16, 2023
fbc515d
Merge branch 'v7.0.0' into chore/migrate-to-sentry-cocoa-v8
denrase Jan 16, 2023
46c2b3f
set osx (macos) min version in example Podfile
denrase Jan 16, 2023
39fa2e5
update detekt
denrase Jan 16, 2023
0779554
bump min os version
denrase Jan 16, 2023
1ae1fd6
move changelog entries to unreleased section
denrase Jan 16, 2023
c90e2c6
break up seperater prs into correct versions
denrase Jan 16, 2023
6ecab55
update title
denrase Jan 16, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,7 @@
### Enhancements

- Enha: Replace `StackTrace.empty` with `StackTrace.current` ([#1183](https://github.com/getsentry/sentry-dart/pull/1183))
- Migrate to sentry cocoa v8 ([#1197](https://github.com/getsentry/sentry-dart/pull/1197))

### Breaking Changes

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -164,6 +164,15 @@ class SentryFlutterPlugin : FlutterPlugin, MethodCallHandler, ActivityAware {

args.getIfNotNull<Boolean>("sendClientReports") { options.isSendClientReports = it }

args.getIfNotNull<Map<String, Any>>("sdk") { sdk ->
denrase marked this conversation as resolved.
Show resolved Hide resolved
val name = sdk["name"] as? String
val version = sdk["version"] as? String
denrase marked this conversation as resolved.
Show resolved Hide resolved
if (name != null && version != null) {
options.setSentryClientName(name)
options.setSdkVersion(version)
}
}

options.setBeforeSend { event, _ ->
setEventOriginTag(event)
addPackages(event, options.sdkVersion)
Expand Down
8 changes: 7 additions & 1 deletion flutter/ios/Classes/SentryFlutterPluginApple.swift
Original file line number Diff line number Diff line change
Expand Up @@ -204,6 +204,12 @@ public class SentryFlutterPluginApple: NSObject, FlutterPlugin {
#endif
}

if let sdk = arguments["sdk"] as? [String: Any?],
let sdkName = sdk["name"] as? String,
let sdkVersion = sdk["version"] as? String {
denrase marked this conversation as resolved.
Show resolved Hide resolved
PrivateSentrySDKOnly.setSdkName(sdkName, andVersionString: sdkVersion)
denrase marked this conversation as resolved.
Show resolved Hide resolved
}

// note : for now, in sentry-cocoa, beforeSend is not called before captureEnvelope
options.beforeSend = { event in
self.setEventOriginTag(event: event)
Expand Down Expand Up @@ -581,7 +587,7 @@ public class SentryFlutterPluginApple: NSObject, FlutterPlugin {
breadcrumbInstance.data = data
}

SentrySDK.addBreadcrumb(crumb: breadcrumbInstance)
SentrySDK.addBreadcrumb(breadcrumbInstance)

result("")
}
Expand Down
1 change: 1 addition & 0 deletions flutter/ios/sentry_flutter.podspec
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ Sentry SDK for Flutter with support to native through sentry-cocoa.
:tag => s.version.to_s }
s.source_files = 'Classes/**/*'
s.public_header_files = 'Classes/**/*.h'
s.dependency 'Sentry/HybridSDK', '8.0.0-rc.1'
s.dependency 'Sentry/HybridSDK', '7.31.5'
s.ios.dependency 'Flutter'
s.osx.dependency 'FlutterMacOS'
Expand Down
4 changes: 4 additions & 0 deletions flutter/lib/src/integrations/native_sdk_integration.dart
Original file line number Diff line number Diff line change
Expand Up @@ -44,6 +44,10 @@ class NativeSdkIntegration extends Integration<SentryFlutterOptions> {
'enableNdkScopeSync': options.enableNdkScopeSync,
'enableAutoPerformanceTracking': options.enableAutoPerformanceTracking,
'sendClientReports': options.sendClientReports,
'sdk': {
'name': options.sdk.name,
'version': options.sdk.version,
},
});

options.sdk.addIntegration('nativeSdkIntegration');
Expand Down
27 changes: 22 additions & 5 deletions flutter/test/integrations/init_native_sdk_integration_test.dart
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@ void main() {
'dist': null,
'integrations': <String>[],
'packages': [
{'name': 'pub:sentry', 'version': sdkVersion}
{'name': 'pub:sentry_flutter', 'version': sdkVersion}
],
'diagnosticLevel': 'debug',
'maxBreadcrumbs': 100,
Expand All @@ -55,7 +55,11 @@ void main() {
'enableOutOfMemoryTracking': true,
'enableNdkScopeSync': false,
'enableAutoPerformanceTracking': true,
'sendClientReports': true
'sendClientReports': true,
'sdk': {
'name': 'sentry.dart.flutter',
'version': sdkVersion,
},
});
});

Expand Down Expand Up @@ -111,7 +115,7 @@ void main() {
'dist': 'distfoo',
'integrations': ['foo'],
'packages': [
{'name': 'pub:sentry', 'version': sdkVersion},
{'name': 'pub:sentry_flutter', 'version': sdkVersion},
{'name': 'bar', 'version': '1'},
],
'diagnosticLevel': 'error',
Expand All @@ -124,7 +128,11 @@ void main() {
'enableOutOfMemoryTracking': false,
'enableNdkScopeSync': true,
'enableAutoPerformanceTracking': false,
'sendClientReports': false
'sendClientReports': false,
'sdk': {
'name': 'sentry.dart.flutter',
'version': sdkVersion,
},
});
});

Expand Down Expand Up @@ -166,7 +174,16 @@ MethodChannel createChannelWithCallback(

SentryFlutterOptions createOptions() {
final mockPlatformChecker = MockPlatformChecker(hasNativeIntegration: true);
return SentryFlutterOptions(dsn: fakeDsn, checker: mockPlatformChecker);
final options = SentryFlutterOptions(
dsn: fakeDsn,
checker: mockPlatformChecker,
);
options.sdk = SdkVersion(
name: sdkName,
version: sdkVersion,
);
options.sdk.addPackage('pub:sentry_flutter', sdkVersion);
return options;
}

class Fixture {
Expand Down