Tuist no longer copies module.modulemap into static framework products when integrating precompiled ObjC frameworks with an umbrella-header module map, preventing clang from seeing two Umbrella for module '…' already covers this directory definitions during archive. Dynamic frameworks keep the previous copy behavior unchanged. Macros cached by product name (<target>.macro != target name, e.g. Point-Free’s DependenciesMacros.macro for DependenciesMacrosPlugin) are now located correctly by the storage fetch step, and a missing macro artifact falls through to a normal cache miss instead of producing a generated project that references an unusable file.
Hive
Static framework module maps and renamed macro cache artifacts
Published
Jul 03, 2026 · 13:18 UTC
Repository
tuist/tuist