From 55680ee1378cb5ee573316a83f88b00831ebd34a Mon Sep 17 00:00:00 2001 From: Ydna <0xEFEFEF@gmail.com> Date: Wed, 16 Oct 2024 00:34:33 +0800 Subject: [PATCH 1/5] fix: correct `LocalizedError` conformance --- FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift index 7269c4dd803..b95452232d2 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift @@ -25,7 +25,7 @@ struct RingBuffer: Sequence { enum Error: LocalizedError { case outOfBoundsPush(pushIndex: Array.Index, endIndex: Array.Index) - var errorDescription: String { + var errorDescription: String? { switch self { case let .outOfBoundsPush(pushIndex, endIndex): return "Out-of-bounds push at index \(pushIndex) to ring buffer with" + From 47cb1820d2ad47456b715a2566a45f76ae3881f3 Mon Sep 17 00:00:00 2001 From: Ydna <0xEFEFEF@gmail.com> Date: Wed, 16 Oct 2024 12:19:15 +0800 Subject: [PATCH 2/5] refactor: keep original code --- .../Internal/Sources/HeartbeatLogging/RingBuffer.swift | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift index b95452232d2..61f8565cf20 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift @@ -26,6 +26,10 @@ struct RingBuffer: Sequence { case outOfBoundsPush(pushIndex: Array.Index, endIndex: Array.Index) var errorDescription: String? { + return (errorDescription as String) + } + + var errorDescription: String { switch self { case let .outOfBoundsPush(pushIndex, endIndex): return "Out-of-bounds push at index \(pushIndex) to ring buffer with" + From 549569b15ccaba30a82a86b12829641f48de1a8d Mon Sep 17 00:00:00 2001 From: Ydna <0xEFEFEF@gmail.com> Date: Wed, 16 Oct 2024 12:33:40 +0800 Subject: [PATCH 3/5] refactor: add `SolidLocalizedError` for keep code unchanged --- .../Sources/HeartbeatLogging/RingBuffer.swift | 19 ++++++++++++++----- 1 file changed, 14 insertions(+), 5 deletions(-) diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift index 61f8565cf20..c0142321288 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift @@ -22,13 +22,9 @@ struct RingBuffer: Sequence { private var tailIndex: Array.Index /// Error types for `RingBuffer` operations. - enum Error: LocalizedError { + enum Error: SolidLocalizedError { case outOfBoundsPush(pushIndex: Array.Index, endIndex: Array.Index) - var errorDescription: String? { - return (errorDescription as String) - } - var errorDescription: String { switch self { case let .outOfBoundsPush(pushIndex, endIndex): @@ -113,3 +109,16 @@ struct RingBuffer: Sequence { // MARK: - Codable extension RingBuffer: Codable where Element: Codable {} + + +// MARK: - SolidLocalizedError + +protocol SolidLocalizedError: LocalizedError { + var errorDescription: String { get } +} + +extension SolidLocalizedError { + var errorDescription: String? { + (errorDescription as String) + } +} From 8a341424c297c59c7ca63998a0e76723bd9ff04c Mon Sep 17 00:00:00 2001 From: Ydna <0xEFEFEF@gmail.com> Date: Wed, 16 Oct 2024 22:50:05 +0800 Subject: [PATCH 4/5] chore: style code --- .../Internal/Sources/HeartbeatLogging/RingBuffer.swift | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift index c0142321288..ae5bbae3c8a 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift @@ -110,7 +110,6 @@ struct RingBuffer: Sequence { extension RingBuffer: Codable where Element: Codable {} - // MARK: - SolidLocalizedError protocol SolidLocalizedError: LocalizedError { @@ -119,6 +118,6 @@ protocol SolidLocalizedError: LocalizedError { extension SolidLocalizedError { var errorDescription: String? { - (errorDescription as String) + errorDescription as String } } From 437b7b894b50f1369718f8755b79592130cc2475 Mon Sep 17 00:00:00 2001 From: Ydna <0xEFEFEF@gmail.com> Date: Thu, 17 Oct 2024 20:18:35 +0800 Subject: [PATCH 5/5] refactor: removed localizederror conformance --- .../Sources/HeartbeatLogging/RingBuffer.swift | 14 +------------- 1 file changed, 1 insertion(+), 13 deletions(-) diff --git a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift index ae5bbae3c8a..74d08d7f8dc 100644 --- a/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift +++ b/FirebaseCore/Internal/Sources/HeartbeatLogging/RingBuffer.swift @@ -22,7 +22,7 @@ struct RingBuffer: Sequence { private var tailIndex: Array.Index /// Error types for `RingBuffer` operations. - enum Error: SolidLocalizedError { + enum Error: Swift.Error { case outOfBoundsPush(pushIndex: Array.Index, endIndex: Array.Index) var errorDescription: String { @@ -109,15 +109,3 @@ struct RingBuffer: Sequence { // MARK: - Codable extension RingBuffer: Codable where Element: Codable {} - -// MARK: - SolidLocalizedError - -protocol SolidLocalizedError: LocalizedError { - var errorDescription: String { get } -} - -extension SolidLocalizedError { - var errorDescription: String? { - errorDescription as String - } -}