From 5cf3a4477ef163e62b1bf47f4578834d554dfc57 Mon Sep 17 00:00:00 2001 From: Stefan Ceriu Date: Tue, 11 Jun 2024 16:38:33 +0300 Subject: [PATCH] Fix various swiftlint and swiftformat warnings --- .swiftformat | 1 + ElementX/Sources/Other/Extensions/Dictionary.swift | 2 +- .../Screens/RoomScreen/RoomScreenInteractionHandler.swift | 1 + ElementX/Sources/Services/BugReport/BugReportService.swift | 4 ++-- ElementX/Sources/Services/Timeline/TimelineItemProxy.swift | 2 +- ElementX/Sources/UITests/UITestsSignalling.swift | 7 +++---- 6 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.swiftformat b/.swiftformat index 4251bb1fe..a54a94aa4 100644 --- a/.swiftformat +++ b/.swiftformat @@ -5,6 +5,7 @@ --disable wrapMultiLineStatementBraces --disable hoistPatternLet --disable preferForLoop +--disable consistentSwitchCaseSpacing --commas inline --ifdef no-indent diff --git a/ElementX/Sources/Other/Extensions/Dictionary.swift b/ElementX/Sources/Other/Extensions/Dictionary.swift index 4793c6463..b26a585c5 100644 --- a/ElementX/Sources/Other/Extensions/Dictionary.swift +++ b/ElementX/Sources/Other/Extensions/Dictionary.swift @@ -22,7 +22,7 @@ extension Dictionary { options: [.fragmentsAllowed, .sortedKeys]) else { return nil } - return String(data: data, encoding: .utf8) + return String(decoding: data, as: UTF8.self) } /// Returns a dictionary containing the original values keyed by the results of mapping the given closure over its keys. diff --git a/ElementX/Sources/Screens/RoomScreen/RoomScreenInteractionHandler.swift b/ElementX/Sources/Screens/RoomScreen/RoomScreenInteractionHandler.swift index 7adf4ea13..ee21a91e6 100644 --- a/ElementX/Sources/Screens/RoomScreen/RoomScreenInteractionHandler.swift +++ b/ElementX/Sources/Screens/RoomScreen/RoomScreenInteractionHandler.swift @@ -474,6 +474,7 @@ class RoomScreenInteractionHandler { // MARK: Audio Playback + // swiftlint:disable:next cyclomatic_complexity func playPauseAudio(for itemID: TimelineItemIdentifier) async { MXLog.info("Toggle play/pause audio for itemID \(itemID)") guard let timelineItem = timelineController.timelineItems.firstUsingStableID(itemID) else { diff --git a/ElementX/Sources/Services/BugReport/BugReportService.swift b/ElementX/Sources/Services/BugReport/BugReportService.swift index 09cae3a9b..252b08458 100644 --- a/ElementX/Sources/Services/BugReport/BugReportService.swift +++ b/ElementX/Sources/Services/BugReport/BugReportService.swift @@ -175,14 +175,14 @@ class BugReportService: NSObject, BugReportServiceProtocol { let (data, response) = try await session.dataWithRetry(for: request, delegate: self) guard let httpResponse = response as? HTTPURLResponse else { - let errorDescription = String(data: data, encoding: .utf8)?.trimmingCharacters(in: .whitespacesAndNewlines) ?? "Unknown" + let errorDescription = String(decoding: data, as: UTF8.self).trimmingCharacters(in: .whitespacesAndNewlines) MXLog.error("Failed to submit bug report: \(errorDescription)") MXLog.error("Response: \(response)") return .failure(.serverError(response, errorDescription)) } guard httpResponse.statusCode == 200 else { - let errorDescription = String(data: data, encoding: .utf8)?.trimmingCharacters(in: .whitespacesAndNewlines) ?? "Unknown" + let errorDescription = String(decoding: data, as: UTF8.self).trimmingCharacters(in: .whitespacesAndNewlines) MXLog.error("Failed to submit bug report: \(errorDescription) (\(httpResponse.statusCode))") MXLog.error("Response: \(httpResponse)") return .failure(.httpError(httpResponse, errorDescription)) diff --git a/ElementX/Sources/Services/Timeline/TimelineItemProxy.swift b/ElementX/Sources/Services/Timeline/TimelineItemProxy.swift index 772dcf78b..9f04d1a3c 100644 --- a/ElementX/Sources/Services/Timeline/TimelineItemProxy.swift +++ b/ElementX/Sources/Services/Timeline/TimelineItemProxy.swift @@ -159,7 +159,7 @@ struct TimelineItemDebugInfo: Identifiable, CustomStringConvertible { return nil } - return String(data: jsonData, encoding: .utf8) + return String(decoding: jsonData, as: UTF8.self) } } diff --git a/ElementX/Sources/UITests/UITestsSignalling.swift b/ElementX/Sources/UITests/UITestsSignalling.swift index ebe2e0dc7..87bb4d913 100644 --- a/ElementX/Sources/UITests/UITestsSignalling.swift +++ b/ElementX/Sources/UITests/UITestsSignalling.swift @@ -146,11 +146,10 @@ enum UITestsSignalling { let encoder = JSONEncoder() encoder.outputFormatting = .sortedKeys - guard let data = try? encoder.encode(self), - let string = String(data: data, encoding: .utf8) else { + guard let data = try? encoder.encode(self) else { return "unknown" } - return string + return String(decoding: data, as: UTF8.self) } init?(rawValue: String) { @@ -175,7 +174,7 @@ enum UITestsSignalling { /// Processes string data from the file and publishes its signal. private func processFileData(_ data: Data) { - guard let rawMessage = String(data: data, encoding: .utf8) else { return } + let rawMessage = String(decoding: data, as: UTF8.self) guard let message = Message(rawValue: rawMessage), message.mode != mode // Filter out messages sent by this client.