Skip to content

Commit 868b600

Browse files
Merge pull request #2263 from DataDog/release/2.26.0
Release `2.26.0` Co-authored-by: maxep <maxime.epain@datadoghq.com> Co-authored-by: dd-mergequeue[bot] <121105855+dd-mergequeue[bot]@users.noreply.github.com>
2 parents a2f3121 + 12a5121 commit 868b600

15 files changed

+28
-12
lines changed

CHANGELOG.md

+9
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,16 @@
1+
# Unreleased
2+
3+
# 2.26.0 / 10-04-2025
4+
5+
- [FIX] Fix Fatal App Hang Duplicates. See [#2260][]
6+
17
# 2.25.0 / 03-04-2025
28

39
- [FEATURE] Calculate Hang rate and Hitch rate in RUM. See [#2234][]
410
- [FIX] Fixed Swift 6.0.2 compatibility issue with `DatadogCrashReporting` framework. See [#2251][]
511
- [IMPROVEMENT] Refine errors printed from `clearAllData()`. See [#2240][]
612
- [IMPROVEMENT] Simplify host sanitizer logic. See [#2223][]
13+
- [FIX] Fix view drop in SwiftUI modal navigation. See [#2236][]
714

815
# 2.24.1 / 31-03-2025
916

@@ -856,6 +863,8 @@ Release `2.0` introduces breaking changes. Follow the [Migration Guide](MIGRATIO
856863
[#2240]: https://github.com/DataDog/dd-sdk-ios/pull/2240
857864
[#2223]: https://github.com/DataDog/dd-sdk-ios/pull/2223
858865
[#2234]: https://github.com/DataDog/dd-sdk-ios/pull/2234
866+
[#2236]: https://github.com/DataDog/dd-sdk-ios/pull/2236
867+
[#2260]: https://github.com/DataDog/dd-sdk-ios/pull/2260
859868
[@00fa9a]: https://github.com/00FA9A
860869
[@britton-earnin]: https://github.com/Britton-Earnin
861870
[@hengyu]: https://github.com/Hengyu

DatadogAlamofireExtension.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogAlamofireExtension"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "An Official Extensions of Datadog Swift SDK for Alamofire."
55
s.description = <<-DESC
66
The DatadogAlamofireExtension pod is deprecated and will no longer be maintained.

DatadogCore.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogCore"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Official Datadog Swift SDK for iOS."
55

66
s.homepage = "https://www.datadoghq.com"

DatadogCore/Sources/Versioning.swift

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
11
// GENERATED FILE: Do not edit directly
22

3-
internal let __sdkVersion = "2.25.0"
3+
internal let __sdkVersion = "2.26.0"

DatadogCrashReporting.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogCrashReporting"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Official Datadog Crash Reporting SDK for iOS."
55

66
s.homepage = "https://www.datadoghq.com"

DatadogInternal.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogInternal"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Datadog Internal Package. This module is not for public use."
55

66
s.homepage = "https://www.datadoghq.com"

DatadogLogs.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogLogs"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Datadog Logs Module."
55

66
s.homepage = "https://www.datadoghq.com"

DatadogObjc.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogObjc"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Official Datadog Objective-C SDK for iOS."
55

66
s.homepage = "https://www.datadoghq.com"

DatadogRUM.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogRUM"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Datadog Real User Monitoring Module."
55

66
s.homepage = "https://www.datadoghq.com"

DatadogRUM/Sources/Instrumentation/AppHangs/FatalAppHangsHandler.swift

+4
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ internal final class FatalAppHangsHandler {
6161
}
6262

6363
func reportFatalAppHangIfFound() {
64+
// Report pending app hang
6465
featureScope.rumDataStore.value(forKey: .fatalAppHangKey) { [weak self] (fatalHang: FatalAppHang?) in
6566
guard let fatalHang = fatalHang else {
6667
DD.logger.debug("No pending App Hang found")
@@ -71,6 +72,9 @@ internal final class FatalAppHangsHandler {
7172
}
7273
self?.send(fatalHang: fatalHang)
7374
}
75+
76+
// Remove pending app hang
77+
featureScope.rumDataStore.removeValue(forKey: .fatalAppHangKey)
7478
}
7579

7680
private func send(fatalHang: FatalAppHang) {

DatadogRUM/Tests/Instrumentation/AppHangs/AppHangsMonitorTests.swift

+3
Original file line numberDiff line numberDiff line change
@@ -196,6 +196,7 @@ class AppHangsMonitorTests: XCTestCase {
196196
XCTAssertEqual(featureScope.eventsWritten.count, 2, "It must send both RUM error and RUM view")
197197
XCTAssertEqual(featureScope.eventsWritten(ofType: RUMErrorEvent.self).count, 1)
198198
XCTAssertEqual(featureScope.eventsWritten(ofType: RUMViewEvent.self).count, 1)
199+
XCTAssertNil(featureScope.dataStoreMock.value(forKey: RUMDataStore.Key.fatalAppHangKey.rawValue))
199200
}
200201

201202
func testGivenPendingHangStartedMoreThan4HoursAgo_whenStartedInAnotherProcess_itSendsOnlyRUMError() throws {
@@ -235,6 +236,7 @@ class AppHangsMonitorTests: XCTestCase {
235236

236237
XCTAssertEqual(featureScope.eventsWritten.count, 1, "It must send only RUM error")
237238
XCTAssertEqual(featureScope.eventsWritten(ofType: RUMErrorEvent.self).count, 1)
239+
XCTAssertNil(featureScope.dataStoreMock.value(forKey: RUMDataStore.Key.fatalAppHangKey.rawValue))
238240
}
239241

240242
func testGivenPendingHangStartedWithPendingOrNotGrantedConsent_whenStartedInAnotherProcess_itSendsNoEvent() throws {
@@ -272,6 +274,7 @@ class AppHangsMonitorTests: XCTestCase {
272274
)
273275

274276
XCTAssertEqual(featureScope.eventsWritten.count, 0, "It must send no event")
277+
XCTAssertNil(featureScope.dataStoreMock.value(forKey: RUMDataStore.Key.fatalAppHangKey.rawValue))
275278
}
276279

277280
// MARK: - Fatal App Hangs - Testing Uploaded Data

DatadogSessionReplay.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogSessionReplay"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Official Datadog Session Replay SDK for iOS."
55

66
s.homepage = "https://www.datadoghq.com"

DatadogTrace.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogTrace"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Datadog Trace Module."
55

66
s.homepage = "https://www.datadoghq.com"

DatadogWebViewTracking.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "DatadogWebViewTracking"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Datadog WebView Tracking Module."
55

66
s.homepage = "https://www.datadoghq.com"

TestUtilities.podspec

+1-1
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
Pod::Spec.new do |s|
22
s.name = "TestUtilities"
3-
s.version = "2.25.0"
3+
s.version = "2.26.0"
44
s.summary = "Datadog Testing Utilities. This module is for internal testing and should not be published."
55

66
s.homepage = "https://www.datadoghq.com"

0 commit comments

Comments
 (0)