Skip to content

Releases: peripheryapp/periphery

2.17.0

23 Nov 09:25
8509117
Compare
Choose a tag to compare

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.

2.16.0

27 Sep 14:33
f78ce90
Compare
Choose a tag to compare

2.16.0

Breaking
  • None.
Enhancements
  • SwiftUI previews (PreviewProvider) are no longer retained by default. Retain them with --retain-swift-ui-previews.
Bug Fixes
  • Fix retaining members of public generic protocol extensions with --retain-public.

2.15.1

17 Sep 14:32
ae01b91
Compare
Choose a tag to compare

2.15.1

Breaking
  • None.
Enhancements
  • Swift 5.9 support.
Bug Fixes
  • Path forward slashes in JSON output formats are no longer escaped.
  • INDEX_ENABLE_DATA_STORE is now forcefully enabled as it's required for indexing in some cases.

2.15.0

03 Jul 23:07
5182b80
Compare
Choose a tag to compare

2.15.0

Breaking
  • Swift 5.7 and macOS 12 are no longer supported.
Enhancements
  • Reduced indexing and analysis runtime by ~60%.
Bug Fixes
  • Fix indexing multi-platform projects such as those containing watchOS extensions.
  • Subclasses of CLKComplicationPrincipalClass referenced from an Info.plist are now retained.

2.14.1

25 Jun 11:15
8647b02
Compare
Choose a tag to compare

2.14.1

Breaking
  • None.
Enhancements
  • None.
Bug Fixes
  • Revert SwiftPM binary command plugin. Sorry folks, but SwiftPM doesn't provide the appropriate permissions for Periphery to build projects in the sandbox.

2.14.0

24 Jun 16:53
dcdc5a9
Compare
Choose a tag to compare

2.14.0

Breaking
  • None.
Enhancements
  • Add the --retain-objc-annotated option.
  • Added support for SwiftPM binary command plugin.
Bug Fixes
  • None.

2.13.0

14 May 08:42
Compare
Choose a tag to compare
Breaking
  • None.
Enhancements
  • Improve indexing performance when multiple index stores are provided.
  • Added --external-test-case-classes option to allow external types to be treated as XCTestCase subclasses.
  • Comment commands now support trailing comments, e.g // periphery:ignore - explanation of why this is necessary
Bug Fixes
  • Fix handling of relative paths in --file-targets-path.
  • Fix redundant public accessibility false positives when --retain-objc-accessible is enabled.

2.12.3

22 Mar 22:59
Compare
Choose a tag to compare
Breaking
  • None.
Enhancements
  • None.
Bug Fixes
  • Fix index/report exclude regression.

2.12.2

19 Mar 22:51
Compare
Choose a tag to compare
Breaking
  • None.
Enhancements
  • Significantly improve the performance of index and report filtering.
  • Moderate improvements to indexing and analysis performance.
Bug Fixes
  • COMPILER_INDEX_STORE_ENABLE is now forcefully enabled as it's required for indexing.
  • Fix false positive where a typealias is 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

04 Mar 19:09
Compare
Choose a tag to compare
Breaking
  • None.
Enhancements
  • None.
Bug Fixes
  • Fix JSON deserialization crash caused by unrelated warnings in the output from xcodebuild -list -json.
  • Retain all @MainActor annotated 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> and NSKeyValueObservation are 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.