Discourse 2.1.0.beta4 Release Notes

New features in 2.1.0.beta4

Display out of date themes on admin dashboard

We added an alert to the admin dashboard when active themes and theme components are out of date, so it’s easier to stay up to date.

Bump default max size of uploads from 3072K to 4096K

Based on average photo size metrics from modern smartphone devices, we increased the default image and file attachment file size limit from 3072 kb to 4096 kb. Bear in mind that Discourse isn’t intended as a cloud file storage service, but we do want people to be able to upload their pictures from Android and iOS on newer devices!

Drafts view in user profile

You can now view all your in-flight active reply drafts on your user profile! You will no longer lose track of any drafts. See 'Drafts' view in profile and https://meta.discourse.org/t/finding-drafts/701 for more information.

Allow revoke and connect for more social logins

As announced in the beta3 release notes, we continue to make social logins much more explicit on your user profile page. Now you can revoke or connect even more social providers on your user profile:

  • Instagram logins
  • GitHub logins
  • Yahoo logins
  • Twitter logins

New webhook events

We’ve added a new outgoing webhook whenever a new post is queued for moderation. And also when a post is approved or rejected by a moderator. Developers can learn more about this new feature on Github:


Even more!

But wait, there’s more! We do our best to highlight new features and changes for you, but there’s always too many changes to detail. For a full list of new features, bug fixes, UX improvements, and more, be sure to review the Additional Features and Fixes listed below.

Plugin improvements

Discourse Voting

  • FIX: Do not count nil or blank values as votes
  • FIX: don’t allow users to vote more than once on a topic
  • Re-render “who voted” list when a vote is removed
  • FIX: Move votes to destination topic when two topics are merged.

Discourse Math

  • MathJax upgrade to version 2.7.5
  • Add URL to plugin.rb

Wordpress plugin

  • Allow the sync_sso functionality to be bypassed with a filter
  • Add a clear cached comment HTML option

Office365 OAuth Login Plugin

  • Add enabled? function to authenticator

LinkedIn OAuth Login Plugin

  • Add enabled? function to authenticator

Discourse Oauth2 Basic

  • Add enabled? function to authenticator

Discourse Assign

  • FEATURE: Assigning a user to a topic will make user watch the topic

Discourse Prometheus

  • Fix typo.
  • Add missing require

Solved Plugin

  • FIX: Apply username formatter to solved post

Staff Notes

  • FIX: updates report for new error setting
  • FIX: Apply username formatter to solved post

Spoiler Alert

  • FEATURE: Rich text pasting support
  • DEV: migrate test to async/await

Patreon plugin

  • UI: Move patreon icon to before css selector of login button
  • Add expire time for admin problem message

Azure Blob Storage

  • version bump
  • fix plugin url

Canned Replies

  • DEV: migrate tests to async/await

Additional Features and Fixes

Click to expand

New Features

  • Introduces list/compact_list components
  • Automatic PM when a user’s email is revoked
  • Allow ruby tags in Markdown
  • Whitelist lang attribute
  • Added method to get multiple values at once from PluginStore. (#6225)
  • Adds revision_count to moderators_activity (#6218)
  • Rake emails:test add debugging
  • Show last updated date for wiki topics
  • Include published_time in metadata

Bug Fixes

  • Fixes last backup/last_update dates (#6242)
  • Include auth_providers for anonymous users when login_required
  • Move Jobs::CreateAvatarThumbnails to low priority queue.
  • Upload’s content is the only source of truth for the file type.
  • Do not use lib for requires
  • Staff should be allowed to agree and keep post
  • Imrpoves alert-error styles in counters reports (#6240)
  • Improves reports resilience (#6239)
  • Store welcome topic id in custom field
  • Email summary expansion button should use theme colors
  • Display select kit body if no choices (#6237)
  • Hamburger menu category alignment
  • System messages not sent via email don’t have a prefix
  • Don’t require auth providers to set full_screen_login_setting
  • UserAvatar#update_gravatar! does not update User#uploaded_avatar.
  • Always store topic links using the upload url
  • Set existing lists to compact when appropriate (#6234)
  • Ensure the ‘email_revoked’ PM template is customizable
  • Wrong links to subcategories in top categories section of user summary
  • Discourse_merger: skip collisions on join models when both objects were merged
  • Formats topic report only if we have one (#6231)
  • Use the right URL when downloading the file from S3
  • Improves report-show mobile UI (#6229)
  • Removes ellipsis from activity-metrics report cells
  • Improves number/percent support in reports
  • ‘migrate_from_s3’ rake task wasn’t handling short urls
  • Error with debouncing mentions
  • Clicking admin wrench in topic footer didn’t hide post select box
  • Moving posts to existing topic didn’t update topic metadata
  • Remove unused import
  • Allow non-english usernames in autocomplete
  • Disk_space refresh is now on demand
  • More resilient/consistent dashboard caching (#6223)
  • Wraps any query with the slow query guard (#6222)
  • Try respecting charset in HTTP header of RSS feed
  • Try detecting encoding of RSS feed
  • Nav item missing for plugins that don’t include a custom filter.
  • Prevents crash if flagger doesn’t exist (#6219)
  • Check for group name availability should skip reserved usernames.
  • Makes dashboard more resilient to errors (#6217)
  • Onebox images are not downloaded locally without css class
  • Linting error
  • We loosened username restrictions some time ago
  • Use hidden setting for max export file size
  • Add rake to bundle install command
  • Don’t break restore if function does not exist
  • Top site categories are displayed in random order
  • Prevents mini-tag-chooser to catch unwanted focus
  • Should not be needed as we have itemprop=‘url’
  • Should not include regular categories in top_category_ids array
  • Hide muted categories from hamburger menu top categories block
  • Preserve whitespace between uploads when the process is complete
  • Add onceoff job to fix incorrect extension for gravatar uploads.
  • FileHelper should prioritize response content-type.
  • Prevents exception when loading old dashboard (#6196)
  • Remove null value from categories list
  • Welcome topic should not be a private message
  • Simplify filters on admin-report component (#6193)
  • Fix broken restores.
  • Missing variable outside of begin block.
  • Fixes regression with category filtering (#6190)
  • Shows disk usage even if no backups taken (#6189)
  • Don’t send PM if flagged post is deleted but flags were deferred or cleared
  • Don’t break browser history on dashboard visit (#6186)

UX Changes

  • Improves edit reason contrast in dark themes
  • Better rejection message when reply via email is too short
  • Include a flag reason in the post-deleted-by-staff-because-of-flags message
  • Add ‘when’ to autobump messages
  • Allow emojis to be displayed in nav-item.
  • Changes in top categories of hamburger menu (#6200)
  • Gives wizard language selector more room to expand
  • More categories link alignment
  • Add a route /rules as an alias for /faq and /guidelines


  • Add missing index on EmailLog#bounced.