NUDelta/ce-platform

ugh building for the new year (e.g., Swift 3 -> 4)

youralien opened this issue · 0 comments

Prerequisite: Setting up the build to work in Swift 3, before converting

Need to import Delta A certificates by

  1. Downloading a mobile provisioning profile from https://drive.google.com/drive/u/0/folders/1xrkiWaliIEx7Lh1UMbgP886wWLGza2UF

  2. In the xcode workspace (i.e. open Cerebro.xcworkspace), import the provisioning profile

image

  1. Make the project bundle identifier match the delta A version

image

Converting by changing the proper cordova plugins

Some of the cordova plugins are the things that set the SWIFT_VERSION.

  1. I uprgraded meteor/cordova-plugin-meteor-webapp from 1.6.5 to 1.7.0 (it was not obvious that was the latest version meteor/meteor#10516)

  2. Ran this command, which allows us to pull in the changes for this plugin package meteor update --release 1.8.1-issue-10516.0

Get new provisioning profiles

  1. All the newest ones are here https://drive.google.com/drive/u/0/folders/12BVPqFqKDIjM67jh-qbtFX2s2N0gf_bP

But the newest certificate made for CN is Delta Lab D

  1. Download Delta Lab D files from above GDrive link
  2. Have to create .pem files for D, and copy them to private/ios directory. More details here https://docs.google.com/document/d/1hGfRifpmOxmqZu5AgRJi0OF4DSUgLkNx-aAs9YVxM34/edit

Converting Manually (Lets try to avoid this!)

So you have a problem with Swift 3, but need to convert!
image

But you realize that your xcode is not 10.1, the one that supports swift convert. So follow these instructions to get the 10.1 version of xcode.
https://stackoverflow.com/questions/14756026/how-to-downgrade-xcode-to-previous-version

Now that you have it, use xcodes swift convert
image

But you do not know what to do with the manual swift convert stuff :O
image

There's some which says "autofix", but here's a list of things you have to manually fix.
UIBackgroundTaskIdentifier.invalid -> UIBackgroundTaskInvalid
image
image