The update process for moving to Nova 2.7 is a more involved and manual process than previous versions of Nova 2. Unfortunately this couldn't be avoided due to upgrading CodeIgniter (the underlying framework Nova is built on) to version 3. The process explained below only needs to happen one time when you first upgrade from any version prior to 2.7.0. After you've gone through this upgrade, any future updates will use the normal update process.
Make sure you backup both your files and database. While we don't anticipate any problems, if something does happen you'll be glad you have a recent backup of your site to restore from. Not sure how to do that? Check out our guide on backing up Nova.
Before you get started updating Nova, make sure you have the following things ready to go:
Under normal circumstances, we don't ask Game Masters to update any files in the application
directory. However, the update to CodeIgniter 3 required that many of the files in the the application
directory be updated.
To start, rename the following directories in the application
directory:
config
to config_backup
controllers
to controllers_backup
core
to core_backup
libraries
to libraries_backup
models
to models_backup
And rename the following files in the root directory:
index.php
to index_backup.php
message.php
to message_backup.php
With the directories renamed, you can upload the new copies of the following directories from the application
directory in the Nova zip archive:
config
controllers
core
libraries
models
And upload the new copies of the following files into the root directory from the Nova zip archive:
index.php
message.php
If you have made any modifications to any of the files inside these directories, you will need to re-apply the changes to the new versions of the files. Do not simply copy the old file back into the new directory as it could break things.
Do not copy the database.php
file back into the config directory. Going through this guide will prompt you to enter your database credentials and re-create the database config file.
Once you've finished backing up your site (because you already did that, right?), rename the nova
directory to nova_backup
on your server. (This ensures that if the update goes awry you still have a copy of the working Nova core from before you attempted the update.)
Over the years we've seen countless problems with simply trying to overwrite the directory. The surest way to avoid those issues is to rename the directory and upload a new copy.
With the nova
directory renamed to nova_backup
, you can now upload the nova
directory from the zip archive you downloaded from the Anodyne site. (This will give you the code for the latest version.)
Note: if you navigate to your main site after uploading the new files, you will be redirected to the URL: message.php?type=nova27
. This page will tell you that an update is required. We've done this to avoid Nova throwing an error due to some of the changes that were made. This is expected behavior. Clicking the button on that page will take you to the update process.
Navigate to {your-site}/index.php/install
in your browser and you'll be guided through the update process. For this update, you'll be prompted to configure your database connection again. After completing the database config file wizard, you'll be able to run the update. Once the update process is complete, you'll be directed back to your site and will be ready to use Nova again.
The way that sessions (data about the current visitor) are handled was completely re-written in CodeIgniter 3. Due to these changes, Nova 2.7 has to ship with the session driver set to files
instead of database
. There is no way around this due to how pervasive sessions are in web applications. Doing this prevents unrecoverable errors from happening the moment a user hits the site.
This change, however, prevents Nova from being able to easily pull who is currently online. In order to fix this issue, you will need to make a change to the main config file located at application/config/config.php
. Add the below line at the end of the file to change the session driver from files to database:
$config['sess_driver'] = 'database';
With the update complete and your site back up and running, you can now delete the nova_backup
directory from your server as well as all of the backup directories in your application
folder.
Of course it goes without saying, don't delete anything that you may need to access later. If you're not sure, you can always download the directories to your computer for safe keeping.
We've given both the Pulsar and Titan skins a much needed visual refresh. If you're using either skin and are happy with them, you don't need to replace them, but if you'd like to use the updated versions, you can delete the default
and titan
directories from application/views
and replace them with the versions in the Nova zip archive.
We've done everything we can to limit any impact to existing skins with this release. Even still, there have been changes to core files that could cause small spacing issues on some pages.
Log in with your AnodyneID to rate this article or submit the article for review.