Skip to content

Conversation

@tonyskansf
Copy link
Contributor

Add a new opt-in rule that detects unnecessary throws, helping avoid misleading definitions and requirements for the caller to write unnecessary error handling.

@SwiftLintBot
Copy link

SwiftLintBot commented Apr 28, 2025

4337 Warnings
⚠️ Big PR
⚠️ This PR introduced a violation in Alamofire: /Source/Core/URLConvertible+URLRequestConvertible.swift:51:25: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Source/Core/URLConvertible+URLRequestConvertible.swift:84:32: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Source/Core/DataStreamRequest.swift:554:41: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Source/Core/DataStreamRequest.swift:562:41: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Source/Core/UploadRequest.swift:168:36: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Source/Features/ServerTrustEvaluation.swift:447:67: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Source/Features/ResponseSerialization.swift:85:42: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Source/Features/ResponseSerialization.swift:93:42: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/UploadTests.swift:360:73: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/OfflineRetrierTests.swift:11:61: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/OfflineRetrierTests.swift:38:67: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/OfflineRetrierTests.swift:65:54: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/OfflineRetrierTests.swift:95:61: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/OfflineRetrierTests.swift:129:66: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/OfflineRetrierTests.swift:175:63: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/OfflineRetrierTests.swift:209:74: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/ConcurrencyTests.swift:767:53: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/ConcurrencyTests.swift:783:48: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/SessionTests.swift:1285:86: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/SessionTests.swift:1340:88: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/ResponseSerializationTests.swift:1188:112: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/ResponseSerializationTests.swift:1211:39: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/ServerTrustEvaluatorTests.swift:1307:83: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/ServerTrustEvaluatorTests.swift:1320:59: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/ServerTrustEvaluatorTests.swift:1353:88: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Alamofire: /Tests/ServerTrustEvaluatorTests.swift:1369:77: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Plugins/IntentBuilderPlugin/IntentBuilderPlugin.swift:11:74: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Plugins/LeoAssetsPlugin/LeoAssetsPlugin.swift:13:74: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/User Scripts/RandomConfigurationTests.swift:12:50: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/User Scripts/RandomConfigurationTests.swift:39:64: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/User Scripts/RandomConfigurationTests.swift:64:64: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/User Scripts/RandomConfigurationTests.swift:94:48: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/ClientTests.swift:16:34: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/DomainUserScriptTests.swift:12:41: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/DomainUserScriptTests.swift:39:39: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/UniversalLinkManagerTests.swift:13:31: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/PageDataTests.swift:20:38: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/PageDataTests.swift:132:36: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/WebsiteRedirectsTests.swift:14:34: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/WebsiteRedirectsTests.swift:19:37: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/ResourceDownloaderStreamTests.swift:11:45: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/ResourceDownloaderStreamTests.swift:41:40: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/GroupedAdBlockEngineTests.swift:60:47: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/GroupedAdBlockEngineTests.swift:94:37: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/GroupedAdBlockEngineTests.swift:166:26: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:20:28: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:46:28: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:55:39: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:82:19: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:116:19: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:150:19: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:183:19: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:217:19: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:251:19: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/InitialSearchEnginesTests.swift:283:19: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/ResourceDownloaderTests.swift:11:41: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Web Filters/ResourceDownloaderTests.swift:67:37: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Helpers/BraveSkusWebHelperTests.swift:80:47: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/AdBlockGroupsManagerTests.swift:26:43: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/AdBlockGroupsManagerTests.swift:120:40: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/AIChatTests/AIChatTest.swift:13:39: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/AIChatTests/AIChatTest.swift:42:42: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/AIChatTests/AIChatTest.swift:103:29: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/AIChatTests/AIChatTest.swift:149:32: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/AIChatTests/AIChatTest.swift:195:32: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/AIChatTests/AIChatTest.swift:236:30: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/ClientTests/Helpers/DefaultBrowserHelperTests.swift:14:31: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/BraveTalkTests/BraveTalkJitsiTranscriptProcessorTests.swift:17:34: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/PlaylistUITests/PlayerModelTests.swift:72:42: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Tests/BrowserMenuTests/BrowserMenuTests.swift:300:51: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/BraveWidgetsModels/LockScreenFavoriteIntentHandler.swift:14:11: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Playlist/PlaylistManager.swift:967:48: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Web/Chromium/ChromiumTabState.swift:428:45: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/BraveStore/Subscription/SDK/AppStoreSDK.swift:448:53: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/BraveStore/Subscription/SDK/AppStoreSDK.swift:471:63: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Shared/Extensions/URLExtensions.swift:290:57: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Reader/ReaderModeCache.swift:44:64: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Settings/Features/ShieldsPrivacy/Clearables.swift:121:22: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Settings/Features/ShieldsPrivacy/Clearables.swift:143:22: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Settings/Features/ShieldsPrivacy/Clearables.swift:161:22: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Settings/Features/ShieldsPrivacy/Clearables.swift:190:22: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Settings/Features/ShieldsPrivacy/Clearables.swift:203:22: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Settings/Features/ShieldsPrivacy/Clearables.swift:225:22: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Settings/Features/ShieldsPrivacy/Clearables.swift:247:22: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Settings/Features/ShieldsPrivacy/Clearables.swift:264:22: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Brave Translate/BraveTranslateTabHelper.swift:284:27: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Browser/FrequencyQuery.swift:123:59: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/Frontend/Browser/Search/SearchEngines.swift:397:46: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/WebFilters/AdBlock/AdBlockEngineManager.swift:621:84: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/WebFilters/DownloadResourceInterface.swift:79:43: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/Brave/WebFilters/DownloadResourceInterface.swift:104:40: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/BraveShared/Extensions/AsyncAwait.swift:17:11: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in Brave: /ios/brave-ios/Sources/BraveShared/Extensions/URLExtensions.swift:332:79: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/UDSHelper/Tests/UDSHelperTests/UDSMessageTests.swift:23:24: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:37:36: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:41:32: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:53:32: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:67:47: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:79:47: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:93:57: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:105:57: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:119:47: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:131:47: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:145:48: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:157:48: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:171:37: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:230:51: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/Freemium/Tests/FreemiumTests/FreemiumDBPUserStateManagerTests.swift:242:51: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/NetworkProtectionStatusBarMenuTests.swift:38:51: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/TunnelControllerViewModelTests.swift:108:51: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/TunnelControllerViewModelTests.swift:118:57: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/TunnelControllerViewModelTests.swift:142:58: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/TunnelControllerViewModelTests.swift:166:54: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/TunnelControllerViewModelTests.swift:199:55: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/TunnelControllerViewModelTests.swift:221:49: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/TunnelControllerViewModelTests.swift:241:46: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Tests/NetworkProtectionUITests/TunnelControllerViewModelTests.swift:269:45: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/NetworkProtectionMac/Sources/NetworkProtectionProxy/FlowManagers/UDPFlowManager.swift:212:49: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/SyncUI-macOS/Tests/SyncUITests/RecoveryCodeViewModelTests.swift:24:48: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/SyncUI-macOS/Tests/SyncUITests/RecoveryCodeViewModelTests.swift:29:63: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/SyncUI-macOS/Tests/SyncUITests/RecoveryCodeViewModelTests.swift:39:39: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/HistoryView/Tests/HistoryViewTests/VisitIdentifierTests.swift:31:68: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/HistoryView/Sources/HistoryView/DataClient.swift:87:77: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ This PR introduced a violation in DuckDuckGo: /macOS/LocalPackages/HistoryView/Sources/HistoryView/DataClient.swift:104:74: Warning: Superfluous 'throws'; body of this function does not throw any error (unneeded_throws_rethrows)
⚠️ Danger found 4337 violations with this PR. Due to GitHub's max issue comment size, the number shown has been truncated to 125.
18 Messages
📖 Building this branch resulted in a binary size of 26711.91 KiB vs 26660.45 KiB when built on main (0% larger).
📖 Linting Aerial with this PR took 0.76 s vs 0.73 s on main (4% slower).
📖 Linting Alamofire with this PR took 1.01 s vs 1.01 s on main (0% slower).
📖 Linting Brave with this PR took 6.74 s vs 6.73 s on main (0% slower).
📖 Linting DuckDuckGo with this PR took 20.93 s vs 20.86 s on main (0% slower).
📖 Linting Firefox with this PR took 10.69 s vs 10.69 s on main (0% slower).
📖 Linting Kickstarter with this PR took 7.5 s vs 7.47 s on main (0% slower).
📖 Linting Moya with this PR took 0.43 s vs 0.46 s on main (6% faster).
📖 Linting NetNewsWire with this PR took 2.41 s vs 2.41 s on main (0% slower).
📖 Linting Nimble with this PR took 0.64 s vs 0.67 s on main (4% faster).
📖 Linting PocketCasts with this PR took 7.1 s vs 6.71 s on main (5% slower).
📖 Linting Quick with this PR took 0.4 s vs 0.38 s on main (5% slower).
📖 Linting Realm with this PR took 3.19 s vs 3.16 s on main (0% slower).
📖 Linting Sourcery with this PR took 1.75 s vs 1.77 s on main (1% faster).
📖 Linting Swift with this PR took 4.16 s vs 4.17 s on main (0% faster).
📖 Linting VLC with this PR took 1.07 s vs 1.09 s on main (1% faster).
📖 Linting Wire with this PR took 17.16 s vs 17.12 s on main (0% slower).
📖 Linting WordPress with this PR took 11.2 s vs 11.25 s on main (0% faster).

