From dee7657b424629c6e2d84a71d15d598cf7e08479 Mon Sep 17 00:00:00 2001 From: louiszawadzki Date: Tue, 31 Oct 2023 17:13:14 +0100 Subject: [PATCH 1/4] Update Android SDK to 2.2.0 --- packages/core/android/build.gradle | 8 ++++---- .../test/kotlin/com/datadog/tools/unit/MockRumMonitor.kt | 8 ++++++++ .../forge/TelemetryConfigurationEventForgeryFactory.kt | 3 +++ packages/react-native-session-replay/android/build.gradle | 2 +- 4 files changed, 16 insertions(+), 5 deletions(-) diff --git a/packages/core/android/build.gradle b/packages/core/android/build.gradle index 1b0ec556c..9700b144f 100644 --- a/packages/core/android/build.gradle +++ b/packages/core/android/build.gradle @@ -169,10 +169,10 @@ dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" compileOnly "com.squareup.okhttp3:okhttp:3.12.13" - implementation "com.datadoghq:dd-sdk-android-rum:2.0.0" - implementation "com.datadoghq:dd-sdk-android-logs:2.0.0" - implementation "com.datadoghq:dd-sdk-android-trace:2.0.0" - implementation "com.datadoghq:dd-sdk-android-webview:2.0.0" + implementation "com.datadoghq:dd-sdk-android-rum:2.2.0" + implementation "com.datadoghq:dd-sdk-android-logs:2.2.0" + implementation "com.datadoghq:dd-sdk-android-trace:2.2.0" + implementation "com.datadoghq:dd-sdk-android-webview:2.2.0" testImplementation "org.junit.platform:junit-platform-launcher:1.6.2" testImplementation "org.junit.jupiter:junit-jupiter-api:5.6.2" testImplementation "org.junit.jupiter:junit-jupiter-engine:5.6.2" diff --git a/packages/core/android/src/test/kotlin/com/datadog/tools/unit/MockRumMonitor.kt b/packages/core/android/src/test/kotlin/com/datadog/tools/unit/MockRumMonitor.kt index d389be984..3e8dd03ff 100644 --- a/packages/core/android/src/test/kotlin/com/datadog/tools/unit/MockRumMonitor.kt +++ b/packages/core/android/src/test/kotlin/com/datadog/tools/unit/MockRumMonitor.kt @@ -4,6 +4,7 @@ import com.datadog.android.rum.RumActionType import com.datadog.android.rum.RumErrorSource import com.datadog.android.rum.RumMonitor import com.datadog.android.rum.RumResourceKind +import com.datadog.android.rum.RumResourceMethod import com.datadog.android.rum._RumInternalProxy class MockRumMonitor : RumMonitor { @@ -53,6 +54,13 @@ class MockRumMonitor : RumMonitor { attributes: Map ) {} + override fun startResource( + key: String, + method: RumResourceMethod, + url: String, + attributes: Map + ) {} + override fun startResource( key: String, method: String, diff --git a/packages/core/android/src/test/kotlin/com/datadog/tools/unit/forge/TelemetryConfigurationEventForgeryFactory.kt b/packages/core/android/src/test/kotlin/com/datadog/tools/unit/forge/TelemetryConfigurationEventForgeryFactory.kt index 98a550338..305f257b8 100644 --- a/packages/core/android/src/test/kotlin/com/datadog/tools/unit/forge/TelemetryConfigurationEventForgeryFactory.kt +++ b/packages/core/android/src/test/kotlin/com/datadog/tools/unit/forge/TelemetryConfigurationEventForgeryFactory.kt @@ -60,6 +60,8 @@ internal class TelemetryConfigurationEventForgeryFactory : forge.aNullable { aBool() }, forge.aNullable { aBool() }, forge.aNullable { aBool() }, + forge.aNullable { aBool() }, + forge.aNullable { aBool() }, forge.aNullable { aString() }, forge.aNullable { aBool() }, forge.aNullable { aBool() }, @@ -77,6 +79,7 @@ internal class TelemetryConfigurationEventForgeryFactory : forge.aNullable { aBool() }, forge.aNullable { aBool() }, + forge.aNullable { aBool() }, forge.aNullable { aBool() }, forge.aNullable { aList { aString() } }, forge.aNullable { aList { aString() } }, diff --git a/packages/react-native-session-replay/android/build.gradle b/packages/react-native-session-replay/android/build.gradle index 97ba8d23b..0073021bc 100644 --- a/packages/react-native-session-replay/android/build.gradle +++ b/packages/react-native-session-replay/android/build.gradle @@ -167,7 +167,7 @@ dependencies { api "com.facebook.react:react-android:$reactNativeVersion" } implementation "org.jetbrains.kotlin:kotlin-stdlib:$kotlin_version" - implementation "com.datadoghq:dd-sdk-android-session-replay:2.0.0" + implementation "com.datadoghq:dd-sdk-android-session-replay:2.2.0" testImplementation "org.junit.platform:junit-platform-launcher:1.6.2" testImplementation "org.junit.jupiter:junit-jupiter-api:5.6.2" From 12f5cbd807fb845ca82401a55818e68dae26b769 Mon Sep 17 00:00:00 2001 From: louiszawadzki Date: Tue, 31 Oct 2023 17:33:32 +0100 Subject: [PATCH 2/4] Use new startResource API --- .../reactnative/DdRumImplementation.kt | 23 ++++++++++++++++++- .../com/datadog/reactnative/DdRumTest.kt | 5 ++-- 2 files changed, 25 insertions(+), 3 deletions(-) diff --git a/packages/core/android/src/main/kotlin/com/datadog/reactnative/DdRumImplementation.kt b/packages/core/android/src/main/kotlin/com/datadog/reactnative/DdRumImplementation.kt index 3764248d0..a66dd3db1 100644 --- a/packages/core/android/src/main/kotlin/com/datadog/reactnative/DdRumImplementation.kt +++ b/packages/core/android/src/main/kotlin/com/datadog/reactnative/DdRumImplementation.kt @@ -6,10 +6,12 @@ package com.datadog.reactnative +import android.util.Log import com.datadog.android.rum.RumActionType import com.datadog.android.rum.RumAttributes import com.datadog.android.rum.RumErrorSource import com.datadog.android.rum.RumResourceKind +import com.datadog.android.rum.RumResourceMethod import com.facebook.react.bridge.Promise import com.facebook.react.bridge.ReadableMap import java.util.Locale @@ -158,7 +160,7 @@ class DdRumImplementation(private val datadog: DatadogWrapper = DatadogSDKWrappe } datadog.getRumMonitor().startResource( key = key, - method = method, + method = method.asRumResourceMethod(), url = url, attributes = attributes ) @@ -304,6 +306,25 @@ class DdRumImplementation(private val datadog: DatadogWrapper = DatadogSDKWrappe } } + private fun String.asRumResourceMethod(): RumResourceMethod { + return when(lowercase(Locale.US)) { + "get" -> RumResourceMethod.GET + "delete" -> RumResourceMethod.DELETE + "head" -> RumResourceMethod.HEAD + "patch" -> RumResourceMethod.PATCH + "put" -> RumResourceMethod.PUT + "post" -> RumResourceMethod.POST + else -> { + Log.w( + DdRum::class.java.canonicalName, + "Unknown RUM resource method given: $this, " + + "using ${RumResourceMethod.GET} as default" + ) + RumResourceMethod.GET + } + } + } + // endregion companion object { diff --git a/packages/core/android/src/test/kotlin/com/datadog/reactnative/DdRumTest.kt b/packages/core/android/src/test/kotlin/com/datadog/reactnative/DdRumTest.kt index b9c3797d2..99ff77a63 100644 --- a/packages/core/android/src/test/kotlin/com/datadog/reactnative/DdRumTest.kt +++ b/packages/core/android/src/test/kotlin/com/datadog/reactnative/DdRumTest.kt @@ -11,6 +11,7 @@ import com.datadog.android.rum.RumAttributes import com.datadog.android.rum.RumErrorSource import com.datadog.android.rum.RumMonitor import com.datadog.android.rum.RumResourceKind +import com.datadog.android.rum.RumResourceMethod import com.datadog.tools.unit.forge.BaseConfigurator import com.datadog.tools.unit.toReadableMap import com.facebook.react.bridge.Promise @@ -242,7 +243,7 @@ internal class DdRumTest { @Test fun `M call startResource W startResource()`( @StringForgery key: String, - @StringForgery(regex = "GET|POST|DELETE") method: String, + @Forgery method: RumResourceMethod, @StringForgery(regex = "http(s?)://[a-z]+\\.com/\\w+") url: String ) { // Given @@ -253,7 +254,7 @@ internal class DdRumTest { // When testedDdRum.startResource( key, - method, + method.toString(), url, fakeContext.toReadableMap(), fakeTimestamp, From 056004f2c55dd9e45894383a826112875153d81b Mon Sep 17 00:00:00 2001 From: louiszawadzki Date: Tue, 31 Oct 2023 17:39:25 +0100 Subject: [PATCH 3/4] Fix SR Linter --- .../sessionreplay/DdSessionReplayImplementationTest.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/react-native-session-replay/android/src/test/kotlin/com/datadog/reactnative/sessionreplay/DdSessionReplayImplementationTest.kt b/packages/react-native-session-replay/android/src/test/kotlin/com/datadog/reactnative/sessionreplay/DdSessionReplayImplementationTest.kt index 67773f936..9bad9504c 100644 --- a/packages/react-native-session-replay/android/src/test/kotlin/com/datadog/reactnative/sessionreplay/DdSessionReplayImplementationTest.kt +++ b/packages/react-native-session-replay/android/src/test/kotlin/com/datadog/reactnative/sessionreplay/DdSessionReplayImplementationTest.kt @@ -72,7 +72,7 @@ internal class DdSessionReplayImplementationTest { fun `M enable session replay with mask W enable with bad privacy option()`( @DoubleForgery(min = 0.0, max = 100.0) replaySampleRate: Double, // Not ALLOW nor MASK_USER_INPUT - @StringForgery(regex = "^/(?!ALLOW|MASK_USER_INPUT)([a-z0-9]+)$/i") privacy: String, + @StringForgery(regex = "^/(?!ALLOW|MASK_USER_INPUT)([a-z0-9]+)$/i") privacy: String ) { // Given val sessionReplayConfigCaptor = argumentCaptor() From 1ca3b3c309932fd41e1882231b8e12dd9d0a6138 Mon Sep 17 00:00:00 2001 From: louiszawadzki Date: Tue, 31 Oct 2023 18:15:08 +0100 Subject: [PATCH 4/4] Update iOS SDK to 2.4.0 --- example-new-architecture/ios/Podfile.lock | 54 ++++++------- example/ios/Podfile.lock | 78 +++++++++---------- packages/core/DatadogSDKReactNative.podspec | 14 ++-- packages/core/ios/Tests/DdSdkTests.swift | 2 + packages/core/ios/Tests/RUMMocks.swift | 4 + ...DatadogSDKReactNativeSessionReplay.podspec | 4 +- 6 files changed, 83 insertions(+), 73 deletions(-) diff --git a/example-new-architecture/ios/Podfile.lock b/example-new-architecture/ios/Podfile.lock index 8d125979a..d66d9ce72 100644 --- a/example-new-architecture/ios/Podfile.lock +++ b/example-new-architecture/ios/Podfile.lock @@ -1,23 +1,23 @@ PODS: - boost (1.76.0) - CocoaAsyncSocket (7.6.5) - - DatadogCore (2.2.1): - - DatadogInternal (= 2.2.1) - - DatadogCrashReporting (2.2.1): - - DatadogInternal (= 2.2.1) + - DatadogCore (2.4.0): + - DatadogInternal (= 2.4.0) + - DatadogCrashReporting (2.4.0): + - DatadogInternal (= 2.4.0) - PLCrashReporter (~> 1.11.1) - - DatadogInternal (2.2.1) - - DatadogLogs (2.2.1): - - DatadogInternal (= 2.2.1) - - DatadogRUM (2.2.1): - - DatadogInternal (= 2.2.1) + - DatadogInternal (2.4.0) + - DatadogLogs (2.4.0): + - DatadogInternal (= 2.4.0) + - DatadogRUM (2.4.0): + - DatadogInternal (= 2.4.0) - DatadogSDKReactNative (1.8.5): - - DatadogCore (~> 2.2.1) - - DatadogCrashReporting (~> 2.2.1) - - DatadogLogs (~> 2.2.1) - - DatadogRUM (~> 2.2.1) - - DatadogTrace (~> 2.2.1) - - DatadogWebViewTracking (~> 2.2.1) + - DatadogCore (~> 2.4.0) + - DatadogCrashReporting (~> 2.4.0) + - DatadogLogs (~> 2.4.0) + - DatadogRUM (~> 2.4.0) + - DatadogTrace (~> 2.4.0) + - DatadogWebViewTracking (~> 2.4.0) - RCT-Folly (= 2021.07.22.00) - RCTRequired - RCTTypeSafety @@ -26,10 +26,10 @@ PODS: - React-RCTFabric - ReactCommon/turbomodule/bridging - ReactCommon/turbomodule/core - - DatadogTrace (2.2.1): - - DatadogInternal (= 2.2.1) - - DatadogWebViewTracking (2.2.1): - - DatadogInternal (= 2.2.1) + - DatadogTrace (2.4.0): + - DatadogInternal (= 2.4.0) + - DatadogWebViewTracking (2.4.0): + - DatadogInternal (= 2.4.0) - DoubleConversion (1.1.6) - FBLazyVector (0.71.10) - FBReactNativeSpec (0.71.10): @@ -959,14 +959,14 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: boost: 57d2868c099736d80fcd648bf211b4431e51a558 CocoaAsyncSocket: 065fd1e645c7abab64f7a6a2007a48038fdc6a99 - DatadogCore: 12218dd1bed5db394c5e26ec59dd793413ae55b9 - DatadogCrashReporting: d094c1eb1ecce59dbb6b1062b2e524dfa6579fc9 - DatadogInternal: bfa2b823bd47511425d696d36a1bc77c4d06b2f4 - DatadogLogs: a0eafa7bd2103511eac07bcd2ff95c851123e29b - DatadogRUM: 1e027ccfe4ba1eb81a185f3c58e0909bb12811be - DatadogSDKReactNative: 1c9c8a495f19bc77059c4d131d5b3be91b34bb7e - DatadogTrace: 74dc91a7a80e746dc4ef1af6d0db1735b5bfd993 - DatadogWebViewTracking: 9ca93299a2c900c68ba080f6e800fae1fa3c6b61 + DatadogCore: 67ce2f8cd2f58cc90bdee5486d847b49e4b31b0b + DatadogCrashReporting: 0d4bd014714946be77a1ed2d34897036892f2b7b + DatadogInternal: 5789bca7a0284b20655ba2a79738ac7d0cd56e70 + DatadogLogs: 3b8c8778c32b780f916c2894b9d2c53bbf590803 + DatadogRUM: 4207d091be536b888719969a7ca078e2c830819a + DatadogSDKReactNative: 075230b50bd8c75ea3101ae6ee28cede9624e7a7 + DatadogTrace: ec75b1da1dcf9f5b574481a3773b296e0e1fda38 + DatadogWebViewTracking: e7a5841f001f488fc0240d7cba1a984ab6c86e9a DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54 FBLazyVector: ddb55c55295ea51ed98aa7e2e08add2f826309d5 FBReactNativeSpec: 33a87f65f1a467d5f63d11d0cc106a10d3b0639d diff --git a/example/ios/Podfile.lock b/example/ios/Podfile.lock index a3b1533c2..d54145bfd 100644 --- a/example/ios/Podfile.lock +++ b/example/ios/Podfile.lock @@ -1,43 +1,43 @@ PODS: - boost (1.76.0) - - DatadogCore (2.2.1): - - DatadogInternal (= 2.2.1) - - DatadogCrashReporting (2.2.1): - - DatadogInternal (= 2.2.1) + - DatadogCore (2.4.0): + - DatadogInternal (= 2.4.0) + - DatadogCrashReporting (2.4.0): + - DatadogInternal (= 2.4.0) - PLCrashReporter (~> 1.11.1) - - DatadogInternal (2.2.1) - - DatadogLogs (2.2.1): - - DatadogInternal (= 2.2.1) - - DatadogRUM (2.2.1): - - DatadogInternal (= 2.2.1) + - DatadogInternal (2.4.0) + - DatadogLogs (2.4.0): + - DatadogInternal (= 2.4.0) + - DatadogRUM (2.4.0): + - DatadogInternal (= 2.4.0) - DatadogSDKReactNative (1.8.5): - - DatadogCore (~> 2.2.1) - - DatadogCrashReporting (~> 2.2.1) - - DatadogLogs (~> 2.2.1) - - DatadogRUM (~> 2.2.1) - - DatadogTrace (~> 2.2.1) - - DatadogWebViewTracking (~> 2.2.1) + - DatadogCore (~> 2.4.0) + - DatadogCrashReporting (~> 2.4.0) + - DatadogLogs (~> 2.4.0) + - DatadogRUM (~> 2.4.0) + - DatadogTrace (~> 2.4.0) + - DatadogWebViewTracking (~> 2.4.0) - React-Core - DatadogSDKReactNative/Tests (1.8.5): - - DatadogCore (~> 2.2.1) - - DatadogCrashReporting (~> 2.2.1) - - DatadogLogs (~> 2.2.1) - - DatadogRUM (~> 2.2.1) - - DatadogTrace (~> 2.2.1) - - DatadogWebViewTracking (~> 2.2.1) + - DatadogCore (~> 2.4.0) + - DatadogCrashReporting (~> 2.4.0) + - DatadogLogs (~> 2.4.0) + - DatadogRUM (~> 2.4.0) + - DatadogTrace (~> 2.4.0) + - DatadogWebViewTracking (~> 2.4.0) - React-Core - DatadogSDKReactNativeSessionReplay (1.8.5): - - DatadogSessionReplay (~> 2.2.1) + - DatadogSessionReplay (~> 2.4.0) - React-Core - DatadogSDKReactNativeSessionReplay/Tests (1.8.5): - - DatadogSessionReplay (~> 2.2.1) + - DatadogSessionReplay (~> 2.4.0) - React-Core - - DatadogSessionReplay (2.2.1): - - DatadogInternal (= 2.2.1) - - DatadogTrace (2.2.1): - - DatadogInternal (= 2.2.1) - - DatadogWebViewTracking (2.2.1): - - DatadogInternal (= 2.2.1) + - DatadogSessionReplay (2.4.0): + - DatadogInternal (= 2.4.0) + - DatadogTrace (2.4.0): + - DatadogInternal (= 2.4.0) + - DatadogWebViewTracking (2.4.0): + - DatadogInternal (= 2.4.0) - DoubleConversion (1.1.6) - FBLazyVector (0.71.10) - FBReactNativeSpec (0.71.10): @@ -569,16 +569,16 @@ EXTERNAL SOURCES: SPEC CHECKSUMS: boost: 57d2868c099736d80fcd648bf211b4431e51a558 - DatadogCore: 12218dd1bed5db394c5e26ec59dd793413ae55b9 - DatadogCrashReporting: d094c1eb1ecce59dbb6b1062b2e524dfa6579fc9 - DatadogInternal: bfa2b823bd47511425d696d36a1bc77c4d06b2f4 - DatadogLogs: a0eafa7bd2103511eac07bcd2ff95c851123e29b - DatadogRUM: 1e027ccfe4ba1eb81a185f3c58e0909bb12811be - DatadogSDKReactNative: 6f16f15e8b3d5a60c5799d604843a0feb2010c9b - DatadogSDKReactNativeSessionReplay: ec9e93b87abbb2f4935bd02e651b28a9503b48de - DatadogSessionReplay: 4b29318297ad20189a69153b4b0475f0fab7d3f5 - DatadogTrace: 74dc91a7a80e746dc4ef1af6d0db1735b5bfd993 - DatadogWebViewTracking: 9ca93299a2c900c68ba080f6e800fae1fa3c6b61 + DatadogCore: 67ce2f8cd2f58cc90bdee5486d847b49e4b31b0b + DatadogCrashReporting: 0d4bd014714946be77a1ed2d34897036892f2b7b + DatadogInternal: 5789bca7a0284b20655ba2a79738ac7d0cd56e70 + DatadogLogs: 3b8c8778c32b780f916c2894b9d2c53bbf590803 + DatadogRUM: 4207d091be536b888719969a7ca078e2c830819a + DatadogSDKReactNative: 30c85f8248e1c6c4f48bd4f953c03e4faa908d10 + DatadogSDKReactNativeSessionReplay: adbd462a4294466865cf4a8b19ded8f51f08c7dd + DatadogSessionReplay: 8d17ac983669b62e3dd9159cf4a04e98fcf9abeb + DatadogTrace: ec75b1da1dcf9f5b574481a3773b296e0e1fda38 + DatadogWebViewTracking: e7a5841f001f488fc0240d7cba1a984ab6c86e9a DoubleConversion: 5189b271737e1565bdce30deb4a08d647e3f5f54 FBLazyVector: ddb55c55295ea51ed98aa7e2e08add2f826309d5 FBReactNativeSpec: 90fc1a90b4b7a171e0a7c20ea426c1bf6ce4399c diff --git a/packages/core/DatadogSDKReactNative.podspec b/packages/core/DatadogSDKReactNative.podspec index 25a954606..840b9946e 100644 --- a/packages/core/DatadogSDKReactNative.podspec +++ b/packages/core/DatadogSDKReactNative.podspec @@ -17,12 +17,14 @@ Pod::Spec.new do |s| s.source_files = "ios/Sources/*.{h,m,mm,swift}" s.dependency "React-Core" - s.dependency 'DatadogCore', '~> 2.2.1' - s.dependency 'DatadogLogs', '~> 2.2.1' - s.dependency 'DatadogTrace', '~> 2.2.1' - s.dependency 'DatadogRUM', '~> 2.2.1' - s.dependency 'DatadogCrashReporting', '~> 2.2.1' - s.dependency 'DatadogWebViewTracking', '~> 2.2.1' + + # /!\ Remember to keep the versions in sync with DatadogSDKReactNativeSessionReplay.podspec + s.dependency 'DatadogCore', '~> 2.4.0' + s.dependency 'DatadogLogs', '~> 2.4.0' + s.dependency 'DatadogTrace', '~> 2.4.0' + s.dependency 'DatadogRUM', '~> 2.4.0' + s.dependency 'DatadogCrashReporting', '~> 2.4.0' + s.dependency 'DatadogWebViewTracking', '~> 2.4.0' s.test_spec 'Tests' do |test_spec| test_spec.source_files = 'ios/Tests/*.swift' diff --git a/packages/core/ios/Tests/DdSdkTests.swift b/packages/core/ios/Tests/DdSdkTests.swift index 557f0c18d..5ab6aeb3d 100644 --- a/packages/core/ios/Tests/DdSdkTests.swift +++ b/packages/core/ios/Tests/DdSdkTests.swift @@ -1008,6 +1008,8 @@ extension DdSdkImplementation { } internal class MockDatadogCore: DatadogCoreProtocol { + func set(baggage: @escaping () -> DatadogInternal.FeatureBaggage?, forKey key: String) {} + func send(message: FeatureMessage, else fallback: @escaping () -> Void) { if // Configuration Telemetry Message case .telemetry(let telemetry) = message, diff --git a/packages/core/ios/Tests/RUMMocks.swift b/packages/core/ios/Tests/RUMMocks.swift index 7c95b4834..b43dbe3f3 100644 --- a/packages/core/ios/Tests/RUMMocks.swift +++ b/packages/core/ios/Tests/RUMMocks.swift @@ -266,6 +266,7 @@ extension RUMResourceEvent: RandomMockable { ), action: .init(id: .mockRandom()), application: .init(id: .mockRandom()), + buildVersion: nil, ciTest: nil, connectivity: .mockRandom(), context: .init(contextInfo: ["_dd.resource.drop_resource": true] ), @@ -324,6 +325,7 @@ extension RUMResourceEvent: RandomMockable { ), action: .init(id: .mockRandom()), application: .init(id: .mockRandom()), + buildVersion: nil, ciTest: nil, connectivity: .mockRandom(), context: .mockRandom(), @@ -398,6 +400,7 @@ extension RUMActionEvent: RandomMockable { type: [.tap, .swipe, .scroll].randomElement()! ), application: .init(id: .mockRandom()), + buildVersion: nil, ciTest: nil, connectivity: .mockRandom(), context: .init(contextInfo: ["_dd.resource.drop_resource": true] ), @@ -451,6 +454,7 @@ extension RUMActionEvent: RandomMockable { type: [.tap, .swipe, .scroll].randomElement()! ), application: .init(id: .mockRandom()), + buildVersion: nil, ciTest: nil, connectivity: .mockRandom(), context: .mockRandom(), diff --git a/packages/react-native-session-replay/DatadogSDKReactNativeSessionReplay.podspec b/packages/react-native-session-replay/DatadogSDKReactNativeSessionReplay.podspec index 9f734ff70..7312d109e 100644 --- a/packages/react-native-session-replay/DatadogSDKReactNativeSessionReplay.podspec +++ b/packages/react-native-session-replay/DatadogSDKReactNativeSessionReplay.podspec @@ -17,7 +17,9 @@ Pod::Spec.new do |s| s.source_files = "ios/Sources/*.{h,m,mm,swift}" s.dependency "React-Core" - s.dependency 'DatadogSessionReplay', '~> 2.2.1' + + # /!\ Remember to keep the version in sync with DatadogSDKReactNative.podspec + s.dependency 'DatadogSessionReplay', '~> 2.4.0' s.test_spec 'Tests' do |test_spec| test_spec.source_files = 'ios/Tests/*.swift'