Releases: peripheryapp/periphery
Releases Β· peripheryapp/periphery
2.12.2
Breaking
- None.
Enhancements
- Significantly improve the performance of index and report filtering.
- Moderate improvements to indexing and analysis performance.
Bug Fixes
COMPILER_INDEX_STORE_ENABLEis now forcefully enabled as it's required for indexing.- Fix false positive where a
typealiasis extended but otherwise unused. - Fix redundant accessibility analysis for function metatype arguments.
- Fix redundant accessibility analysis for property types inferred from a function call initializer.
2.12.1
Breaking
- None.
Enhancements
- None.
Bug Fixes
- Fix JSON deserialization crash caused by unrelated warnings in the output from
xcodebuild -list -json. - Retain all
@MainActorannotated types and their constructors to workaround a bug in Swift 5.7. - Retain all constructors on types instantiated via
Self(...)to workaround false positives caused by a bug in Swift. Set<AnyCancellable>andNSKeyValueObservationare now included in the default values for--retain-assign-only-property-types.- Improve accuracy of guard-let shorthand workaround.
- Fix unused parameter false positive result for parameter used within a nested computed variable.
2.12.0
Breaking
- None.
Enhancements
- Add CodeClimate output formatter available via the
--format codeclimateoption. - Add support for third-party build systems, such as Bazel.
Bug Fixes
- Enums that conform to SwiftUI special Provider protocols are now retained, as was already the case for structs and classes.
2.11.0
2.10.3
Breaking
- None.
Enhancements
- None.
Bug Fixes
- Fix retaining CodingKeys enum in a struct whose Codable conformance is declared in an extension.
- Used tagged dependencies to prevent "unsafe build flags" error from SwiftPM.
- Fix old index store use by including Xcode version hash in DerivedData directory name.
2.10.2
Breaking
- None.
Enhancements
- None.
Bug Fixes
- Fix guard-let shorthand syntax.
- Fix accuracy of unused parameter analysis for overridden and protocol conforming functions.
- Fix retaining
buildFinalResult(_:)andbuildLimitedAvailability(_:)result builder methods.
2.10.1
Breaking
- None.
Enhancements
- None.
Bug Fixes
- Fix error building with SwiftPM and Swift 5.7:
the target 'PeripheryKit' in product 'periphery' contains unsafe build flags - Fix unused parameter analysis for shorthand if-let syntax.
- Workaround Swift shorthand if-let syntax bug (swiftlang/swift#61509). Global properties are not handled by this workaround.
- Fix retaining inferred associated types.
- Fix redundant public accessibility analysis for types used in closure signatures.
- Conflicting index store units are now detected and result in an error.