voxeet / voxeet-uxkit-cordova

Dolby.io UXKit for Cordova
Other
1 stars 14 forks source link

XCode 10.2 support #6

Closed Tallyb closed 5 years ago

Tallyb commented 5 years ago

After installing XCode 10.2 the local swift version is set to 5. When adding the plugin the following error shows:

*** Downloading voxeet-ios-sdk.framework binary at "1.3.3"
***  Skipped installing voxeet-ios-sdk.framework binary due to the error:
    "Incompatible Swift version - framework was built with 4.2.1 (swiftlang-1000.11.42 clang-1000.11.45.1) and the local version is 5.0 (swiftlang-1001.0.69.5 clang-1001.0.46.3)."

Expected Behaviour Install even when swift is 5 (do not enforce downgrading).

Steps to Reproduce the Problem

  1. upgrade Xcode to 10.2
  2. Add the plugin to a project. (clear plugins etc.)
    • cordova version 8.1.2
    • cordova-ios 4.5.5
    • plugin version 1.1.0

Suggested fix: in build_ios_frameworks.sh add the following to the carthage command: --no-binaries

VTCoco commented 5 years ago

Swift 5 compatibility is coming in the next hour :) Working on it.

VTCoco commented 5 years ago

It should be available @Tallyb, is it good on your side?

VTCoco commented 5 years ago

The npm is also updated: 1.1.1 version (cordova plugin add cordova-plugin-voxeet).

Tallyb commented 5 years ago

@VTCoco It seems like there a is a problem in the way you define it. While other frameworks (e.g. kingfisher) are built regardless of the local swift version. voxeet-ios-sdk is enforcing the exact version. So on the CI (and potentially other developers machines), the local version is 4.2.1 and then it fails.

VTCoco commented 5 years ago

Kingfisher has already published a patch 29 days ago for Swift 5 (with Xcode 10.2 beta) and is open source so --no-binaries works easly on it. https://github.com/onevcat/Kingfisher/releases/tag/5.2.0

However VoxeetSDK isn't open source so when a new Swift version is available we need to compile it again with the latest Swift version (and I don't had time to test Xcode 10.2 beta).

youssmak commented 5 years ago

I have the same issue and i use XCode 10.1 It seems that Xcode 10.2 is needed, and macOS Mojave is needed to install it. The Voxeet cordova project is now only compatible with Xcode > 10.2

So i have to upgrade from High Sierra to Mojave :/

VTCoco commented 5 years ago

@youssmak you have the reverse issue. If you still want time to upgrade from Xcode 10.1 to 10.2 you can still use VoxeetSDK before https://github.com/voxeet/voxeet-ios-sdk/releases/tag/1.3.3 and VoxeetConferenceKit before https://github.com/voxeet/voxeet-ios-conferencekit/releases/tag/1.1.6 which support Swift 4.2.

When you will be ready just upgrade them to >= 1.3.3 (VoxeetSDK) and >= 1.1.6 (VoxeetConferenceKit)

codlab commented 5 years ago

It'd be a good time to update ^^ not to mention security best practices :p