-
-
Notifications
You must be signed in to change notification settings - Fork 389
feat(objc): Add SentryObjC wrapper SDK #7598
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
Draft
philprime
wants to merge
74
commits into
main
Choose a base branch
from
philprime/objc-wrapper-sdk-6342
base: main
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Draft
Changes from 29 commits
Commits
Show all changes
74 commits
Select commit
Hold shift + click to select a range
74600ce
feat(objc): Add SentryObjC wrapper SDK and API stability tracking
philprime 2df1ab3
docs(objc): Add comprehensive documentation to SentryObjC wrapper SDK
philprime bb4bcf2
docs(objc): Document additional SentryObjC data model classes
philprime 50e07e7
docs(objc): Document stack traces and event metadata classes
philprime 2ac98e0
docs(objc): Document session replay and sampling classes
philprime 434212c
wip
philprime 4074c02
ci: Remove file-existence check for sdk_objc_api.json
philprime 59fa2dc
docs(samples): Restore problem description in ObjC-NoModules README
philprime 0e7e483
Merge branch 'main' into philprime/objc-wrapper-sdk-6342
philprime 7b315e6
ref(objc): Rewrite API extraction using clang AST and bash
philprime 96cd092
ci: Add iOS-ObjectiveCpp-NoModules sample to build matrix
philprime 16d4dea
update public API
philprime bf8a253
Merge branch 'main' into philprime/objc-wrapper-sdk-6342
philprime e5e4882
feat(objc): Add SentryObjC product to Swift 6.1 package manifest
philprime ba08e46
docs(objc): Add missing documentation to 9 SentryObjC headers
philprime 33dd2c7
fix(objc): Add SentryCppHelper to Swift 6.1 compile-from-source targets
philprime e4b4486
feat(objc): Implement SentrySDK wrapper for no-modules context
philprime 913cdfd
fix(objc): Keep SentryCppHelper in initial targets array
philprime e1eebdf
ref(objc): Rename SentrySDK to SentryObjCSDK to avoid naming conflicts
philprime 97f6f13
WIP
philprime ab571ff
Merge remote-tracking branch 'origin/main' into philprime/objc-wrappeβ¦
philprime 7a81302
WIP
philprime 56bdb7c
WIP
philprime 5cc3e0d
fix(objc): Add explicit @objc name to SentryObjCBridge
philprime e2a7aa0
fix(objc): Fix thread safety, replay API, and package manifest issues
philprime 6ee408f
WIP
philprime 82bdd16
Merge remote-tracking branch 'origin/main' into philprime/objc-wrappeβ¦
philprime cff540f
fix(objc): Fix SentryObjC package resolution and CI failures
philprime 8e6c132
Merge branch 'main' into philprime/objc-wrapper-sdk-6342
philprime 5c6380c
ref: Extract getAppStartMeasurement into SentryAppStartMeasurementProβ¦
philipphofmann f4293bc
revert: Remove thread safety changes extracted to PR #7672
philprime 9e207fa
fix(objc): Address critical review bot feedback
philprime 1b9dab0
Merge remote-tracking branch 'origin/main' into philprime/objc-wrappeβ¦
philprime 9ecf30b
update sdk json
philprime 74f68ad
update submodule
philprime beb048f
wip
philprime 2d3b0ce
Merge branch 'main' into philprime/objc-wrapper-sdk-6342
philprime 34ccdb8
Merge remote-tracking branch 'origin/main' into philprime/objc-wrappeβ¦
philprime 91d834c
ref: rename SentryObjC core headers to match SDK naming
philprime 4b6bc65
ref: rename SentryObjC user and context headers
philprime 42bf54e
ref: rename SentryObjC exception and stack headers
philprime 0d1d853
ref: rename SentryObjC tracing headers
philprime e5e8c71
ref: rename remaining SentryObjC headers
philprime 3b6f320
ref: update umbrella header imports to new names
philprime e479465
ref: update cross-header imports to new names
philprime fc356b3
ref: rename SentryObjCSDK class to SentrySDK
philprime dad81ef
build: update add-sentryobjc-target.rb to include bridge and Sentry dβ¦
philprime 6336858
build: add SentryObjC variant to xcframework build script
philprime 8d92c5e
ref: rename SentryObjC implementation files
philprime 22824e5
ref: rename SentryObjC class and type names
philprime d44c00f
fix: disambiguate SentryAttributeContent in Swift bridge
philprime fc4682e
build: move SentryObjCBridge to Sentry target
philprime acd8515
WIP
philprime abcc681
build: standalone SentryObjC xcframework via swiftc
philprime 16f9238
feat: add new public headers for Sentry logging and envelope handling
philprime 143a0d6
build: update framework handling in xcframework build script
philprime 6189f81
ci: add SentryObjC xcframework to CI pipeline
philprime 37eade3
Merge remote-tracking branch 'origin/main' into philprime/objc-wrappeβ¦
philprime 9521b48
fix(build): skip SystemConfiguration on watchOS for SentryObjC xcframβ¦
philprime 5043b1f
chore(api): regenerate sdk_api_objc.json after header renames
philprime 31cd646
feat(objc): expose SentryOptions.experimental as a typed class
philprime bf8027a
fix(objc): register SentryExperimentalOptions.h as public header
philprime f4d732b
fix(objc): mark SentryObjC modulemap as framework module
philprime f7e40e5
ref(objc): drop manual SentryObjC modulemap and let Xcode generate it
philprime b37e7c5
feat(objc): ship SentryObjC as separate static and dynamic xcframeworks
philprime f05c5fe
fix(objc): alias public ObjC classes to Swift mangled names
philprime 05ee02e
Merge remote-tracking branch 'origin/main' into philprime/objc-wrappeβ¦
philprime e20405b
build(spm): match SentryObjC target layout in swift-6.2 manifest
philprime d8a3411
manual cleanup and fixed Objective-C sample
philprime 3aeab3b
Merge branch 'main' into philprime/objc-wrapper-sdk-6342
philprime 6bbc7b8
feat(objc): introduce SentryObjCTypes target
philprime bc0702c
fix(objc): use __has_include for SentryObjCTypes imports
philprime 2091b12
chore(ci): remove duplicate Homebrew update
philprime e12d8c2
build(objc): wire SentryObjCTypes into xcframework release flow
philprime File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
21 changes: 5 additions & 16 deletions
21
Samples/iOS-ObjectiveCpp-NoModules/App/Sources/AppDelegate.mm
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
11 changes: 4 additions & 7 deletions
11
Samples/iOS-ObjectiveCpp-NoModules/App/Sources/ViewController.mm
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -1,24 +1,21 @@ | ||
| // Objective-C++ file - same module restrictions as AppDelegate.mm. | ||
| // Cannot use @import Sentry here; must use #import. | ||
| // No Sentry-Swift.h - would cause forward declaration errors from .mm without modules. | ||
| // Objective-C++ file - uses SentryObjC for full SDK access without modules. | ||
|
|
||
| #import "ViewController.h" | ||
| #import <Sentry/Sentry.h> | ||
| #import <SentryObjC.h> | ||
| #import <UIKit/UIKit.h> | ||
|
|
||
| @implementation ViewController | ||
|
|
||
| - (void)viewDidLoad | ||
| { | ||
| [super viewDidLoad]; | ||
| // Fails: SentrySDK undeclared with #import alone | ||
| [SentrySDK addBreadcrumb:[[SentryBreadcrumb alloc] init]]; | ||
| [SentryObjCSDK addBreadcrumb:[[SentryBreadcrumb alloc] init]]; | ||
| } | ||
|
|
||
| - (IBAction)captureError:(id)sender | ||
| { | ||
| NSError *error = [NSError errorWithDomain:@"iOS-ObjectiveCpp-NoModules" code:1 userInfo:nil]; | ||
| [SentrySDK captureError:error]; | ||
| [SentryObjCSDK captureError:error]; | ||
| } | ||
|
|
||
| @end |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.