From bb18197860ffdb491f010648ec903003b6e1bb65 Mon Sep 17 00:00:00 2001 From: Christian Cleberg Date: Mon, 20 Jul 2026 16:22:28 -0500 Subject: v4.8.3: Clear SonarCloud new-code issues MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fixes the 4 reported bugs and ~97 code smells flagged in the new-code period. No behavior changes. Bugs (swift:S3923) — DomainInspectionService's confidenceFor* helpers each returned `error == nil ? .low : .low`, an inert conditional. Simplified to `return .low` and dropped the now-unused `error` parameter. Smells: - Merged 14 identical `.empty`/`.error` switch branches in DomainViewModel - Consolidated duplicate implementations (clearPresentedResults/reset, String.nonEmpty/nilIfEmpty, ExportFormat.id/fileExtension) - Extracted nested ternaries into TLSGrade.tone, EmailSecurityGrade.tone, and ChangeImpactClassification.color; removed ContentView.impactColor and the duplicate mapping in BatchResultsView - Documented empty closures and singleton inits - Marked unused protocol-conformance parameters `_` - Renamed CloudSyncTrigger.`import` to `imported` (raw value preserved) and SSLSessionDelegate's _serverTrust/_tlsMetadata - Merged nested ifs in the DER parser; flattened closure nesting in PortScanService and IntegrationService - Replaced two-case switches with if/else Left open: S107 (init parameter counts), S115 (constants mirroring DoH and ipapi JSON keys), S1075 (false positives on https:// literals), and two S117 hits on SwiftUI $binding shorthand. These want a Won't Fix resolution in SonarCloud, not a code change. --- DomainDigWidget/DomainDigPortfolioWidget.swift | 9 ++++----- 1 file changed, 4 insertions(+), 5 deletions(-) (limited to 'DomainDigWidget') diff --git a/DomainDigWidget/DomainDigPortfolioWidget.swift b/DomainDigWidget/DomainDigPortfolioWidget.swift index f26964c..bc88ac0 100644 --- a/DomainDigWidget/DomainDigPortfolioWidget.swift +++ b/DomainDigWidget/DomainDigPortfolioWidget.swift @@ -7,7 +7,7 @@ struct DomainDigEntry: TimelineEntry { } struct DomainDigProvider: TimelineProvider { - func placeholder(in context: Context) -> DomainDigEntry { + func placeholder(in _: Context) -> DomainDigEntry { DomainDigEntry(date: Date(), data: .placeholder) } @@ -16,7 +16,7 @@ struct DomainDigProvider: TimelineProvider { completion(DomainDigEntry(date: Date(), data: data)) } - func getTimeline(in context: Context, completion: @escaping (Timeline) -> Void) { + func getTimeline(in _: Context, completion: @escaping (Timeline) -> Void) { let data = DomainDigWidgetStore.read() ?? .empty let entry = DomainDigEntry(date: Date(), data: data) // The app reloads timelines on foreground and on watchlist changes; this @@ -49,10 +49,9 @@ struct DomainDigWidgetView: View { if data.totalDomains == 0 { emptyState } else { - switch family { - case .systemSmall: + if family == .systemSmall { smallView - default: + } else { mediumOrLargeView } } -- cgit v1.2.3