Unable to determine framework Swift version when including multiple frameworks in archive
#2,861 opened on 2019年9月6日
Repository metrics
- Stars
- (15,179 stars)
- PR merge metrics
- (30d に merged PR はありません)
説明
- carthage install method: [ ] .pkg, [x] homebrew, [ ] source
which carthage: /usr/local/bin/carthagecarthage version: 0.33.0xcodebuild -version:Xcode 10.1 Build version 10B61- Are you using
--no-build? No - Are you using
--no-use-binaries? No - Are you using
--use-submodules? No - Are you using
--cache-builds? No - Are you using
--new-resolver? No
Cartfile
github "nfulkerson/test-sdk-ios" == 0.1.10
github "aws-amplify/aws-sdk-ios"
Carthage Output
*** Fetching test-sdk-ios
*** Fetching aws-sdk-ios
*** Checking out test-sdk-ios at "0.1.10"
*** Checking out aws-sdk-ios at "2.10.3"
*** Downloading aws-sdk-ios.framework binary at "AWS SDK for iOS 2.10.3"
*** xcodebuild output can be found in /var/folders/vz/l_vyxswn5c7c4mkv9cjwbx500000gn/T/carthage-xcodebuild.QKh03A.log
*** Downloading test-sdk-ios.framework binary at "SDK Release 0.1.10"
*** Skipped installing test-sdk-ios.framework binary due to the error:
"Unable to determine framework Swift version: Could not derive version from header file."
Falling back to building from the source
Actual outcome Carthage did not use archive on Github Release, with the explanation that it was 'Unable to determine framework Swift version.'
Expected outcome Carthage should resolve Swift version and prefer archive over building from source.
Following some other issues here, I saw that aws-sdk-ios is achieving precisely what I would like to do: I have an Xcode project with multiple framework targets, and I would like Carthage to use a set of archived binaries over building each from source.
If I run a simple carthage archive, it will bundle all frameworks together, and name the archive after the first target. I rename the zip to test-sdk-ios and the above is the result. If I attempt to archive each independently and attach each of them to the release, Carthage will only retrieve the first framework.
Retrieving the binaries for the AWS SDK presents no similar issue. Is this actually an issue determining the Swift version or is Carthage's output tricking me?