Releases: peripheryapp/periphery
Releases · peripheryapp/periphery
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.
2.17.1
2.17.0
2.17.0
Breaking
- None.
Enhancements
- Added the
--relative-results
option to output result paths relative to the current directory. --quiet
now silences warnings too.
Bug Fixes
- Fix redundant public accessibility analysis for protocol members declared in extensions that are referenced cross-module where the protocol itself is not.
- Remove checks causing errors when scanning multi-platform projects.
- Additional arguments passed through to xcodebuild/swift are now quoted automatically as needed.