RUMM-655 Add lyft/Kronos
dependency for NTP time sync
#318
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.
What and why?
📦 We want to use NTP to compute the real time of writing events (logs, spans, rum). In this PR I'm adding the lyft/Kronos dependency which does the NTP sync. It is not yet used in SDK code, as I wanted to separate project configuration from the actual work in SDK. This PR is not targeting the
master
branch yet.How?
Cocoapods :
SPM:
Carthage required few changes to the project (and the update in
dependency-manager-tests/carthage/CTProject
). As it was quite strenuous, I'm leaving the note on what was changed (it's also written in commit messages):Things change fast in Carthage (their guides are outdated), but this is how it worked in Xcode 12.0 (12A7209), target by target:
Datadog
:Kronos.framework
to Datadog > Build Phases > Link Binary With Libraries.$(SRCROOT)/../Carthage/Build/iOS
Example
:Kronos.framework
to Example > Frameworks, Libraries and Embedded Content.$(SRCROOT)/../Carthage/Build/iOS
DatadogIntegrationTests
:Kronos.framework
intoFrameworks
folderDatadogTests
,DatadogBenchmarkTests
:Also, I had to exclude the
arm64
architecture for iOS Simulator builds (done through.xcconfig
) due to getting:Review checklist