Throwing AstroPlanner to the Lions

Windows-only users need not read further…

Crunch time is approaching more rapidly than I had predicted. i.e. AstroPlanner V2.0 is a week or three away from release, and so is Mac OS X 10.7 (a.k.a “Lion”). For Mac users of AstroPlanner, you could have a problem or two if Lion is released before AstroPlanner V2. What are these problems?

Problem number 1 is that AstroPlanner V1.x (including the latest released version: 1.6.1) is not a Universal Binary. i.e. it does not run natively on both the older PowerPC-based Macs and the newer Intel-based Macs. The application is PowerPC-only. When Apple started shipping Intel-based Macs, they also shipped an embedded technology in the operating system called Rosetta, which allowed PowerPC code to run happily on an Intel processor. This is why you can run AstroPlanner V1.6.1 on an Intel Mac with any version of the operating system up to and including 10.6 (“Snow Leopard”).

Unfortunately, the next release of the operating system, 10.7 “Lion”, no longer has the Rosetta technology built in, and so AstroPlanner V1.6.1 and before will not run at all on any Mac running Mac OS X 10.7, even if it was running on that computer before.

The solution to this, of course, will be to update AstroPlanner to V2.0 or after, which is a Universal Binary and does run natively on Mac OS X 10.4 or after.

Unfortunately, again, AstroPlanner V2 is still in the final stages of beta, and although it is fairly stable, especially on Macs, it has not been formally released. This will happen fairly soon, when the documentation is complete and a few remaining “show-stopper” bugs have been attended to. Hopefully this will be before Mac OS X Lion is released.

Problem number 2 is a bit more devious, but is something Mac users need to be aware of. If you have been using AstroPlanner V1.x and you upgrade to V2, then V2 updates your old documents and observation databases to the new version. However, it is not (currently) able to do this if it is running under Lion (for the benefit of the curious, the technical details are below). This means that you should upgrade AstroPlanner to V2 before you upgrade to Mac OS X Lion.

That being said, I am busy trying to find a solution to this problem, but it is proving to be challenging.

Bottom Line:

Before you upgrade to Mac OS X Lion, you need to upgrade to AstroPlanner V2, not only because the existing software (V1.6.1) does not run at all, but also in order to convert your databases and documents to the new format. Otherwise you’ll have to start from scratch.

I will update you if/when I figure out how to do the file upgrades from Lion.

The link to the V2 beta is:  http://www.astroplanner.net/alphabeta/

Why Lion can’t upgrade old databases and files

AstroPlanner V1.6.1 and before was constructed using an old compiler and framework that (a) did not compile for Intel-based Macs, and (b) used a proprietary SQL database format.

AstroPlanner V2.0 is compiled using a more modern compiler and framework that (a) does compile Mac Intel native apps, and (b) uses the more reliable open SQLite database format.

Unfortunately the older database format was deprecated (made obsolete) before the compiler supported Intel Macs, and so the software library is not available to access the older format from Mac Intel applications. This means that only Mac PowerPC or Windows applications can access the older format.

My initial solution (currently used in V2.0) runs a small PowerPC app in the background to do the conversion. This runs on Mac OS X 10.6 and before since Rosetta is available.

The planned solution is to run that conversion application remotely on a Linux server so that the conversion only requires an Internet connection. This is proving difficult, but I’m hoping it will resolve the problem when I do get it to work.

Additional Notes

1. If you have already tried the V2 beta you should be “good to go” if you let it convert your observation database, etc. However, you might want to check and make sure any V1 plan documents have also been converted.

2. No V1 databases or plan documents are changed when you do the conversion, since the V2 stuff is stored in a completely different place from where V1 stores stuff. i.e. running V2 does not in any way stop you from using V1.

3. If you convert from V1 to V2, then any further observations you make using V1 will not be logged for V2.

4. You can use V2 without paying the registration or upgrade fee and your conversions will get done. However, if you want to use your V1 catalogues, and use some of the more advanced features of V2, you’ll need to pay the upgrade fee (if you haven’t already).

5. The upgrade fee from V1 is currently $20, and will change to $25 upon release.