blog

archives

Discourse 2.5 released!

Jeff Atwood June 24, 2020

Today we release Discourse 2.5, building on Discourse 2.4 from February. For post 2.0 releases we’ve chosen a new set of codenames based on the history of human communication; this release is Greek.

Bookmarks With Reminders and Descriptions

Bookmarking a post has existed since the earliest versions of Discourse, but it was a very simple feature. Maybe, to be honest, a bit too simple. In this release, we’ve enhanced bookmarking to make it far more effective — you can now optionally set a reminder date to go along with that bookmark.

You can also add a description to the bookmark so you can remember exactly why you wanted to be reminded, and there’s an enhanced bookmark tab on your user page to keep track of all your bookmarks (and reminders).

This makes a core Discourse feature a lot more practical, and, dare we say … useful?

Multiple User Invite Links

Every Discourse community needs an influx of new users to become a thriving community. In earlier versions of Discourse, staff users could send out invites, either as emails or join links — but only to one person at a time. In this release, we’ve added the ability for staff to send out an invite link that works for many people, as many as you want, with an expiration date, and an optional group membership too.

If you’re a staff member, visit the invites tab on your user page and press the Send Invite button to take advantage of this new feature — invite a lot of great new community members to your Discourse by simply sharing a link! You can also track how your invite links are doing, and how many times they have been redeemed, from the same tab on your user profile.

Multiple Email Address Support

In Discourse, email is your identity. But what happens when you have multiple email addresses, as most of us tend to do in today’s connected world? Good news! We’ve added support for multiple email addresses to Discourse!

No more worrying about remembering the “right” email address. You can now log in and even reply via email using any of your associated email accounts.

To add one or more additional email addresses, visit the account tab in your user preferences.

Native Timezone Support

As Discourse becomes more of a global tool for teamwork, we find ourselves needing to know a bit more detail about our teammates — such as what time zone they work from, so we’re not asking them questions about work at, say midnight their time?

A quick visit to someone’s user card lets you know what time of the day it currently is for them, like so:

If enabled, setting your timezone is as easy as visiting your user preferences, under the profile tab:

But you shouldn’t need to, because Discourse is smart enough to infer your timezone from your browser settings at the time of account creation!

Static Page Publishing Support

Discourse makes for an excellent discussion and collaboration system, but it’s not much of a generic web page publishing system. If all you need is a single, static web page you had to install some other software along Discourse. Well, not any more!

We’re proud to offer a simple new feature that turns any Discourse topic into a standalone web page, with an URL of your choice:

Be sure to check the enable page publishing in your site settings, then use the admin wrench on the post to initiate Page Publishing.

Automatic Reply Deletion

Discourse has robust support for wiki topics that can be collaboratively edited. But we also noticed that replies, comments, and clarifications tended to pile up as replies at the bottom of these wiki topics, sometimes hundreds of them. And who has time to read hundreds of replies, when all the important information you need should have been edited into the first post?

To help keep wiki topics clean and navigable, and to encourage people to edit the important information into the first post where it belongs, we’ve added a new topic timer type to automatically delete replies after a certain number of days.

(Note that there’s also a companion site setting to protect any posts from deletion if they have a certain number of likes, so they can be curated more effectively.)

Removal of Internet Explorer 11 Support

As we announced in January, this is the last release of Discourse which supports Internet Explorer 11. All future Discourse releases will require a recent version of Microsoft’s newer browser, Edge. To ease this transition, we’ve significantly enhanced our basic, read-only HTML view which we serve to all older browsers.

And So Much More!

Our team works hard on every release, and there’s just too much going on to cover in one blog post! View the release-notes tag to get a detailed account of changes in every beta leading up to this release, or see the full release notes.

Easy One Click Upgrade

If you are on our hosting, you’re already upgraded. Otherwise, upgrading is as easy as clicking the Update button linked from your Discourse dashboard.

Discourse Admin Dashboard, version upgrade notice

We have a public exploit bounty program at Hacker One as a part of our security policy. We believe in being secure by default at Discourse, and we follow up on any security concerns brought to us. There are several important security fixes in 2.5, so we urge everyone to upgrade as soon as possible.

If you don’t have a Discourse to upgrade, why not? Install it yourself in under 30 minutes, or start an absolutely free, no strings attached 14 day hosting trial!