Generated by 🚫 Danger

@msrutek-paylocity
Copy link

@SimplyDanny Any thoughts on this? :)

@msrutek-paylocity
Copy link

@tonyskansf It seems that some conflicts have arisen, would you mind resolving them? Thanks!

Copy link
Collaborator

@SimplyDanny SimplyDanny left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks very good already! You thought about many special cases already. The rule also makes sense. But adding it as opt-in is important as it can cause false positives in the context of protocol implementations (and maybe more occasions).

I've added a few comments. Please also check the findings reported by the OSS scan.

@SimplyDanny
Copy link
Collaborator

You need to rebase onto main first to fix conflicts and build with the latest infrastructure. Ignore the conflict in GeneratedTests.swift and let the file be deleted. Eventually, run swift run swiftlint-dev rules register again.

@tonyskansf tonyskansf force-pushed the opt-in-unneeded-throws-rule branch from 3c154d1 to bb93bfe Compare July 22, 2025 08:09
@tonyskansf
Copy link
Contributor Author

@SimplyDanny
Sorry it took me a while to find time for the review comments. I've addressed all of them. I've gone through all the available warnings and identified one false-positive which I fixed in 032538b.

Please can you take a look again. Appreciate your time!

Thank you

Copy link
Collaborator

@SimplyDanny SimplyDanny left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm back! However, a bit late. Sorry for that.

@SimplyDanny SimplyDanny force-pushed the opt-in-unneeded-throws-rule branch from 5de437d to 7c1d566 Compare November 3, 2025 12:37
@SimplyDanny SimplyDanny force-pushed the opt-in-unneeded-throws-rule branch from 7c1d566 to b95ffe5 Compare November 3, 2025 15:52
Copy link
Collaborator

@SimplyDanny SimplyDanny left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for all the work, @tonyskansf! The PR is ready to land now. I really like the rule!

@SimplyDanny SimplyDanny merged commit 837a906 into realm:main Nov 3, 2025
23 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants