v1.5.0, A Long-awaited Release

I suppose in the grand scheme of things, the wait between the last NodeBB release (v1.4.6) and this release, v1.5.0, has not actually been long, though it has felt like so because the development team has been working on it for quite some time. In fact, the first closed issue of this milestone was actually completed in mid-December, and we've been anxiously waiting for the right time to release it.

The reason why we've held off on releasing v1.5.0 until today is so we could fit in as many breaking changes as we could at one time. We've received constructive criticism in the past about how difficult it was to upgrade NodeBB due to breaking changes (some unintentional), and so since the last minor release (v1.4.0), we've changed our strategy once again so that subsequent releases along the same branch should be more stable.

Any changes that contained breaking changes (or were likely to), were moved to the develop branch for further testing, while master was kept as a pseudo-stable branch, with fixes and occasional new functionality introduced as we saw fit on a case-by-case basis.

While there were still some commits that made it into master that were breaking in some way, they were completely unintentional and we will continue to try our hardest to ensure that upgrading NodeBB from one patch version to the next should happen painlessly.

Without further ado, here are some new features we're proud to introduce!

New Flags Interface

We've heard your calls for a revamped moderation interface, and our new system hopefully addresses many of your concerns. Instead of flagging posts, you are now able to flag user profiles as well. These will be collected in a centralized flags management page, accessible by Administrators, Global Moderators, and Moderators via the user dropdown at the top right.

The new system allows you to assign moderators to a ticket, and exposes states so you can track which tickets have been handled.

Give it a shot and let us know how we can make it better!

Automatic Language Detection

NodeBB now detects whether an incoming user is using a different language on their browser, and adjusts its interface language accordingly. When the user registers, that setting should be saved as their logged-in default.

Upgrade Script upgrade

We've been using the same upgrade script (with a couple minor fixes here and there) since the v0.1.0 days, and it's high time we changed it up! We now no longer record script completion via a schemaDate value, and instead record the individual times specific scripts were run. We also added a fancy progress bar so you can see how far along some upgrade scripts are.

Upgrade script animation

How do I get this upgrade?

As with all upgrades, you'll want to back up your database and uploaded files (files found in public/uploads). Stop NodeBB if running, and switch to the v1.5.x branch:

$ cd /path/to/nodebb
$ git fetch
$ git checkout v1.5.x
$ ./nodebb upgrade

If you are using a custom theme or many custom plugins, you may need to update them for compatibility. The NodeBB Package Manager will automatically install new plugin versions, though if you are running your own theme, you may have to ensure that it is up to date.

A list of all breaking changes can be found here:

A list of closed bugs and new features can be found here:

On behalf of the entire NodeBB team, thank you for using our software! Your excitement and continued feedback help us make NodeBB better and better!

Julian Lam

Read more posts by this author.

Toronto, Ontario