Thank You

A huge thanks to our customers. We quite literally could not do this without your direct financial support, and we’re proud to give our open source code back to the world alongside you.

You can measure the health of any open source project by one simple metric — its contributors. Thanks for the code contributions in this release from:

rimian, magjac, sbernhard, nikolai-b, StarWar, iunctis, pfaffman, zcuric, SidVal, angusmcleod, schungx, runlevel5, wpp, vkozyrev, nylen, discoursehosting, Ahmedgagan, artemv, pacharanero, melhosseiny, danielhollas, weewey, mrsimo, sau226, weallwegot, hellekin, Chow89, p-betula, ursinewalrus, fastengineer, mikroskeem, jpowell, pbenkoe, josuesantamaria, dave0688, bmorrical-ICC, dandv, hellcp, fzngagan, benbowler, pnoeric, blueworrybear, mentalstring, rizka10, frafra, rukku, cketti, legalosLOTR, tmm1, johnsonm, adqm.

Many thanks to the translators who generously contributed their time and effort translating Discourse into dozens of languages for this release.

As always, thanks to the greater Discourse community for posting support / bug request / feedback topics on meta.discourse and helping us improve Discourse. If you operate or support a Discourse community, we would love to hear from you!

Wondering what’s coming up next for Discourse in version 2.6 and beyond? Visit the releases category to get a sneak preview of what we’ll be working on next.

0 comments

COVID-19 and Discourse

Jeff Atwood April 2, 2020

The world is in the midst of a global pandemic. I’m sure you’ve seen a lot of these messages, so we’ll get right to the point.

As a completely free open source tool for coordinating online work, Discourse can possibly help:

  • For accredited schools, universities, doctors, and any other credentialed experts who are working to combat COVID-19 we are offering a three month free business hosting trial. Please email us at team@discourse.org to ensure eligibility first. At the end of that three month free period we’ll work with you to make sure things go smoothly. We’re here to help.
  • If you need assistance setting up or operating your COVID-19 Discourse community, read through the Calling Out for Volunteer Community Managers topic. Feel free to PM a volunteer near your time zone for possible assistance — but remember you can’t PM until you achieve trust level 1, which will take a bit of reading.
  • If you wish to host yourself, Discourse is forever 100% free open source software. The minimum system requirements are a $5 per month VPS. If you would prefer someone else take on setup, follow the links at the bottom of our 30 minute setup guide.

If we work together, we can all get through this.

We hope you stay safe with your loved ones.

0 comments

Discourse 2.4 released!

Jeff Atwood February 25, 2020

Today we release Discourse 2.4, building on Discourse 2.3 from last year. For post 2.0 releases we’ve chosen a new set of codenames based on the history of human communication; this release is Cuneiform.

Hardware Security Keys

We shipped support for authentication apps in prior releases of Discourse, but nothing defeats hacking and phishing as definitively as hardware security keys.

Now that browser support is finally mature we’re proud to ship full support for the U2F / Fido security key standard in Discourse.

Register (and give cute pet names to) as many security keys as you want for your account. You can also make second factor authentication required for staff only or all users via the enforce second factor site setting.

Strict CSP On By Default

We started down the CSP road with Discourse 2.2, making CSP standard for all new Discourse installs, but not enforcing it on existing older installs. As of this release, we’ve forced the strictest CSP mode for all Discourse installations — so your site, and your users, will enjoy the absolute highest level of protection from hacking and exploits.

See Mitigate XSS Attacks with Content Security Policy for full details on CSP.

Revamped User Menu

The user menu is now tabbed. Enjoy direct access to notifications, bookmarks, and messages right from your user menu.

Clicking or tapping your username lets you jump into your summary, activity, messages, preferences — or log yourself out.

Bigger, Badder Emojis

One of the general principles in Discourse is that posting a link on a line by itself causes magic to happen … in the form of oneboxing. We’ve decided to emulate common chat applications and extend that concept to the glorious world of Emoji!

When 1-3 emoji are typed on their own line, they’re now automatically made LARGER.

Better Insert Hyperlink

When inserting a hyperlink from the composer, all you could do is paste in an URL. How dull! Now you can dynamically search for existing topics directly from that very same field. Just start typing to begin your search!

Tag Enhancements

