I upgraded to Mountain Lion yesterday, as I like to torture myself a little from time to time and see what an OS upgrade will break this time. I’ve only two things that didn’t work, Mailplane and Parallels. Mailplane needed to be upgraded to either version 2.x preview or to the Mailplane 3 beta.
Parallels also had an upgrade with support for Mountain Lion and installing that got it working.
I have two 24” monitors on my Mac and I run Parallels full screen on my 2nd monitor. On the new version with OS X Mountain Lion, when I click inside the VM, apps on my main display start flickering like crazy. There is a forum post on it here, but basically the fix for now is to disable 3d acceleration on your VM.
I’ve just spent the last 2 hours trying to upload an updated iOS app to Apple. Using Xcode Organiser, I’d get the message “An error occurred uploading to the itunes store” then it’d show me “Validation failed”. I successfully submitted an update for the same app a few days ago but had to reject the binary, so this was a little strange.
After failing numerous times and trying a few things, I went to Organiser, right clicked my archive and selected “Show in finder”, then right-clicked the xcarchive file and selected ”Show Package Contents”, compressed the .app file and uploaded it with the Application Loader (/Developer/Applications/Utilities/Application Loader.app). The first time it failed and I got the message that the validation failed due to “The app references non public selectors: multitaskingSupported”. That was easy to fix by just updating to the latest version of Appirator, however after that I was still getting a very generic error message about it failing.
The only thing I’ve changed with my system since I last submitted the app is that I installed some OS X updates, one of which was “Java for Mac OS X Lion 2012-001”. I know the app submission software uses Java, as I’ve seen it ask me for permission for something about allowing Java to accept remote connections while uploading an app. I remembered that I hadn’t rebooted since I installed the update, so I tried that, but still no luck.
In the end, I got fed up of wasting a so much time trying to work it out, so I pushed my changes to my git repository on my desktop machine (OS X 10.7), pulled them on my laptop (OS X 10.6) and it submitted first time directly from Organiser. I can see update “Java for Mac OS X 10.7 Update 7” waiting to be installed on that, which I’m slightly hesitant to install now.
I’m kind of frustrated I don’t have an answer to the problem and will look into it a bit more when I have more time, but using a different machine to submit it is a good option if you’re up against it.
It seems this was an issue with Java. I have since installed another Java update, rebooted and that fixed the issue.
Here is a good little tip to save you some time uploading your public key to a remote host (tested to work on OSX Lion).
ssh-copy-id copies your key up to a remote host (via ssh with your password) and even assigns the correct permission to home, ~/.ssh, and ~/.ssh/authorized_keys directories for you.
For some reason it doesn’t ship with OSX, but you can just copy it from your remote linux host and it’ll work fine.
First copy ssh-copy-id down from your remote host…
sudo scp firstname.lastname@example.org:/usr/bin/ssh-copy-id /usr/bin
Make sure it has execute permissions with…
sudo chmod +x /usr/bin/ssh-copy-id
Upload your key to the remote host (this will ask your for your password)…
ssh-copy-id -i ~/.ssh/id_rsa.pub email@example.com
You should see output like this…
Now try logging into the machine, with "ssh 'firstname.lastname@example.org'", and check in:
to make sure we haven't added extra keys that you weren't expecting.
Hopefully, that’s it. Next time you want to copy your public key up to a new host, you’ll just need to do the final step each time.
If you get the error “/usr/bin/ssh-copy-id: ERROR: No identities found” when you try to copy your key up, it’s basically because it can’t find your local public key file that you’ve specified (~/.ssh/id_rsa.pub in the example above). Have a look in your ~/.ssh/ to see if your public key is there and what the file is called (I’ve seen id_dsa.pub before as well).
This is useful for testing the effect of slow connections on mobile apps in the development emulators.
It uses IPFirewall rules to limit connections from your computer to the web (on TCP port 80) to 15KB per second (or any number you choose). Fire up the terminal and enter…
sudo ipfw pipe 1 config bw 15KByte/s
sudo ipfw add 1 pipe 1 src-port 80
Just make sure you remember to remove the rule when you are done with it…
sudo ipfw delete 1