Skip to content

0.2.1

Latest

Choose a tag to compare

@niktishakov niktishakov released this 23 Oct 14:02

Two changes that make reports for packages built on SwiftNIO and for packages with examples less noisy.

  • Privacy manifests get their own verdict. A target whose only resource is PrivacyInfo.xcprivacy and whose code doesn't import Foundation is now listed under "Only a privacy manifest" instead of "Likely easy". There is nothing to change in such a package: SwiftPM generates a Bundle.module accessor that imports Foundation (swift-package-manager#9792). When the tool runs on macOS, the report adds that manifests declared under #if canImport(Darwin), as in swift-nio, swift-nio-ssl and swift-crypto, aren't added on a Linux host. Example: for an app that uses async-http-client, NIOPosix and NIOSSL now show up in this group.
  • Only library products by default. Without --product, the tool now analyzes the targets of the root package's library products, so examples, tools and test helpers no longer count. The report lists the targets it skipped. Packages without library products, such as an app's own package, are analyzed as before. --all-targets (action input all-targets) checks every target again. Example: swift-argument-parser goes from "4 targets pull the full Foundation" (all of them examples and test helpers) to clean.

JSON: findings can have the verdict privacyManifestOnly and the cause privacyManifest; the report has skippedTargets and manifestsEvaluatedOnDarwin.