Tags, the more flexible, lightweight cousins of categories, gained a bunch of new functionality in this release:

  • Set default tracking, watching, muted, and watching first post state for tags across all your users.

  • Require that a topic contain at least one tag from a tag group.

  • Synonym support: similar tags, common tag mis-spellings, colloquialisms, and more will now be automatically combined.

  • Tags can be easily merged at will.

  • Search now returns tags, if a tag matches your search term — and you can search within a tag group by typing #tag-group in search. It’s also possible to search for tagged or untagged topics using in:tagged or in:untagged.

Improved API Key Security

The Discourse API is a powerful tool for interacting with a Discourse site. We’ve made major improvements to security and functionality for API keys in this release:

  • Users can now create more than 1 API key, so individual keys can be revoked if compromised.
  • API keys can now include a description, letting you keep track of what each key is for.
  • Keys can be revoked, preventing them from being used, without fully deleting them.
  • Unused API keys will be deleted after 6 months without use. This is configurable via the revoke_api_keys_days site setting.

Poll improvements

Polls can now be presented as pie graphs, and restricted to voting by specific groups.

Polls can be set to close at a certain date and time, and Staff can also export poll data with a single click for further analysis if needed.

Award a badge to a set of users

People kept asking us if there was a way to award an arbitrary badge to an arbitrary set of users. Indeed, there wasn’t an easy way to do this.. until now!

Press the “Bulk Award” button to trigger a badge award to a simple CSV list of usernames or email addresses. See this topic for more details.

And So Much More!

We work hard to make every release amazing, and there’s just too much to cover in one blog post! View the release-notes tag to get a detailed account of changes in every beta leading up to this release, or see the full release notes.

Easy One Click Upgrade

If you are on our hosting, you’re already upgraded. Otherwise, upgrading is as easy as clicking the Update button linked from your Discourse dashboard.

Discourse Admin Dashboard, version upgrade notice

We have a public exploit bounty program at Hacker One as a part of our security policy. Being secure by default is a core value at Discourse, and we always follow up on any security concerns brought to us. There are several important security fixes in 2.4, so we urge everyone to upgrade to it as soon as possible.

If you don’t have a Discourse to upgrade, why not? Install it yourself in under 30 minutes, or start an absolutely free, no strings attached 14 day hosting trial!

Thank You

First, thanks to our customers. We’re able to build a better Discourse every single day with your direct financial support.

Second, it’s not open source without code contributions! Thanks for the pull request contributions in this release from:

xrav3nz
angusmcleod
kimardenmiller
LeoMcA
pfaffman
hooopo
localjo
schungx
sbernhard
adamcapriola
fzngagan
rimian
majakomel
mrfinch
AhmadFCheema
mjrbrennan
ermolaev
jasquat
LS80
and0x000
rolabrie
SidVal
danielhollas
nylen
Arkshine
muhlisbc
jcalvento
rrooding
cryzone
ryan-boder
nachocab
hectorbus
dandv
JuanitoFatas
yosiat
xronos-i-am
Stanzilla
benny-burkhart
FunnyHector
sgerrand
vijayanandnandam
rajkumarkandasami
rafaeldriutti
kirylpl
merefield
kairyou
rjherrera
nepeat
Manningham
samamorgan
janko
discourse-plugins
YesThatAllen
aakarsh12345
yarons
barreeeiroo
fushnisoft
discoursehosting
chrispanag
RubenHoms
recursivecodes
ranjan-purbey
eshpakovsky
anle1337
AndrewSverdrup
dickmao
dominic-berta
anythingagency
jesus2099
ranss
joshmoore
Arkweid
SantosGuillamot
julienma
nedbat
eduardopoleo
mabras
jacobherrington
qrush
curiousdannii
xfix
jelly
owalk
bhipple
jwjwyoung
AlexP11223
rizka10
mintsaxon
adqm
brechtm
mdoggydog
artemv

Many thanks to the translators who generously contributed their time and effort translating Discourse into dozens of languages for this release.

As always, thanks to the greater Discourse community for posting support / bug request / feedback topics on meta.discourse and helping us improve Discourse. If you operate or support a Discourse community, we would love to hear from you!

Wondering what’s coming up next for Discourse in version 2.5 and beyond? Visit the releases category to get a sneak preview of what we’ll be working on next.

6 comments

For more blog posts, visit the archives