KSCrash
KSCrash copied to clipboard
KSCrash.podspec does not seem to define the same framework modules that are available via SwiftPM spec
Whenever you integrate KSCrash via SwiftPM it offers the following "@import-modules":
@import KSCrash_Installations;
@import KSCrash_swift_Basic;
@import KSCrash_Recording;
@import KSCrash_Recording_Monitors;
@import KSCrash_Recording_Tools;
@import KSCrash_Reporting_Filters;
@import KSCrash_Reporting_Filters_Tools;
@import KSCrash_Reporting_Sinks;
@import KSCrash_Reporting_Tools;
However, whenever you integrate KSCrash via Cocoapods, the current KSCrash.podspec does not define any of these modules.
That causes code changes (around @import module statements) depending on the way KSCrash is integrated into the client codebase (via Cocoapods vs via SwiftPM). That is not a developer-friendly thing to do :)
Some hints that might be helpful in unifying the module definitions across the two package managers (based on my observations):
- SwiftPM probably generates these multiple modules definitions based on the codebase folder structure under Source/KSCrash and the corresponding targets defined within the Package.swift;
- Cocoapods probably generates its own module definition(s) based on its default rules deriving it from the provided podspec settings without referring to something like
s.module_map = "#{s.name}/Sources/#{s.name}/include/module.modulemap"
where themodule.modulemap
's content would explicitly define multiple modules corresponding to the SwiftPM's ones.
Guys, any estimates on when this one could be addressed? It does prevent the usage of KSCrash via Cocoapods. Unless there is a workaround I don't know about.