github peripheryapp/periphery 2.0.0

latest releases: 2.18.0, 2.17.1, 2.17.0...
3 years ago
Breaking
  • SourceKit based indexing has been removed, the IndexStore indexer is now the sole indexer. Therefore, the following scan options have been removed: --use-index-store, --use-build-log, --save-build-log.
  • The scan-syntax command has been removed.
Enhancements
  • Support for code comments to ignore unused declarations.
  • Support for analyzing Swift Package Manager projects.
  • Linux support for Swift Package Manager projects.
  • Assign-only property detection is back and enabled by default. Disable it with --retain-assign-only-properties.
  • Added --skip-build option to skip the build phase.
Bug Fixes
  • UISceneDelegateClassName & UISceneClassName referenced in Info.plist are now retained.
  • Ignore parameters from functions annotated with @IBAction.
  • Classes & structs that conform to SwiftUI's PreviewProvider are now retained.
  • Support @main entry points.
  • Fix unused recursive function detection when using the index store.
  • Properties named in struct implicit constructors are now retained.
  • Implicit declarations such as struct constructors are now retained.
  • A typealias that defines an associatedtype in an external protocol is now retained.
  • All custom appendInterpolation methods are now retained, as they cannot be identified as unused due to https://bugs.swift.org/browse/SR-13792.
  • Fixed path resolution for nested projects in Xcode workspaces.
  • wrappedValue and projectedValue properties in property wrappers are now retained.
  • XCTestManifests.swift is now treated as an entry point file like LinuxMain.swift.
  • Updated XcodeProj dependency to resolve some Xcode project parsing issues.

Don't miss a new periphery release

NewReleases is sending notifications on new releases.