From 9ed4ee5749f2dadb466991fdecea52c6da0c3f49 Mon Sep 17 00:00:00 2001 From: Serhiy Mytrovtsiy Date: Fri, 18 Oct 2024 16:44:03 +0200 Subject: [PATCH] fix: fixed swiftlint error that appears in the new version of swiftlint --- Kit/helpers.swift | 7 ++----- Kit/plugins/DB.swift | 6 +++--- Kit/plugins/Logger.swift | 4 ++-- Kit/plugins/Reachability.swift | 2 +- Modules/Battery/readers.swift | 8 +++----- Modules/CPU/readers.swift | 20 ++++++++------------ Modules/Disk/readers.swift | 4 ++-- Modules/Net/readers.swift | 22 ++++++++-------------- Modules/RAM/readers.swift | 11 ++++------- SMC/Helper/main.swift | 4 ++-- 10 files changed, 35 insertions(+), 53 deletions(-) diff --git a/Kit/helpers.swift b/Kit/helpers.swift index ef42cafe..92b93601 100644 --- a/Kit/helpers.swift +++ b/Kit/helpers.swift @@ -819,11 +819,8 @@ public func process(path: String, arguments: [String]) -> String? { } let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() - let output = String(decoding: outputData, as: UTF8.self) - - if output.isEmpty { - return nil - } + let output = String(data: outputData, encoding: .utf8) + guard let output, !output.isEmpty else { return nil } return output } diff --git a/Kit/plugins/DB.swift b/Kit/plugins/DB.swift index 3373e0a4..e9dd700d 100644 --- a/Kit/plugins/DB.swift +++ b/Kit/plugins/DB.swift @@ -76,15 +76,15 @@ public class DB { public func insert(key: String, value: Codable, ts: Bool = true, force: Bool = false) { self.values[key] = value - guard let blobData = try? JSONEncoder().encode(value) else { return } + guard let blobData = try? JSONEncoder().encode(value), let str = String(data: blobData, encoding: .utf8)else { return } if ts { - self.lldb?.insert("\(key)@\(Date().currentTimeSeconds())", value: String(decoding: blobData, as: UTF8.self)) + self.lldb?.insert("\(key)@\(Date().currentTimeSeconds())", value: str) } if !force, let ts = self.writeTS[key], (Date().timeIntervalSince1970-ts.timeIntervalSince1970) < 30 { return } - self.lldb?.insert(key, value: String(decoding: blobData, as: UTF8.self)) + self.lldb?.insert(key, value: str) self.writeTS[key] = Date() } diff --git a/Kit/plugins/Logger.swift b/Kit/plugins/Logger.swift index 360cdee1..d92130b5 100644 --- a/Kit/plugins/Logger.swift +++ b/Kit/plugins/Logger.swift @@ -73,13 +73,13 @@ public class NextLog { let fileURL = fm.urls(for: .documentDirectory, in: .userDomainMask)[0].appendingPathComponent("log.txt") if !fm.fileExists(atPath: fileURL.path) { - try? "".data(using: .utf8)?.write(to: fileURL) + try? Data("".utf8).write(to: fileURL) } do { let handle = try FileHandle(forWritingTo: fileURL) handle.seekToEndOfFile() - handle.write("----------------\n".data(using: .utf8)!) + handle.write(Data("----------------\n".utf8)) self.writer = FileHandlerOutputStream(handle) } catch let err { print("error to init file handler: \(err)") diff --git a/Kit/plugins/Reachability.swift b/Kit/plugins/Reachability.swift index b28e9be0..528bfb0e 100644 --- a/Kit/plugins/Reachability.swift +++ b/Kit/plugins/Reachability.swift @@ -58,7 +58,7 @@ public class Reachability { _ = unmanagedReachability.retain() return UnsafeRawPointer(unmanagedReachability.toOpaque()) }, - release: { (info: UnsafeRawPointer) -> Void in + release: { (info: UnsafeRawPointer) in Unmanaged.fromOpaque(info).release() }, copyDescription: nil diff --git a/Modules/Battery/readers.swift b/Modules/Battery/readers.swift index de3d66e6..29a7494a 100644 --- a/Modules/Battery/readers.swift +++ b/Modules/Battery/readers.swift @@ -194,13 +194,11 @@ public class ProcessReader: Reader<[TopProcess]> { return } - let output = String(decoding: outputData.advanced(by: outputData.count/2), as: UTF8.self) - if output.isEmpty { - return - } + let output = String(data: outputData.advanced(by: outputData.count/2), encoding: .utf8) + guard let output, !output.isEmpty else { return } var processes: [TopProcess] = [] - output.enumerateLines { (line, _) -> Void in + output.enumerateLines { (line, _) in if line.matches("^\\d+ *[^(\\d)]*\\d+\\.*\\d* *$") { let str = line.trimmingCharacters(in: .whitespaces) let pidFind = str.findAndCrop(pattern: "^\\d+") diff --git a/Modules/CPU/readers.swift b/Modules/CPU/readers.swift index f966341e..59130ddb 100644 --- a/Modules/CPU/readers.swift +++ b/Modules/CPU/readers.swift @@ -212,16 +212,13 @@ public class ProcessReader: Reader<[TopProcess]> { let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() let errorData = errorPipe.fileHandleForReading.readDataToEndOfFile() - let output = String(decoding: outputData, as: UTF8.self) - _ = String(decoding: errorData, as: UTF8.self) - - if output.isEmpty { - return - } + let output = String(data: outputData, encoding: .utf8) + _ = String(data: errorData, encoding: .utf8) + guard let output, !output.isEmpty else { return } var index = 0 var processes: [TopProcess] = [] - output.enumerateLines { (line, stop) -> Void in + output.enumerateLines { (line, stop) in if index != 0 { let str = line.trimmingCharacters(in: .whitespaces) let pidFind = str.findAndCrop(pattern: "^\\d+") @@ -472,10 +469,9 @@ public class LimitReader: Reader { } let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() - var lines = String(decoding: outputData, as: UTF8.self).split(separator: "\n") - if lines.isEmpty { - return - } + guard let str = String(data: outputData, encoding: .utf8) else { return } + var lines = str.split(separator: "\n") + guard !lines.isEmpty else { return } lines.removeFirst(3) lines.forEach { (line: Substring) in @@ -520,7 +516,7 @@ public class AverageReader: Reader<[Double]> { } let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() - guard let line = String(decoding: outputData, as: UTF8.self).split(separator: "\n").first else { + guard let raw = String(data: outputData, encoding: .utf8), let line = raw.split(separator: "\n").first else { return } diff --git a/Modules/Disk/readers.swift b/Modules/Disk/readers.swift index b41bcde6..2af22729 100644 --- a/Modules/Disk/readers.swift +++ b/Modules/Disk/readers.swift @@ -384,7 +384,7 @@ public class ProcessReader: Reader<[Disk_process]> { guard self.numberOfProcesses != 0, let output = runProcess(path: "/bin/ps", args: ["-Aceo pid,args", "-r"]) else { return } var processes: [Disk_process] = [] - output.enumerateLines { (line, _) -> Void in + output.enumerateLines { (line, _) in let str = line.trimmingCharacters(in: .whitespaces) let pidFind = str.findAndCrop(pattern: "^\\d+") guard let pid = Int32(pidFind.cropped) else { return } @@ -451,5 +451,5 @@ private func runProcess(path: String, args: [String] = []) -> String? { } let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() - return String(decoding: outputData, as: UTF8.self) + return String(data: outputData, encoding: .utf8) } diff --git a/Modules/Net/readers.swift b/Modules/Net/readers.swift index b47c6735..0745638b 100644 --- a/Modules/Net/readers.swift +++ b/Modules/Net/readers.swift @@ -271,17 +271,14 @@ internal class UsageReader: Reader { let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() let errorData = errorPipe.fileHandleForReading.readDataToEndOfFile() - let output = String(decoding: outputData, as: UTF8.self) - _ = String(decoding: errorData, as: UTF8.self) - - if output.isEmpty { - return Bandwidth() - } + let output = String(data: outputData, encoding: .utf8) + _ = String(data: errorData, encoding: .utf8) + guard let output, !output.isEmpty else { return Bandwidth() } var totalUpload: Int64 = 0 var totalDownload: Int64 = 0 var firstLine = false - output.enumerateLines { (line, _) -> Void in + output.enumerateLines { (line, _) in if !firstLine { firstLine = true return @@ -516,16 +513,13 @@ public class ProcessReader: Reader<[Network_Process]> { let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() let errorData = errorPipe.fileHandleForReading.readDataToEndOfFile() - let output = String(decoding: outputData, as: UTF8.self) - _ = String(decoding: errorData, as: UTF8.self) - - if output.isEmpty { - return - } + let output = String(data: outputData, encoding: .utf8) + _ = String(data: errorData, encoding: .utf8) + guard let output, !output.isEmpty else { return } var list: [Network_Process] = [] var firstLine = false - output.enumerateLines { (line, _) -> Void in + output.enumerateLines { (line, _) in if !firstLine { firstLine = true return diff --git a/Modules/RAM/readers.swift b/Modules/RAM/readers.swift index 363342f5..69f1d6a2 100644 --- a/Modules/RAM/readers.swift +++ b/Modules/RAM/readers.swift @@ -136,15 +136,12 @@ public class ProcessReader: Reader<[TopProcess]> { let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() let errorData = errorPipe.fileHandleForReading.readDataToEndOfFile() - let output = String(decoding: outputData, as: UTF8.self) - _ = String(decoding: errorData, as: UTF8.self) - - if output.isEmpty { - return - } + let output = String(data: outputData, encoding: .utf8) + _ = String(data: errorData, encoding: .utf8) + guard let output, !output.isEmpty else { return } var processes: [TopProcess] = [] - output.enumerateLines { (line, _) -> Void in + output.enumerateLines { (line, _) in if line.matches("^\\d+\\** +.* +\\d+[A-Z]*\\+?\\-? *$") { processes.append(ProcessReader.parseProcess(line)) } diff --git a/SMC/Helper/main.swift b/SMC/Helper/main.swift index ea7db856..d90dfdcf 100644 --- a/SMC/Helper/main.swift +++ b/SMC/Helper/main.swift @@ -170,8 +170,8 @@ extension Helper { let outputData = outputPipe.fileHandleForReading.readDataToEndOfFile() let errorData = errorPipe.fileHandleForReading.readDataToEndOfFile() - let output = String(decoding: outputData, as: UTF8.self) - let error = String(decoding: errorData, as: UTF8.self) + let output = String(data: outputData, encoding: .utf8) + let error = String(data: errorData, encoding: .utf8) return (output, error) }