You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
fix(ci): install Periphery from Homebrew core - #1190
CI fails at brew install peripheryapp/periphery/periphery because the tap's cask uses the disabled depends_on macos: :catalina declaration. Both commit CI and release CI hit this error after successfully building Squirrel.
Use brew install periphery in all three workflows to install the Homebrew core formula instead. Core currently provides Periphery 3.8.0. The formula is deprecated and scheduled for disablement on 2027-08-12; its eventual replacement is a separate follow-up.
Validation: all three workflow files parse as YAML, and git diff --check passes. Full build and scanning validation is left to this PR's CI.
$ brew info periphery
==> periphery (deprecated): stable 3.8.0 (bottled), HEAD
Identify unused code in Swift projects
https://github.com/peripheryapp/periphery
Deprecated because it has an archived upstream repository! It will be disabled on 2027-08-12.
Not installed
From: https://github.com/Homebrew/homebrew-core/blob/HEAD/Formula/p/periphery.rb
License: MIT
And the project has posted this notice:
Important
Periphery has transitioned from an open-source project to a commercial product. This change will support the continued maintenance of Periphery and the development of more advanced features.
This repository is preserved as a historical record of the original open-source project and will remain available for anyone who wishes to fork and continue building upon it.
All existing issues have been migrated to the new issue tracker. Please use that repository to browse existing issues or report a new one.
Shall we avoid using it since it will be eventually unavailable?
I compared SwiftLint 0.65.1’s unused_declaration analyzer with Periphery 3.8.0 locally, using Xcode 27.1. Both detected the unused ReservedPropertyValue.empty case in Squirrel and basic unused declarations in controlled test cases, but there were some differences:
SwiftLint incorrectly flagged Squirrel’s @main entry point and missed a function called only by another unused function. Periphery handled both cases correctly.
SwiftLint skipped a truly unused @objc method that Periphery detected.
Periphery incorrectly flagged a working callback invoked through NSSelectorFromString as unused, while SwiftLint did not.
These were limited local tests. Would you prefer replacing Periphery with another unused-code checker? If so, I suggest making that change in a separate PR, with a more thorough comparison of the alternatives.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
CI fails at
brew install peripheryapp/periphery/peripherybecause the tap's cask uses the disableddepends_on macos: :catalinadeclaration. Both commit CI and release CI hit this error after successfully building Squirrel.Use
brew install peripheryin all three workflows to install the Homebrew core formula instead. Core currently provides Periphery 3.8.0. The formula is deprecated and scheduled for disablement on 2027-08-12; its eventual replacement is a separate follow-up.Validation: all three workflow files parse as YAML, and
git diff --checkpasses. Full build and scanning validation is left to this PR's CI.