Finally got around to upgrading this blog to the 4.0 series of Typo. I did have a couple of problems with it, but nothing major. I started by trying to use the new Typo gem, doing a local install into my own gem folder. This failed because one of the dependencies for Typo requires Ruby 1.8.4, but I only have 1.8.2 available to me on Dreamhost. I almost went down the path of building my own ruby binary (I’d done this before when Dreamhost was slow to catch up) but decided I’d try installing Typo the old fashioned way:
svn co http://typosphere.org/trunk typo
I copied my old database.yml file into the config folder. Then I edited config/environment.rb to force rails into production mode. When I ran ‘rake migrate’ I got an error:
== FixCanonicalServerUrl: migrating ============== rake aborted! You have a nil object when you didn't expect it! The error occured while evaluating nil.gsub
A quick google search showed other people with the same problem, but no solution. I made a quick patch to db/migrate/051_fix_canonical_server_url.rb that let me get past the problem. After the variable ‘b’ is initialized, I added:
b.settings['canonical_server_url'] ||= 'http://blog.globalreset.org'
I really like the changes they made to the admin interface. It’s much easier to handle deleting spam comments now. I have yet to see how the Akismet interaction works though. I did have a problem with comment deletion that I haven’t solved. If I create a new comment which is unclassified (neither ‘ham’ nor ‘spam’, whatever that means), I can’t delete it. I see an error in the production log that you can’t delete a ‘frozen hash’. I also had to modify the way my theme invokes the sidebar. They simplified it down to just ‘render_sidebars’ instead of the complicated invocation of a particular action on the sidebar controller. I’d expect fancier themes than mine to have a few more problems. But, I think the management interface upgrades are enough reason to go through the effort.