DocC builds for generated projects now succeed for Swift packages whose public Objective-C headers import another module in the same package without declaring it as a target dependency. To unblock packages like Firebase (where the dependency is documented but not listed in Package.swift), Tuist derives a fragmentary same-package target dependency from concrete #import / #include references in public headers, only when the imported module matches a regular same-package target, only when the cycle is avoidable. Module maps are additionally copied to the canonical Modules/module.modulemap path that Clang ExtractAPI expects for dependency framework modules.
Hive
DocC builds resolve cross-module imports in Swift package targets
Published
Jun 29, 2026 · 15:25 UTC
Repository
tuist/tuist