prevent deadlock on background thread access to Flagship singleton#62
prevent deadlock on background thread access to Flagship singleton#62ABTastyAdel merged 18 commits intomasterfrom
Conversation
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #62 +/- ##
==========================================
+ Coverage 78.31% 85.02% +6.70%
==========================================
Files 70 70
Lines 3966 3972 +6
==========================================
+ Hits 3106 3377 +271
+ Misses 860 595 -265
... and 23 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
There was a problem hiding this comment.
Pull request overview
This PR aims to prevent deadlocks when accessing the Flagship singleton from background threads by adjusting synchronization around shared SDK state, and bumps the SDK version to 4.0.3.
Changes:
- Introduces queue-protected access for
currentConfig/status update logic inFlagship. - Adds/adjusts unit tests to cover initialization from a background queue and tweaks a bucketing test callback.
- Bumps SDK version references (Swift constant, podspec, Xcode marketing version) and updates CI simulator destinations.
Reviewed changes
Copilot reviewed 7 out of 7 changed files in this pull request and generated 3 comments.
Show a summary per file
| File | Description |
|---|---|
| FlagShip/Source/Tools/FlagShipVersion.swift | Bumps FlagShipVersion constant to 4.0.3. |
| FlagShip/Source/Core/Flagship.swift | Adds queue-synchronized config/state handling and refactors start config argument. |
| FlagShip/Flagship.xcodeproj/project.pbxproj | Updates MARKETING_VERSION to 4.0.3. |
| FlagShip/FlagShipTests/FlagshipTests.swift | Reformats tests and adds a background-thread init test. |
| FlagShip/FlagShipTests/FlagshipBucketingTest.swift | Adds a conditional around assertions in a fetch callback. |
| FlagShip.podspec | Bumps CocoaPods version to 4.0.3. |
| .github/workflows/flagship_ci.yml | Updates simulator destinations used in CI. |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
You can also share your feedback on Copilot code review. Take the survey.
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
|



No description provided.