Follow these steps to upgrade Higher Logic Vanilla (Vanilla) when a new stable release is announced.
📝 NOTE: These instructions assume you’re using secure file transfer protocol (SFTP) to manually copy files to a server.
✔️ TIP: If your database is large (millions of users or comments), consider using maintenance mode before running database updates.
- Back up your database,
.htaccess
and conf/config.php
file somewhere safe. - Delete various files. This is necessary for the upgrade to go smoothly, and to prevent clashes if your filesystem merges directories together. Delete the following files.
- All files in
/dist
. - All files in
/cache
(except .htaccess
if you use Apache). - Any files listed in the version-specific upgrade instructions. If you're upgrading past multiple versions, delete the files from all of the version steps you're skipping (if they exist). For example, if updating from 2.6 to 3.1, upgrade steps for both 2.6 and 2.8 should be completed.
- Follow any other version-specific upgrade instructions.
- Upload the new release’s files so they overwrite the old ones.
- Delete all files in
/cache
(except .htaccess
if you use Apache). - Follow all version-specific instructions below. It is critical you delete the listed files.
- Go to
example.com/utility/update
to run any database updates needed. (404? See next paragraph.) If it fails, try it a second time by refreshing the page.
✔️ TIP: If you run into a problem, see Getting Help.
Update token
On newer versions of Vanilla, your update will request an update token. To find your update token, look in your config for:
$Configuration['Garden']['UpdateToken'] = '<your token will be here>';
If you don’t find the above in your config, you can add it manually. Use a strong random password generator to generate your update token.
From Vanilla 2.8 or earlier
- Delete
plugins/EmojiExtender
- Directory is now
plugins/emojiextender
- The addon key is still
emojiextender
- Delete
container.html
- URL-rewriting is mandatory. Your site should not be using URLs like
?p=/somepath
. Refer to the 2.3 upgrade notes for more information. - Delete
/library/Vanilla/Formatting/Embeds/linkEmbed.twig
From Vanilla 2.6 or earlier
- Delete
plugins/Pockets
(this is now in core) - Delete
plugins/akismet
(this is now in core) - Delete
plugins/Debugger
(This is no longer maintained and no longer works. See Debug Bar instead.) - Delete
applications/dashboard/models/class.assetmodel.php
📝 NOTE: A few addons have been moved out of core; these are no longer maintained, and may represent security holes for your site.
ButtonBar
(use the built-in Rich Editor or Advanced Editor)OpenID
From Vanilla 2.5 or earlier:
- Delete
plugins/HtmLawed
(this is now in core) - Delete
plugins/Tagging
(this is now in core)
From Vanilla 2.3 or earlier:
- Delete
/applications/vanilla/controllers/class.settingscontroller.php
🛑 IMPORTANT: If your site still uses URLs including ?p=
, support for this URL structure has ended. Follow these steps to switch to the simpler format:
- Confirm your server is set up to handle rewrites. On Apache, using the
.htaccess
file provided will accomplish this. Additional setup is required on nginx and other platforms. - Test whether it's working by visiting
/discussions
. If you see a discussions list (rather than a 404), it's likely set up correctly. - Open
/conf/config.php
and delete the line: $Configuration['Garden']['RewriteUrls'] = false;
.
Your site should immediately switch to “pretty” URL paths instead of using the ‘p’ parameter. If there is a problem, re-add the line to your config and do further troubleshooting.
From Vanilla 2.1 or earlier:
- Update ALL locales you have installed (in
/locales
). - Apache users must update their
.htaccess
file. - Delete
/themes/mobile/views/discussions/helper_functions.php
- Delete
/applications/dashboard/views/default.master.php
From Vanilla 1.0
Upgrading from 1.0 (any version) requires a full migration (see Migrating to Vanilla to learn more).
- Themes and plugins are not compatible.
- Backup your Vanilla 1 data and files completely, and then delete them from your server before attempting to install Vanilla 2.