-
Notifications
You must be signed in to change notification settings - Fork 135
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
RUMM-1744 Copy Kronos code to SDK #701
RUMM-1744 Copy Kronos code to SDK #701
Conversation
…heir access control
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.
All good 👍
@@ -14,8 +14,6 @@ | |||
61C36425243752A600C4D4E6 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 61C36423243752A600C4D4E6 /* LaunchScreen.storyboard */; }; | |||
61C36430243752A600C4D4E6 /* CTProjectTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61C3642F243752A600C4D4E6 /* CTProjectTests.swift */; }; | |||
61C3643B243752A600C4D4E6 /* CTProjectUITests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 61C3643A243752A600C4D4E6 /* CTProjectUITests.swift */; }; | |||
9E9D5E8825F90FC6002F12A0 /* Kronos.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = 9E9D5E8525F90FC6002F12A0 /* Kronos.xcframework */; }; |
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 is actually a breaking change for our carthage users.
ideally this would require a major version update.
we should at least communicate this in release notes.
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.
Indeed 👍, Carthage users will have to remove Kronos.xcframework
from their list of linked libraries, otherwise it will fail on first clean build. Although, I don't think it's a breaking change requiring major update (well, it's Carthage limitation), but it's definitely something we need to mention under "Migration Steps (Carthage)" in Release Notes for 1.9.0
👌.
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.
Added needs-migration-steps-explained
label.
What and why?
📦 This PR copies MobileNativeFoundation/Kronos@5259250 code directly to our SDK and removes the link to Kronos in all dependency managers.
There are few motivations to use our own version of Kronos:
carthage bootstrap
) and simpler linking for their app runtimes.On the other hand, we shouldn't lose much by dropping external dependency on Kronos. It is well sustained project, solving only one problem (NTP sync) and not requiring significant updates nor bugfixes (ref.: release history). We will track all updates to the original repo with applying critical patches. Also, if we manage to find & fix issues in original implementation, we should contribute to the upstream project.
How?
Datadog.podspec
,Cartfile
andPackage.swift
.Kronos*
.public
access control tointernal
for respective types.Next PR(s):
I found two problems, that will be addressed in separate PR(s), to keep this one small and clear:
1.8.x
.Review checklist