The Upgrade

When I sat down to figure out the framework situation for Nova, I had to step back and look at how long it might take to develop the system from the ground up and where CodeIgniter sat.  At the time, CI sat in the 1.5 range.  Then, 1.6 came out, before I’d even started.  By the time I’d laid down the first lines of code, CI was at 1.6.3, so I decided that 1.7 would be the version of CI that Nova 1.0 was released off of.  I even went so far as to declare the CI upgrade as an M2 blocker (in layman’s terms, it meant that M2 could not be closed until the upgrade to CI 1.7 happened).

Last week, EllisLab released CI 1.7 with a slew of new features that I was looking forward to.  I was cautious though, because there’s been a lot of work done so far on Nova, so I didn’t want things to explode in my face.  I carefully looked over the changelog, and when I was satisified that the impact would be minimal, I made the leap and upgraded.  The upgrade process, for anyone who hasn’t done it, is very easy.  Replace a few folders and bingo, up to the new version.  Because of the new Session class, I had to add a new field to the sessions table.  So I dropped it into the install file and cleared the data from the system to re-install.  Then the problems began.

The first step of the install process failed abruptly with errors being thrown about array to string conversion and wrong datatype for the implode in the Database Forge.  Uh oh, not good.  So I dug a little deeper.  Turns out EllisLab made a handful of changes to the Database class to support safe queries with aliases (and a bunch of other things).  In the process of re-writing that, they didn’t take in to account that, in some instances, the Forge would pass an array to the protect identifiers method.  It took about 10 lines of code, but I managed to fix it.  Of course, it took the better part of 2 days to drill down to the problem and figure out how to fix it.

Then, today, when working on some forms, another error was thrown.  Again, turns out that EllisLab had made a function in one of their helpers private, hence the errors.  Only this time, the changelog didn’t mention that at all.  Lovely.

This really just goes to show you, when Nova comes out and you see a new version of CI come out … don’t upgrade on your own! Leave that to us so that we can fumble around with it.  ;)

The Transparent Guard Against “Oops”

The whole time I’ve been developing Nova, I’ve been trying to think about those common problems that people have and implement easy fixes or alternatives.  One such area that always seems to be an issue is remembering to backup your database before doing an update.  Seems pretty straightforward if you’re used to doing it every time.  However, there are always people who just dive right in to the update, do something wrong, and don’t have a backup of their database.  That’s what we call the biggest “Oops” of all.

We want to make updating as painless a process though, so we’re going to safeguard against that by providing a transparent option.  Whenever you go to do an update on Nova, it will automatically backup your SQL data and drop it into a backups folder in your application, then continue with the update.  If something goes wrong, you have the data right there to go in and reload into MySQL.

It’s just one of those little things that’s going to make life a lot easier for users when doing updates!

A Few Stats

I don’t normally do this, but I thought I’d share some numbers with everyone.  Since launching SMS 2.6 back in July, it has been downloaded 1,108 times.  I’d say that’s a pretty respectable number.  It breaks down in the following way:

  • 2.6.3 – 119 times
  • 2.6.2 – 433 times
  • 2.6.1 – 203 times
  • 2.6.0 – 353 times

Now, it’s important to mention that these numbers don’t mean 1100 sims use SMS.  It means that it’s been downloaded that many times.  Of course you may have people who download several copies and what not, so that can skew the numbers.  Even still, having SMS 2.6 downloaded 1100 times is impressive and I’m very happy with these numbers.  So what other kinds of numbers do we have?  Take a look.

  • The Anodyne site has been accessed 7,066 times since July.
  • The XML file used to broadcast the latest version of SMS from our server has been hit 115,130 times since July.
  • The ship class skin has been downloaded 239 times since being released in July.
  • The Deep Space Nine MOD has been downloaded 39 times since being released.
  • The Romulan MOD has been downloaded 17 times since being released.
  • The Battlestar Galactica MOD has been downloaded 40 times since being released.
  • The Enterprise MOD has been downloaded 11 times since being released.

So there you have it.  I think I’m going to provide some download stats with each quarterly report from now on, just so people have an idea.  Thanks to everyone who’s made SMS such a successful product!

Back to Top