framework
by contentstack
SPM targets, libxml2 Modules, vendored Kanna, deployment targets, CocoaPods podspec, CI xcodebuild.
npx skills add https://github.com/contentstack/contentstack-utils-swift --skill frameworkFramework / build – Contentstack Utils Swift
When to use
- Editing
Package.swift,Modules/, orSources/Kanna/. - Changing deployment targets or conditional libxml linking.
- Updating
ContentstackUtils.podspecor CI assumptions (scheme, destination).
Swift Package Manager
- Product:
ContentstackUtils. - Targets:
ContentstackUtils(sources underSources/),ContentstackUtilsTests, system librarylibxml2→Modules/. - Apple vs Linux: Conditional
libxml2dependency andpkg-configas inPackage.swift—preserve behavior when refactoring.
Vendored Kanna
Sources/Kanna/is excluded from SwiftLint. Updates = intentional vendoring (license, diff, cross-platform build).
CocoaPods
ContentstackUtils.podspec: e.g.source_filesSources/**/*.{swift},HEADER_SEARCH_PATHS/-lxml2for libxml. Keep aligned with SPM layout and tagged releases.
Platforms
- Declared in
Package.swift/ podspec (e.g. macOS 10.13+, iOS/tvOS 11+, watchOS 4+). See alsoskills/swift-style/SKILL.mdfor API availability and naming.
CI
- GitHub Actions uses xcodebuild with scheme
ContentstackUtils-Package. After changing parsing or linking, validate with bothswift testand Xcode builds.
References
skills/swift-style/SKILL.mdskills/dev-workflow/SKILL.md