Blog : Suit My Mind - Software that suits you

This Week in Edge Cappuccino (10)

See last week post here.

Cappuccino 0.7b

This week, Cappuccino 0.7b has been announced. It represents a lot of changes, a lot of commits. Unfortunately, I cannot find the time to go through all of them. So, what I'll do this week is recap what are the main changes and give you some pointers to the code. Next week, I'll start to go through the commits in the 0.7b branch as I usually do.

Theme support

As mentioned in the original 0.7b announcement, theme support is still very early and its difficult to not use the built in theme. Here are links to the Cappuccino theme implementation classes : AppKit/CPTheme.j and AppKit/CPThemedAttribute.j. With 0.7b, you also get an early version of the Aristo theme, designed by the Sofa team. Here are some interesting threads on the mailing-list about themes : here and here.

Platform support

Objective-J is now able to ship separate code for different platforms. This will allow low level frameworks, such as AppKit, to be implemented differently depending on the destination environment (iPhone, browser, command line, ...). This shouldn't have too much incidence on your code.

New build system

The build system now uses Rake instead of steam and ant. The new dependencies to build version 0.7b are java, gcc, ruby, rubygems and the plist gem. (You'll also need git installed if you want automated setup for ojunit)

On Mac OS X, java, ruby and rubygems are installed by default. On Ubuntu Linux, you have to install them. Here are the commands that worked for me. I've also published a screencast that explains how to build 0.7b.

Capp

Steam has now been replaced by capp. To create a new Cappuccino application, all you have to do is capp my-app. You can also use the capp command to create a new Cappuccino project based on a Nib file : capp my-app -t NibApplication. Here is an interesting thread about Nib files.

Beta

A lot of work has been accomplished for this release, but remember that it is still beta. You're more than welcome to help test it and report bugs, discuss it on the mailing-list and on IRC.

Feel free to post your comment to this post if you think something important is missing.