MacOS – Upgrade from Snow Leopard to Mountain Lion in non personal & large scaled development environment

developmentmacossnow leopardupgrade

My company is still running Snow Leopard and we're thinking of upgrading to Mountain Lion soon. We are developing iOs and MacOsX applications and have a small break between the old projects and the new projects. What this means is, that we can start over with the new applications on the new version. But what happens to the old versions? They don't have ARC, Storyboards etc… I know you can switch off ARC but we want to make sure that we will still be able to commit updates to our old projects and we can't efford to put lots of time and effort in the conversion process.

I spent some time reading the user comments below the xCode update on the AppStore and read that the new Version deleted old projects. Of course we have a backup but this makes me uncertain if it's the right step.

Does anybody have experience how this works in a non personal environment? At home I'm running Mountain Lion and xCode converted small projects by itself. I'm just not sure about large scale projects…

Best Answer

Tipps what to consider when doing an upgrade:


Before you start

  • Take your time for a good backup! - You can regard data which is only located on one harddrive as non existend.

  • Start with one system first and try out everything before doing the major upgrade.


Installation

  • Consider it takes way more time than it does at home! The MountainLion Download took >5 hours because of a symmetrical internet connection. Installation time was ~1 hour (MacMini 2009 - 4Gigs Ram 1067). + xCode Downloadtime ~1hour

  • Before you install the new xCode make sure all your projects and your old xCode Dev Folder are backupped.

  • When the installation routine asks you to delete your old xCode do so (I didn't do it and now I have to manually assign each project to the new xCode. I've to delete the old version manually too and it's a bit more complicated if you have to do the research which files you are allowed to delete and which not)

  • Then you have to download the different xCode libraries. There goes at least 1 additional hour.

Downloading the libraries

  • Time of the downloading- and installation process so far: ~8 hours. (Keep in mind we've a slow internet connection)

Projects

  • Copy your projects and don't run your conversion and tests on the original.
  • When you open the project you'll probably receive lots of warnings. Don't Panic!
  • When clicking on the "Validate Project Settings" warning xCode will suggest to convert your project for you. I've done this for 3 iOs applications (Build Target: 4.3) now and it worked every single time. Let it create a snapshot for you. Just in case.
  • If your app has already been code signed you'll probably receive the "Target Integrity" warning. In every single case it worked for me to edit the path for the "entitlement.plist". (Just click the warning and edit the path at "Code Signing Entitlements") Code Signing Entitlements
  • It may happen that you've to change the deployment-target. To do so go to the Project Navigator (cmd + 1), click on your project's name and then Summary. There you can edit your Deployment Target.
  • If you get warnings on deprecated methods you should search stackoverflow.com for your particular case. If it has to do with NSURLConnection look here.

To be continued...