gojek / courier-iOS

Courier iOS
38 stars 15 forks source link

Convert MQTTClientGJ Pod into XCFramework #28

Closed sanju-naik closed 1 year ago

sanju-naik commented 1 year ago

While building with Bazel MQTTClientGJ was throwing compiler version mismatch error. Since its a objective-C Pod we cannot add BUILD_LIBRARY_FOR_DISTRIBUTION = YES flag to it, hence converting it to a pre-built XCFramework.

Converting it to XCFramework solves the issue.

This MR:

We did try to solve it the way it's integrated today, i.e distributing it as a source framework, and raised the issue on - https://github.com/bazelbuild/rules_apple/issues/2247 but responses were not helpful in resolving the issue, considering our project Timeline we are going ahead with merging this as XCFramework we will come back to this again in future and debug why adding it as a source code framework doesn't work.

sanju-naik commented 1 year ago

@alfianlosari mas build is green now please review. Also I have bumped only MQTTClientGJ Pod version and updated it in other Podspec, please review that change also once.

sanju-naik commented 1 year ago

@alfianlosari iOS 15 Crash is fixed mas, it was happening because I didn't change the deployment target while generating XCFramework and it was set to 16.4 by default hence it was causing that issue.

The crash fix is verified by QA here - https://gojek.slack.com/archives/C0LBUG18U/p1694068730020989?thread_ts=1692862446.539609&cid=C0LBUG18U .

Please review review this MR mas.