Time for a blog post methinks and good timing too as I’ve recently updated the Matrix provisioning system to support Invalid Message Channels in its routing engine. An invalid message is any message that can’t be processed for whatever reason including if the target system is down. This turns out to be quite convenient as the messages can be rerouted to the target topics when the system is back up.
As part of the porting matrix from Java to C# I’m installing .NET on a vmware Windows 7 image and seem to have inadvertently stumbled into a version bump mess. .NET is currently at 4.0 with 4.5 to be released soon but this is apparently an ‘in-place’ upgrade rather than a ‘side by side’ replacement. Sounds not too bad until you find out that apparently 4.0 apps may crash on 4.5 due to internal gubbins that won’t be apparent until runtime. Thanks M$! But I am rather enjoying the intellectual stimulation of a new platform and language.
.NET Versioning and Multi-Targeting – .NET 4.5 is an in-place upgrade to .NET 4.0
.NET 4.5 is an in-place replacement for .NET 4.0
Microsoft’s .NET Framework 4.5 Versioning Faces Problems Ahead
And so it rumbles on, this joke OS. 10.7 is what I give it out of a hundred. This time it’s the network not coming back after sleeping. According to this thread you can variously turn off/on wifi to get your wired connection back, invoke network in system preferences, or, get this, start a backup. I mean, what’s the point of releasing crap like 10.7? There has obviously been very little testing.
This time it’s XCode. Refuses to install from the app store. None of that fancy leaping from the store into your dock with a progress bar to inform you it’s downloading. Nothing. It just sits there saying “Installing” then installs nothing. Thinking it had opened a wormhole in space and time to download its multi-gig bulk in super quick time I tried XCode in my dock. It blew up complaining it wanted 10.6 back. Sigh. Uninstall the now dud XCode:
delete XCode from the dock, login to the Apple Developer site and download the DMG from there. But wait. Where are the commandline tools? Sigh. They’re making it as difficult as possible to develop on this platform now. You need to go into XCode -> Preferences -> Downloads and install them from there. Or you can download them separately from the SDK site.
This is so tedious, having to go through settings putting them back to the ‘default’ before OS X Lion stamped it’s iOS footprint all over them. This time it’s Safari opening with the last page viewed no matter what its settings are. You have to go into a completely unrelated area to sort this. This smacks of iOS interference as that’s what you do on iOS, use the Settings App to change some global settings. Well OS X is NOT iOS.
System Preferences -> General
Restore windows when quitting and re-opening apps
With Selenium requiring a browser to run the tests, if you don’t have one installed you’ll get the error:
sessionId should not be null; has this session been started yet?
You’ll also get this error if you have a valid browser configured in the test code but not installed on the system. However the problem with running Selenium tests on a headless Bamboo server is, there’s no display. So here’s how to sort that on Suse Linux.
Install Xvfb from yast2 and the xorg-x11-server package
Startup Xvfb in the background:
Xvfb :99 -ac &
and set the display to use the one you chose. I normally do this in / etc/profile.
Then exit and go back into the shell or do:
source / etc/profile
start and stop Bamboo and the Selenium tests will run.
Seriously, are they taking the mickey? I upgraded to OS X Lion and thought the browser had crashed. No way could I scroll down. Then I realised they’d decided my laptop was a phone and I had to scroll as if on the iPhone. Excuse me? Are they having a laugh? Apparently they call it ‘natural’ scrolling. I call it crap and here’s how to go back to a really natural scrolling movement:
System Preferences -> Trackpad
Uncheck this garbage:
“When using gestures to scroll or navigate, move content in the direction of finger movement”
You wouldn’t have liked to have seen which finger I was moving when they did that.