Releases: peripheryapp/periphery
Releases · peripheryapp/periphery
2.21.2
2.21.1
Breaking
- None.
Enhancements
- None.
Bug Fixes
- Enums with the
@main
attribute are now retained. - Fixed issue in Swift 6 where declarations that override external type members are incorrectly identified as unused.
- Unused public/exported imports are excluded from the results even if unused in the declaring file as the exported symbols may be referenced in other files, and thus removing the import would result in a build failure.
3.0.0.beta4
Periphery 3.0.0.beta4
3.0.0.beta3
Periphery 3.0.0.beta3
3.0.0.beta2
Periphery 3.0.0.beta2
3.0.0.beta1
Periphery 3.0.0.beta1
2.21.0
2.20.0
Breaking
- None.
Enhancements
- Added GitHub Actions output formatter.
Bug Fixes
- Disable unused import analysis for files retained with
--retain-files
. - Fix handling of Xcode project paths containing spaces.
- Fix bug causing non-deterministic results for structs with implicit initializers.
2.19.0
Breaking
- None.
Enhancements
- Unused import detection is now enabled by default.
- Added the
--retain-encodable-properties
option to retain all properties onEncodable
types only. - Added the
--xcode-list-arguments
option to pass additional arguments toxcodebuild -list
. - Added the
--skip-schemes-validation
option to skip validation of Xcode schemes.
Bug Fixes
@State
and@Binding
properties are now excluded from assign-only property analysis.- Unused imports are now detected in files containing no references.
2.18.0
Breaking
- The command-line parsing strategy for options that were delimited by a pipe or comma has changed. These options are now parsed as a space delimited list, e.g
--option "arg1" "arg2"
. - The option
--external-encodable-protocols
is deprecated, use--external-codable-protocols
instead.
Enhancements
- Add experimental unused import analysis option
--enable-unused-import-analysis
. - Add experimental automatic code removal option
--auto-remove
. - Assign-only properties on structs with synthesized initializers are now detected.
- Added the
--retain-codable-properties
option to retain all properties on Codable types. - Results for redundant protocol conformances will now list the inherited protocols that should replace the redundant conformance, if any.
- Added the
--retain-files
option to retain all declarations within the given files.
Bug Fixes
- Subscript functions required by
@dynamicMemberLookup
are now retained. - A newline is no longer printed before non-Xcode formatted results.
--external-codable-protocols
now retains enums that conform toCodingKey
.- Fix public accessibility false-positive for actors.
- Fix public accessibility false-positive for property wrappers.
- Fix public accessibility false-positive for declarations referenced from a public
@inlinable
function. - Fix public accessibility false-positive for function parameter default values.
- Fix public accessibility false-positive for inherited and default associated types.
- Fix public accessibility false-positive for generic types used in the generic argument clause of a return type.
- Fix public accessibility false-positive for retained/ignored declarations.
- Fix public accessibility false-positive for enum case parameter types.
- Fix public accessibility false-positive for properties initialized with generic specialized types.
- Types associated with assign-only properties are no longer identified as unused until the property is removed.
- Classes referenced in Info.plist as
NSPrincipalClass
andWKExtensionDelegateClassName
are now retained.